diff options
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/imdb.js | 42 | ||||
-rw-r--r-- | src/pages/options/widgets/imdb.pug | 26 |
6 files changed, 156 insertions, 0 deletions
diff --git a/src/pages/options/index.html b/src/pages/options/index.html index 81e15321..0bb4ecde 100644 --- a/src/pages/options/index.html +++ b/src/pages/options/index.html @@ -31,6 +31,7 @@ </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/imdb.svg"><a href="#imdb" data-localise="__MSG_imdb__">IMDb</a></div> <div class="title"><img src="../../../assets/images/reuters.svg"><a href="#reuters" data-localise="__MSG_reuters__">Reuters</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> @@ -218,6 +219,12 @@ <input id="quora" type="checkbox"> </div> <div> + <div> <img src="../../../assets/images/imdb.svg"> + <x data-localise="__MSG_imdb__">IMDb</x> + </div> + <input id="imdb" type="checkbox"> + </div> + <div> <div> <img src="../../../assets/images/reuters.svg"> <x data-localise="__MSG_reuters__">Reuters</x> </div> @@ -1183,6 +1190,78 @@ </div> <script type="module" src="./widgets/quora.js"></script> </section> + <section class="option-block" id="imdb_page"> + <div class="some-block option-block"> + <h1 data-localise="__MSG_imdb__">IMDb</h1> + </div> + <hr> + <div class="some-block option-block"> + <h4 data-localise="__MSG_enable__">Enable</h4> + <input id="imdb-enable" type="checkbox"> + </div> + <div class="some-block option-block"> + <h4 data-localise="__MSG_protocol__">Protocol</h4> + <select id="imdb-protocol"> + <option value="normal" data-localise="__MSG_normal__">Normal</option> + <option value="tor" data-localise="__MSG_tor__">Tor</option> + </select> + </div> + <div id="libremdb"> + <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://libremdb.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-libremdb-label" for="latency-libremdb"> + <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-libremdb" 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://libremdb.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/imdb.js"></script> + </section> <section class="option-block" id="reuters_page"> <div class="some-block option-block"> <h1 data-localise="__MSG_reuters__">Reuters</h1> diff --git a/src/pages/options/index.pug b/src/pages/options/index.pug index 2cd24350..9198c0f3 100644 --- a/src/pages/options/index.pug +++ b/src/pages/options/index.pug @@ -23,6 +23,7 @@ html#elementToShowWithJavaScript(lang="en") include ./widgets/wikipedia.pug include ./widgets/medium.pug include ./widgets/quora.pug + include ./widgets/imdb.pug include ./widgets/reuters.pug include ./widgets/peertube.pug include ./widgets/lbry.pug 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 |