diff options
author | ManeraKai <manerakai@protonmail.com> | 2022-03-01 20:53:45 +0300 |
---|---|---|
committer | ManeraKai <manerakai@protonmail.com> | 2022-03-01 20:53:45 +0300 |
commit | 082016dcdea0d2cd35121598977c0c513485de08 (patch) | |
tree | 60dcf8993fe918047daad18afe9430ca66aa679d /src/assets | |
parent | Fixed i.redd.it redirection to old.reddit.com #72 (diff) | |
download | libredirect-082016dcdea0d2cd35121598977c0c513485de08.zip |
Removed invidious cookies as it's not working
Diffstat (limited to 'src/assets')
-rw-r--r-- | src/assets/javascripts/helpers/youtube/invidious-preferences.js | 51 | ||||
-rw-r--r-- | src/assets/javascripts/helpers/youtube/youtube.js | 41 |
2 files changed, 59 insertions, 33 deletions
diff --git a/src/assets/javascripts/helpers/youtube/invidious-preferences.js b/src/assets/javascripts/helpers/youtube/invidious-preferences.js new file mode 100644 index 00000000..f60031fc --- /dev/null +++ b/src/assets/javascripts/helpers/youtube/invidious-preferences.js @@ -0,0 +1,51 @@ +window.browser = window.browser || window.chrome; + +function getCookie() { + for (const c of document.cookie.split(";")) { + while (c.charAt(0) == " ") c = c.substring(1, c.length); + if (c.indexOf("PREFS=") == 0) + return JSON.parse( + decodeURIComponent(c.substring("PREFS=".length, c.length)) + ); + } + return {}; +} + +browser.storage.local.get( + [ + "invidiousAlwaysProxy", + "invidiousSubtitles", + "invidiousPlayerStyle", + "youtubeVolume", + "youtubeAutoplay", + "OnlyEmbeddedVideo", + "youtubeTheme", + "invidiousVideoQuality", + ], (result) => { + let prefs = getCookie(); + let oldPrefs = { ...prefs }; + + if (result.invidiousAlwaysProxy !== undefined && prefs.local !== result.invidiousAlwaysProxy) + prefs.local = result.invidiousAlwaysProxy; + + if (result.invidiousVideoQuality !== undefined && prefs.quality !== result.invidiousVideoQuality) + prefs.quality = result.invidiousVideoQuality; + + if (result.youtubeTheme !== undefined && prefs.dark_mode !== result.youtubeTheme) + prefs.dark_mode = result.youtubeTheme; + + if (result.youtubeVolume !== undefined && prefs.volume !== result.youtubeVolume) + prefs.volume = result.youtubeVolume; + + if (result.invidiousPlayerStyle !== undefined && prefs.player_style !== result.invidiousPlayerStyle) + prefs.player_style = result.invidiousPlayerStyle; + + if (result.invidiousSubtitles !== undefined && prefs.subtitles === result.invidiousSubtitles) + prefs.subtitles = result.invidiousSubtitles; + + if (result.youtubeAutoplay !== undefined && prefs.autoplay !== result.youtubeAutoplay) + prefs.autoplay = result.youtubeAutoplay; + + if (prefs != oldPrefs) document.cookie = `PREFS=${encodeURIComponent(JSON.stringify(prefs))}`; + } +) diff --git a/src/assets/javascripts/helpers/youtube/youtube.js b/src/assets/javascripts/helpers/youtube/youtube.js index 243561d0..55f7d7d6 100644 --- a/src/assets/javascripts/helpers/youtube/youtube.js +++ b/src/assets/javascripts/helpers/youtube/youtube.js @@ -564,7 +564,7 @@ function addUrlParams(url) { else return; } -function initPipedLocalStorage(url, tabId) { +function initPipedLocalStorage(tabId) { browser.tabs.executeScript( tabId, { @@ -574,37 +574,12 @@ function initPipedLocalStorage(url, tabId) { ); } -function invidiousInitCookies(url) { - console.log("invidiousInitCookies"); - browser.cookies.get({ - url: url, - name: "PREFS" - }).then( - cookie => { - let prefs = {}; - if (cookie) prefs = JSON.parse(decodeURIComponent(cookie.value)); - let oldPrefs = { ...prefs }; - - if (invidiousAlwaysProxy != "DEFAULT" && prefs.local !== invidiousAlwaysProxy) prefs.local = invidiousAlwaysProxy; - - if (invidiousVideoQuality != "DEFAULT" && prefs.quality !== invidiousVideoQuality) prefs.quality = invidiousVideoQuality; - - if (theme != "DEFAULT" && prefs.dark_mode !== theme) prefs.dark_mode = theme; - - if (volume != "--" && prefs.volume !== volume) prefs.volume = volume; - - if (invidiousPlayerStyle != "DEFAULT" && prefs.player_style !== invidiousPlayerStyle) prefs.player_style = invidiousPlayerStyle; - - if (invidiousSubtitles != "DEFAULT" && prefs.subtitles === invidiousSubtitles) prefs.subtitles = invidiousSubtitles; - - if (autoplay != "DEFAULT" && prefs.autoplay !== autoplay) prefs.autoplay = autoplay; - - if (oldPrefs != prefs) - browser.cookies.set({ - url: url, - name: "PREFS", - value: encodeURIComponent(JSON.stringify(prefs)) - }) +function initInvidiousCookies(tabId) { + browser.tabs.executeScript( + tabId, + { + file: "/assets/javascripts/helpers/youtube/invidious-preferences.js", + runAt: "document_start" } ); } @@ -695,7 +670,7 @@ async function init() { export default { getBypassWatchOnYoutube, setBypassWatchOnYoutube, - invidiousInitCookies, + initInvidiousCookies, initPipedLocalStorage, getFrontend, |