diff options
author | ManeraKai <manerakai@protonmail.com> | 2022-06-11 14:14:14 +0300 |
---|---|---|
committer | ManeraKai <manerakai@protonmail.com> | 2022-06-11 14:14:14 +0300 |
commit | bab3f02a3680c9f29e3dee40033c97c87750081b (patch) | |
tree | f03d25758345fee58d846591bbf4b565df0abbd6 /src/pages/options | |
parent | removed bypassing root path on medium, imgur (diff) | |
download | libredirect-bab3f02a3680c9f29e3dee40033c97c87750081b.zip |
Added quetre #230
Diffstat (limited to 'src/pages/options')
-rw-r--r-- | src/pages/options/index.html | 79 | ||||
-rw-r--r-- | src/pages/options/index.pug | 1 | ||||
-rw-r--r-- | src/pages/options/widgets/general.js | 2 | ||||
-rw-r--r-- | src/pages/options/widgets/general.pug | 6 | ||||
-rw-r--r-- | src/pages/options/widgets/quora.js | 42 | ||||
-rw-r--r-- | src/pages/options/widgets/quora.pug | 26 |
6 files changed, 156 insertions, 0 deletions
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 @@ <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse> </svg><a href="#medium" data-localise="__MSG_medium__">Medium</a> </div> + <div class="title"><img src="../../../assets/images/quora.png"><a href="#quora" data-localise="__MSG_quora__">Quora</a></div> <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="#peertube" data-localise="__MSG_peertube__">PeerTube</a></div> <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="#lbry" data-localise="__MSG_lbry__">LBRY/Odysee</a></div> <div class="title"> @@ -210,6 +211,12 @@ <input id="medium" type="checkbox"> </div> <div> + <div> <img src="../../../assets/images/quora.png"> + <x data-localise="__MSG_quora__">Quora</x> + </div> + <input id="quora" type="checkbox"> + </div> + <div> <div> <img src="../../../assets/images/peertube-icon.svg"> <x data-localise="__MSG_peertube__">PeerTube</x> </div> @@ -1097,6 +1104,78 @@ </div> <script type="module" src="./widgets/medium.js"></script> </section> + <section class="option-block" id="quora_page"> + <div class="some-block option-block"> + <h1 data-localise="__MSG_quora__">Quora</h1> + </div> + <hr> + <div class="some-block option-block"> + <h4 data-localise="__MSG_enable__">Enable</h4> + <input id="quora-enable" type="checkbox"> + </div> + <div class="some-block option-block"> + <h4 data-localise="__MSG_protocol__">Protocol</h4> + <select id="quora-protocol"> + <option value="normal" data-localise="__MSG_normal__">Normal</option> + <option value="tor" data-localise="__MSG_tor__">Tor</option> + </select> + </div> + <div id="quetre"> + <hr> + <div class="normal"> + <div class="some-block option-block"> + <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4> + </div> + <div class="checklist"></div> + <hr> + <div class="some-block option-block"> + <h4 data-localise="__MSG_customInstances__">Custom Instances</h4> + </div> + <form class="custom-instance-form"> + <div class="some-block option-block"> + <input class="custom-instance" placeholder="https://quetre.com" type="url"> + <button class="add add-instance" type="submit"> + <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor"> + <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path> + </svg> + </button> + </div> + </form> + <div class="checklist custom-checklist"></div> + <div class="buttons buttons-inline"> + <label class="button button-inline" id="latency-quetre-label" for="latency-quetre"> + <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> + <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path> + </svg> + <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x> + </label> + <input class="button button-inline" id="latency-quetre" style="display:none;"> + </div> + </div> + <div class="tor"> + <div class="some-block option-block"> + <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4> + </div> + <div class="checklist"></div> + <hr> + <div class="some-block option-block"> + <h4 data-localise="__MSG_customInstances__">Custom Instances</h4> + </div> + <form class="custom-instance-form"> + <div class="some-block option-block"> + <input class="custom-instance" placeholder="https://quetre.onion" type="url"> + <button class="add add-instance" type="submit"> + <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor"> + <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path> + </svg> + </button> + </div> + </form> + <div class="checklist custom-checklist"></div> + </div> + </div> + <script type="module" src="./widgets/quora.js"></script> + </section> <section class="option-block" id="peertube_page"> <div class="some-block option-block"> <h1 data-localise="__MSG_peertube__">PeerTube</h1> 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 @@ -152,6 +152,12 @@ section#general_page.option-block 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") x(data-localise="__MSG_peertube__") PeerTube input#peertube(type="checkbox") 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 |