Browse Source

Override Alarms

Jon Fawcett 6 years ago
parent
commit
4e5fe134a3

+ 4 - 2
LoopFollow/Controllers/Alarms.swift

@@ -278,14 +278,16 @@ extension MainViewController {
         if latest.value == prior.value { return }
         
         if UserDefaultsRepository.alertOverrideStart.value {
-            if latest.value != 1.0 {
+            if latest.value != 1.0 && lastOverrideStartTime != latest.date {
                 AlarmSound.whichAlarm = String(format: "%.0f%%", latest.value) + " Override Started"
                 triggerOneTimeAlarm(sound: UserDefaultsRepository.alertOverrideStartSound.value)
+                lastOverrideStartTime = latest.date
             }
         } else if UserDefaultsRepository.alertOverrideEnd.value {
-            if latest.value == 0.0 {
+            if latest.value == 1.0 && lastOverrideEndTime != latest.date {
                 AlarmSound.whichAlarm = "Override Ended"
                 triggerOneTimeAlarm(sound: UserDefaultsRepository.alertOverrideEndSound.value)
+                lastOverrideEndTime = latest.date
             }
         }
     }

+ 2 - 0
LoopFollow/ViewControllers/MainViewController.swift

@@ -105,6 +105,8 @@ class MainViewController: UIViewController, UITableViewDataSource, ChartViewDele
     var latestCOB = ""
     var latestBasal = ""
     var latestIOB = ""
+    var lastOverrideStartTime: TimeInterval = 0
+    var lastOverrideEndTime: TimeInterval = 0
     
     // calendar setup
     let store = EKEventStore()