aboutsummaryrefslogtreecommitdiffstats
path: root/src/pages/options/twitter
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2022-02-20 00:48:51 +0300
committerManeraKai <manerakai@protonmail.com>2022-02-20 00:48:51 +0300
commitef222d2ca5ad753446adb98800e9640b0c602381 (patch)
tree2fe30dd48711b25bdb0b8d8461d983489877db63 /src/pages/options/twitter
parentFixed cookies not working in invidious #44 (diff)
downloadlibredirect-ef222d2ca5ad753446adb98800e9640b0c602381.zip
Adding tor to twitter and youtube #32
Diffstat (limited to 'src/pages/options/twitter')
-rw-r--r--src/pages/options/twitter/twitter.html70
-rw-r--r--src/pages/options/twitter/twitter.js48
2 files changed, 96 insertions, 22 deletions
diff --git a/src/pages/options/twitter/twitter.html b/src/pages/options/twitter/twitter.html
index 948f0be1..40f79407 100644
--- a/src/pages/options/twitter/twitter.html
+++ b/src/pages/options/twitter/twitter.html
@@ -115,29 +115,65 @@
<input id="disable-nitter" type="checkbox" checked />
</div>
- <hr>
-
<div class="some-block option-block">
- <h4>Default Instances</h4>
+ <h4>Protocol</h4>
+ <select id="protocol">
+ <option value="normal">Normal</option>
+ <option value="tor">Tor</option>
+ </select>
</div>
- <div class="checklist" id="nitter-checklist"></div>
+
<hr>
- <div class="some-block option-block">
- <h4>Custom Instances</h4>
+
+ <div id="normal">
+
+ <div class="some-block option-block">
+ <h4>Default Instances</h4>
+ </div>
+ <div class="checklist" id="nitter-normal-checklist"></div>
+ <hr>
+ <div class="some-block option-block">
+ <h4>Custom Instances</h4>
+ </div>
+ <form id="custom-nitter-normal-instance-form">
+ <div class="some-block option-block">
+ <input id="nitter-normal-custom-instance" placeholder="https://nitter.com" type="url" />
+ <button type="submit" class="add" id="nitter-normal-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="nitter-normal-custom-checklist"></div>
+
</div>
- <form id="custom-nitter-instance-form">
+
+ <div id="tor">
<div class="some-block option-block">
- <input id="nitter-custom-instance" placeholder="https://nitter.com" type="url" />
- <button type="submit" class="add" id="nitter-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>
+ <h4>Default Tor Instances</h4>
</div>
- </form>
- <div class="checklist" id="nitter-custom-checklist"></div>
+ <div class="checklist" id="nitter-tor-checklist"></div>
+ <hr>
+ <div class="some-block option-block">
+ <h4>Custom Instances</h4>
+ </div>
+ <form id="custom-nitter-tor-instance-form">
+ <div class="some-block option-block">
+ <input id="nitter-tor-custom-instance" placeholder="https://nitter.com" type="url" />
+ <button type="submit" class="add" id="nitter-tor-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="nitter-tor-custom-checklist"></div>
+ </div>
</section>
diff --git a/src/pages/options/twitter/twitter.js b/src/pages/options/twitter/twitter.js
index 759ad573..88fadb7b 100644
--- a/src/pages/options/twitter/twitter.js
+++ b/src/pages/options/twitter/twitter.js
@@ -6,16 +6,54 @@ disableTwitterElement.addEventListener("change",
(event) => twitterHelper.setDisable(!event.target.checked)
);
+let protocolElement = document.getElementById("protocol")
+protocolElement.addEventListener("change",
+ (event) => {
+ let protocol = event.target.options[protocolElement.selectedIndex].value
+ twitterHelper.setProtocol(protocol);
+ changeProtocolSettings(protocol);
+ }
+);
+
+
+function changeProtocolSettings(protocol) {
+ let normalDiv = document.getElementById("normal");
+ let torDiv = document.getElementById("tor");
+ if (protocol == 'normal') {
+ normalDiv.style.display = 'block';
+ torDiv.style.display = 'none';
+ }
+ else if (protocol == 'tor') {
+ normalDiv.style.display = 'none';
+ torDiv.style.display = 'block';
+ }
+}
+
twitterHelper.init().then(() => {
- disableTwitterElement.checked = !twitterHelper.getDisable();
+ disableTwitterElement.checked = !twitterHelper.getDisable();
+
+ let protocol = twitterHelper.getprotocol();
+ protocolElement.value = protocol;
+ changeProtocolSettings(protocol);
commonHelper.processDefaultCustomInstances(
'nitter',
+ 'normal',
+ twitterHelper,
+ document,
+ twitterHelper.getNitterNormalRedirectsChecks,
+ twitterHelper.setNitterNormalRedirectsChecks,
+ twitterHelper.getNitterNormalCustomRedirects,
+ twitterHelper.setNitterNormalCustomRedirects
+ )
+ commonHelper.processDefaultCustomInstances(
+ 'nitter',
+ 'tor',
twitterHelper,
document,
- twitterHelper.getNitterRedirectsChecks,
- twitterHelper.setNitterRedirectsChecks,
- twitterHelper.getNitterCustomRedirects,
- twitterHelper.setNitterCustomRedirects
+ twitterHelper.getNitterTorRedirectsChecks,
+ twitterHelper.setNitterTorRedirectsChecks,
+ twitterHelper.getNitterTorCustomRedirects,
+ twitterHelper.setNitterTorCustomRedirects
)
}); \ No newline at end of file