From bab3f02a3680c9f29e3dee40033c97c87750081b Mon Sep 17 00:00:00 2001 From: ManeraKai Date: Sat, 11 Jun 2022 14:14:14 +0300 Subject: Added quetre #230 --- src/pages/background/background.js | 4 ++ src/pages/options/index.html | 79 +++++++++++++++++++++++++++++++++++ src/pages/options/index.pug | 1 + src/pages/options/widgets/general.js | 2 + src/pages/options/widgets/general.pug | 6 +++ src/pages/options/widgets/quora.js | 42 +++++++++++++++++++ src/pages/options/widgets/quora.pug | 26 ++++++++++++ src/pages/popup/popup.html | 4 ++ src/pages/popup/popup.js | 4 ++ src/pages/popup/popup.pug | 6 +++ src/pages/widgets/links.pug | 4 ++ 11 files changed, 178 insertions(+) create mode 100644 src/pages/options/widgets/quora.js create mode 100644 src/pages/options/widgets/quora.pug (limited to 'src/pages') diff --git a/src/pages/background/background.js b/src/pages/background/background.js index a1ac27db..07e7512e 100644 --- a/src/pages/background/background.js +++ b/src/pages/background/background.js @@ -18,6 +18,7 @@ import tiktokHelper from "../../assets/javascripts/tiktok.js"; import sendTargetsHelper from "../../assets/javascripts/sendTargets.js"; import peertubeHelper from "../../assets/javascripts/peertube.js"; import lbryHelper from "../../assets/javascripts/lbry.js"; +import quoraHelper from "../../assets/javascripts/quora.js"; window.browser = window.browser || window.chrome; @@ -41,6 +42,7 @@ browser.runtime.onInstalled.addListener( searchHelper.initDefaults(); translateHelper.initDefaults(); mediumHelper.initDefaults(); + quoraHelper.initDefaults(); redditHelper.initDefaults(); wikipediaHelper.initDefaults(); imgurHelper.initDefaults(); @@ -98,6 +100,7 @@ browser.webRequest.onBeforeRequest.addListener( if (!newUrl) newUrl = mapsHelper.redirect(url, initiator); if (!newUrl) newUrl = redditHelper.redirect(url, details.type, initiator); if (!newUrl) newUrl = mediumHelper.redirect(url, details.type, initiator); + if (!newUrl) newUrl = quoraHelper.redirect(url, details.type, initiator); if (!newUrl) newUrl = imgurHelper.redirect(url, details.type, initiator); if (!newUrl) newUrl = tiktokHelper.redirect(url, details.type, initiator); if (!newUrl) newUrl = sendTargetsHelper.redirect(url, details.type, initiator); @@ -174,6 +177,7 @@ async function redirectOfflineInstance(url, tabId) { if (!newUrl) newUrl = await searchHelper.switchInstance(url); if (!newUrl) newUrl = await translateHelper.switchInstance(url); if (!newUrl) newUrl = await mediumHelper.switchInstance(url); + if (!newUrl) newUrl = await quoraHelper.switchInstance(url); if (!newUrl) newUrl = await tiktokHelper.switchInstance(url); if (!newUrl) newUrl = await imgurHelper.switchInstance(url); if (!newUrl) newUrl = await wikipediaHelper.switchInstance(url); diff --git a/src/pages/options/index.html b/src/pages/options/index.html index 8d19b3a4..dd09950b 100644 --- a/src/pages/options/index.html +++ b/src/pages/options/index.html @@ -30,6 +30,7 @@ Medium +
Quora
PeerTube
LBRY/Odysee
@@ -209,6 +210,12 @@
+
+
+ Quora +
+ +
PeerTube @@ -1097,6 +1104,78 @@
+
+
+

Quora

+
+
+
+

Enable

+ +
+
+

Protocol

+ +
+
+
+
+
+

Default Instances

+
+
+
+
+

Custom Instances

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

Default Instances

