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) {
|
async set(extensionConf, options) {
|
||||||
if (!options || !options.forcePreserveVersion) {
|
if (!options || !options.forcePreserveVersion) {
|
||||||
extensionConf.version = this.version;
|
extensionConf.version = this.version;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fixSitesSettings(sites);
|
||||||
|
|
||||||
this.logger.log('info', 'settings', "[Settings::set] setting new settings:", extensionConf)
|
this.logger.log('info', 'settings', "[Settings::set] setting new settings:", extensionConf)
|
||||||
|
|
||||||
if (currentBrowser.firefox || currentBrowser.edge) {
|
if (currentBrowser.firefox || currentBrowser.edge) {
|
||||||
@ -377,10 +402,14 @@ class Settings {
|
|||||||
return ExtensionMode.Enabled;
|
return ExtensionMode.Enabled;
|
||||||
} else if (this.active.sites[site].mode === ExtensionMode.Basic) {
|
} else if (this.active.sites[site].mode === ExtensionMode.Basic) {
|
||||||
return ExtensionMode.Basic;
|
return ExtensionMode.Basic;
|
||||||
} else if (this.active.sites[site].mode === ExtensionMode.Default && site !== '@global') {
|
} else if (this.active.sites[site].mode === ExtensionMode.Disabled) {
|
||||||
return this.getExtensionMode('@global');
|
|
||||||
} else {
|
|
||||||
return ExtensionMode.Disabled;
|
return ExtensionMode.Disabled;
|
||||||
|
} else {
|
||||||
|
if (site !== '@global') {
|
||||||
|
return this.getExtensionMode('@global');
|
||||||
|
} else {
|
||||||
|
return ExtensionMode.Disabled;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch(e){
|
} catch(e){
|
||||||
|
Loading…
Reference in New Issue
Block a user