summaryrefslogtreecommitdiffstats
path: root/pages/options/options.js
diff options
context:
space:
mode:
authornitrohorse <1514352+nitrohorse@users.noreply.github.com>2020-09-05 19:50:59 -0700
committernitrohorse <1514352+nitrohorse@users.noreply.github.com>2020-09-05 19:50:59 -0700
commit91002404546b4154f3fa20de77a9267dff7594de (patch)
tree95684270ff82bf7be72740b2144a8399087f52ef /pages/options/options.js
parentae6f4f6a6cd9fbd5fe583f52782e94641c752706 (diff)
downloadprivacy-redirect-91002404546b4154f3fa20de77a9267dff7594de.tar.gz
privacy-redirect-91002404546b4154f3fa20de77a9267dff7594de.tar.bz2
privacy-redirect-91002404546b4154f3fa20de77a9267dff7594de.zip
Add support for the old Reddit design
Add support for redirecting Reddit links to the old desktop and mobile designs.
Diffstat (limited to 'pages/options/options.js')
-rw-r--r--pages/options/options.js24
1 files changed, 24 insertions, 0 deletions
diff --git a/pages/options/options.js b/pages/options/options.js
index 8149be7..ff08fa4 100644
--- a/pages/options/options.js
+++ b/pages/options/options.js
@@ -45,21 +45,28 @@ const bibliogramInstances = [
"https://bibliogram.ggc-project.de",
];
const osmInstances = ["https://openstreetmap.org"];
+const redditVersions = [
+ "https://old.reddit.com",
+ "https://i.reddit.com"
+];
const autocompletes = [
{ id: "nitter-instance", instances: nitterInstances },
{ id: "invidious-instance", instances: invidiousInstances },
{ id: "bibliogram-instance", instances: bibliogramInstances },
{ id: "osm-instance", instances: osmInstances },
+ { id: "reddit-version", instances: redditVersions },
];
let nitterInstance = document.getElementById("nitter-instance");
let invidiousInstance = document.getElementById("invidious-instance");
let bibliogramInstance = document.getElementById("bibliogram-instance");
let osmInstance = document.getElementById("osm-instance");
+let redditVersion = document.getElementById("reddit-version");
let disableNitter = document.getElementById("disable-nitter");
let disableInvidious = document.getElementById("disable-invidious");
let disableBibliogram = document.getElementById("disable-bibliogram");
let disableOsm = document.getElementById("disable-osm");
+let disableRedditVersion = document.getElementById("disable-reddit-version");
let alwaysProxy = document.getElementById("always-proxy");
let onlyEmbeddedVideo = document.getElementById("only-embed");
let videoQuality = document.getElementById("video-quality");
@@ -103,10 +110,12 @@ browser.storage.sync.get(
"invidiousInstance",
"bibliogramInstance",
"osmInstance",
+ "redditVersion",
"disableNitter",
"disableInvidious",
"disableBibliogram",
"disableOsm",
+ "disableRedditVersion",
"alwaysProxy",
"onlyEmbeddedVideo",
"videoQuality",
@@ -127,10 +136,12 @@ browser.storage.sync.get(
invidiousInstance.value = result.invidiousInstance || "";
bibliogramInstance.value = result.bibliogramInstance || "";
osmInstance.value = result.osmInstance || "";
+ redditVersion.value = result.redditVersion || "";
disableNitter.checked = !result.disableNitter;
disableInvidious.checked = !result.disableInvidious;
disableBibliogram.checked = !result.disableBibliogram;
disableOsm.checked = !result.disableOsm;
+ disableRedditVersion.checked = !result.disableRedditVersion;
alwaysProxy.checked = result.alwaysProxy;
onlyEmbeddedVideo.checked = result.onlyEmbeddedVideo;
videoQuality.value = result.videoQuality || "";
@@ -273,6 +284,15 @@ let osmInstanceChange = debounce(() => {
}, 500);
osmInstance.addEventListener("input", osmInstanceChange);
+let redditVersionChange = debounce(() => {
+ if (redditVersion.checkValidity()) {
+ browser.storage.sync.set({
+ redditVersion: parseURL(redditVersion.value),
+ });
+ }
+}, 500);
+redditVersion.addEventListener("input", redditVersionChange);
+
disableNitter.addEventListener("change", (event) => {
browser.storage.sync.set({ disableNitter: !event.target.checked });
});
@@ -289,6 +309,10 @@ disableOsm.addEventListener("change", (event) => {
browser.storage.sync.set({ disableOsm: !event.target.checked });
});
+disableRedditVersion.addEventListener("change", (event) => {
+ browser.storage.sync.set({ disableRedditVersion: !event.target.checked });
+});
+
alwaysProxy.addEventListener("change", (event) => {
browser.storage.sync.set({ alwaysProxy: event.target.checked });
});