about summary refs log tree commit diff stats
path: root/src/pages
diff options
context:
space:
mode:
authorHygna <hygna@proton.me>2022-10-02 15:10:36 +0100
committerHygna <hygna@proton.me>2022-10-02 15:10:36 +0100
commite8a67e91729e9ade89bb7f6f9e1c8bf2f4d64ea2 (patch)
tree7072e7544cafd55821f8b8685958129705f96ae3 /src/pages
parentUnify Localstorage (diff)
downloadlibredirect-e8a67e91729e9ade89bb7f6f9e1c8bf2f4d64ea2.zip
Squashed a few bugs
Diffstat (limited to 'src/pages')
-rw-r--r--src/pages/background/background.js47
-rw-r--r--src/pages/options/index.html5
-rw-r--r--src/pages/options/widgets/general.js1
-rw-r--r--src/pages/popup/popup.js43
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>&nbsp; &nbsp;</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", () => {