From 0caf8992393b84006948aee8de1e303d978a2a8e Mon Sep 17 00:00:00 2001 From: ManeraKai Date: Mon, 21 Feb 2022 23:44:42 +0300 Subject: Added reddit tor support #32 --- src/pages/background/background.js | 2 +- src/pages/options/reddit/reddit.html | 389 ++++++++++++++++++++--------------- src/pages/options/reddit/reddit.js | 56 +++++ 3 files changed, 280 insertions(+), 167 deletions(-) (limited to 'src/pages') diff --git a/src/pages/background/background.js b/src/pages/background/background.js index d8351d5e..dced3481 100644 --- a/src/pages/background/background.js +++ b/src/pages/background/background.js @@ -65,7 +65,7 @@ browser.webRequest.onBeforeRequest.addListener( else if (translateHelper.isTranslate(url, initiator)) newUrl = translateHelper.redirect(url); - else if (searchHelper.isSearch(url, initiator)) newUrl = searchHelper.redirect(url) + else if (searchHelper.isSearch(url)) newUrl = searchHelper.redirect(url) else if (wikipediaHelper.isWikipedia(url, initiator)) newUrl = wikipediaHelper.redirect(url); diff --git a/src/pages/options/reddit/reddit.html b/src/pages/options/reddit/reddit.html index 98ec6754..2c44f029 100644 --- a/src/pages/options/reddit/reddit.html +++ b/src/pages/options/reddit/reddit.html @@ -2,190 +2,247 @@ - - - - - - LibRedirect Options: Reddit + + + + + + LibRedirect Options: Reddit - + + + + Wikipedia + +
+ + + + + + + + + + Medium +
+ -
+
-
-

Enable

- -
+
+

Enable

+ +
- +
+

Frontend

+ +
+
+

Protocol

+ +
+ +
+ +
+ +
-

Frontend

- +

Default Instances

+
+
-
+
+

Custom Instances

+
+
+
+ + +
+
+
+
-
-
-

Default Instances

-
-
-
-
-
-

Custom Instances

-
-
-
- - -
-
-
+
+
+

Default Instances

+
+
+
+
+

Custom Instances

+
+
+
+ + +
+
+
+
+ +
-
-
-

Default Instances

-
-
-
-
-
-

Custom Instances

-
-
-
- - -
-
-
+
+ +
+
+

Default Instances

+
+
+
+
+
+

Custom Instances

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

Default Instances

+
+
-
+
+
+

Custom Instances

+
+
+
+ + +
+
+
+ + +
- - - + + + - + \ No newline at end of file diff --git a/src/pages/options/reddit/reddit.js b/src/pages/options/reddit/reddit.js index 52f3245b..c682c3f0 100644 --- a/src/pages/options/reddit/reddit.js +++ b/src/pages/options/reddit/reddit.js @@ -28,6 +28,36 @@ redditFrontendElement.addEventListener("change", } ); +let protocolElement = document.getElementById("protocol") +protocolElement.addEventListener("change", + (event) => { + let protocol = event.target.options[protocolElement.selectedIndex].value + redditHelper.setProtocol(protocol); + changeProtocolSettings(protocol); + } +); + +function changeProtocolSettings(protocol) { + let normalLibredditDiv = document.getElementById("libreddit-normal"); + let torLibredditDiv = document.getElementById("libreddit-tor"); + + let normalTedditDiv = document.getElementById("teddit-normal"); + let torTedditDiv = document.getElementById("teddit-tor"); + if (protocol == 'normal') { + normalLibredditDiv.style.display = 'block'; + normalTedditDiv.style.display = 'block'; + torTedditDiv.style.display = 'none'; + torLibredditDiv.style.display = 'none'; + } + else if (protocol == 'tor') { + normalLibredditDiv.style.display = 'none'; + normalTedditDiv.style.display = 'none'; + torTedditDiv.style.display = 'block'; + torLibredditDiv.style.display = 'block'; + } +} + + redditHelper.init().then(() => { disableRedditElement.checked = !redditHelper.getDisableReddit(); @@ -35,6 +65,10 @@ redditHelper.init().then(() => { redditFrontendElement.value = frontend; changeFrontendsSettings(frontend); + let protocol = redditHelper.getprotocol(); + protocolElement.value = protocol; + changeProtocolSettings(protocol); + commonHelper.processDefaultCustomInstances( 'libreddit', 'normal', @@ -46,6 +80,17 @@ redditHelper.init().then(() => { redditHelper.setLibredditNormalCustomRedirects ) + commonHelper.processDefaultCustomInstances( + 'libreddit', + 'tor', + redditHelper, + document, + redditHelper.getLibredditTorRedirectsChecks, + redditHelper.setLibredditTorRedirectsChecks, + redditHelper.getLibredditTorCustomRedirects, + redditHelper.setLibredditTorCustomRedirects + ) + commonHelper.processDefaultCustomInstances( 'teddit', 'normal', @@ -57,4 +102,15 @@ redditHelper.init().then(() => { redditHelper.setTedditNormalCustomRedirects ); + commonHelper.processDefaultCustomInstances( + 'teddit', + 'tor', + redditHelper, + document, + redditHelper.getTedditTorRedirectsChecks, + redditHelper.setTedditTorRedirectsChecks, + redditHelper.getTedditTorCustomRedirects, + redditHelper.setTedditTorCustomRedirects + ); + }) \ No newline at end of file -- cgit 1.4.1