+
+
+
+
+

Custom Instances

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

PeerTube

diff --git a/src/pages/options/index.pug b/src/pages/options/index.pug index 6488aced..339b5cbc 100644 --- a/src/pages/options/index.pug +++ b/src/pages/options/index.pug @@ -22,6 +22,7 @@ html#elementToShowWithJavaScript(lang="en") include ./widgets/imgur.pug include ./widgets/wikipedia.pug include ./widgets/medium.pug + include ./widgets/quora.pug include ./widgets/peertube.pug include ./widgets/lbry.pug include ./widgets/search.pug diff --git a/src/pages/options/widgets/general.js b/src/pages/options/widgets/general.js index 6fe01b25..25f668ab 100644 --- a/src/pages/options/widgets/general.js +++ b/src/pages/options/widgets/general.js @@ -14,6 +14,7 @@ import translateHelper from "../../../assets/javascripts/translate/translate.js" 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 imgurHelper from "../../../assets/javascripts/imgur.js"; import tiktokHelper from "../../../assets/javascripts/tiktok.js"; import sendTargetsHelper from "../../../assets/javascripts/sendTargets.js"; @@ -130,6 +131,7 @@ resetSettings.addEventListener("click", await searchHelper.initDefaults(); await translateHelper.initDefaults(); await mediumHelper.initDefaults(); + await quoraHelper.initDefaults(); await redditHelper.initDefaults(); await wikipediaHelper.initDefaults(); await imgurHelper.initDefaults(); diff --git a/src/pages/options/widgets/general.pug b/src/pages/options/widgets/general.pug index ac9f6639..4123a7f6 100644 --- a/src/pages/options/widgets/general.pug +++ b/src/pages/options/widgets/general.pug @@ -150,6 +150,12 @@ section#general_page.option-block x(data-localise="__MSG_medium__") Medium input#medium(type="checkbox") + div + div + img(src="../../../assets/images/quora.png") + x(data-localise="__MSG_quora__") Quora + input#quora(type="checkbox") + div div img(src="../../../assets/images/peertube-icon.svg") diff --git a/src/pages/options/widgets/quora.js b/src/pages/options/widgets/quora.js new file mode 100644 index 00000000..34e84cf1 --- /dev/null +++ b/src/pages/options/widgets/quora.js @@ -0,0 +1,42 @@ +import utils from "../../../assets/javascripts/utils.js"; + +const enable = document.getElementById("quora-enable"); +const protocol = document.getElementById("quora-protocol") +const quora = document.getElementById('quora_page'); + +function changeProtocolSettings() { + const normalDiv = document.getElementsByClassName("normal")[0]; + const torDiv = document.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'; + } +} + +quora.addEventListener("change", () => { + changeProtocolSettings(); + browser.storage.local.set({ + disableQuora: !enable.checked, + quoraProtocol: protocol.value, + }) +}) + +browser.storage.local.get( + [ + "disableQuora", + "quoraProtocol" + ], + r => { + enable.checked = !r.disableQuora; + protocol.value = r.quoraProtocol; + changeProtocolSettings(); + } +) + +utils.processDefaultCustomInstances('quora', 'quetre', 'normal', document); +utils.processDefaultCustomInstances('quora', 'quetre', 'tor', document); +utils.latency('quora', 'quetre', document, location) \ No newline at end of file diff --git a/src/pages/options/widgets/quora.pug b/src/pages/options/widgets/quora.pug new file mode 100644 index 00000000..8f5fe639 --- /dev/null +++ b/src/pages/options/widgets/quora.pug @@ -0,0 +1,26 @@ +section#quora_page.option-block + .some-block.option-block + h1(data-localise="__MSG_quora__") Quora + hr + .some-block.option-block + h4(data-localise="__MSG_enable__") Enable + input#quora-enable(type="checkbox") + + .some-block.option-block + h4(data-localise="__MSG_protocol__") Protocol + select#quora-protocol + option(value="normal" data-localise="__MSG_normal__") Normal + option(value="tor" data-localise="__MSG_tor__") Tor + + #quetre + hr + .normal + include ../../widgets/instances.pug + +instances('https://quetre.com') + include ../../widgets/latency.pug + +latency('quetre') + .tor + include ../../widgets/instances.pug + +instances('https://quetre.onion') + + script(type="module" src="./widgets/quora.js") \ No newline at end of file diff --git a/src/pages/popup/popup.html b/src/pages/popup/popup.html index 5b00b084..8555dcac 100644 --- a/src/pages/popup/popup.html +++ b/src/pages/popup/popup.html @@ -48,6 +48,10 @@

