about summary refs log tree commit diff stats
path: root/src/assets/javascripts
diff options
context:
space:
mode:
authorBobIsMyManager <bimmgitsignature.nly8m@simplelogin.co>2022-08-01 14:28:15 +0100
committerBobIsMyManager <bimmgitsignature.nly8m@simplelogin.co>2022-08-02 22:02:35 +0100
commit9a884ca5c0a5217543dbce6b20ff457fcd5fbaa0 (patch)
tree272841e5d7f61f1da400344303650d4dd0981c24 /src/assets/javascripts
parentLatency threshold, LBRY/Odysee -> LBRY (diff)
downloadlibredirect-9a884ca5c0a5217543dbce6b20ff457fcd5fbaa0.zip
http status
Diffstat (limited to 'src/assets/javascripts')
-rw-r--r--src/assets/javascripts/utils.js11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/assets/javascripts/utils.js b/src/assets/javascripts/utils.js
index 52848de7..929b5c17 100644
--- a/src/assets/javascripts/utils.js
+++ b/src/assets/javascripts/utils.js
@@ -25,13 +25,15 @@ function getRandomInstance(instances) {
 
 let cloudflareBlackList = []
 let authenticateBlackList = []
-async function initcloudflareBlackList() {
+let offlineBlacklist = []
+async function initBlackList() {
 	return new Promise(resolve => {
 		fetch("/instances/blacklist.json")
 			.then(response => response.text())
 			.then(data => {
 				cloudflareBlackList = JSON.parse(data).cloudflare
 				authenticateBlackList = JSON.parse(data).authenticate
+				offlineBlacklist = JSON.parse(data).offlineBlacklist
 				resolve()
 			})
 	})
@@ -53,7 +55,7 @@ function updateInstances() {
 				return
 			}
 		}
-		await initcloudflareBlackList()
+		await initBlackList()
 		const instances = JSON.parse(http.responseText)
 
 		youtubeHelper.setRedirects({
@@ -114,7 +116,7 @@ async function processDefaultCustomInstances(target, name, protocol, document) {
 	let nameCustomInstances = []
 	let nameCheckListElement = nameProtocolElement.getElementsByClassName("checklist")[0]
 
-	await initcloudflareBlackList()
+	await initBlackList()
 
 	let nameDefaultRedirects
 
@@ -162,6 +164,7 @@ async function processDefaultCustomInstances(target, name, protocol, document) {
 		...redirects[name][protocol].map(x => {
 			const cloudflare = cloudflareBlackList.includes(x) ? ' <span style="color:red;">cloudflare</span>' : ""
 			const authenticate = authenticateBlackList.includes(x) ? ' <span style="color:orange;">authenticate</span>' : ""
+			const offline = offlineBlacklist.includes(x) ? ' <span style="color:grey;">offline</span>' : ""
 
 			let ms = instancesLatency[x]
 			let latencyColor = ms <= 1000 ? "green" : ms <= 2000 ? "orange" : "red"
@@ -172,7 +175,7 @@ async function processDefaultCustomInstances(target, name, protocol, document) {
 
 			const latency = x in instancesLatency ? '<span style="color:' + latencyColor + ';">' + latencyLimit + "</span>" : ""
 
-			let warnings = [cloudflare, authenticate, latency].join(" ")
+			let warnings = [cloudflare, authenticate, offline, latency].join(" ")
 			return `<div>
                     <x><a href="${x}" target="_blank">${x}</a>${warnings}</x>
                     <input type="checkbox" class="${x}"/>