| 155 | } |
| 156 | |
| 157 | bool saveSettings(const ChatSettingsData& settings) { |
| 158 | std::map<std::string, std::string> map; |
| 159 | |
| 160 | map[KEY_SENDER_ID] = std::to_string(settings.senderId); |
| 161 | map[KEY_NICKNAME] = settings.nickname; |
| 162 | map[KEY_CHAT_CHANNEL] = settings.chatChannel; |
| 163 | |
| 164 | if (settings.hasEncryptionKey) { |
| 165 | std::string encryptedHex; |
| 166 | if (!encryptKey(settings.encryptionKey.data(), encryptedHex)) { |
| 167 | return false; |
| 168 | } |
| 169 | map[KEY_ENCRYPTION_KEY] = encryptedHex; |
| 170 | } else { |
| 171 | map[KEY_ENCRYPTION_KEY] = ""; |
| 172 | } |
| 173 | |
| 174 | return file::savePropertiesFile(CHAT_SETTINGS_FILE, map); |
| 175 | } |
| 176 | |
| 177 | bool settingsFileExists() { |
| 178 | return access(CHAT_SETTINGS_FILE, F_OK) == 0; |
no test coverage detected