Medium

+

PeerTube

diff --git a/src/pages/popup/popup.js b/src/pages/popup/popup.js index 17eeb2ca..a25ca6b9 100644 --- a/src/pages/popup/popup.js +++ b/src/pages/popup/popup.js @@ -44,6 +44,7 @@ let disableSearchElement = document.getElementById("disable-search"); let disableElement = document.getElementById("disable-simplyTranslate"); let disableWikipediaElement = document.getElementById("disable-wikipedia"); let disableMediumElement = document.getElementById("disable-medium"); +let disableQuoraElement = document.getElementById("disable-quora"); let disablePeertubeElement = document.getElementById("disable-peertube"); let disableLbryElement = document.getElementById("disable-lbry"); let disableSendTargetsElement = document.getElementById("disable-sendTargets"); @@ -64,6 +65,7 @@ browser.storage.local.get( "disableImgur", "disableTiktok", "disableMedium", + "disableQuora", "disablePeertubeTargets", "disableLbryTargets", "disableSendTarget", @@ -83,6 +85,7 @@ browser.storage.local.get( disableImgurElement.checked = !r.disableImgur; disableTiktokElement.checked = !r.disableTiktok; disableMediumElement.checked = !r.disableMedium; + disableQuoraElement.checked = !r.disableQuora; disablePeertubeElement.checked = !r.disablePeertubeTargets; disableLbryElement.checked = !r.disableLbryTargets; disableSendTargetsElement.checked = !r.disableSendTarget; @@ -109,6 +112,7 @@ document.addEventListener("change", () => { disableImgur: !disableImgurElement.checked, disableTiktok: !disableTiktokElement.checked, disableMedium: !disableMediumElement.checked, + disableQuora: !disableQuoraElement.checked, disablePeertubeTargets: !disablePeertubeElement.checked, disableLbryTargets: !disableLbryElement.checked, disableSendTarget: !disableSendTargetsElement.checked, diff --git a/src/pages/popup/popup.pug b/src/pages/popup/popup.pug index a2c8de93..02d9165e 100644 --- a/src/pages/popup/popup.pug +++ b/src/pages/popup/popup.pug @@ -62,6 +62,12 @@ html(lang="en") h4(data-localise="__MSG_medium__") Medium input#disable-medium(type="checkbox") + #quora.some-block + a.title(href="https://quora.com") + img(src="../../assets/images/quora.png") + h4(data-localise="__MSG_quora__") Quora + input#disable-quora(type="checkbox") + #peertube.some-block a.title(href="https://search.joinpeertube.org") img(src="../../assets/images/peertube-icon.svg") diff --git a/src/pages/widgets/links.pug b/src/pages/widgets/links.pug index 7a04a991..256dd9ba 100644 --- a/src/pages/widgets/links.pug +++ b/src/pages/widgets/links.pug @@ -42,6 +42,10 @@ mixin links(service) +medium a(href="#medium" data-localise="__MSG_medium__") Medium + .title + img(src="../../../assets/images/quora.png") + a(href="#quora" data-localise="__MSG_quora__") Quora + .title img(src="../../../assets/images/peertube-icon.svg") a(href="#peertube" data-localise="__MSG_peertube__") PeerTube -- cgit 1.4.1