diff options
author | Hygna <hygna@proton.me> | 2022-10-02 15:10:36 +0100 |
---|---|---|
committer | Hygna <hygna@proton.me> | 2022-10-02 15:10:36 +0100 |
commit | e8a67e91729e9ade89bb7f6f9e1c8bf2f4d64ea2 (patch) | |
tree | 7072e7544cafd55821f8b8685958129705f96ae3 /src/pages | |
parent | Unify Localstorage (diff) | |
download | libredirect-e8a67e91729e9ade89bb7f6f9e1c8bf2f4d64ea2.zip |
Squashed a few bugs
Diffstat (limited to 'src/pages')
-rw-r--r-- | src/pages/background/background.js | 47 | ||||
-rw-r--r-- | src/pages/options/index.html | 5 | ||||
-rw-r--r-- | src/pages/options/widgets/general.js | 1 | ||||
-rw-r--r-- | src/pages/popup/popup.js | 43 |
4 files changed, 57 insertions, 39 deletions
diff --git a/src/pages/background/background.js b/src/pages/background/background.js index 5e164d58..eba436cb 100644 --- a/src/pages/background/background.js +++ b/src/pages/background/background.js @@ -3,11 +3,23 @@ import generalHelper from "../../assets/javascripts/general.js" import utils from "../../assets/javascripts/utils.js" import servicesHelper from "../../assets/javascripts/services.js" -import initHelper from "../../assets/javascripts/init.js" window.browser = window.browser || window.chrome -browser.runtime.onInstalled.addListener(async details => { +function initDefaults() { + browser.storage.local.clear(() => { + fetch("/instances/blacklist.json") + .then(response => response.text()) + .then(async data => { + browser.storage.local.set({ blacklists: JSON.parse(data) }, async () => { + await generalHelper.initDefaults() + await servicesHelper.initDefaults() + }) + }) + }) +} + +browser.runtime.onInstalled.addListener(details => { // if (details.reason == 'install' || (details.reason == "update" && details.previousVersion != browser.runtime.getManifest().version)) { // if (details.reason == "update") // browser.storage.local.get(null, r => { @@ -24,27 +36,22 @@ browser.runtime.onInstalled.addListener(async details => { initDefaults() break case "update": - switch (details.previousVersion) { - case "2.2.1": - initDefaults() - break - } + fetch("/instances/blacklist.json") + .then(response => response.text()) + .then(async data => { + browser.storage.local.set({ blacklists: JSON.parse(data) }, async () => { + switch (details.previousVersion) { + case "2.2.1": + await generalHelper.initDefaults() + await servicesHelper.initDefaults() + await servicesHelper.upgradeOptions() + break + } + }) + }) } }) -function initDefaults() { - browser.storage.local.clear(() => { - fetch("/instances/blacklist.json") - .then(response => response.text()) - .then(async data => { - browser.storage.local.set({ blacklists: JSON.parse(data) }, async () => { - await generalHelper.initDefaults() - await initHelper.initDefaults() - }) - }) - }) -} - let BYPASSTABs = [] browser.webRequest.onBeforeRequest.addListener( details => { diff --git a/src/pages/options/index.html b/src/pages/options/index.html index 384b32bd..2549566c 100644 --- a/src/pages/options/index.html +++ b/src/pages/options/index.html @@ -150,6 +150,11 @@ </button> </div> </form> + <div class="buttons buttons-inline"><a class="button button-inline" id="test"> + <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> + <path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"></path> + </svg> + Test Test Yes Yes</a> </div> <div class="checklist" id="exceptions-custom-checklist"></div> <div class="buttons buttons-inline"><a class="button button-inline" id="update-instances"> <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> diff --git a/src/pages/options/widgets/general.js b/src/pages/options/widgets/general.js index cd5cfb47..1a2f44c6 100644 --- a/src/pages/options/widgets/general.js +++ b/src/pages/options/widgets/general.js @@ -58,6 +58,7 @@ function exportSettings() { exportSettings() document.getElementById("general_page").addEventListener("click", exportSettings) +document.getElementById("test").addEventListener("click", servicesHelper.upgradeOptions) let importSettingsElement = document.getElementById("import-settings") let importSettingsElementText = document.getElementById("import_settings_text") diff --git a/src/pages/popup/popup.js b/src/pages/popup/popup.js index 5a5ccb53..9899e79e 100644 --- a/src/pages/popup/popup.js +++ b/src/pages/popup/popup.js @@ -2,25 +2,11 @@ window.browser = window.browser || window.chrome import utils from "../../assets/javascripts/utils.js" -import generalHelper from "../../assets/javascripts/general.js" +// import generalHelper from "../../assets/javascripts/general.js" import serviceHelper from "../../assets/javascripts/services.js" -utils.switchInstance(true).then(r => { - if (!r) document.getElementById("change_instance_div").style.display = "none" - else document.getElementById("change_instance").addEventListener("click", () => utils.switchInstance(false)) -}) - -utils.copyRaw(true).then(r => { - if (!r) document.getElementById("copy_raw_div").style.display = "none" - else { - const copy_raw = document.getElementById("copy_raw") - copy_raw.addEventListener("click", () => utils.copyRaw(false, copy_raw)) - } -}) -document.getElementById("more-options").addEventListener("click", () => browser.runtime.openOptionsPage()) - -let config -let divs = {} +let config, + divs = {} async function getConfig() { return new Promise(resolve => { @@ -35,6 +21,20 @@ async function getConfig() { await getConfig() +utils.switchInstance(true).then(r => { + if (!r) document.getElementById("change_instance_div").style.display = "none" + else document.getElementById("change_instance").addEventListener("click", () => utils.switchInstance(false)) +}) + +utils.copyRaw(true, null, config).then(r => { + if (!r) document.getElementById("copy_raw_div").style.display = "none" + else { + const copy_raw = document.getElementById("copy_raw") + copy_raw.addEventListener("click", () => utils.copyRaw(false, copy_raw)) + } +}) +document.getElementById("more-options").addEventListener("click", () => browser.runtime.openOptionsPage()) + const allSites = document.getElementsByClassName("all_sites")[0] const currSite = document.getElementsByClassName("current_site")[0] @@ -78,11 +78,16 @@ browser.storage.local.get("options", r => { return } - const [service, frontend] = serviceHelper.computeService(url, true) + let service = await serviceHelper.computeService(url, true) + let frontend if (service) { + if (service[1]) { + frontend = service[1] + service = frontend[0] + } divs[service].current.classList.remove("hide") divs[service].all.classList.add("hide") - if (config.services[service].frontends[frontend].preferences) { + if (config.services[service].frontends[frontend].preferences && !config.services[service].frontends[frontend].preferences.token) { const unify = document.getElementById("unify") const textElement = document.getElementById("unify").getElementsByTagName("h4")[0] unify.addEventListener("click", () => { |