about summary refs log tree commit diff stats
path: root/src/pages
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2022-02-08 23:04:18 +0300
committerManeraKai <manerakai@protonmail.com>2022-02-08 23:04:18 +0300
commit6fb346569fa1fa0404c4aac3f9d979aa2c1de3ff (patch)
treec56afd935ae037e327b6e170daf58ab88825c3bf /src/pages
parentReverting scribe's regex at it's almost crashes browser #19 (diff)
downloadlibredirect-6fb346569fa1fa0404c4aac3f9d979aa2c1de3ff.zip
Added rimgo will improve on it #24
Diffstat (limited to 'src/pages')
-rw-r--r--src/pages/background/background.js27
-rw-r--r--src/pages/options/general/general.html1
-rw-r--r--src/pages/options/imgur/imgur.html65
-rw-r--r--src/pages/options/imgur/imgur.js21
-rw-r--r--src/pages/options/instagram/instagram.html1
-rw-r--r--src/pages/options/maps/maps.html1
-rw-r--r--src/pages/options/medium/medium.html3
-rw-r--r--src/pages/options/medium/medium.js2
-rw-r--r--src/pages/options/reddit/reddit.html1
-rw-r--r--src/pages/options/search/search.html1
-rw-r--r--src/pages/options/translate/translate.html1
-rw-r--r--src/pages/options/twitter/twitter.html1
-rw-r--r--src/pages/options/wikipedia/wikipedia.html1
-rw-r--r--src/pages/options/youtube/youtube.html1
-rw-r--r--src/pages/popup/popup.html7
-rw-r--r--src/pages/popup/popup.js10
16 files changed, 130 insertions, 14 deletions
diff --git a/src/pages/background/background.js b/src/pages/background/background.js
index 7ed4c8e7..e9d2f395 100644
--- a/src/pages/background/background.js
+++ b/src/pages/background/background.js
@@ -9,6 +9,7 @@ import translateHelper from "../../assets/javascripts/helpers/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";
 
 window.browser = window.browser || window.chrome;
 
@@ -22,6 +23,7 @@ function wholeInit() {
   twitterHelper.init()
   wikipediaHelper.init()
   youtubeHelper.init()
+  imgurHelper.init()
 }
 
 wholeInit();
