From 68f9fbb3f7862dd9f854a11bc74525985ddbb9c9 Mon Sep 17 00:00:00 2001 From: ManeraKai Date: Sat, 21 May 2022 16:38:28 +0300 Subject: Fixed buttons in the general tab --- src/pages/options/general/general.html | 4 +- src/pages/options/general/general.js | 200 ++++++++++++++--------- src/pages/options/general/general.pug | 2 +- src/pages/options/imgur/imgur.html | 2 +- src/pages/options/instagram/instagram.html | 2 +- src/pages/options/lbry/lbry.html | 2 +- src/pages/options/maps/maps.html | 2 +- src/pages/options/medium/medium.html | 2 +- src/pages/options/peertube/peertube.html | 2 +- src/pages/options/reddit/reddit.html | 2 +- src/pages/options/search/search.html | 2 +- src/pages/options/sendTargets/sendTargets.html | 2 +- src/pages/options/tiktok/tiktok.html | 2 +- src/pages/options/translate/translate.html | 2 +- src/pages/options/twitter/twitter.html | 2 +- src/pages/options/wikipedia/wikipedia.html | 2 +- src/pages/options/youtube/youtube.html | 2 +- src/pages/options/youtubeMusic/youtubeMusic.html | 2 +- 18 files changed, 140 insertions(+), 96 deletions(-) (limited to 'src/pages/options') diff --git a/src/pages/options/general/general.html b/src/pages/options/general/general.html index cb0c11ff..8239f7c8 100644 --- a/src/pages/options/general/general.html +++ b/src/pages/options/general/general.html @@ -30,7 +30,7 @@ Medium -
Peertube
+
PeerTube
LBRY/Odysee
@@ -180,7 +180,7 @@
-
Peertube
+
PeerTube
diff --git a/src/pages/options/general/general.js b/src/pages/options/general/general.js index c8a600ce..f2690209 100644 --- a/src/pages/options/general/general.js +++ b/src/pages/options/general/general.js @@ -4,7 +4,21 @@ window.browser = window.browser || window.chrome; import utils from "../../../assets/javascripts/helpers/utils.js"; import generalHelper from "../../../assets/javascripts/helpers/general.js"; - +import youtubeHelper from "../../../assets/javascripts/helpers/youtube/youtube.js"; +import youtubeMusicHelper from "../../../assets/javascripts/helpers/youtubeMusic.js"; +import twitterHelper from "../../../assets/javascripts/helpers/twitter.js"; +import instagramHelper from "../../../assets/javascripts/helpers/instagram.js"; +import redditHelper from "../../../assets/javascripts/helpers/reddit.js"; +import searchHelper from "../../../assets/javascripts/helpers/search.js"; +import translateHelper from "../../../assets/javascripts/helpers/translate/translate.js"; +import mapsHelper from "../../../assets/javascripts/helpers/maps.js"; +import wikipediaHelper from "../../../assets/javascripts/helpers/wikipedia.js"; +import mediumHelper from "../../../assets/javascripts/helpers/medium.js"; +import imgurHelper from "../../../assets/javascripts/helpers/imgur.js"; +import tiktokHelper from "../../../assets/javascripts/helpers/tiktok.js"; +import sendTargetsHelper from "../../../assets/javascripts/helpers/sendTargets.js"; +import peertubeHelper from "../../../assets/javascripts/helpers/peertube.js"; +import lbryHelper from "../../../assets/javascripts/helpers/lbry.js"; let updateInstancesElement = document.getElementById("update-instances"); updateInstancesElement.addEventListener("click", () => { @@ -68,21 +82,41 @@ function importError() { let resetSettingsElement = document.getElementById("reset-settings"); resetSettingsElement.addEventListener("click", - () => { + async () => { console.log("reset"); - browser.storage.local.clear(); - location.reload(); + await browser.storage.local.clear(); + fetch('/instances/blocklist.json').then(response => response.text()).then(async data => { + await browser.storage.local.set({ cloudflareList: JSON.parse(data) }) + await generalHelper.initDefaults(); + await youtubeHelper.initDefaults(); + await youtubeMusicHelper.initDefaults(); + await twitterHelper.initDefaults(); + await instagramHelper.initDefaults(); + await mapsHelper.initDefaults(); + await searchHelper.initDefaults(); + await translateHelper.initDefaults(); + await mediumHelper.initDefaults(); + await redditHelper.initDefaults(); + await wikipediaHelper.initDefaults(); + await imgurHelper.initDefaults(); + await tiktokHelper.initDefaults(); + await sendTargetsHelper.initDefaults(); + await peertubeHelper.initDefaults(); + await lbryHelper.initDefaults(); + location.reload(); + }) } ); let autoRedirectElement = document.getElementById("auto-redirect") autoRedirectElement.addEventListener("change", - event => generalHelper.setAutoRedirect(event.target.checked) + event => browser.storage.local.set({ autoRedirect: event.target.checked }) ); + let themeElement = document.getElementById("theme"); themeElement.addEventListener("change", event => { const value = event.target.options[theme.selectedIndex].value; - generalHelper.setTheme(value); + browser.storage.local.set({ theme: value }); }) let nameCustomInstanceInput = document.getElementById("exceptions-custom-instance"); @@ -99,84 +133,94 @@ for (const frontend of generalHelper.allPopupFrontends) var index = popupFrontends.indexOf(frontend); if (index !== -1) popupFrontends.splice(index, 1); } - generalHelper.setPopupFrontends(popupFrontends); + browser.storage.local.set({ popupFrontends }) } ) -generalHelper.init().then(() => { - autoRedirectElement.checked = generalHelper.getAutoRedirect(); - themeElement.value = generalHelper.getTheme(); - instanceTypeElement.addEventListener("change", - event => { - instanceType = event.target.options[instanceTypeElement.selectedIndex].value - if (instanceType == 'url') { - nameCustomInstanceInput.setAttribute("type", "url"); - nameCustomInstanceInput.setAttribute("placeholder", "https://www.google.com"); - } - else if (instanceType == 'regex') { - nameCustomInstanceInput.setAttribute("type", "text"); - nameCustomInstanceInput.setAttribute("placeholder", "https?:\/\/(www\.|)youtube\.com\/"); + +browser.storage.local.get( + [ + 'theme', + 'autoRedirect', + 'exceptions' + ], + r => { + autoRedirectElement.checked = r.autoRedirect; + themeElement.value = r.theme; + instanceTypeElement.addEventListener("change", + event => { + instanceType = event.target.options[instanceTypeElement.selectedIndex].value + if (instanceType == 'url') { + nameCustomInstanceInput.setAttribute("type", "url"); + nameCustomInstanceInput.setAttribute("placeholder", "https://www.google.com"); + } + else if (instanceType == 'regex') { + nameCustomInstanceInput.setAttribute("type", "text"); + nameCustomInstanceInput.setAttribute("placeholder", "https?:\/\/(www\.|)youtube\.com\/"); + } } - } - ) - let exceptionsCustomInstances = generalHelper.getExceptions(); - function calcExceptionsCustomInstances() { - document.getElementById("exceptions-custom-checklist").innerHTML = - [...exceptionsCustomInstances.url, ...exceptionsCustomInstances.regex].map( - (x) => `
- ${x} - -
-
` - ).join('\n'); - - for (const x of [...exceptionsCustomInstances.url, ...exceptionsCustomInstances.regex]) { - document.getElementById(`clear-${x}`).addEventListener("click", - () => { - console.log(x); - let index; - index = exceptionsCustomInstances.url.indexOf(x); - if (index > -1) - exceptionsCustomInstances.url.splice(index, 1); - else { - index = exceptionsCustomInstances.regex.indexOf(x); + ) + let exceptionsCustomInstances = r.exceptions; + function calcExceptionsCustomInstances() { + document.getElementById("exceptions-custom-checklist").innerHTML = + [...exceptionsCustomInstances.url, ...exceptionsCustomInstances.regex].map( + (x) => `
+ ${x} + +
+
` + ).join('\n'); + + for (const x of [...exceptionsCustomInstances.url, ...exceptionsCustomInstances.regex]) { + document.getElementById(`clear-${x}`).addEventListener("click", + () => { + console.log(x); + let index; + index = exceptionsCustomInstances.url.indexOf(x); if (index > -1) - exceptionsCustomInstances.regex.splice(index, 1); - } - generalHelper.setExceptions(exceptionsCustomInstances); - calcExceptionsCustomInstances(); - }); - } - } - calcExceptionsCustomInstances(); - document.getElementById("custom-exceptions-instance-form").addEventListener("submit", (event) => { - event.preventDefault(); - - let val - if (instanceType == 'url') { - if (nameCustomInstanceInput.validity.valid) { - let url = new URL(nameCustomInstanceInput.value); - val = `${url.protocol}//${url.host}` - if (!exceptionsCustomInstances.url.includes(val)) exceptionsCustomInstances.url.push(val) + exceptionsCustomInstances.url.splice(index, 1); + else { + index = exceptionsCustomInstances.regex.indexOf(x); + if (index > -1) + exceptionsCustomInstances.regex.splice(index, 1); + } + browser.storage.local.set({ exceptions: exceptionsCustomInstances }) + calcExceptionsCustomInstances(); + }); } - } else if (instanceType == 'regex') { - val = nameCustomInstanceInput.value - if (val.trim() != '' && !exceptionsCustomInstances.regex.includes(val)) exceptionsCustomInstances.regex.push(val) - } - if (val) { - generalHelper.setExceptions(exceptionsCustomInstances); - console.log("exceptionsCustomInstances", exceptionsCustomInstances) - nameCustomInstanceInput.value = ''; } calcExceptionsCustomInstances(); - }) + document.getElementById("custom-exceptions-instance-form").addEventListener("submit", (event) => { + event.preventDefault(); - popupFrontends = generalHelper.getPopupFrontends(); - for (const frontend of generalHelper.allPopupFrontends) - document.getElementById(frontend).checked = popupFrontends.includes(frontend); -}) \ No newline at end of file + let val + if (instanceType == 'url') { + if (nameCustomInstanceInput.validity.valid) { + let url = new URL(nameCustomInstanceInput.value); + val = `${url.protocol}//${url.host}` + if (!exceptionsCustomInstances.url.includes(val)) exceptionsCustomInstances.url.push(val) + } + } else if (instanceType == 'regex') { + val = nameCustomInstanceInput.value + if (val.trim() != '' && !exceptionsCustomInstances.regex.includes(val)) exceptionsCustomInstances.regex.push(val) + } + if (val) { + browser.storage.local.set({ exceptions: exceptionsCustomInstances }) + nameCustomInstanceInput.value = ''; + } + calcExceptionsCustomInstances(); + }) + + browser.storage.local.get('popupFrontends', + r => { + popupFrontends = r.popupFrontends; + for (const frontend of generalHelper.allPopupFrontends) + document.getElementById(frontend).checked = popupFrontends.includes(frontend); + } + ) + }) diff --git a/src/pages/options/general/general.pug b/src/pages/options/general/general.pug index 6a3b1370..0cef8025 100644 --- a/src/pages/options/general/general.pug +++ b/src/pages/options/general/general.pug @@ -151,7 +151,7 @@ body.option(dir="auto") div div img(src="../../../assets/images/peertube-icon.svg") - |Peertube + |PeerTube input#peertube(type="checkbox") div diff --git a/src/pages/options/imgur/imgur.html b/src/pages/options/imgur/imgur.html index d537acff..6194fbb3 100644 --- a/src/pages/options/imgur/imgur.html +++ b/src/pages/options/imgur/imgur.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/instagram/instagram.html b/src/pages/options/instagram/instagram.html index b03040b7..dfb58722 100644 --- a/src/pages/options/instagram/instagram.html +++ b/src/pages/options/instagram/instagram.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/lbry/lbry.html b/src/pages/options/lbry/lbry.html index 4e3c1316..3802a149 100644 --- a/src/pages/options/lbry/lbry.html +++ b/src/pages/options/lbry/lbry.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/maps/maps.html b/src/pages/options/maps/maps.html index d7961b31..af7d0729 100644 --- a/src/pages/options/maps/maps.html +++ b/src/pages/options/maps/maps.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/medium/medium.html b/src/pages/options/medium/medium.html index 136081d7..87aff725 100644 --- a/src/pages/options/medium/medium.html +++ b/src/pages/options/medium/medium.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/peertube/peertube.html b/src/pages/options/peertube/peertube.html index d5ded94c..1ddc26ac 100644 --- a/src/pages/options/peertube/peertube.html +++ b/src/pages/options/peertube/peertube.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/reddit/reddit.html b/src/pages/options/reddit/reddit.html index 876369f9..754314eb 100644 --- a/src/pages/options/reddit/reddit.html +++ b/src/pages/options/reddit/reddit.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/search/search.html b/src/pages/options/search/search.html index 46914d19..8b22e43a 100644 --- a/src/pages/options/search/search.html +++ b/src/pages/options/search/search.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/sendTargets/sendTargets.html b/src/pages/options/sendTargets/sendTargets.html index 7a684175..f372b3b0 100644 --- a/src/pages/options/sendTargets/sendTargets.html +++ b/src/pages/options/sendTargets/sendTargets.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/tiktok/tiktok.html b/src/pages/options/tiktok/tiktok.html index 9b5932fc..89a14ba6 100644 --- a/src/pages/options/tiktok/tiktok.html +++ b/src/pages/options/tiktok/tiktok.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/translate/translate.html b/src/pages/options/translate/translate.html index 249ce0b1..c62ea5a6 100644 --- a/src/pages/options/translate/translate.html +++ b/src/pages/options/translate/translate.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/twitter/twitter.html b/src/pages/options/twitter/twitter.html index 95e0a0bf..2a477e60 100644 --- a/src/pages/options/twitter/twitter.html +++ b/src/pages/options/twitter/twitter.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/wikipedia/wikipedia.html b/src/pages/options/wikipedia/wikipedia.html index c8475f02..ba22bc31 100644 --- a/src/pages/options/wikipedia/wikipedia.html +++ b/src/pages/options/wikipedia/wikipedia.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/youtube/youtube.html b/src/pages/options/youtube/youtube.html index 20d13bd3..6a2036a1 100644 --- a/src/pages/options/youtube/youtube.html +++ b/src/pages/options/youtube/youtube.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
diff --git a/src/pages/options/youtubeMusic/youtubeMusic.html b/src/pages/options/youtubeMusic/youtubeMusic.html index 9910630e..845ec44a 100644 --- a/src/pages/options/youtubeMusic/youtubeMusic.html +++ b/src/pages/options/youtubeMusic/youtubeMusic.html @@ -31,7 +31,7 @@ Medium
-
Peertube
+
PeerTube
LBRY/Odysee
-- cgit 1.4.1