Sfoglia il codice sorgente

Merge pull request #425 from loopandlearn/honor-global-snooze

Fix: Honor the global "Snooze All" setting
Jonas Björkert 1 anno fa
parent
commit
1ce2edf187
1 ha cambiato i file con 11 aggiunte e 0 eliminazioni
  1. 11 0
      LoopFollow/Alarm/AlarmManager.swift

+ 11 - 0
LoopFollow/Alarm/AlarmManager.swift

@@ -43,6 +43,17 @@ class AlarmManager {
     func checkAlarms(data: AlarmData) {
         let now = Date()
         var alarmTriggered = false
+
+        let config = Storage.shared.alarmConfiguration.value
+
+        // Honor the "Snooze All" setting. If active, stop any current alarm and exit.
+        if let snoozeUntil = config.snoozeUntil, snoozeUntil > now {
+            if Observable.shared.currentAlarm.value != nil {
+                stopAlarm()
+            }
+            return
+        }
+
         let alarms = Storage.shared.alarms.value
 
         let sorted = alarms.sorted(by: Alarm.byPriorityThenSpec)