about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/config.json30
-rw-r--r--src/pages/background/background.js10
-rw-r--r--src/pages/messages/no_instance.html26
3 files changed, 54 insertions, 12 deletions
diff --git a/src/config.json b/src/config.json
index d5ae1fd6..b68321be 100644
--- a/src/config.json
+++ b/src/config.json
@@ -161,7 +161,8 @@
 				"proxiTok": {
 					"name": "ProxiTok",
 					"instanceList": true,
-					"url": "https://github.com/pablouser1/ProxiTok"
+					"url": "https://github.com/pablouser1/ProxiTok",
+					"localhost": true
 				}
 			},
 			"targets": [
@@ -187,7 +188,8 @@
 				"teddit": {
 					"name": "Teddit",
 					"instanceList": true,
-					"url": "https://codeberg.org/teddit/teddit"
+					"url": "https://codeberg.org/teddit/teddit",
+					"localhost": true
 				}
 			},
 			"targets": [
@@ -277,7 +279,8 @@
 				"quetre": {
 					"name": "Quetre",
 					"instanceList": true,
-					"url": "https://github.com/zyachel/quetre"
+					"url": "https://github.com/zyachel/quetre",
+					"localhost": true
 				}
 			},
 			"targets": [
@@ -297,7 +300,8 @@
 				"libremdb": {
 					"name": "libremdb",
 					"instanceList": true,
-					"url": "https://github.com/zyachel/libremdb"
+					"url": "https://github.com/zyachel/libremdb",
+					"localhost": true
 				}
 			},
 			"targets": [
@@ -317,8 +321,7 @@
 				"breezeWiki": {
 					"name": "BreezeWiki",
 					"instanceList": true,
-					"url": "https://breezewiki.com",
-					"localhost": true
+					"url": "https://breezewiki.com"
 				}
 			},
 			"targets": [
@@ -362,7 +365,8 @@
 				"searxng": {
 					"name": "SearXNG",
 					"instanceList": true,
-					"url": "https://github.com/searxng/searxng"
+					"url": "https://github.com/searxng/searxng",
+					"localhost": true
 				},
 				"searx": {
 					"name": "SearX",
@@ -404,7 +408,8 @@
 				"lingva": {
 					"name": "Lingva Translate",
 					"instanceList": true,
-					"url": "https://github.com/TheDavidDelta/lingva-translate"
+					"url": "https://github.com/TheDavidDelta/lingva-translate",
+					"localhost": true
 				},
 				"libreTranslate": {
 					"name": "LibreTranslate",
@@ -521,7 +526,8 @@
 				"dumb": {
 					"name": "Dumb",
 					"instanceList": true,
-					"url": "https://github.com/rramiachraf/dumb"
+					"url": "https://github.com/rramiachraf/dumb",
+					"localhost": true
 				}
 			},
 			"targets": [
@@ -561,7 +567,8 @@
 				"anonymousOverflow": {
 					"name": "AnonymousOverflow",
 					"instanceList": true,
-					"url": "https://github.com/httpjamesm/AnonymousOverflow"
+					"url": "https://github.com/httpjamesm/AnonymousOverflow",
+					"localhost": true
 				}
 			},
 			"targets": [
@@ -582,7 +589,8 @@
 				"biblioReads": {
 					"name": "BiblioReads",
 					"instanceList": true,
-					"url": "https://github.com/nesaku/BiblioReads"
+					"url": "https://github.com/nesaku/BiblioReads",
+					"localhost": true
 				}
 			},
 			"targets": [
diff --git a/src/pages/background/background.js b/src/pages/background/background.js
index 80713059..8e427763 100644
--- a/src/pages/background/background.js
+++ b/src/pages/background/background.js
@@ -45,7 +45,6 @@ browser.webRequest.onBeforeRequest.addListener(
 
 		if (details.frameAncestors && details.frameAncestors.length > 0 && servicesHelper.isException(new URL(details.frameAncestors[0].url))) newUrl = null
 
-		console.log(servicesHelper.isException(url))
 		if (servicesHelper.isException(url)) {
 			if (details.type == "main_frame")
 				newUrl = "BYPASSTAB"
@@ -53,6 +52,15 @@ browser.webRequest.onBeforeRequest.addListener(
 				return null
 		}
 
+		if (!newUrl) {
+			const match = url.href.match(/^https?:\/{2}(.*)\.libredirect\.invalid.*/)
+			if (match[1]) {
+				browser.tabs.update({
+					url: browser.runtime.getURL(`/pages/messages/no_instance.html`)
+				});
+			}
+		}
+
 		if (newUrl) {
 			if (newUrl === "CANCEL") {
 				console.log(`Canceled ${url}`)
diff --git a/src/pages/messages/no_instance.html b/src/pages/messages/no_instance.html
new file mode 100644
index 00000000..76ec19cf
--- /dev/null
+++ b/src/pages/messages/no_instance.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="UTF-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <link href="../stylesheets/styles.css" rel="stylesheet">
+    <title>No instances found</title>
+    <style>
+        #body {
+            display: flex;
+            justify-content: center;
+            align-items: center;
+            height: 100vh;
+        }
+    </style>
+</head>
+
+<body>
+    <div id="body">
+        <h1>You have no instance selected for this frontend</h1>
+    </div>
+</body>
+
+</html>
\ No newline at end of file