diff options
Diffstat (limited to 'src/pages/options/options.js')
-rw-r--r-- | src/pages/options/options.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/pages/options/options.js b/src/pages/options/options.js index cfe3a266..91e7ac05 100644 --- a/src/pages/options/options.js +++ b/src/pages/options/options.js @@ -8,6 +8,7 @@ import mapsHelper from "../../assets/javascripts/helpers/google-maps.js"; import redditHelper from "../../assets/javascripts/helpers/reddit.js"; import searchHelper from "../../assets/javascripts/helpers/google-search.js"; import googleTranslateHelper from "../../assets/javascripts/helpers/google-translate.js"; +import wikipediaHelper from "../../assets/javascripts/helpers/wikipedia.js"; const nitterInstances = twitterHelper.redirects; const invidiousInstances = youtubeHelper.redirects; @@ -16,6 +17,7 @@ const osmInstances = mapsHelper.redirects; const redditInstances = redditHelper.redirects; const searchEngineInstances = searchHelper.redirects; const simplyTranslateInstances = googleTranslateHelper.redirects; +const wikipediaInstances = wikipediaHelper.redirects; const autocompletes = [ { id: "nitter-instance", instances: nitterInstances }, { id: "invidious-instance", instances: invidiousInstances }, @@ -27,6 +29,7 @@ const autocompletes = [ instances: searchEngineInstances.map((instance) => instance.link), }, { id: "simply-translate-instance", instances: simplyTranslateInstances }, + { id: "wikipedia-instance", instances: wikipediaInstances }, ]; const domparser = new DOMParser(); @@ -39,6 +42,7 @@ let searchEngineInstance = document.getElementById("search-engine-instance"); let simplyTranslateInstance = document.getElementById( "simply-translate-instance" ); +let wikipediaInstance = document.getElementById("wikipedia-instance"); let disableNitter = document.getElementById("disable-nitter"); let disableInvidious = document.getElementById("disable-invidious"); let disableBibliogram = document.getElementById("disable-bibliogram"); @@ -48,6 +52,7 @@ let disableSearchEngine = document.getElementById("disable-search-engine"); let disableSimplyTranslate = document.getElementById( "disable-simply-translate" ); +let disableWikipedia = document.getElementById("disable-wikipedia"); let alwaysProxy = document.getElementById("always-proxy"); let onlyEmbeddedVideo = document.getElementById("only-embed"); let videoQuality = document.getElementById("video-quality"); @@ -100,6 +105,7 @@ browser.storage.sync.get( "redditInstance", "searchEngineInstance", "simplyTranslateInstance", + "wikipediaInstance", "disableNitter", "disableInvidious", "disableBibliogram", @@ -107,6 +113,7 @@ browser.storage.sync.get( "disableReddit", "disableSearchEngine", "disableSimplyTranslate", + "disableWikipedia", "alwaysProxy", "onlyEmbeddedVideo", "videoQuality", @@ -135,6 +142,7 @@ browser.storage.sync.get( searchEngineInstance.value = (result.searchEngineInstance && result.searchEngineInstance.link) || ""; simplyTranslateInstance.value = result.simplyTranslateInstance || ""; + wikipediaInstance.value = result.wikipediaInstance || ""; disableNitter.checked = !result.disableNitter; disableInvidious.checked = !result.disableInvidious; disableBibliogram.checked = !result.disableBibliogram; @@ -142,6 +150,7 @@ browser.storage.sync.get( disableReddit.checked = !result.disableReddit; disableSearchEngine.checked = !result.disableSearchEngine; disableSimplyTranslate.checked = !result.disableSimplyTranslate; + disableWikipedia.checked = !result.disableWikipedia; alwaysProxy.checked = result.alwaysProxy; onlyEmbeddedVideo.checked = result.onlyEmbeddedVideo; videoQuality.value = result.videoQuality || ""; @@ -328,6 +337,18 @@ simplyTranslateInstance.addEventListener( simplyTranslateInstanceChange ); +const wikipediaInstanceChange = debounce(() => { + if (wikipediaInstance.checkValidity()) { + browser.storage.sync.set({ + wikipediaInstance: parseURL(wikipediaInstance.value), + }); + } +}, 500); +wikipediaInstance.addEventListener( + "input", + wikipediaInstanceChange +); + disableNitter.addEventListener("change", (event) => { browser.storage.sync.set({ disableNitter: !event.target.checked }); }); @@ -356,6 +377,10 @@ disableSimplyTranslate.addEventListener("change", (event) => { browser.storage.sync.set({ disableSimplyTranslate: !event.target.checked }); }); +disableWikipedia.addEventListener("change", (event) => { + browser.storage.sync.set({ disableWikipedia: !event.target.checked }); +}); + alwaysProxy.addEventListener("change", (event) => { browser.storage.sync.set({ alwaysProxy: event.target.checked }); }); |