diff options
author | ManeraKai <manerakai@protonmail.com> | 2022-05-30 19:39:05 +0300 |
---|---|---|
committer | ManeraKai <manerakai@protonmail.com> | 2022-05-30 19:39:05 +0300 |
commit | 32dfb779c42a5417b5b0582e15545b4d403964fb (patch) | |
tree | 9850f14808440771914b6c255ae57e1f9019a864 | |
parent | Merge branch 'master' of https://github.com/libredirect/libredirect (diff) | |
download | libredirect-32dfb779c42a5417b5b0582e15545b4d403964fb.zip |
Fix YouTube and YT Music typos #293
-rw-r--r-- | src/assets/javascripts/youtube/youtube.js | 58 | ||||
-rw-r--r-- | src/assets/javascripts/youtubeMusic.js | 12 | ||||
-rw-r--r-- | src/pages/options/widgets/youtube.js | 8 |
3 files changed, 28 insertions, 50 deletions
diff --git a/src/assets/javascripts/youtube/youtube.js b/src/assets/javascripts/youtube/youtube.js index f8227e90..50b0fad3 100644 --- a/src/assets/javascripts/youtube/youtube.js +++ b/src/assets/javascripts/youtube/youtube.js @@ -58,7 +58,7 @@ function setRedirects(val) { let disableYoutube, - OnlyEmbeddedVideo, + onlyEmbeddedVideo, youtubeFrontend, youtubeProtocol, youtubeEmbedFrontend, @@ -81,7 +81,7 @@ function init() { browser.storage.local.get( [ "disableYoutube", - "OnlyEmbeddedVideo", + "onlyEmbeddedVideo", "youtubeFrontend", "youtubeProtocol", "youtubeEmbedFrontend", @@ -101,7 +101,7 @@ function init() { ], r => { disableYoutube = r.disableYoutube; - OnlyEmbeddedVideo = r.OnlyEmbeddedVideo; + onlyEmbeddedVideo = r.onlyEmbeddedVideo; youtubeFrontend = r.youtubeFrontend; youtubeProtocol = r.youtubeProtocol; youtubeEmbedFrontend = r.youtubeEmbedFrontend; @@ -165,66 +165,46 @@ function redirect(url, details, initiator) { const isFrontendPiped = youtubeEmbedFrontend == 'piped'; const isFrontendPipedMaterial = youtubeEmbedFrontend == 'pipedMaterial'; - const isOnlyEmbeddedVideo = OnlyEmbeddedVideo == 'onlyNotEmbedded'; - const isOnlyNotEmbedded = OnlyEmbeddedVideo == 'onlyNotEmbedded' + const isOnlyEmbeddedVideo = onlyEmbeddedVideo == 'onlyEmbedded'; + const isOnlyNotEmbedded = onlyEmbeddedVideo == 'onlyNotEmbedded' - const is_main_frame = details.type === "main_frame"; - const is_sub_frame = details.type === "sub_frame"; + const main_frame = details.type === "main_frame"; + const sub_frame = details.type === "sub_frame"; if (url.pathname.match(/iframe_api/) || url.pathname.match(/www-widgetapi/)) return; // Don't redirect YouTube Player API. - if (youtubeFrontend == 'yatte' && is_main_frame) - return url.href.replace(/^https?:\/{2}/, 'yattee://'); + if (isOnlyEmbeddedVideo && !sub_frame) return; + if (isOnlyNotEmbedded && sub_frame) return; - else if (isFreetube && is_main_frame) - return `freetube://https:${url.pathname}${url.search}`; + if ((isFreetube || isYatte) && sub_frame && isFrontendYoutube) return; - else if (isFreetube && params && isFrontendYoutube) - return; - - else if (isInvidious || ((isFreetube || isYatte) && isFrontendInvidious && is_sub_frame)) { - - if (isOnlyEmbeddedVideo && !is_sub_frame) return; - if (isOnlyNotEmbedded && params && !((isFreetube || isYatte) && isFrontendInvidious && is_sub_frame)) return; + if (isYatte && main_frame) return url.href.replace(/^https?:\/{2}/, 'yattee://'); + if (isFreetube && main_frame) return `freetube://https://${url.pathname}${url.search}`; + if (isInvidious || ((isFreetube || isYatte) && sub_frame && isFrontendInvidious)) { let instancesList; if (youtubeProtocol == 'normal') instancesList = [...invidiousNormalRedirectsChecks, ...invidiousNormalCustomRedirects]; else if (youtubeProtocol == 'tor') instancesList = [...invidiousTorRedirectsChecks, ...invidiousTorCustomRedirects]; if (instancesList.length === 0) return; - let randomInstance = utils.getRandomInstance(instancesList); - + const randomInstance = utils.getRandomInstance(instancesList); return `${randomInstance}${url.pathname}${url.search}`; - } else if (isPiped || ((isFreetube || isYatte) && isFrontendPiped && is_sub_frame)) { - - if (isOnlyEmbeddedVideo && !is_sub_frame) return; - if ( - isOnlyNotEmbedded && params && - !((isFreetube || isYatte) && isFrontendPiped && is_sub_frame) - ) return; - + } + if (isPiped || ((isFreetube || isYatte) && sub_frame && isFrontendPiped)) { let instancesList; if (youtubeProtocol == 'normal') instancesList = [...pipedNormalRedirectsChecks, ...pipedNormalCustomRedirects]; else if (youtubeProtocol == 'tor') instancesList = [...pipedTorRedirectsChecks, ...pipedTorCustomRedirects]; if (instancesList.length === 0) return; - const randomInstance = utils.getRandomInstance(instancesList); return `${randomInstance}${url.pathname}${url.search}`; } - else if (isPipedMaterial || ((isFreetube || isYatte) && isFrontendPipedMaterial && is_sub_frame)) { - if (isOnlyEmbeddedVideo && details.type !== "sub_frame") return; - if ( - isOnlyNotEmbedded && params && - !((isFreetube || isYatte) && isFrontendPipedMaterial && is_sub_frame) - ) return; - + if (isPipedMaterial || ((isFreetube || isYatte) && sub_frame && isFrontendPipedMaterial)) { let instancesList; if (youtubeProtocol == 'normal') instancesList = [...pipedMaterialNormalRedirectsChecks, ...pipedMaterialNormalCustomRedirects]; else if (youtubeProtocol == 'tor') instancesList = [...pipedMaterialTorRedirectsChecks, ...pipedMaterialTorCustomRedirects]; - const randomInstance = utils.getRandomInstance(instancesList); return `${randomInstance}${url.pathname}${url.search}`; } - else return 'CANCEL'; + return 'CANCEL'; } function reverse(url) { @@ -292,7 +272,7 @@ function initDefaults() { await browser.storage.local.set({ disableYoutube: false, enableYoutubeCustomSettings: false, - OnlyEmbeddedVideo: 'both', + onlyEmbeddedVideo: 'both', youtubeRedirects: redirects, diff --git a/src/assets/javascripts/youtubeMusic.js b/src/assets/javascripts/youtubeMusic.js index 68fa4f24..90a02ecf 100644 --- a/src/assets/javascripts/youtubeMusic.js +++ b/src/assets/javascripts/youtubeMusic.js @@ -66,19 +66,17 @@ https://beatbump.ml/release?id=MPREb_QygdC0wEoLe https://music.youtube.com/watch?v=R6gSMSYKhKU&list=OLAK5uy_n-9HVh3cryV2gREZM9Sc0JwEKYjjfi0dU */ -function redirect(url, type, initiator) { +function redirect(url) { if (disableYoutubeMusic) return; if (!targets.some(rx => rx.test(url.href))) return; let instancesList = [...beatbumpNormalRedirectsChecks, ...beatbumpNormalCustomRedirects]; if (instancesList.length === 0) return; const randomInstance = utils.getRandomInstance(instancesList); - resolve( - `${randomInstance}${url.pathname}${url.search}` - .replace("/watch?v=", "/listen?id=") - .replace("/channel/", "/artist/") - .replace("/playlist?list=", "/playlist/VL") - ); + return `${randomInstance}${url.pathname}${url.search}` + .replace("/watch?v=", "/listen?id=") + .replace("/channel/", "/artist/") + .replace("/playlist?list=", "/playlist/VL"); } async function initDefaults() { diff --git a/src/pages/options/widgets/youtube.js b/src/pages/options/widgets/youtube.js index 7826541b..423a30c5 100644 --- a/src/pages/options/widgets/youtube.js +++ b/src/pages/options/widgets/youtube.js @@ -8,7 +8,7 @@ let pipedDiv = document.getElementById("piped"); let pipedMaterialDiv = document.getElementById("pipedMaterial"); let freetubeYatteeDiv = document.getElementById("freetube-yatte"); let youtubeEmbedFrontend = document.getElementById("youtube-embed-frontend"); -let OnlyEmbeddedVideo = document.getElementById("only-embed"); +let onlyEmbeddedVideo = document.getElementById("only-embed"); let protoco = document.getElementById("protocol"); function changeFrontendsSettings() { @@ -101,7 +101,7 @@ document.addEventListener("change", async () => { disableYoutube: !disableYoutube.checked, youtubeFrontend: youtubeFrontend.value, youtubeEmbedFrontend: youtubeEmbedFrontend.value, - OnlyEmbeddedVideo: OnlyEmbeddedVideo.value, + onlyEmbeddedVideo: onlyEmbeddedVideo.value, youtubeProtocol: protoco.value, }) changeProtocolSettings(); @@ -112,7 +112,7 @@ document.addEventListener("change", async () => { browser.storage.local.get( [ "disableYoutube", - "OnlyEmbeddedVideo", + "onlyEmbeddedVideo", "youtubeRedirects", "youtubeFrontend", @@ -121,7 +121,7 @@ browser.storage.local.get( ], r => { disableYoutube.checked = !r.disableYoutube; - OnlyEmbeddedVideo.value = r.OnlyEmbeddedVideo; + onlyEmbeddedVideo.value = r.onlyEmbeddedVideo; youtubeFrontend.value = r.youtubeFrontend; protoco.value = r.youtubeProtocol; |