about summary refs log tree commit diff stats
path: root/src/pages/options/index.js
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2023-03-06 18:46:55 +0300
committerManeraKai <manerakai@protonmail.com>2023-03-06 18:46:55 +0300
commitec1b51763936ba6426448bb9c29c9c756eea9961 (patch)
tree9b98c3b37ca95e76997c578590223e357793644a /src/pages/options/index.js
parentChanged some strings (diff)
downloadlibredirect-ec1b51763936ba6426448bb9c29c9c756eea9961.zip
Fixed bug in RedirectType in settings
Diffstat (limited to 'src/pages/options/index.js')
-rw-r--r--src/pages/options/index.js29
1 files changed, 16 insertions, 13 deletions
diff --git a/src/pages/options/index.js b/src/pages/options/index.js
index 9fde7cd3..068940f0 100644
--- a/src/pages/options/index.js
+++ b/src/pages/options/index.js
@@ -41,19 +41,22 @@ async function changeFrontendsSettings(service) {
 			}
 		}
 	}
-	if (config.services[service].frontends[divs[service].frontend.value].embeddable) {
-		document.getElementById(`${service}-redirectType`).innerHTML = `
-		<option value="both" data-localise="__MSG_both__">both</options>
-		<option value="sub_frame" data-localise="__MSG_onlyEmbedded__">Only Embedded</option>
-		<option value="main_frame" data-localise="__MSG_onlyNotEmbedded__">Only Not Embedded</option>
-		`
-		document.getElementById(`${service}-redirectType`).value = options[divs[service].frontend.value].redirectType = options[service].redirectType
-	} else {
-		document.getElementById(`${service}-redirectType`).innerHTML = `
-		<option value="main_frame" data-localise="__MSG_onlyNotEmbedded__">Only Not Embedded</option>
-		`
-		options[service].redirectType = "main_frame"
-		browser.storage.local.set({ options })
+	if (document.getElementById(`${service}-redirectType`)) {
+		const frontend = options[service].frontend ?? Object.keys(config.services[service].frontends)[0]
+		if (config.services[service].frontends[frontend].embeddable) {
+			document.getElementById(`${service}-redirectType`).innerHTML = `
+			<option value="both" data-localise="__MSG_both__">both</options>
+			<option value="sub_frame" data-localise="__MSG_onlyEmbedded__">Only Embedded</option>
+			<option value="main_frame" data-localise="__MSG_onlyNotEmbedded__">Only Not Embedded</option>
+			`
+			document.getElementById(`${service}-redirectType`).value = options[frontend].redirectType = options[service].redirectType
+		} else {
+			document.getElementById(`${service}-redirectType`).innerHTML = `
+			<option value="main_frame" data-localise="__MSG_onlyNotEmbedded__">Only Not Embedded</option>
+			`
+			options[service].redirectType = "main_frame"
+			browser.storage.local.set({ options })
+		}
 	}
 	const frontend_name_element = document.getElementById(`${service}_page`).getElementsByClassName("frontend_name")[0]
 	if (divs[service].frontend) {