Skip to content

Commit 039a38c

Browse files
authored
Removing reliance on old method (Enx24hourcheck) (#987)
* change comparison * modify logic * stop relying on legacy function and use built in swift method
1 parent a64d1d7 commit 039a38c

File tree

1 file changed

+12
-9
lines changed

1 file changed

+12
-9
lines changed

ios/BT/ExposureManager.swift

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -194,17 +194,20 @@ final class ExposureManager: NSObject {
194194
//Notifies the user they need to migrate
195195
func notifyUserEnxIfNeeded() {
196196
let defaults = UserDefaults.standard
197-
let lastEnxTimestamp = defaults.double(forKey: "lastEnxTimestamp")
198-
let enxCount = defaults.double(forKey: "enxCount")
199-
var sameDay = self.hasBeenTwentyFourHours(lastSubmitted: lastEnxTimestamp)
197+
let lastEnxTimestamp = defaults.double(forKey: "lastEnxTimestamp") // defaults to 0 if it does not exist https://developer.apple.com/documentation/foundation/userdefaults/1416581-double
198+
var enxCount = defaults.double(forKey: "enxCount") // defaults to 0 if it does not exist https://developer.apple.com/documentation/foundation/userdefaults/1416581-double
199+
let newDate = Date.init();
200200

201-
if (lastEnxTimestamp == 0) {
202-
sameDay = false;
201+
var sameDay = false; // default to false in case lastEnxTimestamp has not been created yet
202+
203+
if (lastEnxTimestamp != 0) {
204+
sameDay = Calendar.current.isDate(newDate, inSameDayAs: Date(timeIntervalSince1970: lastEnxTimestamp))
203205
}
204-
if (enxCount <= 3 && sameDay == false) {
205-
let newDate = Date.init().timeIntervalSince1970;
206-
defaults.set(enxCount + 1, forKey: "enxCount");
207-
defaults.set(newDate, forKey: "lastEnxTimestamp");
206+
207+
if (enxCount < 3 && sameDay == false) {
208+
enxCount += 1
209+
defaults.set(enxCount, forKey: "enxCount");
210+
defaults.set(newDate.timeIntervalSince1970, forKey: "lastEnxTimestamp");
208211

209212
let identifier = String.enxMigrationIdentifier
210213
let content = UNMutableNotificationContent()

0 commit comments

Comments
 (0)