1
0
mirror of https://github.com/aureliendavid/rsspreview.git synced 2025-08-22 19:28:39 +00:00
rsspreview/settings/options.js
2024-05-03 14:15:37 +02:00

86 lines
2.6 KiB
JavaScript

var android = false;
browser.runtime.getPlatformInfo().then((info) => {
android = info.os == "android"
});
function saveOptions(e) {
e.preventDefault();
let options = {
doThumb: document.querySelector("#doThumb").checked,
doMaxWidth: document.querySelector("#doMaxWidth").checked,
valMaxWidth: document.querySelector("#valMaxWidth").value,
doDetect: document.querySelector("#doDetect").checked,
preventPreview: document.querySelector("#preventPreview").checked,
fullPreview: document.querySelector("#fullPreview").checked,
doAuthor: document.querySelector("#doAuthor").checked,
orangeIcon: document.querySelector("#orangeIcon").checked,
enableCss: document.querySelector("#enableCss").checked,
bypassCSP: document.querySelector("#bypassCSP").checked,
customCss: document.querySelector("#customCss").value,
newTab: document.querySelector("#newTab").checked
};
browser.storage.sync.set(options);
localStorage.setItem('options', JSON.stringify(options));
}
function restoreOptions() {
browser.runtime.getPlatformInfo().then((info) => {
android = info.os == "android"
function onResult(result) {
document.querySelector("#doThumb").checked = result.doThumb;
document.querySelector("#doMaxWidth").checked = result.doMaxWidth;
document.querySelector("#valMaxWidth").value = result.valMaxWidth;
document.querySelector("#doDetect").checked = result.doDetect;
document.querySelector("#preventPreview").checked = result.preventPreview;
document.querySelector("#fullPreview").checked = result.fullPreview;
document.querySelector("#doAuthor").checked = result.doAuthor;
document.querySelector("#orangeIcon").checked = result.orangeIcon;
document.querySelector("#enableCss").checked = result.enableCss;
document.querySelector("#bypassCSP").checked = result.bypassCSP;
document.querySelector("#customCss").value = result.customCss;
document.querySelector("#newTab").checked = result.newTab;
localStorage.setItem('options', JSON.stringify(result));
}
function onError(error) {
console.log(`Error: ${error}`);
}
var getting = browser.storage.sync.get({
doThumb: false,
doMaxWidth: true,
valMaxWidth: "900px",
doDetect: true,
preventPreview: false,
fullPreview: false,
doAuthor: false,
orangeIcon: android,
enableCss: false,
bypassCSP: false,
customCss: null,
newTab: !android
});
getting.then(onResult, onError);
});
}
document.addEventListener("DOMContentLoaded", restoreOptions);
document.querySelectorAll('.validate').forEach((elem) => {
elem.addEventListener('change', saveOptions);
});