about summary refs log tree commit diff stats
path: root/src/pages/options/widgets
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2022-06-12 18:51:47 +0300
committerManeraKai <manerakai@protonmail.com>2022-06-12 18:51:47 +0300
commitcc8b5e4e5f4d865df2f58805cbe19ec06e21c195 (patch)
tree346fd7b3665bb32d5c9817059cebc9690f825234 /src/pages/options/widgets
parentBypassing homepage for quora, medium, imgur #327 (diff)
downloadlibredirect-cc8b5e4e5f4d865df2f58805cbe19ec06e21c195.zip
Added libremdb #230
Diffstat (limited to 'src/pages/options/widgets')
-rw-r--r--src/pages/options/widgets/general.js2
-rw-r--r--src/pages/options/widgets/general.pug6
-rw-r--r--src/pages/options/widgets/imdb.js42
-rw-r--r--src/pages/options/widgets/imdb.pug26
4 files changed, 76 insertions, 0 deletions
diff --git a/src/pages/options/widgets/general.js b/src/pages/options/widgets/general.js
index 97854fc4..a4c5c9d2 100644
--- a/src/pages/options/widgets/general.js
+++ b/src/pages/options/widgets/general.js
@@ -15,6 +15,7 @@ import mapsHelper from "../../../assets/javascripts/maps.js";
 import wikipediaHelper from "../../../assets/javascripts/wikipedia.js";
 import mediumHelper from "../../../assets/javascripts/medium.js";
 import quoraHelper from "../../../assets/javascripts/quora.js";
+import libremdbHelper from "../../../assets/javascripts/imdb.js";
 import imgurHelper from "../../../assets/javascripts/imgur.js";
 import tiktokHelper from "../../../assets/javascripts/tiktok.js";
 import sendTargetsHelper from "../../../assets/javascripts/sendTargets.js";
@@ -132,6 +133,7 @@ resetSettings.addEventListener("click",
                   await translateHelper.initDefaults();
                   await mediumHelper.initDefaults();
                   await quoraHelper.initDefaults();
+                  await libremdbHelper.initDefaults();
                   await reutersHelper.initDefaults();
                   await redditHelper.initDefaults();
                   await wikipediaHelper.initDefaults();
diff --git a/src/pages/options/widgets/general.pug b/src/pages/options/widgets/general.pug
index b7e54902..c8e043b9 100644
--- a/src/pages/options/widgets/general.pug
+++ b/src/pages/options/widgets/general.pug
@@ -158,6 +158,12 @@ section#general_page.option-block
 
         div 
             div 
+                img(src="../../../assets/images/imdb.svg")
+                x(data-localise="__MSG_imdb__") IMDb
+            input#imdb(type="checkbox")
+
+        div 
+            div 
                 img(src="../../../assets/images/reuters.svg")
                 x(data-localise="__MSG_reuters__") Reuters
             input#reuters(type="checkbox")
diff --git a/src/pages/options/widgets/imdb.js b/src/pages/options/widgets/imdb.js
new file mode 100644
index 00000000..f2c6cba5
--- /dev/null
+++ b/src/pages/options/widgets/imdb.js
@@ -0,0 +1,42 @@
+import utils from "../../../assets/javascripts/utils.js";
+
+const enable = document.getElementById("imdb-enable");
+const protocol = document.getElementById("imdb-protocol")
+const imdb = document.getElementById('imdb_page');
+
+function changeProtocolSettings() {
+    const normalDiv = imdb.getElementsByClassName("normal")[0];
+    const torDiv = imdb.getElementsByClassName("tor")[0];
+    if (protocol.value == 'normal') {
+        normalDiv.style.display = 'block';
+        torDiv.style.display = 'none';
+    }
+    else if (protocol.value == 'tor') {
+        normalDiv.style.display = 'none';
+        torDiv.style.display = 'block';
+    }
+}
+
+imdb.addEventListener("change", () => {
+    changeProtocolSettings();
+    browser.storage.local.set({
+        disableImdb: !enable.checked,
+        imdbProtocol: protocol.value,
+    })
+})
+
+browser.storage.local.get(
+    [
+        "disableImdb",
+        "imdbProtocol"
+    ],
+    r => {
+        enable.checked = !r.disableImdb;
+        protocol.value = r.imdbProtocol;
+        changeProtocolSettings();
+    }
+)
+
+utils.processDefaultCustomInstances('imdb', 'libremdb', 'normal', document);
+utils.processDefaultCustomInstances('imdb', 'libremdb', 'tor', document);
+utils.latency('imdb', 'libremdb', document, location)
\ No newline at end of file
diff --git a/src/pages/options/widgets/imdb.pug b/src/pages/options/widgets/imdb.pug
new file mode 100644
index 00000000..07749144
--- /dev/null
+++ b/src/pages/options/widgets/imdb.pug
@@ -0,0 +1,26 @@
+section#imdb_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_imdb__") IMDb
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#imdb-enable(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_protocol__") Protocol
+        select#imdb-protocol
+            option(value="normal" data-localise="__MSG_normal__") Normal
+            option(value="tor" data-localise="__MSG_tor__") Tor
+
+    #libremdb
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://libremdb.com')
+            include ../../widgets/latency.pug
+            +latency('libremdb')
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://libremdb.onion')
+
+    script(type="module" src="./widgets/imdb.js")
\ No newline at end of file