about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/assets/javascripts/services.js9
-rw-r--r--src/assets/javascripts/utils.js2
2 files changed, 8 insertions, 3 deletions
diff --git a/src/assets/javascripts/services.js b/src/assets/javascripts/services.js
index c59e4344..0b418f91 100644
--- a/src/assets/javascripts/services.js
+++ b/src/assets/javascripts/services.js
@@ -97,6 +97,9 @@ function redirect(url, type, initiator, forceRedirection) {
 		break
 	}
 	if (!frontend || !randomInstance) return
+	let randomInstanceURL = new URL(randomInstance);
+	let allParams = randomInstanceURL.searchParams
+	url.searchParams.forEach((value, key) => allParams.append(key, value))
 
 	// Here is a (temperory) space for defining constants required in 2 or more switch cases.
 	// When possible, try have the two switch cases share all their code as done with searx and searxng.
@@ -116,7 +119,6 @@ function redirect(url, type, initiator, forceRedirection) {
 		}
 		return [zoom, lon, lat]
 	}
-	console.log(frontend)
 	switch (frontend) {
 		// This is where all instance-specific code must be ran to convert the service url to one that can be understood by the frontend.
 		case "beatbump":
@@ -447,8 +449,11 @@ function redirect(url, type, initiator, forceRedirection) {
 			return `${randomInstance}${url.pathname}${url.search}`
 		case "simpleertube":
 			return `${randomInstance}/${url.hostname}${url.pathname}${url.search}`
+		case "invidious":
+		case "piped":
+			return `${utils.protocolHost(randomInstanceURL)}${url.pathname}?${allParams.toString()}`
 		default:
-			return `${randomInstance}${url.pathname}${url.search} `
+			return `${randomInstance}${url.pathname}${url.search}`
 	}
 }
 
diff --git a/src/assets/javascripts/utils.js b/src/assets/javascripts/utils.js
index 2b69e9a6..dce7f349 100644
--- a/src/assets/javascripts/utils.js
+++ b/src/assets/javascripts/utils.js
@@ -188,7 +188,7 @@ async function processDefaultCustomInstances(service, frontend, network, documen
 			event.preventDefault()
 			let frontendCustomInstanceInput = frontendNetworkElement.getElementsByClassName("custom-instance")[0]
 			let url = new URL(frontendCustomInstanceInput.value)
-			let protocolHostVar = protocolHost(url)
+			let protocolHostVar = url.href
 			if (frontendCustomInstanceInput.validity.valid && !redirects[frontend][network].includes(protocolHostVar)) {
 				if (!frontendCustomInstances.includes(protocolHostVar)) {
 					frontendCustomInstances.push(protocolHostVar)