diff options
Diffstat (limited to 'Hotline/Models/Preferences.swift')
| -rw-r--r-- | Hotline/Models/Preferences.swift | 134 |
1 files changed, 91 insertions, 43 deletions
diff --git a/Hotline/Models/Preferences.swift b/Hotline/Models/Preferences.swift index 207ce91..bcceec5 100644 --- a/Hotline/Models/Preferences.swift +++ b/Hotline/Models/Preferences.swift @@ -23,7 +23,7 @@ enum PrefsKeys: String { @Observable class Prefs { init() { - UserDefaults.standard.register(defaults:[ + UserDefaults.standard.register(defaults: [ PrefsKeys.username.rawValue: "guest", PrefsKeys.userIconID.rawValue: 191, PrefsKeys.refusePrivateMessages.rawValue: false, @@ -42,93 +42,141 @@ class Prefs { PrefsKeys.showBannerToolbar.rawValue: true, PrefsKeys.showJoinLeaveMessages.rawValue: true, ]) - + self.username = UserDefaults.standard.string(forKey: PrefsKeys.username.rawValue)! self.userIconID = UserDefaults.standard.integer(forKey: PrefsKeys.userIconID.rawValue) - self.refusePrivateMessages = UserDefaults.standard.bool(forKey: PrefsKeys.refusePrivateMessages.rawValue) - self.refusePrivateChat = UserDefaults.standard.bool(forKey: PrefsKeys.refusePrivateChat.rawValue) - self.enableAutomaticMessage = UserDefaults.standard.bool(forKey: PrefsKeys.enableAutomaticMessage.rawValue) - self.automaticMessage = UserDefaults.standard.string(forKey: PrefsKeys.automaticMessage.rawValue)! + self.refusePrivateMessages = UserDefaults.standard.bool( + forKey: PrefsKeys.refusePrivateMessages.rawValue) + self.refusePrivateChat = UserDefaults.standard.bool( + forKey: PrefsKeys.refusePrivateChat.rawValue) + self.enableAutomaticMessage = UserDefaults.standard.bool( + forKey: PrefsKeys.enableAutomaticMessage.rawValue) + self.automaticMessage = UserDefaults.standard.string( + forKey: PrefsKeys.automaticMessage.rawValue)! self.playSounds = UserDefaults.standard.bool(forKey: PrefsKeys.playSounds.rawValue) self.playChatSound = UserDefaults.standard.bool(forKey: PrefsKeys.playChatSound.rawValue) - self.playFileTransferCompleteSound = UserDefaults.standard.bool(forKey: PrefsKeys.playFileTransferCompleteSound.rawValue) - self.playPrivateMessageSound = UserDefaults.standard.bool(forKey: PrefsKeys.playPrivateMessageSound.rawValue) + self.playFileTransferCompleteSound = UserDefaults.standard.bool( + forKey: PrefsKeys.playFileTransferCompleteSound.rawValue) + self.playPrivateMessageSound = UserDefaults.standard.bool( + forKey: PrefsKeys.playPrivateMessageSound.rawValue) self.playJoinSound = UserDefaults.standard.bool(forKey: PrefsKeys.playJoinSound.rawValue) self.playLeaveSound = UserDefaults.standard.bool(forKey: PrefsKeys.playLeaveSound.rawValue) - self.playLoggedInSound = UserDefaults.standard.bool(forKey: PrefsKeys.playLoggedInSound.rawValue) + self.playLoggedInSound = UserDefaults.standard.bool( + forKey: PrefsKeys.playLoggedInSound.rawValue) self.playErrorSound = UserDefaults.standard.bool(forKey: PrefsKeys.playErrorSound.rawValue) - self.playChatInvitationSound = UserDefaults.standard.bool(forKey: PrefsKeys.playChatInvitationSound.rawValue) - self.showBannerToolbar = UserDefaults.standard.bool(forKey: PrefsKeys.showBannerToolbar.rawValue) - self.showJoinLeaveMessages = UserDefaults.standard.bool(forKey: PrefsKeys.showJoinLeaveMessages.rawValue) + self.playChatInvitationSound = UserDefaults.standard.bool( + forKey: PrefsKeys.playChatInvitationSound.rawValue) + self.showBannerToolbar = UserDefaults.standard.bool( + forKey: PrefsKeys.showBannerToolbar.rawValue) + self.showJoinLeaveMessages = UserDefaults.standard.bool( + forKey: PrefsKeys.showJoinLeaveMessages.rawValue) } - + public static let shared = Prefs() var username: String { didSet { UserDefaults.standard.set(self.username, forKey: PrefsKeys.username.rawValue) } } - + var userIconID: Int { didSet { UserDefaults.standard.set(self.userIconID, forKey: PrefsKeys.userIconID.rawValue) } } - + var refusePrivateMessages: Bool { - didSet { UserDefaults.standard.set(self.refusePrivateMessages, forKey: PrefsKeys.refusePrivateMessages.rawValue) } + didSet { + UserDefaults.standard.set( + self.refusePrivateMessages, forKey: PrefsKeys.refusePrivateMessages.rawValue) + } } - + var playSounds: Bool { didSet { UserDefaults.standard.set(self.playSounds, forKey: PrefsKeys.playSounds.rawValue) } } - + var playChatSound: Bool { - didSet { UserDefaults.standard.set(self.playChatSound, forKey: PrefsKeys.playChatSound.rawValue) } + didSet { + UserDefaults.standard.set(self.playChatSound, forKey: PrefsKeys.playChatSound.rawValue) + } } - + var playFileTransferCompleteSound: Bool { - didSet { UserDefaults.standard.set(self.playFileTransferCompleteSound, forKey: PrefsKeys.playFileTransferCompleteSound.rawValue) } + didSet { + UserDefaults.standard.set( + self.playFileTransferCompleteSound, forKey: PrefsKeys.playFileTransferCompleteSound.rawValue + ) + } } - + var playPrivateMessageSound: Bool { - didSet { UserDefaults.standard.set(self.playPrivateMessageSound, forKey: PrefsKeys.playPrivateMessageSound.rawValue) } + didSet { + UserDefaults.standard.set( + self.playPrivateMessageSound, forKey: PrefsKeys.playPrivateMessageSound.rawValue) + } } - + var playJoinSound: Bool { - didSet { UserDefaults.standard.set(self.playJoinSound, forKey: PrefsKeys.playJoinSound.rawValue) } + didSet { + UserDefaults.standard.set(self.playJoinSound, forKey: PrefsKeys.playJoinSound.rawValue) + } } - + var playLeaveSound: Bool { - didSet { UserDefaults.standard.set(self.playLeaveSound, forKey: PrefsKeys.playLeaveSound.rawValue) } + didSet { + UserDefaults.standard.set(self.playLeaveSound, forKey: PrefsKeys.playLeaveSound.rawValue) + } } - + var playLoggedInSound: Bool { - didSet { UserDefaults.standard.set(self.playLoggedInSound, forKey: PrefsKeys.playLoggedInSound.rawValue) } + didSet { + UserDefaults.standard.set( + self.playLoggedInSound, forKey: PrefsKeys.playLoggedInSound.rawValue) + } } - + var playErrorSound: Bool { - didSet { UserDefaults.standard.set(self.playErrorSound, forKey: PrefsKeys.playErrorSound.rawValue) } + didSet { + UserDefaults.standard.set(self.playErrorSound, forKey: PrefsKeys.playErrorSound.rawValue) + } } - + var playChatInvitationSound: Bool { - didSet { UserDefaults.standard.set(self.playChatInvitationSound, forKey: PrefsKeys.playChatInvitationSound.rawValue) } + didSet { + UserDefaults.standard.set( + self.playChatInvitationSound, forKey: PrefsKeys.playChatInvitationSound.rawValue) + } } - + var refusePrivateChat: Bool { - didSet { UserDefaults.standard.set(self.refusePrivateChat, forKey: PrefsKeys.refusePrivateChat.rawValue) } + didSet { + UserDefaults.standard.set( + self.refusePrivateChat, forKey: PrefsKeys.refusePrivateChat.rawValue) + } } - + var enableAutomaticMessage: Bool { - didSet { UserDefaults.standard.set(self.enableAutomaticMessage, forKey: PrefsKeys.enableAutomaticMessage.rawValue) } + didSet { + UserDefaults.standard.set( + self.enableAutomaticMessage, forKey: PrefsKeys.enableAutomaticMessage.rawValue) + } } - + var automaticMessage: String { - didSet { UserDefaults.standard.set(self.automaticMessage, forKey: PrefsKeys.automaticMessage.rawValue) } + didSet { + UserDefaults.standard.set(self.automaticMessage, forKey: PrefsKeys.automaticMessage.rawValue) + } } - + var showBannerToolbar: Bool { - didSet { UserDefaults.standard.set(self.showBannerToolbar, forKey: PrefsKeys.showBannerToolbar.rawValue) } + didSet { + UserDefaults.standard.set( + self.showBannerToolbar, forKey: PrefsKeys.showBannerToolbar.rawValue) + } } - + var showJoinLeaveMessages: Bool { - didSet { UserDefaults.standard.set(self.showJoinLeaveMessages, forKey: PrefsKeys.showJoinLeaveMessages.rawValue) } + didSet { + UserDefaults.standard.set( + self.showJoinLeaveMessages, forKey: PrefsKeys.showJoinLeaveMessages.rawValue) + } } } |