aboutsummaryrefslogtreecommitdiffstats
path: root/src/pages/options/wikipedia
diff options
context:
space:
mode:
Diffstat (limited to 'src/pages/options/wikipedia')
-rw-r--r--src/pages/options/wikipedia/wikipedia.html72
-rw-r--r--src/pages/options/wikipedia/wikipedia.js39
2 files changed, 93 insertions, 18 deletions
diff --git a/src/pages/options/wikipedia/wikipedia.html b/src/pages/options/wikipedia/wikipedia.html
index 5f844ebc..0e96259b 100644
--- a/src/pages/options/wikipedia/wikipedia.html
+++ b/src/pages/options/wikipedia/wikipedia.html
@@ -112,31 +112,67 @@
<input id="disable-wikipedia" type="checkbox" checked />
</div>
- <hr>
<div class="some-block option-block">
- <h4>Default Instances</h4>
- </div>
- <div class="checklist" id="wikiless-normal-checklist">
+ <h4>Protocol</h4>
+ <select id="protocol">
+ <option value="normal">Normal</option>
+ <option value="tor">Tor</option>
+ </select>
</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="wikiless-normal-checklist">
+ </div>
+ <hr>
+ <div class="some-block option-block">
+ <h4>Custom Instances</h4>
+ </div>
+ <form id="custom-wikiless-normal-instance-form">
+ <div class="some-block option-block">
+ <input id="wikiless-normal-custom-instance" placeholder="https://wikiless.com" type="url" />
+ <button type="submit" class="add" id="wikiless-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="wikiless-normal-custom-checklist"></div>
</div>
- <form id="custom-wikiless-normal-instance-form">
+
+ <div id="tor">
<div class="some-block option-block">
- <input id="wikiless-normal-custom-instance" placeholder="https://wikiless.com" type="url" />
- <button type="submit" class="add" id="wikiless-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>
+ <h4>Default Instances</h4>
+ </div>
+ <div class="checklist" id="wikiless-tor-checklist">
</div>
- </form>
- <div class="checklist" id="wikiless-normal-custom-checklist"></div>
+ <hr>
+ <div class="some-block option-block">
+ <h4>Custom Instances</h4>
+ </div>
+ <form id="custom-wikiless-tor-instance-form">
+ <div class="some-block option-block">
+ <input id="wikiless-tor-custom-instance" placeholder="https://wikiless.com" type="url" />
+ <button type="submit" class="add" id="wikiless-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="wikiless-tor-custom-checklist"></div>
+ </div>
</section>
<script type="module" src="../init.js"></script>
@@ -144,4 +180,4 @@
<!-- <script src="../../assets/javascripts/localise.js"></script> -->
</body>
-</html>
+</html> \ No newline at end of file
diff --git a/src/pages/options/wikipedia/wikipedia.js b/src/pages/options/wikipedia/wikipedia.js
index 29a75f72..92ab8dc5 100644
--- a/src/pages/options/wikipedia/wikipedia.js
+++ b/src/pages/options/wikipedia/wikipedia.js
@@ -5,9 +5,37 @@ let disableWikipediaElement = document.getElementById("disable-wikipedia");
disableWikipediaElement.addEventListener("change",
(event) => wikipediaHelper.setDisable(!event.target.checked)
);
+
+let protocolElement = document.getElementById("protocol")
+protocolElement.addEventListener("change",
+ (event) => {
+ let protocol = event.target.options[protocolElement.selectedIndex].value
+ wikipediaHelper.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';
+ }
+}
+
wikipediaHelper.init().then(() => {
disableWikipediaElement.checked = !wikipediaHelper.getDisable();
+ let protocol = wikipediaHelper.getProtocol();
+ protocolElement.value = protocol;
+ changeProtocolSettings(protocol);
+
commonHelper.processDefaultCustomInstances(
'wikiless',
'normal',
@@ -18,4 +46,15 @@ wikipediaHelper.init().then(() => {
wikipediaHelper.getWikilessNormalCustomRedirects,
wikipediaHelper.setWikilessNormalCustomRedirects
)
+
+ commonHelper.processDefaultCustomInstances(
+ 'wikiless',
+ 'tor',
+ wikipediaHelper,
+ document,
+ wikipediaHelper.getWikilessTorRedirectsChecks,
+ wikipediaHelper.setWikilessTorRedirectsChecks,
+ wikipediaHelper.getWikilessTorCustomRedirects,
+ wikipediaHelper.setWikilessTorCustomRedirects
+ )
}) \ No newline at end of file