Fix invalid site settings on settings.save
This commit is contained in:
parent
3d7a47662e
commit
410cd4d7f3
@ -282,11 +282,36 @@ class Settings {
|
||||
}
|
||||
}
|
||||
|
||||
fixSitesSettings(sites) {
|
||||
for (const site in sites) {
|
||||
if (site === '@global') {
|
||||
continue;
|
||||
}
|
||||
if (sites[site].mode === undefined) {
|
||||
sites[site].mode = ExtensionMode.Default;
|
||||
}
|
||||
if (sites[site].autoar === undefined) {
|
||||
sites[site].mode = ExtensionMode.Default;
|
||||
}
|
||||
if (sites[site].stretch === undefined) {
|
||||
sites[site].mode = Stretch.Default;
|
||||
}
|
||||
if (sites[site].videoAlignment === undefined) {
|
||||
sites[site].mode = VideoAlignment.Default;
|
||||
}
|
||||
if (sites[site].keyboardShortcutsEnabled === undefined) {
|
||||
sites[site].mode = ExtensionMode.Default;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async set(extensionConf, options) {
|
||||
if (!options || !options.forcePreserveVersion) {
|
||||
extensionConf.version = this.version;
|
||||
}
|
||||
|
||||
fixSitesSettings(sites);
|
||||
|
||||
this.logger.log('info', 'settings', "[Settings::set] setting new settings:", extensionConf)
|
||||
|
||||
if (currentBrowser.firefox || currentBrowser.edge) {
|
||||
@ -377,10 +402,14 @@ class Settings {
|
||||
return ExtensionMode.Enabled;
|
||||
} else if (this.active.sites[site].mode === ExtensionMode.Basic) {
|
||||
return ExtensionMode.Basic;
|
||||
} else if (this.active.sites[site].mode === ExtensionMode.Default && site !== '@global') {
|
||||
return this.getExtensionMode('@global');
|
||||
} else {
|
||||
} else if (this.active.sites[site].mode === ExtensionMode.Disabled) {
|
||||
return ExtensionMode.Disabled;
|
||||
} else {
|
||||
if (site !== '@global') {
|
||||
return this.getExtensionMode('@global');
|
||||
} else {
|
||||
return ExtensionMode.Disabled;
|
||||
}
|
||||
}
|
||||
|
||||
} catch(e){
|
||||
|
Loading…
Reference in New Issue
Block a user