From a9f95b3d1de44edf205508233a3526246842bbf3 Mon Sep 17 00:00:00 2001 From: ManeraKai Date: Fri, 4 Feb 2022 18:48:24 +0300 Subject: Cleaning and refining settings --- src/pages/options/general.html | 106 ----------------------- src/pages/options/general.js | 99 ---------------------- src/pages/options/general/general.html | 106 +++++++++++++++++++++++ src/pages/options/general/general.js | 99 ++++++++++++++++++++++ src/pages/options/instagram.html | 54 ------------ src/pages/options/instagram.js | 11 --- src/pages/options/instagram/instagram.html | 54 ++++++++++++ src/pages/options/instagram/instagram.js | 10 +++ src/pages/options/maps.html | 44 ---------- src/pages/options/maps.js | 11 --- src/pages/options/maps/maps.html | 44 ++++++++++ src/pages/options/maps/maps.js | 10 +++ src/pages/options/medium.html | 53 ------------ src/pages/options/medium.js | 11 --- src/pages/options/medium/medium.html | 53 ++++++++++++ src/pages/options/medium/medium.js | 10 +++ src/pages/options/reddit.html | 72 ---------------- src/pages/options/reddit.js | 17 ---- src/pages/options/reddit/reddit.html | 72 ++++++++++++++++ src/pages/options/reddit/reddit.js | 16 ++++ src/pages/options/search.html | 73 ---------------- src/pages/options/search.js | 17 ---- src/pages/options/search/search.html | 73 ++++++++++++++++ src/pages/options/search/search.js | 16 ++++ src/pages/options/shared.js | 1 - src/pages/options/translate.html | 51 ----------- src/pages/options/translate.js | 18 ---- src/pages/options/translate/translate.html | 51 +++++++++++ src/pages/options/translate/translate.js | 16 ++++ src/pages/options/twitter.html | 61 -------------- src/pages/options/twitter.js | 17 ---- src/pages/options/twitter/twitter.html | 61 ++++++++++++++ src/pages/options/twitter/twitter.js | 16 ++++ src/pages/options/wikipedia.html | 52 ------------ src/pages/options/wikipedia.js | 11 --- src/pages/options/wikipedia/wikipedia.html | 52 ++++++++++++ src/pages/options/wikipedia/wikipedia.js | 10 +++ src/pages/options/youtube.html | 130 ----------------------------- src/pages/options/youtube.js | 106 ----------------------- src/pages/options/youtube/youtube.html | 126 ++++++++++++++++++++++++++++ src/pages/options/youtube/youtube.js | 107 ++++++++++++++++++++++++ 41 files changed, 1002 insertions(+), 1015 deletions(-) delete mode 100644 src/pages/options/general.html delete mode 100644 src/pages/options/general.js create mode 100644 src/pages/options/general/general.html create mode 100644 src/pages/options/general/general.js delete mode 100644 src/pages/options/instagram.html delete mode 100644 src/pages/options/instagram.js create mode 100644 src/pages/options/instagram/instagram.html create mode 100644 src/pages/options/instagram/instagram.js delete mode 100644 src/pages/options/maps.html delete mode 100644 src/pages/options/maps.js create mode 100644 src/pages/options/maps/maps.html create mode 100644 src/pages/options/maps/maps.js delete mode 100644 src/pages/options/medium.html delete mode 100644 src/pages/options/medium.js create mode 100644 src/pages/options/medium/medium.html create mode 100644 src/pages/options/medium/medium.js delete mode 100644 src/pages/options/reddit.html delete mode 100644 src/pages/options/reddit.js create mode 100644 src/pages/options/reddit/reddit.html create mode 100644 src/pages/options/reddit/reddit.js delete mode 100644 src/pages/options/search.html delete mode 100644 src/pages/options/search.js create mode 100644 src/pages/options/search/search.html create mode 100644 src/pages/options/search/search.js delete mode 100644 src/pages/options/translate.html delete mode 100644 src/pages/options/translate.js create mode 100644 src/pages/options/translate/translate.html create mode 100644 src/pages/options/translate/translate.js delete mode 100644 src/pages/options/twitter.html delete mode 100644 src/pages/options/twitter.js create mode 100644 src/pages/options/twitter/twitter.html create mode 100644 src/pages/options/twitter/twitter.js delete mode 100644 src/pages/options/wikipedia.html delete mode 100644 src/pages/options/wikipedia.js create mode 100644 src/pages/options/wikipedia/wikipedia.html create mode 100644 src/pages/options/wikipedia/wikipedia.js delete mode 100644 src/pages/options/youtube.html delete mode 100644 src/pages/options/youtube.js create mode 100644 src/pages/options/youtube/youtube.html create mode 100644 src/pages/options/youtube/youtube.js (limited to 'src/pages/options') diff --git a/src/pages/options/general.html b/src/pages/options/general.html deleted file mode 100644 index 507e65c3..00000000 --- a/src/pages/options/general.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - - - LibRedirect Options - - - - - - - -
-
-

Theme

- -
- -
-
-

- Enter a URL or Regular Expression to be excluded from redirects. -

-

- All requests for or initiating from a URL that matches your exception - will be excluded from redirects. -

-

- Note - Supports JavaScript regular expressions, excluding the - enclosing forward slashes. -

-
-
- - - - - - - - - - - -
-

Add Exception

