()
| 23 | } |
| 24 | |
| 25 | export async function init() { |
| 26 | let prefs = await getPreferences(); |
| 27 | if (!prefs) { |
| 28 | // new install |
| 29 | prefs = defaults.preferences; |
| 30 | prefs.version = defaults.version; |
| 31 | initSecurityBgnd(prefs); |
| 32 | await setWatchList(defaults.watch_list); |
| 33 | defaultsInitDone(); |
| 34 | await setPreferences(prefs); |
| 35 | return; |
| 36 | } |
| 37 | // existing install — watch list already in storage |
| 38 | defaultsInitDone(); |
| 39 | if (prefs.version !== defaults.version) { |
| 40 | // version changed |
| 41 | prefs.version = defaults.version; |
| 42 | initSecurityBgnd(prefs); |
| 43 | // add default values for new settings |
| 44 | if (typeof prefs.keyserver == 'undefined') { |
| 45 | prefs.keyserver = defaults.preferences.keyserver; |
| 46 | } |
| 47 | if (typeof prefs.keyserver.autocrypt_lookup == 'undefined') { |
| 48 | prefs.keyserver.autocrypt_lookup = defaults.preferences.keyserver.autocrypt_lookup; |
| 49 | } |
| 50 | if (typeof prefs.keyserver.key_binding == 'undefined') { |
| 51 | prefs.keyserver.key_binding = defaults.preferences.keyserver.key_binding; |
| 52 | } |
| 53 | if (typeof prefs.keyserver.mvelo_tofu_lookup == 'undefined') { |
| 54 | prefs.keyserver.mvelo_tofu_lookup = defaults.preferences.keyserver.mvelo_tofu_lookup; |
| 55 | } |
| 56 | if (typeof prefs.keyserver.oks_lookup == 'undefined') { |
| 57 | prefs.keyserver.oks_lookup = defaults.preferences.keyserver.oks_lookup; |
| 58 | } |
| 59 | if (typeof prefs.keyserver.wkd_lookup == 'undefined') { |
| 60 | prefs.keyserver.wkd_lookup = defaults.preferences.keyserver.wkd_lookup; |
| 61 | } |
| 62 | if (typeof prefs.general.prefer_gnupg == 'undefined') { |
| 63 | prefs.general.prefer_gnupg = defaults.preferences.general.prefer_gnupg; |
| 64 | } |
| 65 | if (typeof prefs.security.hide_armored_header == 'undefined') { |
| 66 | prefs.security.hide_armored_header = defaults.preferences.security.hide_armored_header; |
| 67 | } |
| 68 | if (typeof prefs.provider == 'undefined') { |
| 69 | prefs.provider = defaults.preferences.provider; |
| 70 | } |
| 71 | // merge watchlist on version change |
| 72 | await mergeWatchlist(defaults); |
| 73 | await setPreferences(prefs); |
| 74 | } |
| 75 | } |
| 76 | |
| 77 | function mergeWatchlist(defaults) { |
| 78 | let mod = false; |
nothing calls this directly
no test coverage detected