2020-10-30 10:19:38 -04:00
|
|
|
//
|
|
|
|
// TodayDataStore.swift
|
|
|
|
// TodayExtension
|
|
|
|
//
|
|
|
|
// Created by Marcos Rodriguez on 11/3/19.
|
|
|
|
// Copyright © 2019 Facebook. All rights reserved.
|
|
|
|
//
|
|
|
|
|
|
|
|
import Foundation
|
|
|
|
|
2020-11-02 08:11:28 -05:00
|
|
|
struct WidgetDataStore {
|
2020-10-30 10:19:38 -04:00
|
|
|
let rate: String
|
|
|
|
let lastUpdate: String
|
2020-11-06 16:30:35 -05:00
|
|
|
let rateDouble: Double
|
2020-10-30 10:19:38 -04:00
|
|
|
var formattedRate: String? {
|
|
|
|
let numberFormatter = NumberFormatter()
|
2020-11-02 08:11:28 -05:00
|
|
|
numberFormatter.locale = Locale(identifier: WidgetAPI.getUserPreferredCurrencyLocale())
|
2020-10-30 10:19:38 -04:00
|
|
|
numberFormatter.numberStyle = .decimal
|
2020-11-02 08:11:28 -05:00
|
|
|
numberFormatter.maximumFractionDigits = 0
|
|
|
|
numberFormatter.minimumFractionDigits = 0
|
2020-10-30 10:19:38 -04:00
|
|
|
if let rateNumber = numberFormatter.number(from: rate) {
|
|
|
|
numberFormatter.numberStyle = .currency
|
|
|
|
return numberFormatter.string(from: rateNumber);
|
|
|
|
}
|
|
|
|
return rate
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-11-02 08:11:28 -05:00
|
|
|
class WidgetData {
|
2020-10-30 10:19:38 -04:00
|
|
|
|
2020-11-02 08:11:28 -05:00
|
|
|
static let WidgetDataStoreKey = "WidgetDataStoreKey"
|
|
|
|
static let WidgetCachedDataStoreKey = "WidgetCachedDataStoreKey"
|
2020-10-30 10:19:38 -04:00
|
|
|
|
|
|
|
static func savePriceRateAndLastUpdate(rate: String, lastUpdate: String) {
|
2020-11-02 08:11:28 -05:00
|
|
|
UserDefaults.standard.setValue(["rate": rate, "lastUpdate": lastUpdate], forKey: WidgetDataStoreKey)
|
2020-10-30 10:19:38 -04:00
|
|
|
UserDefaults.standard.synchronize()
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|