diff --git a/static/js/app.mjs b/static/js/app.mjs index e44eabd..2fc713b 100644 --- a/static/js/app.mjs +++ b/static/js/app.mjs @@ -221,7 +221,7 @@ export class App { const devPrefSet = localStorage.getItem('device_preference_set') || 'default' const userData = localStorage.getItem('user') || '{"default": {}}' const user = JSON.parse(userData) - return new N2PreferenceSet(devPrefSet, user.Preferences[devPrefSet]) + return new N2PreferenceSet(devPrefSet, user.Preferences[devPrefSet] || {}) }// }}} } diff --git a/static/js/page_preferences.mjs b/static/js/page_preferences.mjs index dd85ebf..2c44d55 100644 --- a/static/js/page_preferences.mjs +++ b/static/js/page_preferences.mjs @@ -238,6 +238,7 @@ export class N2PreferenceSet extends CustomHTMLElement { super(true) this.name = name this.data = data + this.validateDefaultProfile() this.render() // Enable the save button when settings are modified. @@ -248,6 +249,16 @@ export class N2PreferenceSet extends CustomHTMLElement { this.elName.addEventListener('click', () => this.updateName()) this.elDelete.addEventListener('click', () => this.deleteSet()) }// }}} + validateDefaultProfile() {// {{{ + if (!this.data.hasOwnProperty('default')) + this.data.default = {} + + if (!this.data.default.hasOwnProperty('DownloadFiles')) + this.data.default.DownloadFiles = false + + if (!this.data.default.hasOwnProperty('DownloadImages')) + this.data.default.DownloadImages = false + }// }}} updateName() {// {{{ if (this.name == 'default') { alert('Can not change name of the default profile.')