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-02-08 15:51:07 +0300
committerManeraKai <manerakai@protonmail.com>2023-02-08 15:51:07 +0300
commit356fd321d9a035c9c4d0f5b6bb8313cf1d4ca64d (patch)
tree7351cc426a35e5b5086a00c36c0b808e8b3891f7 /src/pages/options/index.js
parentLink menu: Redirect, Reverse, Copy Reverse. Icon menu: Settings, SwitchInstan... (diff)
downloadlibredirect-356fd321d9a035c9c4d0f5b6bb8313cf1d4ca64d.zip
Added option to use github, codeberg, disable for fetching instances https://github.com/libredirect/libredirect/issues/626
Diffstat (limited to 'src/pages/options/index.js')
-rw-r--r--src/pages/options/index.js23
1 files changed, 19 insertions, 4 deletions
diff --git a/src/pages/options/index.js b/src/pages/options/index.js
index 18fb120f..f122f3fc 100644
--- a/src/pages/options/index.js
+++ b/src/pages/options/index.js
@@ -99,11 +99,25 @@ async function loadPage(path) {
 		}
 
 		!async function () {
-			const blacklist = await utils.getBlacklist()
-			const redirects = await utils.getList()
+			const blacklist = await utils.getBlacklist(options)
+			const redirects = await utils.getList(options)
+
 			for (const frontend in config.services[service].frontends) {
 				if (config.services[service].frontends[frontend].instanceList) {
-					createList(frontend, config.networks, document, redirects, blacklist)
+					if (redirects == 'disabled' || blacklist == 'disabled') {
+						document.getElementById(frontend).getElementsByClassName('clearnet')[0].style.display = 'none'
+						document.getElementById(frontend).getElementsByClassName('ping')[0].style.display = 'none'
+					}
+					else if (!redirects || !blacklist) {
+						document.getElementById(frontend)
+							.getElementsByClassName('clearnet')[0]
+							.getElementsByClassName("checklist")[0]
+							.getElementsByClassName('loading')[0]
+							.innerHTML = 'Could not fetch instances.'
+					}
+					else {
+						createList(frontend, config.networks, document, redirects, blacklist)
+					}
 				}
 			}
 		}()
@@ -240,8 +254,9 @@ async function ping(frontend) {
 		.getElementsByClassName('clearnet')[0]
 		.getElementsByTagName('x')
 	for (const element of instanceElements) {
-		let span = element.getElementsByTagName('span')[0]
+		let span = element.getElementsByClassName('ping')[0]
 		if (!span) span = document.createElement('span')
+		span.classList = ['ping']
 		span.innerHTML = '<span style="color:lightblue">pinging...</span>'
 		element.appendChild(span)