aboutsummaryrefslogtreecommitdiffstats
path: root/src/pages/options/search
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2022-05-04 13:59:37 +0300
committerManeraKai <manerakai@protonmail.com>2022-05-04 13:59:37 +0300
commita28cccfde07e76d1e70d2acfe1c2222d8b8ae705 (patch)
tree4fdefa52a12f7a158006f1b7ba3b54cd468b97fe /src/pages/options/search
parentFix incorrect localization (#236) (diff)
downloadlibredirect-a28cccfde07e76d1e70d2acfe1c2222d8b8ae705.zip
Simplified code. Removed pixivMoe, old.reddit.com #239
Diffstat (limited to 'src/pages/options/search')
-rw-r--r--src/pages/options/search/search.html1
-rw-r--r--src/pages/options/search/search.js258
2 files changed, 66 insertions, 193 deletions
diff --git a/src/pages/options/search/search.html b/src/pages/options/search/search.html
index cc1bb006..3c0d9d89 100644
--- a/src/pages/options/search/search.html
+++ b/src/pages/options/search/search.html
@@ -23,7 +23,6 @@
<div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
<div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
<div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
- <div class="title"> <img src="../../../assets/images/pixiv-icon.svg"><a href="../pixiv/pixiv.html" data-localise="__MSG_pixiv__">Pixiv</a></div>
<div class="title"> <img src="../../../assets/images/librespeed-icon.svg"><a href="../speedtest/speedtest.html" data-localise="__MSG_speedtest__">Speedtest</a></div>
<div class="title"> <img src="../../../assets/images/spotify-icon.png"><a href="../spotify/spotify.html" data-localise="__MSG_spotify__">Spotify</a></div>
<div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
diff --git a/src/pages/options/search/search.js b/src/pages/options/search/search.js
index 197b17f4..893c3e4f 100644
--- a/src/pages/options/search/search.js
+++ b/src/pages/options/search/search.js
@@ -1,66 +1,75 @@
import searchHelper from "../../../assets/javascripts/helpers/search.js";
import commonHelper from "../../../assets/javascripts/helpers/common.js";
+let searxDiv = document.getElementById("searx");
+let searxngDiv = document.getElementById("searxng")
+let whoogleDiv = document.getElementById("whoogle");
+
let disableSearchElement = document.getElementById("disable-search");
-disableSearchElement.addEventListener("change", event => searchHelper.setDisable(!event.target.checked));
+let searchFrontendElement = document.getElementById("search-frontend");
+let protocolElement = document.getElementById("protocol")
+browser.storage.local.get(
+ [
+ "disableSearch",
+ "searchFrontend",
+ "searchProtocol",
+ ],
+ r => {
+ disableSearchElement.checked = !disableSearch;
-let searxDivElement = document.getElementById("searx");
-let searxngDivElement = document.getElementById("searxng")
-let whoogleDivElement = document.getElementById("whoogle");
+ searchFrontendElement.value = r.searchFronten;
+ changeFrontendsSettings(r.searchFronten);
+ protocolElement.value = r.searchProtocol;
+ changeProtocolSettings(r.searchProtocol);
+ }
+);
+
+document.addEventListener("change", async () => {
+ await browser.storage.local.set({
+ disableSearch: !disableSearchElement.checked,
+ searchFrontend: searchFrontendElement.value,
+ searchProtocol: protocolElement.value,
+ });
+ changeFrontendsSettings(searchFrontendElement.value);
+ changeProtocolSettings(protocolElement.value);
+})
function changeFrontendsSettings(frontend) {
let SearxWhoogleElement = document.getElementById("searx-whoogle");
if (frontend == 'searx') {
- searxDivElement.style.display = 'block';
- searxngDivElement.style.display = 'none';
- whoogleDivElement.style.display = 'none';
+ searxDiv.style.display = 'block';
+ searxngDiv.style.display = 'none';
+ whoogleDiv.style.display = 'none';
SearxWhoogleElement.style.display = 'block';
}
else if (frontend == 'searxng') {
- searxDivElement.style.display = 'none';
- searxngDivElement.style.display = 'block';
- whoogleDivElement.style.display = 'none';
+ searxDiv.style.display = 'none';
+ searxngDiv.style.display = 'block';
+ whoogleDiv.style.display = 'none';
SearxWhoogleElement.style.display = 'block';
}
else if (frontend == 'whoogle') {
- searxDivElement.style.display = 'none';
- searxngDivElement.style.display = 'none';
- whoogleDivElement.style.display = 'block';
+ searxDiv.style.display = 'none';
+ searxngDiv.style.display = 'none';
+ whoogleDiv.style.display = 'block';
SearxWhoogleElement.style.display = 'block';
}
}
-let searchFrontendElement = document.getElementById("search-frontend");
-searchFrontendElement.addEventListener("change",
- event => {
- let frontend = event.target.options[searchFrontendElement.selectedIndex].value
- searchHelper.setFrontend(frontend)
- changeFrontendsSettings(frontend);
- }
-);
-
-let protocolElement = document.getElementById("protocol")
-protocolElement.addEventListener("change",
- event => {
- let protocol = event.target.options[protocolElement.selectedIndex].value
- searchHelper.setProtocol(protocol);
- changeProtocolSettings(protocol);
- }
-);
function changeProtocolSettings(protocol) {
- let normalsearxDiv = searxDivElement.getElementsByClassName("normal")[0];
- let torsearxDiv = searxDivElement.getElementsByClassName("tor")[0];
- let i2psearxDiv = searxDivElement.getElementsByClassName("i2p")[0];
+ let normalsearxDiv = searxDiv.getElementsByClassName("normal")[0];
+ let torsearxDiv = searxDiv.getElementsByClassName("tor")[0];
+ let i2psearxDiv = searxDiv.getElementsByClassName("i2p")[0];
- let normalsearxngDiv = searxngDivElement.getElementsByClassName("normal")[0];
- let torsearxngDiv = searxngDivElement.getElementsByClassName("tor")[0];
- let i2psearxngDiv = searxngDivElement.getElementsByClassName("i2p")[0];
+ let normalsearxngDiv = searxngDiv.getElementsByClassName("normal")[0];
+ let torsearxngDiv = searxngDiv.getElementsByClassName("tor")[0];
+ let i2psearxngDiv = searxngDiv.getElementsByClassName("i2p")[0];
- let normalwhoogleDiv = whoogleDivElement.getElementsByClassName("normal")[0];
- let torwhoogleDiv = whoogleDivElement.getElementsByClassName("tor")[0];
- let i2pwhoogleDiv = whoogleDivElement.getElementsByClassName("i2p")[0];
+ let normalwhoogleDiv = whoogleDiv.getElementsByClassName("normal")[0];
+ let torwhoogleDiv = whoogleDiv.getElementsByClassName("tor")[0];
+ let i2pwhoogleDiv = whoogleDiv.getElementsByClassName("i2p")[0];
if (protocol == 'normal') {
normalsearxDiv.style.display = 'block';
@@ -97,125 +106,15 @@ function changeProtocolSettings(protocol) {
}
}
-searchHelper.init().then(() => {
- disableSearchElement.checked = !searchHelper.getDisable();
- let frontend = searchHelper.getFrontend();
- searchFrontendElement.value = frontend;
- changeFrontendsSettings(frontend);
-
- let protocol = searchHelper.getProtocol();
- protocolElement.value = protocol;
- changeProtocolSettings(protocol);
-
- browser.storage.local.get("searxLatency").then(r => {
- commonHelper.processDefaultCustomInstances(
- 'searx',
- 'normal',
- searchHelper,
- document,
- searchHelper.getSearxNormalRedirectsChecks,
- searchHelper.setSearxNormalRedirectsChecks,
- searchHelper.getSearxNormalCustomRedirects,
- searchHelper.setSearxNormalCustomRedirects,
- r.searxLatency
- );
- })
-
- commonHelper.processDefaultCustomInstances(
- 'searx',
- 'tor',
- searchHelper,
- document,
- searchHelper.getSearxTorRedirectsChecks,
- searchHelper.setSearxTorRedirectsChecks,
- searchHelper.getSearxTorCustomRedirects,
- searchHelper.setSearxTorCustomRedirects
- );
-
- commonHelper.processDefaultCustomInstances(
- 'searx',
- 'i2p',
- searchHelper,
- document,
- searchHelper.getSearxI2pRedirectsChecks,
- searchHelper.setSearxI2pRedirectsChecks,
- searchHelper.getSearxI2pCustomRedirects,
- searchHelper.setSearxI2pCustomRedirects
- );
-
- browser.storage.local.get("searxngLatency").then(r => {
- commonHelper.processDefaultCustomInstances(
- 'searxng',
- 'normal',
- searchHelper,
- document,
- searchHelper.getSearxngNormalRedirectsChecks,
- searchHelper.setSearxngNormalRedirectsChecks,
- searchHelper.getSearxngNormalCustomRedirects,
- searchHelper.setSearxngNormalCustomRedirects,
- r.searxngLatency,
- );
- })
-
- commonHelper.processDefaultCustomInstances(
- 'searxng',
- 'tor',
- searchHelper,
- document,
- searchHelper.getSearxngTorRedirectsChecks,
- searchHelper.setSearxngTorRedirectsChecks,
- searchHelper.getSearxngTorCustomRedirects,
- searchHelper.setSearxngTorCustomRedirects
- );
-
- commonHelper.processDefaultCustomInstances(
- 'searxng',
- 'i2p',
- searchHelper,
- document,
- searchHelper.getSearxngI2pRedirectsChecks,
- searchHelper.setSearxngI2pRedirectsChecks,
- searchHelper.getSearxngI2pCustomRedirects,
- searchHelper.setSearxngI2pCustomRedirects
- );
-
- browser.storage.local.get("whoogleLatency").then(r => {
- commonHelper.processDefaultCustomInstances(
- 'whoogle',
- 'normal',
- searchHelper,
- document,
- searchHelper.getWhoogleNormalRedirectsChecks,
- searchHelper.setWhoogleNormalRedirectsChecks,
- searchHelper.getWhoogleNormalCustomRedirects,
- searchHelper.setWhoogleNormalCustomRedirects,
- r.whoogleLatency,
- );
- })
-
- commonHelper.processDefaultCustomInstances(
- 'whoogle',
- 'tor',
- searchHelper,
- document,
- searchHelper.getWhoogleTorRedirectsChecks,
- searchHelper.setWhoogleTorRedirectsChecks,
- searchHelper.getWhoogleTorCustomRedirects,
- searchHelper.setWhoogleTorCustomRedirects
- );
-
- commonHelper.processDefaultCustomInstances(
- 'whoogle',
- 'i2p',
- searchHelper,
- document,
- searchHelper.getWhoogleI2pRedirectsChecks,
- searchHelper.setWhoogleI2pRedirectsChecks,
- searchHelper.getWhoogleI2pCustomRedirects,
- searchHelper.setWhoogleI2pCustomRedirects
- );
-});
-
+commonHelper.processDefaultCustomInstances('searx', 'normal', searchHelper, document);
+commonHelper.processDefaultCustomInstances('searx', 'tor', searchHelper, document);
+commonHelper.processDefaultCustomInstances('searx', 'i2p', searchHelper, document);
+commonHelper.processDefaultCustomInstances('searxng', 'normal', searchHelper, document);
+commonHelper.processDefaultCustomInstances('searxng', 'tor', searchHelper, document);
+commonHelper.processDefaultCustomInstances('searxng', 'i2p', searchHelper, document);
+commonHelper.processDefaultCustomInstances('whoogle', 'normal', searchHelper, document);
+commonHelper.processDefaultCustomInstances('whoogle', 'tor', searchHelper, document);
+commonHelper.processDefaultCustomInstances('whoogle', 'i2p', searchHelper, document);
let latencySearxElement = document.getElementById("latency-searx");
let latencySearxLabel = document.getElementById("latency-searx-label");
@@ -230,17 +129,7 @@ latencySearxElement.addEventListener("click",
commonHelper.testLatency(latencySearxLabel, redirects.searx.normal).then(r => {
browser.storage.local.set({ searxLatency: r });
latencySearxLabel.innerHTML = oldHtml;
- commonHelper.processDefaultCustomInstances(
- 'searx',
- 'normal',
- searchHelper,
- document,
- searchHelper.getSearxNormalRedirectsChecks,
- searchHelper.setSearxNormalRedirectsChecks,
- searchHelper.getSearxNormalCustomRedirects,
- searchHelper.setSearxNormalCustomRedirects,
- r,
- );
+ commonHelper.processDefaultCustomInstances('searx', 'normal', searchHelper, document);
latencySearxElement.removeEventListener("click", reloadWindow);
});
}
@@ -259,17 +148,7 @@ latencySearxngElement.addEventListener("click",
commonHelper.testLatency(latencySearxngLabel, redirects.searxng.normal).then(r => {
browser.storage.local.set({ searxngLatency: r });
latencySearxngLabel.innerHTML = oldHtml;
- commonHelper.processDefaultCustomInstances(
- 'searxng',
- 'normal',
- searchHelper,
- document,
- searchHelper.getSearxngNormalRedirectsChecks,
- searchHelper.setSearxngNormalRedirectsChecks,
- searchHelper.getSearxngNormalCustomRedirects,
- searchHelper.setSearxngNormalCustomRedirects,
- r,
- );
+ commonHelper.processDefaultCustomInstances('searxng', 'normal', searchHelper, document);
latencySearxngElement.removeEventListener("click", reloadWindow);
});
}
@@ -288,18 +167,13 @@ latencyWhoogleElement.addEventListener("click",
commonHelper.testLatency(latencyWhoogleLabel, redirects.whoogle.normal).then(r => {
browser.storage.local.set({ whoogleLatency: r });
latencyWhoogleLabel.innerHTML = oldHtml;
- commonHelper.processDefaultCustomInstances(
- 'whoogle',
- 'normal',
- searchHelper,
- document,
- searchHelper.getWhoogleNormalRedirectsChecks,
- searchHelper.setWhoogleNormalRedirectsChecks,
- searchHelper.getWhoogleNormalCustomRedirects,
- searchHelper.setWhoogleNormalCustomRedirects,
- r,
- );
+ commonHelper.processDefaultCustomInstances('whoogle', 'normal', searchHelper, document);
latencyWhoogleElement.removeEventListener("click", reloadWindow);
});
}
-); \ No newline at end of file
+);
+
+window.onblur = () => {
+ searchHelper.initSearxCookies();
+ searchHelper.initSearxngCookies();
+} \ No newline at end of file