@@ -382,45 +382,30 @@ struct LoopAPNSCarbsView: View {
382382 otp: otpCode
383383 )
384384
385- Task {
386- do {
387- let apnsService = LoopAPNSService ( )
388- let success = try await apnsService. sendCarbsViaAPNS ( payload: payload)
389-
390- DispatchQueue . main. async {
391- isLoading = false
392- if success {
393- // Mark TOTP code as used
394- TOTPService . shared. markTOTPAsUsed ( qrCodeURL: Storage . shared. loopAPNSQrCodeURL. value)
395- let timeFormatter = DateFormatter ( )
396- timeFormatter. timeStyle = . short
397- alertMessage = " Carbs sent successfully for \( timeFormatter. string ( from: adjustedConsumedDate) ) ! "
398- alertType = . success
399- LogManager . shared. log (
400- category: . apns,
401- message: " Carbs sent - Amount: \( carbsAmount. doubleValue ( for: . gram( ) ) ) g, Absorption: \( absorptionTimeString) h, Time: \( adjustedConsumedDate) "
402- )
403- } else {
404- alertMessage = " Failed to send carbs. Check your Loop APNS configuration. "
405- alertType = . error
406- LogManager . shared. log (
407- category: . apns,
408- message: " Failed to send carbs "
409- )
410- }
411- showAlert = true
412- }
413- } catch {
414- DispatchQueue . main. async {
415- isLoading = false
416- alertMessage = " Error sending carbs: \( error. localizedDescription) "
417- alertType = . error
385+ let apnsService = LoopAPNSService ( )
386+ apnsService. sendCarbsViaAPNS ( payload: payload) { success, errorMessage in
387+ DispatchQueue . main. async {
388+ self . isLoading = false
389+ if success {
390+ // Mark TOTP code as used
391+ TOTPService . shared. markTOTPAsUsed ( qrCodeURL: Storage . shared. loopAPNSQrCodeURL. value)
392+ let timeFormatter = DateFormatter ( )
393+ timeFormatter. timeStyle = . short
394+ self . alertMessage = " Carbs sent successfully for \( timeFormatter. string ( from: adjustedConsumedDate) ) ! "
395+ self . alertType = . success
418396 LogManager . shared. log (
419397 category: . apns,
420- message: " APNS carbs error: \( error. localizedDescription) "
398+ message: " Carbs sent - Amount: \( carbsAmount. doubleValue ( for: . gram( ) ) ) g, Absorption: \( absorptionTimeString) h, Time: \( adjustedConsumedDate) "
399+ )
400+ } else {
401+ self . alertMessage = errorMessage ?? " Failed to send carbs. Check your Loop APNS configuration. "
402+ self . alertType = . error
403+ LogManager . shared. log (
404+ category: . apns,
405+ message: " Failed to send carbs: \( errorMessage ?? " unknown error " ) "
421406 )
422- showAlert = true
423407 }
408+ self . showAlert = true
424409 }
425410 }
426411 }
0 commit comments