@@ -51,6 +53,8 @@ browser.webRequest.onBeforeRequest.addListener(
 
     else if (mediumHelper.isMedium(url)) newUrl = mediumHelper.redirect(url, initiator, details.type);
 
+    else if (imgurHelper.isImgur(url)) newUrl = imgurHelper.redirect(url, initiator, details.type);
+
     else if (translateHelper.isTranslate(url)) newUrl = translateHelper.redirect(url, initiator);
 
     else if (searchHelper.isSearch(url)) newUrl = searchHelper.redirect(url, initiator)
@@ -92,24 +96,25 @@ browser.tabs.onUpdated.addListener((tabId, changeInfo, _) => {
   mightyList.push(
     ...youtubeHelper.getRedirects().invidious.normal,
     ...youtubeHelper.getRedirects().piped.normal,
-    
+
     ...twitterHelper.getRedirects().nitter.normal,
 
     ...instagramHelper.getRedirects().bibliogram.normal,
-    
+
     ...redditHelper.getRedirects().libreddit.normal,
     ...redditHelper.getRedirects().teddit.normal,
     redditHelper.getRedirects().desktop,
     redditHelper.getRedirects().mobile,
-    
+
     ...searchHelper.getRedirects().searx.normal,
     ...searchHelper.getRedirects().whoogle.normal,
-    
+
     ...translateHelper.getRedirects().simplyTranslate.normal,
     ...translateHelper.getRedirects().lingva.normal,
-    
+
     ...mediumHelper.getRedirects().scribe.normal,
-    
+    ...imgurHelper.getRedirects().rimgo.normal,
+
     ...wikipediaHelper.getRedirects().wikiless.normal
   );
 
@@ -128,9 +133,9 @@ browser.pageAction.onClicked.addListener((tab) => {
   )
     newUrl = 'https://youtube.com';
 
-  if (twitterHelper.getRedirects().normal.includes(protocolHost)) newUrl = 'https://twitter.com';
+  if (twitterHelper.getRedirects().nitter.normal.includes(protocolHost)) newUrl = 'https://twitter.com';
 
-  if (instagramHelper.getRedirects().normal.includes(protocolHost)) newUrl = 'https://instagram.com';
+  if (instagramHelper.getRedirects().bibliogram.normal.includes(protocolHost)) newUrl = 'https://instagram.com';
 
   if (redditHelper.getRedirects().libreddit.normal.includes(protocolHost) || redditHelper.getRedirects().teddit.normal.includes(protocolHost)) {
     if (tabUrl.pathname.startsWith('/img')) {
@@ -151,9 +156,11 @@ browser.pageAction.onClicked.addListener((tab) => {
     translateHelper.getRedirects().lingva.normal.includes(protocolHost)
   ) newUrl = 'https://translate.google.com';
 
-  if (mediumHelper.getRedirects().normal.includes(protocolHost)) newUrl = 'https://medium.com';
+  if (mediumHelper.getRedirects().scribe.normal.includes(protocolHost)) newUrl = 'https://medium.com';
+
+  if (imgurHelper.getRedirects().rimgo.normal.includes(protocolHost)) newUrl = 'https://imgur.com';
 
-  if (wikipediaHelper.getRedirects().normal.includes(protocolHost)) newUrl = 'https://wikipedia.com';
+  if (wikipediaHelper.getRedirects().wikiless.normal.includes(protocolHost)) newUrl = 'https://wikipedia.com';
 
   if (newUrl) browser.tabs.update({ url: tabUrl.href.replace(protocolHost, newUrl) });
 });
diff --git a/src/pages/options/general/general.html b/src/pages/options/general/general.html
index 3a9540a8..5dff25b7 100644
--- a/src/pages/options/general/general.html
+++ b/src/pages/options/general/general.html
@@ -21,6 +21,7 @@
     <a href="../translate/translate.html">Translate</a>
     <a href="../maps/maps.html">Maps</a>
     <a href="../wikipedia/wikipedia.html">Wikipedia</a>
+    <a href="../imgur/imgur.html">Imgur</a>
     <a href="../medium/medium.html">Medium</a>
   </section>
 
diff --git a/src/pages/options/imgur/imgur.html b/src/pages/options/imgur/imgur.html
new file mode 100644
index 00000000..9fdedd2e
--- /dev/null
+++ b/src/pages/options/imgur/imgur.html
@@ -0,0 +1,65 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="UTF-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg" />
+    <link href="../../stylesheets/styles.css" rel="stylesheet" />
+    <title>LibRedirect options: Twitter</title>
+</head>
+
+<body class="option">
+    <section class="links">
+        <a href="../general/general.html">General</a>
+        <a href="../youtube/youtube.html">Youtube</a>
+        <a href="../twitter/twitter.html">Twitter</a>
+        <a href="../instagram/instagram.html">Instagram</a>
+        <a href="../reddit/reddit.html">Reddit</a>
+        <a href="../search/search.html">Search</a>
+        <a href="../translate/translate.html">Translate</a>
+        <a href="../maps/maps.html">Maps</a>
+        <a href="../wikipedia/wikipedia.html">Wikipedia</a>
+        <a href="../imgur/imgur.html" class="selected">Imgur</a>
+        <a href="medium.html">Medium</a>
+    </section>
+
+    <section class="option-block">
+        <div class="some-block option-block">
+            <h4>Enable</h4>
+            <input id="disable-imgur" type="checkbox" checked />
+        </div>
+
+        <hr>
+
+        <div class="some-block option-block">
+            <h4>Default Instances</h4>
+        </div>
+        <div class="checklist" id="rimgo-checklist"></div>
+        <hr>
+        <div class="some-block option-block">
+            <h4>Custom Instances</h4>
+        </div>
+        <form id="custom-rimgo-instance-form">
+            <div class="some-block option-block">
+                <input id="rimgo-custom-instance" placeholder="https://rimgo.com" type="url" />
+                <button type="submit" class="add" id="rimgo-add-instance">
+                    <svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px"
+                        fill="currentColor">
+                        <path d="M0 0h24v24H0V0z" fill="none" />
+                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z" />
+                    </svg>
+                </button>
+            </div>
+        </form>
+        <div class="checklist" id="rimgo-custom-checklist"></div>
+    </section>
+
+
+    <script type="module" src="../init.js"></script>
+    <script type="module" src="./imgur.js"></script>
+    <!-- <script src="../../assets/javascripts/localise.js"></script> -->
+</body>
+
+</html>
\ No newline at end of file
diff --git a/src/pages/options/imgur/imgur.js b/src/pages/options/imgur/imgur.js
new file mode 100644
index 00000000..a0929553
--- /dev/null
+++ b/src/pages/options/imgur/imgur.js
@@ -0,0 +1,21 @@
+import imgurHelper from "../../../assets/javascripts/helpers/imgur.js";
+import commonHelper from "../../../assets/javascripts/helpers/common.js";
+
+let disableImgurElement = document.getElementById("disable-imgur");
+disableImgurElement.addEventListener("change",
+    (event) => imgurHelper.setDisableImgur(!event.target.checked)
+);
+
+imgurHelper.init().then(() => {
+    disableImgurElement.checked = !imgurHelper.getDisableImgur();
+
+    commonHelper.processDefaultCustomInstances(
+        'rimgo',
+        imgurHelper,
+        document,
+        imgurHelper.getRimgoRedirectsChecks,
+        imgurHelper.setRimgoRedirectsChecks,
+        imgurHelper.getRimgoCustomRedirects,
+        imgurHelper.setRimgoCustomRedirects
+    )
+})
\ No newline at end of file
diff --git a/src/pages/options/instagram/instagram.html b/src/pages/options/instagram/instagram.html
index 94abd2e8..1c67ecbc 100644
--- a/src/pages/options/instagram/instagram.html
+++ b/src/pages/options/instagram/instagram.html
@@ -21,6 +21,7 @@
         <a href="../translate/translate.html">Translate</a>
         <a href="../maps/maps.html">Maps</a>
         <a href="../wikipedia/wikipedia.html">Wikipedia</a>
+        <a href="../imgur/imgur.html">Imgur</a>
         <a href="../medium/medium.html">Medium</a>
     </section>
 
diff --git a/src/pages/options/maps/maps.html b/src/pages/options/maps/maps.html
index 293a5e02..e338b9fa 100644
--- a/src/pages/options/maps/maps.html
+++ b/src/pages/options/maps/maps.html
@@ -22,6 +22,7 @@
         <a href="../translate/translate.html">Translate</a>
         <a href="maps.html" class="selected">Maps</a>
         <a href="../wikipedia/wikipedia.html">Wikipedia</a>
+        <a href="../imgur/imgur.html">Imgur</a>
         <a href="../medium/medium.html">Medium</a>
     </section>
 
diff --git a/src/pages/options/medium/medium.html b/src/pages/options/medium/medium.html
index fc987d8c..60f58d23 100644
--- a/src/pages/options/medium/medium.html
+++ b/src/pages/options/medium/medium.html
@@ -21,13 +21,14 @@
         <a href="../translate/translate.html">Translate</a>
         <a href="../maps/maps.html">Maps</a>
         <a href="../wikipedia/wikipedia.html">Wikipedia</a>
+        <a href="../imgur/imgur.html">Imgur</a>
         <a href="medium.html" class="selected">Medium</a>
     </section>
 
     <section class="option-block">
         <div class="some-block option-block">
             <h4>Enable</h4>
-            <input id="disable-scribe" type="checkbox" checked />
+            <input id="disable-medium" type="checkbox" checked />
         </div>
 
         <hr>
diff --git a/src/pages/options/medium/medium.js b/src/pages/options/medium/medium.js
index c86f190a..b24fc2aa 100644
--- a/src/pages/options/medium/medium.js
+++ b/src/pages/options/medium/medium.js
@@ -1,7 +1,7 @@
 import mediumHelper from "../../../assets/javascripts/helpers/medium.js";
 import commonHelper from "../../../assets/javascripts/helpers/common.js";
 
-let disableMediumElement = document.getElementById("disable-scribe");
+let disableMediumElement = document.getElementById("disable-medium");
 disableMediumElement.addEventListener("change",
     (event) => mediumHelper.setDisableMedium(!event.target.checked)
 );
diff --git a/src/pages/options/reddit/reddit.html b/src/pages/options/reddit/reddit.html
index 92dd6696..472f367f 100644
--- a/src/pages/options/reddit/reddit.html
+++ b/src/pages/options/reddit/reddit.html
@@ -21,6 +21,7 @@
         <a href="../translate/translate.html">Translate</a>
         <a href="../maps/maps.html">Maps</a>
         <a href="../wikipedia/wikipedia.html">Wikipedia</a>
+        <a href="../imgur/imgur.html">Imgur</a>
         <a href="../medium/medium.html">Medium</a>
     </section>
 
diff --git a/src/pages/options/search/search.html b/src/pages/options/search/search.html
index 53a72b57..80d08f8c 100644
--- a/src/pages/options/search/search.html
+++ b/src/pages/options/search/search.html
@@ -21,6 +21,7 @@
         <a href="../translate/translate.html">Translate</a>
         <a href="../maps/maps.html">Maps</a>
         <a href="../wikipedia/wikipedia.html">Wikipedia</a>
+        <a href="../imgur/imgur.html">Imgur</a>
         <a href="../medium/medium.html">Medium</a>
     </section>
 
diff --git a/src/pages/options/translate/translate.html b/src/pages/options/translate/translate.html
index b9eed8e3..04dfc2bb 100644
--- a/src/pages/options/translate/translate.html
+++ b/src/pages/options/translate/translate.html
@@ -21,6 +21,7 @@
         <a href="translate.html" class="selected">Translate</a>
         <a href="../maps/maps.html">Maps</a>
         <a href="../wikipedia/wikipedia.html">Wikipedia</a>
+        <a href="../imgur/imgur.html">Imgur</a>
         <a href="../medium/medium.html">Medium</a>
     </section>
     <section class="option-block">
diff --git a/src/pages/options/twitter/twitter.html b/src/pages/options/twitter/twitter.html
index 267a93ca..b47a094e 100644
--- a/src/pages/options/twitter/twitter.html
+++ b/src/pages/options/twitter/twitter.html
@@ -22,6 +22,7 @@
         <a href="../translate/translate.html">Translate</a>
         <a href="../maps/maps.html">Maps</a>
         <a href="../wikipedia/wikipedia.html">Wikipedia</a>
+        <a href="../imgur/imgur.html">Imgur</a>
         <a href="../medium/medium.html">Medium</a>
     </section>
 
diff --git a/src/pages/options/wikipedia/wikipedia.html b/src/pages/options/wikipedia/wikipedia.html
index a3eafc15..4bd0b5e8 100644
--- a/src/pages/options/wikipedia/wikipedia.html
+++ b/src/pages/options/wikipedia/wikipedia.html
@@ -21,6 +21,7 @@
         <a href="../translate/translate.html">Translate</a>
         <a href="../maps/maps.html">Maps</a>
         <a href="../wikipedia/wikipedia.html" class="selected">Wikipedia</a>
+        <a href="../imgur/imgur.html">Imgur</a>
         <a href="../medium/medium.html">Medium</a>
     </section>
 
diff --git a/src/pages/options/youtube/youtube.html b/src/pages/options/youtube/youtube.html
index 6bb213ac..8c7ea787 100644
--- a/src/pages/options/youtube/youtube.html
+++ b/src/pages/options/youtube/youtube.html
@@ -22,6 +22,7 @@
         <a href="../translate/translate.html">Translate</a>
         <a href="../maps/maps.html">Maps</a>
         <a href="../wikipedia/wikipedia.html">Wikipedia</a>
+        <a href="../imgur/imgur.html">Imgur</a>
         <a href="../medium/medium.html">Medium</a>
     </section>
 
diff --git a/src/pages/popup/popup.html b/src/pages/popup/popup.html
index 4a1e9874..7a604f8b 100644
--- a/src/pages/popup/popup.html
+++ b/src/pages/popup/popup.html
@@ -50,8 +50,13 @@
   </div>
 
   <div class="some-block">
+    <h4>Imgur</h4>
+    <input id="disable-imgur" type="checkbox" checked />
+  </div>
+
+  <div class="some-block">
     <h4>Medium</h4>
-    <input id="disable-scribe" type="checkbox" checked />
+    <input id="disable-medium" type="checkbox" checked />
   </div>
 
   <div class="buttons">
diff --git a/src/pages/popup/popup.js b/src/pages/popup/popup.js
index 8625cf9b..9b5422d9 100644
--- a/src/pages/popup/popup.js
+++ b/src/pages/popup/popup.js
@@ -11,6 +11,7 @@ import searchHelper from "../../assets/javascripts/helpers/search.js";
 import translateHelper from "../../assets/javascripts/helpers/translate.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";
 
 let disableTwitterElement = document.querySelector("#disable-nitter");
 let disableYoutubeElement = document.querySelector("#disable-invidious");
@@ -20,7 +21,8 @@ let disableRedditElement = document.querySelector("#disable-reddit");
 let disableSearchElement = document.querySelector("#disable-search");
 let disableTranslateElement = document.querySelector("#disable-simplyTranslate");
 let disableWikipediaElement = document.querySelector("#disable-wikipedia");
-let disableMediumElement = document.querySelector("#disable-scribe");
+let disableMediumElement = document.querySelector("#disable-medium");
+let disableImgurElement = document.querySelector("#disable-imgur");
 
 window.browser = window.browser || window.chrome;
 
@@ -33,6 +35,7 @@ async function wholeInit() {
   await searchHelper.init();
   await translateHelper.init();
   await wikipediaHelper.init();
+  await imgurHelper.init();
   await mediumHelper.init();
 };
 
@@ -46,6 +49,7 @@ wholeInit().then(() => {
   disableSearchElement.checked = !searchHelper.getDisableSearch();
   disableTranslateElement.checked = !translateHelper.getDisableTranslate();
   disableWikipediaElement.checked = !wikipediaHelper.getDisableWikipedia();
+  disableImgurElement.checked = !imgurHelper.getDisableImgur();
   disableMediumElement.checked = !mediumHelper.getDisableMedium();
 })
 
@@ -81,6 +85,10 @@ disableWikipediaElement.addEventListener("change",
   (event) => wikipediaHelper.setDisableWikipedia(!event.target.checked)
 );
 
+disableImgurElement.addEventListener("change",
+  (event) => imgurHelper.setDisableImgur(!event.target.checked)
+);
+
 disableMediumElement.addEventListener("change",
   (event) => mediumHelper.setDisableMedium(!event.target.checked)
 );