aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2022-02-05 15:11:42 +0300
committerManeraKai <manerakai@protonmail.com>2022-02-05 15:11:50 +0300
commitf69ff242014ce8605a7dc8e30af090d60fe9d318 (patch)
treea1159d4d5a501b9170f01aea4c0c5c7d559e8686 /src
parentFixed icon theme #25 (diff)
downloadlibredirect-f69ff242014ce8605a7dc8e30af090d60fe9d318.zip
redirect invidious to piped if selected and vise versa #14
Diffstat (limited to '')
-rw-r--r--src/assets/images/Screen Shot Chrome 1.pngbin331026 -> 0 bytes
-rw-r--r--src/assets/images/Screen Shot Chrome 2.pngbin704517 -> 0 bytes
-rw-r--r--src/assets/images/Screen Shot Chrome 3.pngbin180386 -> 0 bytes
-rw-r--r--src/assets/images/Screen Shot Chrome 4.pngbin1038484 -> 0 bytes
-rw-r--r--src/assets/images/Screen Shot Chrome 5.pngbin191954 -> 0 bytes
-rw-r--r--src/assets/images/Screen Shot FF 1.pngbin335716 -> 0 bytes
-rw-r--r--src/assets/images/Screen Shot FF 2.pngbin2093693 -> 0 bytes
-rw-r--r--src/assets/images/Screen Shot FF 3.pngbin228957 -> 0 bytes
-rw-r--r--src/assets/images/Screen Shot FF 4.pngbin2866335 -> 0 bytes
-rw-r--r--src/assets/images/Screen Shot FF 5.pngbin256223 -> 0 bytes
-rw-r--r--src/assets/javascripts/helpers/youtube/youtube.js69
11 files changed, 40 insertions, 29 deletions
diff --git a/src/assets/images/Screen Shot Chrome 1.png b/src/assets/images/Screen Shot Chrome 1.png
deleted file mode 100644
index 1628b509..00000000
--- a/src/assets/images/Screen Shot Chrome 1.png
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/Screen Shot Chrome 2.png b/src/assets/images/Screen Shot Chrome 2.png
deleted file mode 100644
index 61eed643..00000000
--- a/src/assets/images/Screen Shot Chrome 2.png
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/Screen Shot Chrome 3.png b/src/assets/images/Screen Shot Chrome 3.png
deleted file mode 100644
index 42c92014..00000000
--- a/src/assets/images/Screen Shot Chrome 3.png
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/Screen Shot Chrome 4.png b/src/assets/images/Screen Shot Chrome 4.png
deleted file mode 100644
index 8bae0410..00000000
--- a/src/assets/images/Screen Shot Chrome 4.png
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/Screen Shot Chrome 5.png b/src/assets/images/Screen Shot Chrome 5.png
deleted file mode 100644
index d3f54841..00000000
--- a/src/assets/images/Screen Shot Chrome 5.png
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/Screen Shot FF 1.png b/src/assets/images/Screen Shot FF 1.png
deleted file mode 100644
index 7ae2e614..00000000
--- a/src/assets/images/Screen Shot FF 1.png
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/Screen Shot FF 2.png b/src/assets/images/Screen Shot FF 2.png
deleted file mode 100644
index a995478a..00000000
--- a/src/assets/images/Screen Shot FF 2.png
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/Screen Shot FF 3.png b/src/assets/images/Screen Shot FF 3.png
deleted file mode 100644
index fc3232b6..00000000
--- a/src/assets/images/Screen Shot FF 3.png
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/Screen Shot FF 4.png b/src/assets/images/Screen Shot FF 4.png
deleted file mode 100644
index f230fed2..00000000
--- a/src/assets/images/Screen Shot FF 4.png
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/Screen Shot FF 5.png b/src/assets/images/Screen Shot FF 5.png
deleted file mode 100644
index 420838d9..00000000
--- a/src/assets/images/Screen Shot FF 5.png
+++ /dev/null
Binary files differ
diff --git a/src/assets/javascripts/helpers/youtube/youtube.js b/src/assets/javascripts/helpers/youtube/youtube.js
index 2c03a971..8b4677da 100644
--- a/src/assets/javascripts/helpers/youtube/youtube.js
+++ b/src/assets/javascripts/helpers/youtube/youtube.js
@@ -162,8 +162,26 @@ function setPersistInvidiousPrefs(val) {
console.log("persistInvidiousPrefs: ", persistInvidiousPrefs)
}
+let invidiousHostNames = () => redirects.invidious.normal.map(link => new URL(link).host);
+let pipedHostNames = () => redirects.piped.normal.map(link => new URL(link).host);
+
function isYoutube(url) {
- return targets.includes(url.host);
+ if (frontend == 'invidious') {
+ let mightyList = [
+ ...targets,
+ ...pipedHostNames(),
+ ]
+ return mightyList.includes(url.host);
+ }
+ if (frontend == 'piped') {
+ let mightyList = [
+ ...targets,
+ ...invidiousHostNames(),
+ ]
+ console.log("mightyList.includes(url.host)", mightyList.includes(url.host))
+ return mightyList.includes(url.host);
+ } else
+ return targets.includes(url.host)
}
async function init() {
@@ -224,49 +242,42 @@ function redirect(url, initiator, type) {
)
return null;
+ if (url.host.split(".")[0] === "studio") return null;// Avoid `studio.youtube.com`
+
+ if (url.pathname.match(/iframe_api/) || url.pathname.match(/www-widgetapi/)) return null; // Don't redirect YouTube Player API.
+
if (frontend == 'freeTube' && type === "main_frame")
return `freetube://${url}`;
else if (frontend == 'invidious') {
- if (url.pathname.match(/iframe_api/) || url.pathname.match(/www-widgetapi/)) return null; // Don't redirect YouTube Player API.
-
- if (url.host.split(".")[0] === "studio") {
- console.log("no because studio");
- return null;
- }; // Avoid redirecting `studio.youtube.com`
-
if (invidiousOnlyEmbeddedVideo && type !== "sub_frame") return null;
- if (invidiousAlwaysProxy != "DEFAULT")
- url.searchParams.append("local", invidiousAlwaysProxy);
-
- if (invidiousVideoQuality != "DEFAULT")
- url.searchParams.append("quality", invidiousVideoQuality);
-
- if (invidiousTheme != "DEFAULT")
- url.searchParams.append("dark_mode", invidiousTheme);
-
- if (invidiousVolume != "--")
- url.searchParams.append("volume", invidiousVolume);
-
- if (invidiousPlayerStyle != "DEFAULT")
- url.searchParams.append("player_style", invidiousPlayerStyle);
-
- if (invidiousSubtitles.trim() != '')
- url.searchParams.append("subtitles", invidiousSubtitles);
-
- if (invidiousAutoplay != "DEFAULT")
- url.searchParams.append("autoplay", invidiousAutoplay);
+ if (invidiousAlwaysProxy != "DEFAULT") url.searchParams.append("local", invidiousAlwaysProxy);
+ if (invidiousVideoQuality != "DEFAULT") url.searchParams.append("quality", invidiousVideoQuality);
+ if (invidiousTheme != "DEFAULT") url.searchParams.append("dark_mode", invidiousTheme);
+ if (invidiousVolume != "--") url.searchParams.append("volume", invidiousVolume);
+ if (invidiousPlayerStyle != "DEFAULT") url.searchParams.append("player_style", invidiousPlayerStyle);
+ if (invidiousSubtitles.trim() != '') url.searchParams.append("subtitles", invidiousSubtitles);
+ if (invidiousAutoplay != "DEFAULT") url.searchParams.append("autoplay", invidiousAutoplay);
let randomInstance = commonHelper.getRandomInstance(redirects.invidious.normal)
return `${randomInstance}${url.pathname.replace("/shorts", "")}${url.search}`;
} else if (frontend == 'piped') {
+
if (invidiousOnlyEmbeddedVideo && type !== "sub_frame") return null;
+
let randomInstance = commonHelper.getRandomInstance(redirects.piped.normal);
- if (url.hostname.endsWith("youtube.com") || url.hostname.endsWith("youtube-nocookie.com"))
+
+ console.log(" redirects.invidious.normal.includes(url.hostname)", redirects.invidious.normal.includes(url.hostname))
+
+ if (
+ url.hostname.endsWith("youtube.com") ||
+ url.hostname.endsWith("youtube-nocookie.com") ||
+ invidiousHostNames().includes(url.hostname)
+ )
return `${randomInstance}${url.pathname}${url.search}`;
if (url.hostname.endsWith("youtu.be") && url.pathname.length > 1)