-
- - - - - - - - -
-
- -
- - - - - - - - \ No newline at end of file diff --git a/src/pages/options/general.js b/src/pages/options/general.js deleted file mode 100644 index 1104ba16..00000000 --- a/src/pages/options/general.js +++ /dev/null @@ -1,99 +0,0 @@ -"use strict"; - -import data from "../../assets/javascripts/data.js"; -import commonHelper from "../../assets/javascripts/helpers/common.js"; - -import shared from "./shared.js"; - -const domparser = new DOMParser(); - -let themeElement = document.getElementById("theme"); - -window.browser = window.browser || window.chrome; - -function prependExceptionsItem(item, index) { - const li = document.createElement("li"); - li.appendChild(document.createTextNode(item.toString())); - const button = document.createElement("button"); - li.appendChild(button); - document.getElementById("exceptions-items").prepend(li); - const svg = ` - - - `; - button.appendChild(domparser.parseFromString(svg, "image/svg+xml").documentElement); - button.addEventListener("click", () => { - exceptions.splice(index, 1); - browser.storage.sync.set({ exceptions: exceptions }); - li.remove(); - }); -} - -browser.storage.sync.get( - [ - "exceptions", - "theme", - ], - (result) => { - data.theme = result.theme || ""; - themeElement.value = result.theme || ""; - if (result.theme) document.body.classList.add(result.theme); - data.exceptions = result.exceptions || []; - data.exceptions.forEach(prependExceptionsItem); - shared.autocompletes.forEach((value) => { - }); - } -); - -function addToExceptions() { - const input = document.getElementById("new-exceptions-item"); - const type = document.querySelector('input[name="type"]:checked').value; - if (input.value) { - try { - let value = input.value; - new RegExp(input.value); - if (type === "URL") - value = value.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&"); - - exceptions.push(value); - browser.storage.sync.set({ - exceptions: exceptions, - }); - prependExceptionsItem(value, exceptions.indexOf(value)); - input.value = ""; - } catch (error) { - input.setCustomValidity("Invalid RegExp"); - } - } else { - input.setCustomValidity("Invalid RegExp"); - } -} -document.getElementById("add-to-exceptions").addEventListener("click", addToExceptions); - -themeElement.addEventListener("change", (event) => { - const value = event.target.options[theme.selectedIndex].value; - switch (value) { - case "dark-theme": - document.body.classList.add("dark-theme"); - document.body.classList.remove("light-theme"); - break; - case "light-theme": - document.body.classList.add("light-theme"); - document.body.classList.remove("dark-theme"); - break; - default: - document.body.classList.remove("light-theme"); - document.body.classList.remove("dark-theme"); - } - browser.storage.sync.set({ theme: value }); -}); - -document.querySelector("#update-instances").addEventListener("click", () => { - document.querySelector("#update-instances").innerHTML = '...'; - if (commonHelper.updateInstances()) - document.querySelector("#update-instances").innerHTML = 'Done!'; - else - document.querySelector("#update-instances").innerHTML = 'Failed Miserabely'; -}); diff --git a/src/pages/options/general/general.html b/src/pages/options/general/general.html new file mode 100644 index 00000000..8c46c40b --- /dev/null +++ b/src/pages/options/general/general.html @@ -0,0 +1,106 @@ + + + + + + + + LibRedirect Options + + + + + + + +
+
+

Theme

+ +
+ +
+
+

+ Enter a URL or Regular Expression to be excluded from redirects. +

+

+ All requests for or initiating from a URL that matches your exception + will be excluded from redirects. +

+

+ Note - Supports JavaScript regular expressions, excluding the + enclosing forward slashes. +

+
+
+ + + + + + + + + + + +
+

Add Exception

+
+ + + + + + + + +
+
+ +
+ + + + + + + + \ No newline at end of file diff --git a/src/pages/options/general/general.js b/src/pages/options/general/general.js new file mode 100644 index 00000000..4f111469 --- /dev/null +++ b/src/pages/options/general/general.js @@ -0,0 +1,99 @@ +"use strict"; + +import data from "../../../assets/javascripts/data.js"; +import commonHelper from "../../../assets/javascripts/helpers/common.js"; + +import shared from "../shared.js"; + +const domparser = new DOMParser(); + +let themeElement = document.getElementById("theme"); + +window.browser = window.browser || window.chrome; + +function prependExceptionsItem(item, index) { + const li = document.createElement("li"); + li.appendChild(document.createTextNode(item.toString())); + const button = document.createElement("button"); + li.appendChild(button); + document.getElementById("exceptions-items").prepend(li); + const svg = ` + + + `; + button.appendChild(domparser.parseFromString(svg, "image/svg+xml").documentElement); + button.addEventListener("click", () => { + exceptions.splice(index, 1); + browser.storage.sync.set({ exceptions: exceptions }); + li.remove(); + }); +} + +browser.storage.sync.get( + [ + "exceptions", + "theme", + ], + (result) => { + data.theme = result.theme || ""; + themeElement.value = result.theme || ""; + if (result.theme) document.body.classList.add(result.theme); + data.exceptions = result.exceptions || []; + data.exceptions.forEach(prependExceptionsItem); + shared.autocompletes.forEach((value) => { + }); + } +); + +function addToExceptions() { + const input = document.getElementById("new-exceptions-item"); + const type = document.querySelector('input[name="type"]:checked').value; + if (input.value) { + try { + let value = input.value; + new RegExp(input.value); + if (type === "URL") + value = value.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&"); + + exceptions.push(value); + browser.storage.sync.set({ + exceptions: exceptions, + }); + prependExceptionsItem(value, exceptions.indexOf(value)); + input.value = ""; + } catch (error) { + input.setCustomValidity("Invalid RegExp"); + } + } else { + input.setCustomValidity("Invalid RegExp"); + } +} +document.getElementById("add-to-exceptions").addEventListener("click", addToExceptions); + +themeElement.addEventListener("change", (event) => { + const value = event.target.options[theme.selectedIndex].value; + switch (value) { + case "dark-theme": + document.body.classList.add("dark-theme"); + document.body.classList.remove("light-theme"); + break; + case "light-theme": + document.body.classList.add("light-theme"); + document.body.classList.remove("dark-theme"); + break; + default: + document.body.classList.remove("light-theme"); + document.body.classList.remove("dark-theme"); + } + browser.storage.sync.set({ theme: value }); +}); + +document.querySelector("#update-instances").addEventListener("click", () => { + document.querySelector("#update-instances").innerHTML = '...'; + if (commonHelper.updateInstances()) + document.querySelector("#update-instances").innerHTML = 'Done!'; + else + document.querySelector("#update-instances").innerHTML = 'Failed Miserabely'; +}); diff --git a/src/pages/options/instagram.html b/src/pages/options/instagram.html deleted file mode 100644 index 25cfc8f2..00000000 --- a/src/pages/options/instagram.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - - - - - - - - - - -
-
-

Enable

- -
- - - - - -
- - - - - - \ No newline at end of file diff --git a/src/pages/options/instagram.js b/src/pages/options/instagram.js deleted file mode 100644 index b4e57def..00000000 --- a/src/pages/options/instagram.js +++ /dev/null @@ -1,11 +0,0 @@ -import instagramHelper from "../../assets/javascripts/helpers/instagram.js"; - -let disableInstagramElement = document.getElementById("disable-bibliogram"); - -instagramHelper.init().then(() => { - disableInstagramElement.checked = !instagramHelper.getDisableInstagram(); -}) - -disableInstagramElement.addEventListener("change", - (event) => instagramHelper.setDisableInstagram(!event.target.checked) -); \ No newline at end of file diff --git a/src/pages/options/instagram/instagram.html b/src/pages/options/instagram/instagram.html new file mode 100644 index 00000000..dfbbd7f7 --- /dev/null +++ b/src/pages/options/instagram/instagram.html @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + +
+
+

Enable

+ +
+ + + + + +
+ + + + + + \ No newline at end of file diff --git a/src/pages/options/instagram/instagram.js b/src/pages/options/instagram/instagram.js new file mode 100644 index 00000000..c5aad9c2 --- /dev/null +++ b/src/pages/options/instagram/instagram.js @@ -0,0 +1,10 @@ +import instagramHelper from "../../../assets/javascripts/helpers/instagram.js"; + +let disableInstagramElement = document.getElementById("disable-bibliogram"); +disableInstagramElement.addEventListener("change", + (event) => instagramHelper.setDisableInstagram(!event.target.checked) +); + +instagramHelper.init().then(() => { + disableInstagramElement.checked = !instagramHelper.getDisableInstagram(); +}) \ No newline at end of file diff --git a/src/pages/options/maps.html b/src/pages/options/maps.html deleted file mode 100644 index bfcedbaf..00000000 --- a/src/pages/options/maps.html +++ /dev/null @@ -1,44 +0,0 @@ - - - - - - - - - LibRedirect Options: Twitter - - - - - - -
-
-

Enable

- -
- -
- - - - - - \ No newline at end of file diff --git a/src/pages/options/maps.js b/src/pages/options/maps.js deleted file mode 100644 index 9e5bb2cc..00000000 --- a/src/pages/options/maps.js +++ /dev/null @@ -1,11 +0,0 @@ -import mapsHelper from "../../assets/javascripts/helpers/maps.js"; - -let disableMapsElement = document.getElementById("disable-osm"); - -mapsHelper.init().then(() => { - disableMapsElement.checked = !mapsHelper.getDisableMaps(); -}) - -disableMapsElement.addEventListener("change", - (event) => mapsHelper.setDisableMaps(!event.target.checked) -); \ No newline at end of file diff --git a/src/pages/options/maps/maps.html b/src/pages/options/maps/maps.html new file mode 100644 index 00000000..7702d019 --- /dev/null +++ b/src/pages/options/maps/maps.html @@ -0,0 +1,44 @@ + + + + + + + + + LibRedirect Options: Twitter + + + + + + +
+
+

Enable

+ +
+ +
+ + + + + + \ No newline at end of file diff --git a/src/pages/options/maps/maps.js b/src/pages/options/maps/maps.js new file mode 100644 index 00000000..edb1cca3 --- /dev/null +++ b/src/pages/options/maps/maps.js @@ -0,0 +1,10 @@ +import mapsHelper from "../../../assets/javascripts/helpers/maps.js"; + +let disableMapsElement = document.getElementById("disable-osm"); +disableMapsElement.addEventListener("change", + (event) => mapsHelper.setDisableMaps(!event.target.checked) +); + +mapsHelper.init().then(() => { + disableMapsElement.checked = !mapsHelper.getDisableMaps(); +}) \ No newline at end of file diff --git a/src/pages/options/medium.html b/src/pages/options/medium.html deleted file mode 100644 index fb44b7ee..00000000 --- a/src/pages/options/medium.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - - - - - LibRedirect Options: Twitter - - - - - -
-
-

Enable

- -
- -
- - - - - - - \ No newline at end of file diff --git a/src/pages/options/medium.js b/src/pages/options/medium.js deleted file mode 100644 index 4f0377f5..00000000 --- a/src/pages/options/medium.js +++ /dev/null @@ -1,11 +0,0 @@ -import mediumHelper from "../../assets/javascripts/helpers/medium.js"; - -let disableMediumElement = document.getElementById("disable-scribe"); - -mediumHelper.init().then(() => { - disableMediumElement.checked = !mediumHelper.getDisableMedium(); -}) - -disableMediumElement.addEventListener("change", - (event) => mediumHelper.setDisableMedium(!event.target.checked) -); diff --git a/src/pages/options/medium/medium.html b/src/pages/options/medium/medium.html new file mode 100644 index 00000000..877d704e --- /dev/null +++ b/src/pages/options/medium/medium.html @@ -0,0 +1,53 @@ + + + + + + + + + LibRedirect Options: Twitter + + + + + +
+
+

Enable

+ +
+ +
+ + + + + + + \ No newline at end of file diff --git a/src/pages/options/medium/medium.js b/src/pages/options/medium/medium.js new file mode 100644 index 00000000..fea66855 --- /dev/null +++ b/src/pages/options/medium/medium.js @@ -0,0 +1,10 @@ +import mediumHelper from "../../../assets/javascripts/helpers/medium.js"; + +let disableMediumElement = document.getElementById("disable-scribe"); +disableMediumElement.addEventListener("change", + (event) => mediumHelper.setDisableMedium(!event.target.checked) +); + +mediumHelper.init().then(() => { + disableMediumElement.checked = !mediumHelper.getDisableMedium(); +}) \ No newline at end of file diff --git a/src/pages/options/reddit.html b/src/pages/options/reddit.html deleted file mode 100644 index 14474285..00000000 --- a/src/pages/options/reddit.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - LibRedirect Options: Twitter - - - - - - -
- -
-

Enable

- -
- - - -
-

Frontend

- -
- - - -
- - - - - - - \ No newline at end of file diff --git a/src/pages/options/reddit.js b/src/pages/options/reddit.js deleted file mode 100644 index 0222c6dd..00000000 --- a/src/pages/options/reddit.js +++ /dev/null @@ -1,17 +0,0 @@ -import redditHelper from "../../assets/javascripts/helpers/reddit.js"; - -let disableRedditElement = document.getElementById("disable-reddit"); -let redditFrontendElement = document.getElementById("reddit-frontend"); - -redditHelper.init().then(() => { - disableRedditElement.checked = !redditHelper.getDisableReddit(); - redditFrontendElement.value = redditHelper.getRedditFrontend(); -}) - -disableRedditElement.addEventListener("change", - (event) => redditHelper.setDisableReddit(!event.target.checked) -); - -redditFrontendElement.addEventListener("change", - (event) => redditHelper.setRedditFrontend(event.target.options[redditFrontendElement.selectedIndex].value) -); \ No newline at end of file diff --git a/src/pages/options/reddit/reddit.html b/src/pages/options/reddit/reddit.html new file mode 100644 index 00000000..b3f9c7c7 --- /dev/null +++ b/src/pages/options/reddit/reddit.html @@ -0,0 +1,72 @@ + + + + + + + + + LibRedirect Options: Twitter + + + + + + +
+ +
+

Enable

+ +
+ + + +
+

Frontend

+ +
+ + + +
+ + + + + + + \ No newline at end of file diff --git a/src/pages/options/reddit/reddit.js b/src/pages/options/reddit/reddit.js new file mode 100644 index 00000000..92bd6e46 --- /dev/null +++ b/src/pages/options/reddit/reddit.js @@ -0,0 +1,16 @@ +import redditHelper from "../../../assets/javascripts/helpers/reddit.js"; + +let disableRedditElement = document.getElementById("disable-reddit"); +disableRedditElement.addEventListener("change", + (event) => redditHelper.setDisableReddit(!event.target.checked) +); + +let redditFrontendElement = document.getElementById("reddit-frontend"); +redditFrontendElement.addEventListener("change", + (event) => redditHelper.setRedditFrontend(event.target.options[redditFrontendElement.selectedIndex].value) +); + +redditHelper.init().then(() => { + disableRedditElement.checked = !redditHelper.getDisableReddit(); + redditFrontendElement.value = redditHelper.getRedditFrontend(); +}) \ No newline at end of file diff --git a/src/pages/options/search.html b/src/pages/options/search.html deleted file mode 100644 index d0510eed..00000000 --- a/src/pages/options/search.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - - - - LibRedirect Options: Twitter - - - - - -
-
-

Enable

- -
- - -
-

Frontend

- -
- - -
- - - - - - - - - \ No newline at end of file diff --git a/src/pages/options/search.js b/src/pages/options/search.js deleted file mode 100644 index 2029392c..00000000 --- a/src/pages/options/search.js +++ /dev/null @@ -1,17 +0,0 @@ -import searchHelper from "../../assets/javascripts/helpers/search.js"; - -let disableSearchElement = document.getElementById("disable-search"); -let searchFrontendElement = document.getElementById("search-frontend"); - -searchHelper.init().then(() => { - disableSearchElement.checked = !searchHelper.getDisableSearch(); - searchFrontendElement.value = searchHelper.getSearchFrontend(); -}); - -searchFrontendElement.addEventListener("change", - (event) => searchHelper.setSearchFrontend(event.target.options[searchFrontendElement.selectedIndex].value) -); - -disableSearchElement.addEventListener("change", - (event) => searchHelper.setDisableSearch(!event.target.checked) -); diff --git a/src/pages/options/search/search.html b/src/pages/options/search/search.html new file mode 100644 index 00000000..863a3472 --- /dev/null +++ b/src/pages/options/search/search.html @@ -0,0 +1,73 @@ + + + + + + + + + LibRedirect Options: Twitter + + + + + +
+
+

Enable

+ +
+ + +
+

Frontend

+ +
+ + +
+ + + + + + + + + \ No newline at end of file diff --git a/src/pages/options/search/search.js b/src/pages/options/search/search.js new file mode 100644 index 00000000..e38480e2 --- /dev/null +++ b/src/pages/options/search/search.js @@ -0,0 +1,16 @@ +import searchHelper from "../../../assets/javascripts/helpers/search.js"; + +let searchFrontendElement = document.getElementById("search-frontend"); +searchFrontendElement.addEventListener("change", + (event) => searchHelper.setSearchFrontend(event.target.options[searchFrontendElement.selectedIndex].value) +); + +let disableSearchElement = document.getElementById("disable-search"); +disableSearchElement.addEventListener("change", + (event) => searchHelper.setDisableSearch(!event.target.checked) +); + +searchHelper.init().then(() => { + disableSearchElement.checked = !searchHelper.getDisableSearch(); + searchFrontendElement.value = searchHelper.getSearchFrontend(); +}); diff --git a/src/pages/options/shared.js b/src/pages/options/shared.js index 62da2504..36f2ef27 100644 --- a/src/pages/options/shared.js +++ b/src/pages/options/shared.js @@ -107,7 +107,6 @@ function autocomplete(input, list) { }); } - export default { autocompletes, parseURL, diff --git a/src/pages/options/translate.html b/src/pages/options/translate.html deleted file mode 100644 index b193130a..00000000 --- a/src/pages/options/translate.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - LibRedirect Options: Twitter - - - - -
-
-

Enable

- -
- - -
-

Frontend

- -
-
- - - - - - - \ No newline at end of file diff --git a/src/pages/options/translate.js b/src/pages/options/translate.js deleted file mode 100644 index 84a12ab0..00000000 --- a/src/pages/options/translate.js +++ /dev/null @@ -1,18 +0,0 @@ -import translateHelper from "../../assets/javascripts/helpers/translate.js"; - -let disableTranslateElement = document.getElementById("disable-simplyTranslate"); -let translateFrontendElement = document.getElementById("translate-frontend"); - - -translateHelper.init().then(() => { - disableTranslateElement.checked = !translateHelper.getDisableTranslate(); - translateFrontendElement.value = translateHelper.getFrontend(); -}); - -disableTranslateElement.addEventListener("change", - (event) => translateHelper.setDisableTranslate(!event.target.checked) -); - -translateFrontendElement.addEventListener("change", - (event) => translateHelper.setFrontend(event.target.options[translateFrontendElement.selectedIndex].value) -); diff --git a/src/pages/options/translate/translate.html b/src/pages/options/translate/translate.html new file mode 100644 index 00000000..3b6d7580 --- /dev/null +++ b/src/pages/options/translate/translate.html @@ -0,0 +1,51 @@ + + + + + + + + + LibRedirect Options: Twitter + + + + +
+
+

Enable

+ +
+ + +
+

Frontend

+ +
+
+ + + + + + + \ No newline at end of file diff --git a/src/pages/options/translate/translate.js b/src/pages/options/translate/translate.js new file mode 100644 index 00000000..480b754e --- /dev/null +++ b/src/pages/options/translate/translate.js @@ -0,0 +1,16 @@ +import translateHelper from "../../../assets/javascripts/helpers/translate.js"; + +let disableTranslateElement = document.getElementById("disable-simplyTranslate"); +disableTranslateElement.addEventListener("change", + (event) => translateHelper.setDisableTranslate(!event.target.checked) +); + +let translateFrontendElement = document.getElementById("translate-frontend"); +translateFrontendElement.addEventListener("change", + (event) => translateHelper.setFrontend(event.target.options[translateFrontendElement.selectedIndex].value) +); + +translateHelper.init().then(() => { + disableTranslateElement.checked = !translateHelper.getDisableTranslate(); + translateFrontendElement.value = translateHelper.getFrontend(); +}); \ No newline at end of file diff --git a/src/pages/options/twitter.html b/src/pages/options/twitter.html deleted file mode 100644 index 555b3f64..00000000 --- a/src/pages/options/twitter.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - - - LibRedirect Options: Twitter - - - - - - -
- -
-

Enable

- -
- - - -
-

Proactively remove Twitter service worker

- -
- -
- - - - - - - \ No newline at end of file diff --git a/src/pages/options/twitter.js b/src/pages/options/twitter.js deleted file mode 100644 index f8fdd8ce..00000000 --- a/src/pages/options/twitter.js +++ /dev/null @@ -1,17 +0,0 @@ -import twitterHelper from "../../assets/javascripts/helpers/twitter.js"; - -let removeTwitterSWElement = document.getElementById("remove-twitter-sw"); -let disableTwitterElement = document.getElementById("disable-nitter"); - -twitterHelper.init().then(() => { - disableTwitterElement.checked = !twitterHelper.getDisableTwitter(); - removeTwitterSWElement.checked = !remove.getRemoveTwitterSW; // Problem -}); - -disableTwitterElement.addEventListener("change", - (event) => twitterHelper.setDisableTwitter(!event.target.checked) -); - -removeTwitterSWElement.addEventListener("change", (event) => { - browser.storage.sync.set({ removeTwitterSW: !event.target.checked }); // Problem -}); diff --git a/src/pages/options/twitter/twitter.html b/src/pages/options/twitter/twitter.html new file mode 100644 index 00000000..b695a8b2 --- /dev/null +++ b/src/pages/options/twitter/twitter.html @@ -0,0 +1,61 @@ + + + + + + + + + LibRedirect Options: Twitter + + + + + + +
+ +
+

Enable

+ +
+ + + +
+

Proactively remove Twitter service worker

+ +
+ +
+ + + + + + + \ No newline at end of file diff --git a/src/pages/options/twitter/twitter.js b/src/pages/options/twitter/twitter.js new file mode 100644 index 00000000..08fabb20 --- /dev/null +++ b/src/pages/options/twitter/twitter.js @@ -0,0 +1,16 @@ +import twitterHelper from "../../../assets/javascripts/helpers/twitter.js"; + +let disableTwitterElement = document.getElementById("disable-nitter"); +disableTwitterElement.addEventListener("change", + (event) => twitterHelper.setDisableTwitter(!event.target.checked) +); + +let removeTwitterSWElement = document.getElementById("remove-twitter-sw"); +removeTwitterSWElement.addEventListener("change", (event) => { + browser.storage.sync.set({ removeTwitterSW: !event.target.checked }); // Problem +}); + +twitterHelper.init().then(() => { + disableTwitterElement.checked = !twitterHelper.getDisableTwitter(); + removeTwitterSWElement.checked = !remove.getRemoveTwitterSW; // Problem +}); \ No newline at end of file diff --git a/src/pages/options/wikipedia.html b/src/pages/options/wikipedia.html deleted file mode 100644 index d3cc5cb2..00000000 --- a/src/pages/options/wikipedia.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - LibRedirect Options: Twitter - - - - - -
-
-

Enable

- -
- -
- - - - - - - \ No newline at end of file diff --git a/src/pages/options/wikipedia.js b/src/pages/options/wikipedia.js deleted file mode 100644 index 95ef6406..00000000 --- a/src/pages/options/wikipedia.js +++ /dev/null @@ -1,11 +0,0 @@ -import wikipediaHelper from "../../assets/javascripts/helpers/wikipedia.js"; - -let disableWikipediaElement = document.getElementById("disable-wikipedia"); - -wikipediaHelper.init().then(() => { - disableWikipediaElement.checked = !wikipediaHelper.getDisableWikipedia(); -}) - -disableWikipediaElement.addEventListener("change", - (event) => wikipediaHelper.setDisableWikipedia(!event.target.checked) -); \ No newline at end of file diff --git a/src/pages/options/wikipedia/wikipedia.html b/src/pages/options/wikipedia/wikipedia.html new file mode 100644 index 00000000..1a4ea8d5 --- /dev/null +++ b/src/pages/options/wikipedia/wikipedia.html @@ -0,0 +1,52 @@ + + + + + + + + + LibRedirect Options: Twitter + + + + + +
+
+

Enable

+ +
+ +
+ + + + + + + \ No newline at end of file diff --git a/src/pages/options/wikipedia/wikipedia.js b/src/pages/options/wikipedia/wikipedia.js new file mode 100644 index 00000000..08a9a6e0 --- /dev/null +++ b/src/pages/options/wikipedia/wikipedia.js @@ -0,0 +1,10 @@ +import wikipediaHelper from "../../../assets/javascripts/helpers/wikipedia.js"; + +let disableWikipediaElement = document.getElementById("disable-wikipedia"); +disableWikipediaElement.addEventListener("change", + (event) => wikipediaHelper.setDisableWikipedia(!event.target.checked) +); + +wikipediaHelper.init().then(() => { + disableWikipediaElement.checked = !wikipediaHelper.getDisableWikipedia(); +}) \ No newline at end of file diff --git a/src/pages/options/youtube.html b/src/pages/options/youtube.html deleted file mode 100644 index c1bd830e..00000000 --- a/src/pages/options/youtube.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - - - LibRedirect Options: Twitter - - - - - - -
-
-

Enable

- -
- - - - - -
-

Frontend

- -
- -
- -
-
-

Player Style

- -
- -
-

Dark mode

- -
- -
-

Volume: 50%

- -
- -
-

Use FreeTube over Invidious when possible

- -
- -
-

Always proxy videos through Invidious

- -
- -
-

Only redirect embedded video to Invidious

- -
- -
-

Video Quality

- -
- -
-

Subtitles - language codes

- -
- -
-

Automatically play video on load

- -
- -
-

Persist preferences (as cookie)

- -
-
- -
- -
- - - - - - - \ No newline at end of file diff --git a/src/pages/options/youtube.js b/src/pages/options/youtube.js deleted file mode 100644 index c592b4cc..00000000 --- a/src/pages/options/youtube.js +++ /dev/null @@ -1,106 +0,0 @@ -import youtubeHelper from "../../assets/javascripts/helpers/youtube.js"; -import commonHelper from "../../assets/javascripts/helpers/common.js"; - -let disableYoutubeElement = document.getElementById("disable-invidious"); -let youtubeFrontendElement = document.getElementById("youtube-frontend"); -let invidiousDarkModeElement = document.getElementById("invidious-dark-mode"); -let persistInvidiousPrefsElement = document.getElementById("persist-invidious-prefs"); -let invidiousVolumeElement = document.getElementById("invidious-volume"); -let invidiousPlayerStyleElement = document.getElementById("invidious-player-style"); -let invidiousSubtitlesElement = document.getElementById("invidious-subtitles"); -let invidiousAutoplayElement = document.getElementById("invidious-autoplay"); -let useFreeTubeElement = document.getElementById("use-freetube"); -let invidiousAlwaysProxyElement = document.getElementById("always-proxy"); -let invidiousOnlyEmbeddedVideoElement = document.getElementById("only-embed"); -let invidiousVideoQualityElement = document.getElementById("video-quality"); -let invidiousVolumeValueElement = document.querySelector("#volume-value"); - -let invidiousDivElement = document.getElementById("invidious") -let pipedDivElement = document.getElementById("piped") - -function changeFrontendsSettings(frontend) { - if (frontend == 'piped') { - pipedDivElement.style.display = 'block'; - invidiousDivElement.style.display = 'none'; - } - else if (frontend == 'invidious') { - pipedDivElement.style.display = 'none'; - invidiousDivElement.style.display = 'block'; - } -} - -youtubeHelper.init().then(() => { - disableYoutubeElement.checked = !youtubeHelper.getDisableYoutube(); - invidiousDarkModeElement.checked = youtubeHelper.getInvidiousDarkMode(); - persistInvidiousPrefsElement.checked = youtubeHelper.getPersistInvidiousPrefs(); - invidiousVolumeElement.value = youtubeHelper.getInvidiousVolume(); - invidiousVolumeValueElement.textContent = `${youtubeHelper.getInvidiousVolume()}%`; - invidiousPlayerStyleElement.value = youtubeHelper.getInvidiousPlayerStyle(); - invidiousSubtitlesElement.value = youtubeHelper.getInvidiousSubtitles(); - useFreeTubeElement.checked = youtubeHelper.getUseFreeTube(); - invidiousOnlyEmbeddedVideoElement.checked = youtubeHelper.getInvidiousOnlyEmbeddedVideo(); - invidiousAlwaysProxyElement.checked = youtubeHelper.getInvidiousAlwaysProxy(); - invidiousVideoQualityElement.value = youtubeHelper.getInvidiousVideoQuality(); - invidiousAutoplayElement.checked = youtubeHelper.getInvidiousAutoplay(); - let frontend = youtubeHelper.getFrontend() - youtubeFrontendElement.value = frontend; - changeFrontendsSettings(frontend); -}); - - -disableYoutubeElement.addEventListener("change", - (event) => youtubeHelper.setDisableYoutube(!event.target.checked) -); - -invidiousDarkModeElement.addEventListener("change", - (event) => youtubeHelper.setInvidiousDarkMode(event.target.checked) -); - -persistInvidiousPrefsElement.addEventListener("change", - (event) => youtubeHelper.setPersistInvidiousPrefs(event.target.checked) -); - -invidiousVolumeElement.addEventListener("input", - () => { - youtubeHelper.setInvidiousVolume(invidiousVolumeElement.value); - invidiousVolumeValueElement.textContent = `${invidiousVolumeElement.value}%`; - } -); - -invidiousPlayerStyleElement.addEventListener("change", - (event) => youtubeHelper.setInvidiousPlayerStyle(event.target.options[invidiousPlayerStyleElement.selectedIndex].value) -); - -invidiousSubtitlesElement.addEventListener("input", - commonHelper.debounce(() => { - youtubeHelper.setInvidiousSubtitles(invidiousSubtitlesElement.value) - }, 500) -); - -invidiousAutoplayElement.addEventListener("change", - (event) => youtubeHelper.setInvidiousAutoplay(event.target.checked) -); - -useFreeTubeElement.addEventListener("change", - (event) => youtubeHelper.setUseFreeTube(event.target.checked) -); - -invidiousAlwaysProxyElement.addEventListener("change", - (event) => youtubeHelper.setInvidiousAlwaysProxy(event.target.checked) -); - -invidiousOnlyEmbeddedVideoElement.addEventListener("change", - (event) => youtubeHelper.setInvidiousOnlyEmbeddedVideo(event.target.checked) -); - -invidiousVideoQualityElement.addEventListener("change", - (event) => youtubeHelper.setInvidiousVideoQuality(event.target.options[invidiousVideoQualityElement.selectedIndex].value) -); - -youtubeFrontendElement.addEventListener("change", - (event) => { - let frontend = event.target.options[youtubeFrontendElement.selectedIndex].value - youtubeHelper.setFrontend(frontend); - changeFrontendsSettings(frontend); - } -); \ No newline at end of file diff --git a/src/pages/options/youtube/youtube.html b/src/pages/options/youtube/youtube.html new file mode 100644 index 00000000..15688873 --- /dev/null +++ b/src/pages/options/youtube/youtube.html @@ -0,0 +1,126 @@ + + + + + + + + + LibRedirect Options: Twitter + + + + + + +
+
+

Enable

+ +
+ + + + + +
+

Frontend

+ +
+ +
+ +
+
+

Player Style

+ +
+ +
+

Dark mode

+ +
+ +
+

Volume: 50%

+ +
+ +
+

Always proxy videos through Invidious

+ +
+ +
+

Only redirect embedded video to Invidious

+ +
+ +
+

Video Quality

+ +
+ +
+

Subtitles - language codes

+ +
+ +
+

Automatically play video on load

+ +
+ +
+

Persist preferences (as cookie)

+ +
+
+ +
+ +
+ + + + + + + \ No newline at end of file diff --git a/src/pages/options/youtube/youtube.js b/src/pages/options/youtube/youtube.js new file mode 100644 index 00000000..c1d526da --- /dev/null +++ b/src/pages/options/youtube/youtube.js @@ -0,0 +1,107 @@ +import youtubeHelper from "../../../assets/javascripts/helpers/youtube/youtube.js"; +import commonHelper from "../../../assets/javascripts/helpers/common.js"; + +let disableYoutubeElement = document.getElementById("disable-invidious"); + +let youtubeFrontendElement = document.getElementById("youtube-frontend"); +let invidiousDivElement = document.getElementById("invidious") +let pipedDivElement = document.getElementById("piped") +function changeFrontendsSettings(frontend) { + if (frontend == 'piped') { + pipedDivElement.style.display = 'block'; + invidiousDivElement.style.display = 'none'; + } + else if (frontend == 'invidious') { + pipedDivElement.style.display = 'none'; + invidiousDivElement.style.display = 'block'; + } + else if (frontend == 'freeTube') { + pipedDivElement.style.display = 'none'; + invidiousDivElement.style.display = 'none'; + } +} +youtubeFrontendElement.addEventListener("change", + (event) => { + let frontend = event.target.options[youtubeFrontendElement.selectedIndex].value + youtubeHelper.setFrontend(frontend); + changeFrontendsSettings(frontend); + } +); + +disableYoutubeElement.addEventListener("change", + (event) => youtubeHelper.setDisableYoutube(!event.target.checked) +); + +let invidiousDarkModeElement = document.getElementById("invidious-dark-mode"); +invidiousDarkModeElement.addEventListener("change", + (event) => youtubeHelper.setInvidiousDarkMode(event.target.checked) +); + +let persistInvidiousPrefsElement = document.getElementById("persist-invidious-prefs"); +persistInvidiousPrefsElement.addEventListener("change", + (event) => youtubeHelper.setPersistInvidiousPrefs(event.target.checked) +); + +let invidiousVolumeElement = document.getElementById("invidious-volume"); +let invidiousVolumeValueElement = document.querySelector("#volume-value"); +invidiousVolumeElement.addEventListener("input", + () => { + youtubeHelper.setInvidiousVolume(invidiousVolumeElement.value); + invidiousVolumeValueElement.textContent = `${invidiousVolumeElement.value}%`; + } +); + +let invidiousPlayerStyleElement = document.getElementById("invidious-player-style"); +invidiousPlayerStyleElement.addEventListener("change", + (event) => youtubeHelper.setInvidiousPlayerStyle(event.target.options[invidiousPlayerStyleElement.selectedIndex].value) +); + +let invidiousSubtitlesElement = document.getElementById("invidious-subtitles"); +invidiousSubtitlesElement.addEventListener("input", + commonHelper.debounce(() => { + youtubeHelper.setInvidiousSubtitles(invidiousSubtitlesElement.value) + }, 500) +); + +let invidiousAutoplayElement = document.getElementById("invidious-autoplay"); +invidiousAutoplayElement.addEventListener("change", + (event) => youtubeHelper.setInvidiousAutoplay(event.target.checked) +); + +let invidiousAlwaysProxyElement = document.getElementById("always-proxy"); +invidiousAlwaysProxyElement.addEventListener("change", + (event) => youtubeHelper.setInvidiousAlwaysProxy(event.target.checked) +); + +let invidiousOnlyEmbeddedVideoElement = document.getElementById("only-embed"); +invidiousOnlyEmbeddedVideoElement.addEventListener("change", + (event) => youtubeHelper.setInvidiousOnlyEmbeddedVideo(event.target.checked) +); + +let invidiousVideoQualityElement = document.getElementById("video-quality"); +invidiousVideoQualityElement.addEventListener("change", + (event) => youtubeHelper.setInvidiousVideoQuality(event.target.options[invidiousVideoQualityElement.selectedIndex].value) +); + + +youtubeHelper.init().then(() => { + disableYoutubeElement.checked = !youtubeHelper.getDisableYoutube(); + invidiousDarkModeElement.checked = youtubeHelper.getInvidiousDarkMode(); + persistInvidiousPrefsElement.checked = youtubeHelper.getPersistInvidiousPrefs(); + invidiousVolumeElement.value = youtubeHelper.getInvidiousVolume(); + invidiousVolumeValueElement.textContent = `${youtubeHelper.getInvidiousVolume()}%`; + invidiousPlayerStyleElement.value = youtubeHelper.getInvidiousPlayerStyle(); + invidiousSubtitlesElement.value = youtubeHelper.getInvidiousSubtitles(); + invidiousOnlyEmbeddedVideoElement.checked = youtubeHelper.getInvidiousOnlyEmbeddedVideo(); + invidiousAlwaysProxyElement.checked = youtubeHelper.getInvidiousAlwaysProxy(); + invidiousVideoQualityElement.value = youtubeHelper.getInvidiousVideoQuality(); + invidiousAutoplayElement.checked = youtubeHelper.getInvidiousAutoplay(); + let frontend = youtubeHelper.getFrontend() + youtubeFrontendElement.value = frontend; + changeFrontendsSettings(frontend); +}); + + + + + -- cgit 1.4.1