diff options
43 files changed, 1149 insertions, 1120 deletions
diff --git a/src/assets/javascripts/helpers/common.js b/src/assets/javascripts/helpers/common.js index b2a91b20..5d470cf0 100644 --- a/src/assets/javascripts/helpers/common.js +++ b/src/assets/javascripts/helpers/common.js @@ -19,11 +19,12 @@ let cloudflareList = []; async function initCloudflareList() { return new Promise(resolve => { fetch('/instances/cloudflare.json').then(response => response.text()).then(data => { - cloudflareList = data; + cloudflareList = JSON.parse(data); resolve(); }) }); } + async function wholeInit() { await youtubeHelper.init(); await twitterHelper.init(); @@ -98,9 +99,9 @@ function protocolHost(url) { } async function processDefaultCustomInstances( + target, name, protocol, - nameHelper, document, ) { function camelCase(str) { @@ -116,9 +117,38 @@ async function processDefaultCustomInstances( await initCloudflareList(); + + let nameDefaultRedirects; + + let redirectsChecks = `${name}${camelCase(protocol)}RedirectsChecks`; + let customRedirects = `${name}${camelCase(protocol)}CustomRedirects`; + let redirectsKey = `${target}Redirects`; + + let redirects; + + async function getFromStorage() { + return new Promise(async resolve => { + + browser.storage.local.get( + [ + redirectsChecks, + customRedirects, + redirectsKey + ], + r => { + nameDefaultRedirects = r[redirectsChecks]; + nameCustomInstances = r[customRedirects]; + redirects = r[redirectsKey]; + resolve(); + } + ) + }) + } + await getFromStorage(); + function calcNameCheckBoxes() { let isTrue = true; - for (const item of nameHelper.getRedirects()[name][protocol]) + for (const item of redirects[name][protocol]) if (!nameDefaultRedirects.includes(item)) { isTrue = false; break; @@ -129,11 +159,6 @@ async function processDefaultCustomInstances( nameProtocolElement.getElementsByClassName('toogle-all')[0].checked = isTrue; } - let nameDefaultRedirects; - - let redirectsChecks = `${name}${camelCase(protocol)}RedirectsChecks`; - let customRedirects = `${name}${camelCase(protocol)}CustomRedirects`; - async function setRedirectsChecks(val) { await browser.storage.local.set({ [redirectsChecks]: val }); } @@ -142,24 +167,6 @@ async function processDefaultCustomInstances( await browser.storage.local.set({ [customRedirects]: val }); } - async function getFromStorage() { - return new Promise(async resolve => { - nameHelper.init().then(() => - browser.storage.local.get( - [ - redirectsChecks, - customRedirects, - ], - r => { - nameDefaultRedirects = r[redirectsChecks]; - nameCustomInstances = r[customRedirects]; - resolve(); - } - ) - ) - }) - } - await getFromStorage(); nameCheckListElement.innerHTML = [ @@ -167,7 +174,7 @@ async function processDefaultCustomInstances( <x data-localise="__MSG_toggleAll__">Toggle All</x> <input type="checkbox" class="toogle-all"/> </div>`, - ...nameHelper.getRedirects()[name][protocol].map( + ...redirects[name][protocol].map( x => { let cloudflare = cloudflareList.includes(x) ? ' <span style="color:red;">cloudflare</span>' : ''; @@ -185,7 +192,7 @@ async function processDefaultCustomInstances( calcNameCheckBoxes(); nameProtocolElement.getElementsByClassName('toogle-all')[0].addEventListener("change", async event => { if (event.target.checked) - nameDefaultRedirects = [...nameHelper.getRedirects()[name][protocol]]; + nameDefaultRedirects = [...redirects[name][protocol]]; else nameDefaultRedirects = []; @@ -236,7 +243,7 @@ async function processDefaultCustomInstances( let nameCustomInstanceInput = nameProtocolElement.getElementsByClassName('custom-instance')[0]; let url = new URL(nameCustomInstanceInput.value); let protocolHostVar = protocolHost(url); - if (nameCustomInstanceInput.validity.valid && !nameHelper.getRedirects()[name][protocol].includes(protocolHostVar)) { + if (nameCustomInstanceInput.validity.valid && !redirects[name][protocol].includes(protocolHostVar)) { if (!nameCustomInstances.includes(protocolHostVar)) { nameCustomInstances.push(protocolHostVar) setCustom(nameCustomInstances); diff --git a/src/assets/javascripts/helpers/general.js b/src/assets/javascripts/helpers/general.js index 4a1681e9..56f76d8b 100644 --- a/src/assets/javascripts/helpers/general.js +++ b/src/assets/javascripts/helpers/general.js @@ -74,7 +74,6 @@ async function init() { popupFrontends = r.popupFrontends ?? [ "youtube", - "youtubeMusic", "twitter", "instagram", "tikTok", diff --git a/src/assets/javascripts/helpers/imgur.js b/src/assets/javascripts/helpers/imgur.js index 7a2daa43..f581a75a 100644 --- a/src/assets/javascripts/helpers/imgur.js +++ b/src/assets/javascripts/helpers/imgur.js @@ -21,33 +21,35 @@ function setRedirects(val) { var index = rimgoNormalRedirectsChecks.indexOf(item); if (index !== -1) rimgoNormalRedirectsChecks.splice(index, 1); } - browser.storage.local.set({rimgoNormalRedirectsChecks}); + browser.storage.local.set({ rimgoNormalRedirectsChecks }); for (const item of rimgoTorRedirectsChecks) if (!redirects.rimgo.tor.includes(item)) { var index = rimgoTorRedirectsChecks.indexOf(item); if (index !== -1) rimgoTorRedirectsChecks.splice(index, 1); } - browser.storage.local.set({rimgoTorRedirectsChecks}); + browser.storage.local.set({ rimgoTorRedirectsChecks }); for (const item of rimgoI2pRedirectsChecks) if (!redirects.rimgo.i2p.includes(item)) { var index = rimgoI2pRedirectsChecks.indexOf(item); if (index !== -1) rimgoI2pRedirectsChecks.splice(index, 1); } - browser.storage.local.set({rimgoI2pRedirectsChecks}); + browser.storage.local.set({ rimgoI2pRedirectsChecks }); } -let disable; -let protocol; +let + disable, + protocol; -let rimgoNormalRedirectsChecks; -let rimgoTorRedirectsChecks; -let rimgoI2pRedirectsChecks; -let rimgoNormalCustomRedirects = []; -let rimgoTorCustomRedirects = []; -let rimgoI2pCustomRedirects = []; +let + rimgoNormalRedirectsChecks, + rimgoTorRedirectsChecks, + rimgoI2pRedirectsChecks, + rimgoNormalCustomRedirects, + rimgoTorCustomRedirects, + rimgoI2pCustomRedirects; function redirect(url, type, initiator) { // https://imgur.com/gallery/s4WXQmn @@ -129,18 +131,23 @@ function switchInstance(url) { } async function initDefaults() { - return new Promise(async resolve => { - fetch('/instances/data.json').then(response => response.text()).then(async data => { - let dataJson = JSON.parse(data); - redirects.rimgo = dataJson.rimgo + fetch('/instances/data.json').then(response => response.text()).then(async data => { + let dataJson = JSON.parse(data); + redirects.rimgo = dataJson.rimgo; + browser.storage.local.get('cloudflareList', async r => { + rimgoNormalRedirectsChecks = [...redirects.rimgo.normal]; + for (const instance of r.cloudflareList) { + let i; + + i = rimgoNormalRedirectsChecks.indexOf(instance); + if (i > -1) rimgoNormalRedirectsChecks.splice(i, 1); + } await browser.storage.local.set({ disableImgur: false, imgurProtocol: 'normal', - imgurRedirects: { - 'rimgo': redirects.rimgo, - }, + imgurRedirects: redirects, - rimgoNormalRedirectsChecks: [...redirects.rimgo.normal], + rimgoNormalRedirectsChecks: rimgoNormalRedirectsChecks, rimgoNormalCustomRedirects: [], rimgoTorRedirectsChecks: [...redirects.rimgo.tor], @@ -149,9 +156,8 @@ async function initDefaults() { rimgoI2pRedirectsChecks: [...redirects.rimgo.i2p], rimgoI2pCustomRedirects: [], }); - resolve(); }); - }) + }); } async function init() { diff --git a/src/assets/javascripts/helpers/instagram.js b/src/assets/javascripts/helpers/instagram.js index 26414070..3277ffda 100644 --- a/src/assets/javascripts/helpers/instagram.js +++ b/src/assets/javascripts/helpers/instagram.js @@ -173,27 +173,34 @@ async function initDefaults() { fetch('/instances/data.json').then(response => response.text()).then(async data => { let dataJson = JSON.parse(data); redirects.bibliogram = dataJson.bibliogram; - await browser.storage.local.set({ - disableInstagram: false, - instagramRedirects: { - 'bibliogram': redirects.bibliogram - }, + browser.storage.local.get('cloudflareList', async r => { + bibliogramNormalRedirectsChecks = [...redirects.bibliogram.normal]; + for (const instance of r.cloudflareList) { + let i; - theme: 'DEFAULT', - applyThemeToSites: false, + i = bibliogramNormalRedirectsChecks.indexOf(instance); + if (i > -1) bibliogramNormalRedirectsChecks.splice(i, 1); + } + await browser.storage.local.set({ + disableInstagram: false, + instagramRedirects: redirects, - instancesCookies: [], + theme: 'DEFAULT', + applyThemeToSites: false, - bibliogramNormalRedirectsChecks: [...redirects.bibliogram.normal], - bibliogramTorRedirectsChecks: [], + instancesCookies: [], - bibliogramNormalCustomRedirects: [...redirects.bibliogram.tor], - bibliogramTorCustomRedirects: [], - instagramProtocol: "normal", - }) - resolve(); - } - ) + bibliogramNormalRedirectsChecks: bibliogramNormalRedirectsChecks, + bibliogramTorRedirectsChecks: [], + + bibliogramNormalCustomRedirects: [...redirects.bibliogram.tor], + bibliogramTorCustomRedirects: [], + instagramProtocol: "normal", + }) + resolve(); + } + ) + }) }) } diff --git a/src/assets/javascripts/helpers/lbry.js b/src/assets/javascripts/helpers/lbry.js index 8b0f78a7..b82ae9ad 100644 --- a/src/assets/javascripts/helpers/lbry.js +++ b/src/assets/javascripts/helpers/lbry.js @@ -93,14 +93,21 @@ function redirect(url, type, initiator) { } async function initDefaults() { - return new Promise(async resolve => { + browser.storage.local.get('cloudflareList', async r => { + librarianNormalRedirectsChecks = [...redirects.librarian.normal]; + for (const instance of r.cloudflareList) { + let i; + + i = librarianNormalRedirectsChecks.indexOf(instance); + if (i > -1) librarianNormalRedirectsChecks.splice(i, 1); + } await browser.storage.local.set({ disableLbryTargets: true, lbryTargetsRedirects: { 'librarian': redirects.librarian }, - librarianNormalRedirectsChecks: [...redirects.librarian.normal], + librarianNormalRedirectsChecks: librarianNormalRedirectsChecks, librarianNormalCustomRedirects: [], librarianTorRedirectsChecks: [...redirects.librarian.tor], @@ -108,7 +115,6 @@ async function initDefaults() { lbryTargetsProtocol: "normal", }) - resolve(); }) } @@ -129,7 +135,6 @@ async function init() { "lbryTargetsProtocol" ], r => { - disable = r.disableLbryTargets; protocol = r.lbryTargetsProtocol; diff --git a/src/assets/javascripts/helpers/maps.js b/src/assets/javascripts/helpers/maps.js index 25dcf2c5..86a53b18 100644 --- a/src/assets/javascripts/helpers/maps.js +++ b/src/assets/javascripts/helpers/maps.js @@ -17,7 +17,6 @@ let redirects = { ] } }; -const getRedirects = () => redirects; let disable; // disableMaps let frontend; // mapsFrontend @@ -187,14 +186,14 @@ function redirect(url, initiator) { } async function initDefaults() { - return new Promise(async resolve => { - await browser.storage.local.set({ - disableMaps: false, - mapsFrontend: 'osm', - - facilNormalRedirectsChecks: [...redirects.facil.normal], - facilNormalCustomRedirects: [], - }) + await browser.storage.local.set({ + disableMaps: false, + mapsFrontend: 'osm', + + mapsRedirects: redirects, + + facilNormalRedirectsChecks: [...redirects.facil.normal], + facilNormalCustomRedirects: [], }) } @@ -223,8 +222,6 @@ async function init() { } export default { - getRedirects, - redirect, init, initDefaults, diff --git a/src/assets/javascripts/helpers/medium.js b/src/assets/javascripts/helpers/medium.js index beea1a99..99a14cca 100644 --- a/src/assets/javascripts/helpers/medium.js +++ b/src/assets/javascripts/helpers/medium.js @@ -123,20 +123,27 @@ function switchInstance(url) { } async function initDefaults() { - return new Promise(async resolve => { - fetch('/instances/data.json').then(response => response.text()).then(async data => { - let dataJson = JSON.parse(data); - redirects.scribe = dataJson.scribe; + fetch('/instances/data.json').then(response => response.text()).then(async data => { + let dataJson = JSON.parse(data); + redirects.scribe = dataJson.scribe; + browser.storage.local.get('cloudflareList', async r => { + scribeNormalRedirectsChecks = [...redirects.scribe.normal]; + for (const instance of r.cloudflareList) { + let i = scribeNormalRedirectsChecks.indexOf(instance); + if (i > -1) scribeNormalRedirectsChecks.splice(i, 1); + } await browser.storage.local.set({ disableMedium: false, mediumRedirects: redirects, - scribeNormalRedirectsChecks: [...redirects.scribe.normal], + + scribeNormalRedirectsChecks: scribeNormalRedirectsChecks, scribeNormalCustomRedirects: [], + scribeTorRedirectsChecks: [...redirects.scribe.tor], scribeTorCustomRedirects: [], + mediumProtocol: "normal", }) - resolve(); }) }) } diff --git a/src/assets/javascripts/helpers/peertube.js b/src/assets/javascripts/helpers/peertube.js index 17fada2b..14dda0b1 100644 --- a/src/assets/javascripts/helpers/peertube.js +++ b/src/assets/javascripts/helpers/peertube.js @@ -94,21 +94,29 @@ function redirect(url, type, initiator) { } async function initDefaults() { - console.log('init peertube defaults') fetch('/instances/data.json').then(response => response.text()).then(async data => { let dataJson = JSON.parse(data); - await browser.storage.local.set({ - peerTubeTargets: ['https://search.joinpeertube.org', ...dataJson.peertube], + browser.storage.local.get('cloudflareList', async r => { + simpleertubeNormalRedirectsChecks = [...redirects.simpleertube.normal]; + for (const instance of r.cloudflareList) { + let i = simpleertubeNormalRedirectsChecks.indexOf(instance); + if (i > -1) simpleertubeNormalRedirectsChecks.splice(i, 1); + } + await browser.storage.local.set({ + peerTubeTargets: ['https://search.joinpeertube.org', ...dataJson.peertube], - disablePeertubeTargets: true, + disablePeertubeTargets: true, - simpleertubeNormalRedirectsChecks: [...redirects.simpleertube.normal], - simpleertubeNormalCustomRedirects: [], + peertubeRedirects: redirects, - simpleertubeTorRedirectsChecks: [...redirects.simpleertube.tor], - simpleertubeTorCustomRedirects: [], + simpleertubeNormalRedirectsChecks: simpleertubeNormalRedirectsChecks, + simpleertubeNormalCustomRedirects: [], - peertubeTargetsProtocol: "normal", + simpleertubeTorRedirectsChecks: [...redirects.simpleertube.tor], + simpleertubeTorCustomRedirects: [], + + peertubeTargetsProtocol: "normal", + }) }) }) } diff --git a/src/assets/javascripts/helpers/reddit.js b/src/assets/javascripts/helpers/reddit.js index 6e932f6d..7c123797 100644 --- a/src/assets/javascripts/helpers/reddit.js +++ b/src/assets/javascripts/helpers/reddit.js @@ -387,12 +387,22 @@ function switchInstance(url) { } async function initDefaults() { - console.log('init redditDefault') - return new Promise(async resolve => { - fetch('/instances/data.json').then(response => response.text()).then(async data => { - let dataJson = JSON.parse(data); - redirects.teddit = dataJson.teddit; - redirects.libreddit = dataJson.libreddit; + fetch('/instances/data.json').then(response => response.text()).then(async data => { + let dataJson = JSON.parse(data); + redirects.teddit = dataJson.teddit; + redirects.libreddit = dataJson.libreddit; + browser.storage.local.get('cloudflareList', async r => { + libredditNormalRedirectsChecks = [...redirects.libreddit.normal]; + tedditNormalRedirectsChecks = [...redirects.teddit.normal] + for (const instance of r.cloudflareList) { + let i; + + i = libredditNormalRedirectsChecks.indexOf(instance); + if (i > -1) libredditNormalRedirectsChecks.splice(i, 1); + + i = tedditNormalRedirectsChecks.indexOf(instance); + if (i > -1) tedditNormalRedirectsChecks.splice(i, 1); + } await browser.storage.local.set({ disableReddit: false, redditProtocol: 'normal', @@ -401,18 +411,15 @@ async function initDefaults() { bypassWatchOnReddit: true, alwaysUsePreferred: false, - redditRedirects: { - 'libreddit': redirects.libreddit, - 'teddit': redirects.teddit, - }, + redditRedirects: redirects, - libredditNormalRedirectsChecks: [...redirects.libreddit.normal], + libredditNormalRedirectsChecks: libredditNormalRedirectsChecks, libredditNormalCustomRedirects: [], libredditTorRedirectsChecks: [...redirects.libreddit.tor], libredditTorCustomRedirects: [], - tedditNormalRedirectsChecks: [...redirects.teddit.normal], + tedditNormalRedirectsChecks: tedditNormalRedirectsChecks, tedditNormalCustomRedirects: [], tedditTorRedirectsChecks: [...redirects.teddit.tor], @@ -430,9 +437,8 @@ async function initDefaults() { redditUseHls: false, redditHideHlsNotification: false, }); - resolve(); }); - }) + }); } async function init() { diff --git a/src/assets/javascripts/helpers/search.js b/src/assets/javascripts/helpers/search.js index e42b05dd..c26eeb29 100644 --- a/src/assets/javascripts/helpers/search.js +++ b/src/assets/javascripts/helpers/search.js @@ -27,7 +27,6 @@ let redirects = { "i2p": [] } }; -const getRedirects = () => redirects; function setSearxRedirects(val) { redirects.searx = val; @@ -283,42 +282,60 @@ async function initDefaults() { redirects.searx = dataJson.searx; redirects.searxng = dataJson.searxng; redirects.whoogle = dataJson.whoogle; - await browser.storage.local.set({ - disableSearch: false, - searchFrontend: 'searxng', - searchRedirects: redirects, - whoogleNormalRedirectsChecks: [...redirects.whoogle.normal], - whoogleNormalCustomRedirects: [], + browser.storage.local.get('cloudflareList', async r => { + whoogleNormalRedirectsChecks = [...redirects.whoogle.normal]; + searxNormalRedirectsChecks = [...redirects.searx.normal]; + searxngNormalRedirectsChecks = [...redirects.searxng.normal]; + for (const instance of r.cloudflareList) { + let i; - whoogleTorRedirectsChecks: [...redirects.whoogle.tor], - whoogleTorCustomRedirects: [], + i = whoogleNormalRedirectsChecks.indexOf(instance); + if (i > -1) whoogleNormalRedirectsChecks.splice(i, 1); - whoogleI2pRedirectsChecks: [...redirects.whoogle.i2p], - whoogleI2pCustomRedirects: [], + i = searxNormalRedirectsChecks.indexOf(instance); + if (i > -1) searxNormalRedirectsChecks.splice(i, 1); - searxNormalRedirectsChecks: [...redirects.searx.normal], - searxNormalCustomRedirects: [], + i = searxngNormalRedirectsChecks.indexOf(instance); + if (i > -1) searxngNormalRedirectsChecks.splice(i, 1); + } + await browser.storage.local.set({ + disableSearch: false, + searchFrontend: 'searxng', + searchRedirects: redirects, - searxTorRedirectsChecks: [...redirects.searx.tor], - searxTorCustomRedirects: [], + whoogleNormalRedirectsChecks: whoogleNormalRedirectsChecks, + whoogleNormalCustomRedirects: [], - searxI2pRedirectsChecks: [...redirects.searx.i2p], - searxI2pCustomRedirects: [], + whoogleTorRedirectsChecks: [...redirects.whoogle.tor], + whoogleTorCustomRedirects: [], - searxngNormalRedirectsChecks: [...redirects.searxng.normal], - searxngNormalCustomRedirects: [], + whoogleI2pRedirectsChecks: [...redirects.whoogle.i2p], + whoogleI2pCustomRedirects: [], - searxngTorRedirectsChecks: [...redirects.searxng.tor], - searxngTorCustomRedirects: [], + searxNormalRedirectsChecks: searxNormalRedirectsChecks, + searxNormalCustomRedirects: [], - searxngI2pRedirectsChecks: [...redirects.searxng.i2p], - searxngI2pCustomRedirects: [], + searxTorRedirectsChecks: [...redirects.searx.tor], + searxTorCustomRedirects: [], - theme: 'DEFAULT', - applyThemeToSites: false, + searxI2pRedirectsChecks: [...redirects.searx.i2p], + searxI2pCustomRedirects: [], - searchProtocol: 'normal', + searxngNormalRedirectsChecks: searxngNormalRedirectsChecks, + searxngNormalCustomRedirects: [], + + searxngTorRedirectsChecks: [...redirects.searxng.tor], + searxngTorCustomRedirects: [], + + searxngI2pRedirectsChecks: [...redirects.searxng.i2p], + searxngI2pCustomRedirects: [], + + theme: 'DEFAULT', + applyThemeToSites: false, + + searchProtocol: 'normal', + }) }) }) } @@ -403,7 +420,6 @@ async function init() { } export default { - getRedirects, setSearxRedirects, setSearxngRedirects, diff --git a/src/assets/javascripts/helpers/sendTargets.js b/src/assets/javascripts/helpers/sendTargets.js index 1ab2b2e8..f131f5c3 100644 --- a/src/assets/javascripts/helpers/sendTargets.js +++ b/src/assets/javascripts/helpers/sendTargets.js @@ -92,17 +92,24 @@ async function initDefaults() { fetch('/instances/data.json').then(response => response.text()).then(async data => { let dataJson = JSON.parse(data); redirects.send = dataJson.send; - await browser.storage.local.set({ - disableSendTarget: false, - sendTargetsRedirects: redirects, - - sendNormalRedirectsChecks: [...redirects.send.normal], - sendNormalCustomRedirects: [], - - sendTorRedirectsChecks: [...redirects.send.tor], - sendTorCustomRedirects: [], - - sendTargetsProtocol: "normal", + browser.storage.local.get('cloudflareList', async r => { + sendNormalRedirectsChecks = [...redirects.send.normal]; + for (const instance of r.cloudflareList) { + let i = sendNormalRedirectsChecks.indexOf(instance); + if (i > -1) sendNormalRedirectsChecks.splice(i, 1); + } + await browser.storage.local.set({ + disableSendTarget: false, + sendTargetsRedirects: redirects, + + sendNormalRedirectsChecks: sendNormalRedirectsChecks, + sendNormalCustomRedirects: [], + + sendTorRedirectsChecks: [...redirects.send.tor], + sendTorCustomRedirects: [], + + sendTargetsProtocol: "normal", + }) }) }) } diff --git a/src/assets/javascripts/helpers/speedtest.js b/src/assets/javascripts/helpers/speedtest.js index 4f59cbb5..00f0a138 100644 --- a/src/assets/javascripts/helpers/speedtest.js +++ b/src/assets/javascripts/helpers/speedtest.js @@ -64,6 +64,8 @@ async function initDefaults() { await browser.storage.local.set({ disableSpeedtest: true, + speedtestRedirects: redirects, + librespeedNormalRedirectsChecks: [...redirects.librespeed.normal], librespeedNormalCustomRedirects: [], diff --git a/src/assets/javascripts/helpers/spotify.js b/src/assets/javascripts/helpers/spotify.js index 6863c108..9ff2c7d5 100644 --- a/src/assets/javascripts/helpers/spotify.js +++ b/src/assets/javascripts/helpers/spotify.js @@ -14,7 +14,6 @@ let redirects = { } } -const getRedirects = () => redirects; function setRedirects(val) { redirects.soju = val; browser.storage.local.set({ spotifyTargetsRedirects: redirects }) @@ -25,20 +24,10 @@ function setRedirects(val) { if (index !== -1) sojuNormalRedirectsChecks.splice(index, 1); } browser.storage.local.set({ sojuNormalRedirectsChecks }) - - for (const item of sojuTorRedirectsChecks) - if (!redirects.soju.normal.includes(item)) { - var index = sojuTorRedirectsChecks.indexOf(item); - if (index !== -1) sojuTorRedirectsChecks.splice(index, 1); - } - browser.storage.local.set({ sojuTorRedirectsChecks }) } let sojuNormalRedirectsChecks; -let sojuTorRedirectsChecks; -let sojuNormalCustomRedirects = []; -let sojuTorCustomRedirects = []; - +let sojuNormalCustomRedirects; let disable; // disableSpotifyTargets function switchInstance(url) { @@ -83,6 +72,8 @@ async function initDefaults() { await browser.storage.local.set({ disableSpotifyTargets: true, + spotifyRedirects: redirects, + sojuNormalRedirectsChecks: [...redirects.soju.normal], sojuNormalCustomRedirects: [], }) @@ -95,9 +86,6 @@ async function init() { "sojuNormalRedirectsChecks", "sojuNormalCustomRedirects", - - "sojuTorRedirectsChecks", - "sojuTorCustomRedirects", ], r => { disable = r.disableSpotifyTargets; @@ -109,7 +97,6 @@ async function init() { } export default { - getRedirects, setRedirects, switchInstance, diff --git a/src/assets/javascripts/helpers/translate/lingva-preferences.js b/src/assets/javascripts/helpers/translate/lingva-preferences.js index b63e2876..a9652903 100644 --- a/src/assets/javascripts/helpers/translate/lingva-preferences.js +++ b/src/assets/javascripts/helpers/translate/lingva-preferences.js @@ -6,8 +6,8 @@ browser.storage.local.get( "applyThemeToSites", ], r => { - let applyThemeToSites = r.applyThemeToSites ?? false; - let theme = r.theme ?? "DEFAULT"; + let applyThemeToSites = r.applyThemeToSites; + let theme = r.theme; if (applyThemeToSites && theme != "DEFAULT") localStorage.setItem("chakra-ui-color-mode", r.theme); } diff --git a/src/assets/javascripts/helpers/translate/translate.js b/src/assets/javascripts/helpers/translate/translate.js index 4c4cee79..7ce67433 100644 --- a/src/assets/javascripts/helpers/translate/translate.js +++ b/src/assets/javascripts/helpers/translate/translate.js @@ -68,15 +68,13 @@ let lingvaNormalCustomRedirects = []; let lingvaTorCustomRedirects = []; -let disable; // translateDisable -let frontend; // translateFrontend -let protocol; // translateProtocol - -let from; // translateFrom -let to; // translateTo - - -let simplyTranslateEngine; +let + disable, // translateDisable + frontend, // translateFrontend + protocol, // translateProtocol + from, // translateFrom + to, // translateTo + simplyTranslateEngine; function isTranslateRedirects(url, type, frontend) { let protocolHost = commonHelper.protocolHost(url); @@ -203,82 +201,91 @@ function switchInstance(url) { } async function initDefaults() { - fetch('/instances/data.json').then(response => response.text()).then(async data => { let dataJson = JSON.parse(data); redirects.simplyTranslate = dataJson.simplyTranslate; redirects.lingva = dataJson.lingva; - await browser.storage.local.set({ - translateDisable: false, - translateFrontend: "simplyTranslate", - translateProtocol: 'normal', - translateRedirects: redirects, - - simplyTranslateNormalRedirectsChecks: [...redirects.simplyTranslate.normal], - simplyTranslateNormalCustomRedirects: [], - simplyTranslateTorRedirectsChecks: [...redirects.simplyTranslate.tor], - simplyTranslateTorCustomRedirects: [], - - lingvaNormalRedirectsChecks: [...redirects.lingva.normal], - lingvaNormalCustomRedirects: [], - lingvaTorRedirectsChecks: [...redirects.lingva.tor], - lingvaTorCustomRedirects: [], - - translateFrom: "auto", - translateTo: 'en', - simplyTranslateEngine: 'google', + browser.storage.local.get('cloudflareList', async r => { + simplyTranslateNormalRedirectsChecks = [...redirects.simplyTranslate.normal]; + lingvaNormalRedirectsChecks = [...redirects.lingva.normal] + for (const instance of r.cloudflareList) { + let i; + + i = simplyTranslateNormalRedirectsChecks.indexOf(instance); + if (i > -1) simplyTranslateNormalRedirectsChecks.splice(i, 1); + + i = lingvaNormalRedirectsChecks.indexOf(instance); + if (i > -1) lingvaNormalRedirectsChecks.splice(i, 1); + } + await browser.storage.local.set({ + translateDisable: false, + translateFrontend: "simplyTranslate", + translateProtocol: 'normal', + translateRedirects: redirects, + + simplyTranslateNormalRedirectsChecks: simplyTranslateNormalRedirectsChecks, + simplyTranslateNormalCustomRedirects: [], + simplyTranslateTorRedirectsChecks: [...redirects.simplyTranslate.tor], + simplyTranslateTorCustomRedirects: [], + + lingvaNormalRedirectsChecks: lingvaNormalRedirectsChecks, + lingvaNormalCustomRedirects: [], + lingvaTorRedirectsChecks: [...redirects.lingva.tor], + lingvaTorCustomRedirects: [], + + translateFrom: "auto", + translateTo: 'en', + simplyTranslateEngine: 'google', + }) }) }) } async function init() { - fetch('/instances/data.json').then(response => response.text()).then(data => { - let dataJson = JSON.parse(data); - browser.storage.local.get( - [ - "translateDisable", - "translateFrontend", - "translateProtocol", - "translateRedirects", - - "simplyTranslateNormalRedirectsChecks", - "simplyTranslateNormalCustomRedirects", - "simplyTranslateTorRedirectsChecks", - "simplyTranslateTorCustomRedirects", - - "lingvaNormalRedirectsChecks", - "lingvaNormalCustomRedirects", - "lingvaTorRedirectsChecks", - "lingvaTorCustomRedirects", - - "translateFrom", - "translateTo", - "simplyTranslateEngine", - ], - result => { - disable = result.translateDisable; - frontend = result.translateFrontend; - protocol = result.translateProtocol; - - from = result.translateFrom; - to = result.translateTo; - simplyTranslateEngine = result.simplyTranslateEngine; - - redirects = result.translateRedirects; - - simplyTranslateNormalRedirectsChecks = result.simplyTranslateNormalRedirectsChecks; - simplyTranslateNormalCustomRedirects = result.simplyTranslateNormalCustomRedirects; - - simplyTranslateTorRedirectsChecks = result.simplyTranslateTorRedirectsChecks; - simplyTranslateTorCustomRedirects = result.simplyTranslateTorCustomRedirects; - - lingvaNormalRedirectsChecks = result.lingvaNormalRedirectsChecks; - lingvaNormalCustomRedirects = result.lingvaNormalCustomRedirects; - - lingvaTorRedirectsChecks = result.lingvaTorRedirectsChecks; - lingvaTorCustomRedirects = result.lingvaTorCustomRedirects; - }); - }); + browser.storage.local.get( + [ + "translateDisable", + "translateFrontend", + "translateProtocol", + "translateRedirects", + + "simplyTranslateNormalRedirectsChecks", + "simplyTranslateNormalCustomRedirects", + "simplyTranslateTorRedirectsChecks", + "simplyTranslateTorCustomRedirects", + + "lingvaNormalRedirectsChecks", + "lingvaNormalCustomRedirects", + "lingvaTorRedirectsChecks", + "lingvaTorCustomRedirects", + + "translateFrom", + "translateTo", + "simplyTranslateEngine", + ], + result => { + disable = result.translateDisable; + frontend = result.translateFrontend; + protocol = result.translateProtocol; + + from = result.translateFrom; + to = result.translateTo; + simplyTranslateEngine = result.simplyTranslateEngine; + + redirects = result.translateRedirects; + + simplyTranslateNormalRedirectsChecks = result.simplyTranslateNormalRedirectsChecks; + simplyTranslateNormalCustomRedirects = result.simplyTranslateNormalCustomRedirects; + + simplyTranslateTorRedirectsChecks = result.simplyTranslateTorRedirectsChecks; + simplyTranslateTorCustomRedirects = result.simplyTranslateTorCustomRedirects; + + lingvaNormalRedirectsChecks = result.lingvaNormalRedirectsChecks; + lingvaNormalCustomRedirects = result.lingvaNormalCustomRedirects; + + lingvaTorRedirectsChecks = result.lingvaTorRedirectsChecks; + lingvaTorCustomRedirects = result.lingvaTorCustomRedirects; + }); } export default { diff --git a/src/assets/javascripts/helpers/twitter.js b/src/assets/javascripts/helpers/twitter.js index 250b9050..2a213a80 100644 --- a/src/assets/javascripts/helpers/twitter.js +++ b/src/assets/javascripts/helpers/twitter.js @@ -219,37 +219,44 @@ async function initDefaults() { await fetch('/instances/data.json').then(response => response.text()).then(async data => { let dataJson = JSON.parse(data); redirects.nitter = dataJson.nitter; - await browser.storage.local.set({ - disableTwitter: false, - - enableTwitterCustomSettings: false, - - twitterRedirects: redirects, - bypassWatchOnTwitter: true, - - nitterNormalRedirectsChecks: [...redirects.nitter.normal], - nitterNormalCustomRedirects: [], - - nitterTorRedirectsChecks: [...redirects.nitter.tor], - nitterTorCustomRedirects: [], - - twitterProtocol: "normal", - alwaysUsePreferred: false, - - nitterTheme: 'Auto', - nitterInfiniteScroll: false, - nitterStickyProfile: true, - nitterBidiSupport: false, - nitterHideTweetStats: false, - nitterHideBanner: false, - nitterHidePins: false, - nitterHideReplies: false, - nitterSquareAvatars: false, - nitterMp4Playback: true, - nitterHlsPlayback: false, - nitterProxyVideos: true, - nitterMuteVideos: false, - nitterAutoplayGifs: true, + browser.storage.local.get('cloudflareList', async r => { + nitterNormalRedirectsChecks = [...redirects.nitter.normal]; + for (const instance of r.cloudflareList) { + let i = nitterNormalRedirectsChecks.indexOf(instance); + if (i > -1) nitterNormalRedirectsChecks.splice(i, 1); + } + await browser.storage.local.set({ + disableTwitter: false, + + enableTwitterCustomSettings: false, + + twitterRedirects: redirects, + bypassWatchOnTwitter: true, + + nitterNormalRedirectsChecks: nitterNormalRedirectsChecks, + nitterNormalCustomRedirects: [], + + nitterTorRedirectsChecks: [...redirects.nitter.tor], + nitterTorCustomRedirects: [], + + twitterProtocol: "normal", + alwaysUsePreferred: false, + + nitterTheme: 'Auto', + nitterInfiniteScroll: false, + nitterStickyProfile: true, + nitterBidiSupport: false, + nitterHideTweetStats: false, + nitterHideBanner: false, + nitterHidePins: false, + nitterHideReplies: false, + nitterSquareAvatars: false, + nitterMp4Playback: true, + nitterHlsPlayback: false, + nitterProxyVideos: true, + nitterMuteVideos: false, + nitterAutoplayGifs: true, + }) }) }) } diff --git a/src/assets/javascripts/helpers/wikipedia.js b/src/assets/javascripts/helpers/wikipedia.js index 04ba51b9..b11eb1d2 100644 --- a/src/assets/javascripts/helpers/wikipedia.js +++ b/src/assets/javascripts/helpers/wikipedia.js @@ -141,21 +141,29 @@ async function initDefaults() { fetch('/instances/data.json').then(response => response.text()).then(async data => { let dataJson = JSON.parse(data); redirects.wikiless = dataJson.wikiless; - await browser.storage.local.set({ - disableWikipedia: true, - wikipediaRedirects: redirects, - wikilessNormalRedirectsChecks: [...redirects.wikiless.normal], - wikilessTorRedirectsChecks: [...redirects.wikiless.tor], - wikilessI2pRedirectsChecks: [...redirects.wikiless.i2p], - wikilessNormalCustomRedirects: [], - wikilessTorCustomRedirects: [], - wikilessI2pCustomRedirects: [], - wikipediaProtocol: "normal", - - theme: 'DEFAULT', - applyThemeToSites: false, + browser.storage.local.get('cloudflareList', async r => { + wikilessNormalRedirectsChecks = [...redirects.wikiless.normal]; + for (const instance of r.cloudflareList) { + let i; + + i = wikilessNormalRedirectsChecks.indexOf(instance); + if (i > -1) wikilessNormalRedirectsChecks.splice(i, 1); + } + await browser.storage.local.set({ + disableWikipedia: true, + wikipediaRedirects: redirects, + wikilessNormalRedirectsChecks: wikilessNormalRedirectsChecks, + wikilessTorRedirectsChecks: [...redirects.wikiless.tor], + wikilessI2pRedirectsChecks: [...redirects.wikiless.i2p], + wikilessNormalCustomRedirects: [], + wikilessTorCustomRedirects: [], + wikilessI2pCustomRedirects: [], + wikipediaProtocol: "normal", + + theme: 'DEFAULT', + applyThemeToSites: false, + }) }) - }) } diff --git a/src/assets/javascripts/helpers/youtube/youtube.js b/src/assets/javascripts/helpers/youtube/youtube.js index 193a4ec3..7c4ad8c8 100644 --- a/src/assets/javascripts/helpers/youtube/youtube.js +++ b/src/assets/javascripts/helpers/youtube/youtube.js @@ -25,21 +25,8 @@ let redirects = { "tor": [] }, "piped": { - "normal": [ - "https://piped.kavin.rocks", - "https://piped.silkky.cloud", - "https://piped.tokhmi.xyz", - "https://piped.moomoo.me", - "https://il.ax", - "https://piped.syncpundit.com", - "https://piped.mha.fi", - "https://piped.mint.lgbt", - "https://piped.privacy.com.de", - "https://piped.notyourcomputer.net" - ], - "tor": [ - "http://piped2bbch4xslbl2ckr6k62q56kon56ffowxaqzy42ai22a4sash3ad.onion" - ] + "normal": [], + "tor": [] }, "pipedMaterial": { "normal": [ @@ -52,28 +39,32 @@ let redirects = { const getRedirects = () => redirects; -let invidiousNormalRedirectsChecks; -let invidiousNormalCustomRedirects = []; -let invidiousTorRedirectsChecks; -let invidiousTorCustomRedirects = []; - -let pipedNormalRedirectsChecks; -let pipedNormalCustomRedirects = []; -let pipedTorRedirectsChecks; -let pipedTorCustomRedirects = []; - -let pipedMaterialNormalRedirectsChecks; -let pipedMaterialNormalCustomRedirects = []; -let pipedMaterialTorRedirectsChecks; -let pipedMaterialTorCustomRedirects = []; - -let disable; -let protocol; -let OnlyEmbeddedVideo; -let frontend; -let youtubeEmbedFrontend; -let bypassWatchOnYoutube; -let alwaysUsePreferred; +let + invidiousNormalRedirectsChecks, + invidiousNormalCustomRedirects, + invidiousTorRedirectsChecks, + invidiousTorCustomRedirects; + +let + pipedNormalRedirectsChecks, + pipedNormalCustomRedirects, + pipedTorRedirectsChecks, + pipedTorCustomRedirects; + +let + pipedMaterialNormalRedirectsChecks, + pipedMaterialNormalCustomRedirects, + pipedMaterialTorRedirectsChecks, + pipedMaterialTorCustomRedirects; + +let + disable, + protocol, + OnlyEmbeddedVideo, + frontend, + youtubeEmbedFrontend, + bypassWatchOnYoutube, + alwaysUsePreferred; function redirect(url, details, initiator) { if (disable) return null; @@ -309,54 +300,69 @@ function isPipedorInvidious(url, type, frontend) { } async function initDefaults() { - console.log('youtube initDefaults') return new Promise(async resolve => { fetch('/instances/data.json').then(response => response.text()).then(async data => { let dataJson = JSON.parse(data); redirects.invidious = dataJson.invidious; - await browser.storage.local.set({ - disableYoutube: false, - enableYoutubeCustomSettings: false, - OnlyEmbeddedVideo: 'both', + redirects.piped = dataJson.piped; + browser.storage.local.get('cloudflareList', async r => { - youtubeRedirects: { - 'invidious': dataJson.invidious, - 'piped': redirects.piped, - 'pipedMaterial': redirects.pipedMaterial - }, + invidiousNormalRedirectsChecks = [...redirects.invidious.normal]; + pipedNormalRedirectsChecks = [...redirects.piped.normal]; + pipedMaterialNormalRedirectsChecks = [...redirects.pipedMaterial.normal]; - youtubeFrontend: 'invidious', + for (const instance of r.cloudflareList) { + let i; - invidiousNormalRedirectsChecks: [...redirects.invidious.normal], - invidiousNormalCustomRedirects: [], + i = invidiousNormalRedirectsChecks.indexOf(instance); + if (i > -1) invidiousNormalRedirectsChecks.splice(i, 1); - invidiousTorRedirectsChecks: [...redirects.invidious.tor], - invidiousTorCustomRedirects: [], + i = pipedNormalRedirectsChecks.indexOf(instance); + if (i > -1) pipedNormalRedirectsChecks.splice(i, 1); - pipedNormalRedirectsChecks: [...redirects.piped.normal], - pipedNormalCustomRedirects: [], + i = pipedMaterialNormalRedirectsChecks.indexOf(instance); + if (i > -1) pipedMaterialNormalRedirectsChecks.splice(i, 1); + } - pipedTorRedirectsChecks: [...redirects.piped.tor], - pipedTorCustomRedirects: [], + await browser.storage.local.set({ + disableYoutube: false, + enableYoutubeCustomSettings: false, + OnlyEmbeddedVideo: 'both', - pipedMaterialNormalRedirectsChecks: [...redirects.pipedMaterial.normal], - pipedMaterialNormalCustomRedirects: [], + youtubeRedirects: redirects, - pipedMaterialTorRedirectsChecks: [...redirects.pipedMaterial.tor], - pipedMaterialTorCustomRedirects: [], + youtubeFrontend: 'invidious', - alwaysUsePreferred: false, - youtubeEmbedFrontend: 'invidious', - youtubeProtocol: 'normal', - bypassWatchOnYoutube: true, - }) + invidiousNormalRedirectsChecks: invidiousNormalRedirectsChecks, + invidiousNormalCustomRedirects: [], - await invidious.initDefaults(); - await piped.initDefaults(); - await pipedMaterial.initDefaults(); - resolve(); - } - ) + invidiousTorRedirectsChecks: [...redirects.invidious.tor], + invidiousTorCustomRedirects: [], + + pipedNormalRedirectsChecks: pipedNormalRedirectsChecks, + pipedNormalCustomRedirects: [], + + pipedTorRedirectsChecks: [...redirects.piped.tor], + pipedTorCustomRedirects: [], + + pipedMaterialNormalRedirectsChecks: pipedMaterialNormalRedirectsChecks, + pipedMaterialNormalCustomRedirects: [], + + pipedMaterialTorRedirectsChecks: [...redirects.pipedMaterial.tor], + pipedMaterialTorCustomRedirects: [], + + alwaysUsePreferred: false, + youtubeEmbedFrontend: 'invidious', + youtubeProtocol: 'normal', + bypassWatchOnYoutube: true, + }) + + await invidious.initDefaults(); + await piped.initDefaults(); + await pipedMaterial.initDefaults(); + resolve(); + }) + }) }) } diff --git a/src/assets/javascripts/helpers/youtubeMusic.js b/src/assets/javascripts/helpers/youtubeMusic.js index ef707855..0b06bfa3 100644 --- a/src/assets/javascripts/helpers/youtubeMusic.js +++ b/src/assets/javascripts/helpers/youtubeMusic.js @@ -68,7 +68,9 @@ function redirect(url, type) { async function initDefaults() { await browser.storage.local.set({ - disableYoutubeMusic: false, + disableYoutubeMusic: true, + + youtubeMusicRedirects: redirects, beatbumpNormalRedirectsChecks: [...redirects.beatbump.normal], beatbumpNormalCustomRedirects: [], diff --git a/src/instances/cloudflare.json b/src/instances/cloudflare.json index 626c8ec5..ecaae2e9 100644 --- a/src/instances/cloudflare.json +++ b/src/instances/cloudflare.json @@ -1,7 +1,13 @@ [ "https://invidious.kavin.rocks", - "https://invidious-us.kavin.rocks", "https://invidious.lunar.icu", + "https://invidious-us.kavin.rocks", + "https://piped.kavin.rocks", + "https://piped.silkky.cloud", + "https://piped.tokhmi.xyz", + "https://piped.moomoo.me", + "https://piped.syncpundit.com", + "https://piped.mha.fi", "https://send.silkky.cloud", "https://nhanh.cloud", "https://nitter.domain.glass", @@ -37,12 +43,12 @@ "https://wiki.604kph.xyz", "https://wikiless.lunar.icu", "https://translate.syncpundit.com", + "https://lingva.lunar.icu", "https://searx.josie.lol", "https://searx.kujonello.cf", "https://searx.org", "https://searx.run", "https://searx.tk", - "https://s.alefvanoon.xyz", "https://search.albony.xyz", "https://search.garudalinux.org", "https://whoogle.lunar.icu", diff --git a/src/instances/data.json b/src/instances/data.json index 64ada2d4..59c0148c 100644 --- a/src/instances/data.json +++ b/src/instances/data.json @@ -6,7 +6,6 @@ "https://invidious.snopyta.org", "https://invidious.kavin.rocks", "https://inv.riverside.rocks", - "https://invidious-us.kavin.rocks", "https://invidious.osi.kr", "https://y.com.sb", "https://tube.cthd.icu", @@ -15,12 +14,13 @@ "https://invidious.lunar.icu", "https://invidious.mutahar.rocks", "https://invidious.sethforprivacy.com", + "https://inv.bp.projectsegfau.lt", "https://invidious.weblibre.org", "https://invidious.esmailelbob.xyz", "https://youtube.076.ne.jp", "https://invidious.privacy.gd", - "https://inv.bp.mutahar.rocks", - "https://invidious.namazso.eu" + "https://invidious.namazso.eu", + "https://invidious-us.kavin.rocks" ], "tor": [ "http://c7hqkpkpemu6e7emz5b4vyz7idjgdvgaaa3dyimmeojqbgpea3xqjoid.onion", @@ -34,6 +34,23 @@ "http://euxxcnhsynwmfidvhjf6uzptsmh4dipkmgdmcmxxuo7tunp3ad2jrwyd.onion/" ] }, + "piped": { + "normal": [ + "https://piped.kavin.rocks", + "https://piped.silkky.cloud", + "https://piped.tokhmi.xyz", + "https://piped.moomoo.me", + "https://il.ax", + "https://piped.syncpundit.com", + "https://piped.mha.fi", + "https://piped.mint.lgbt", + "https://piped.privacy.com.de", + "https://piped.notyourcomputer.net" + ], + "tor": [ + "http://piped2bbch4xslbl2ckr6k62q56kon56ffowxaqzy42ai22a4sash3ad.onion" + ] + }, "proxiTok": { "normal": [ "https://proxitok.herokuapp.com", @@ -113,7 +130,6 @@ "https://nitter.poast.org", "https://nitter.lunar.icu", "https://nitter.bird.froth.zone", - "https://nitter.drivet.xyz", "https://twitter.paranoid.cf" ], "tor": [ @@ -312,7 +328,8 @@ "https://lingva.pussthecat.org", "https://translate.datatunnel.xyz", "https://lingva.esmailelbob.xyz", - "https://translate.plausibility.cloud" + "https://translate.plausibility.cloud", + "https://lingva.lunar.icu" ], "tor": [] }, @@ -336,7 +353,6 @@ "https://engo.mint.lgbt", "https://jsearch.pw", "https://nibblehole.com", - "https://procurx.pt", "https://search.antonkling.se", "https://search.asynchronousexchange.com", "https://search.disroot.org", @@ -393,6 +409,7 @@ "tor": [ "http://w5rl6wsd7mzj4bdkbuqvzidet5osdsm5jhg2f7nvfidakfq5exda5wid.onion", "http://4n53nafyi77iplnbrpmxnp3x4exbswwxigujaxy3b37fvr7bvlopxeyd.onion", + "http://searxdr3pqz4nydgnqocsia2xbywptxbkympa2emn7zlgggrir4bkfad.onion", "http://rq2w52kyrif3xpfihkgjnhqm3a5aqhoikpv72z3drpjglfzc2wr5z4yd.onion", "http://searx3aolosaf3urwnhpynlhuokqsgz47si4pzz5hvb7uuzyjncl2tid.onion" ], @@ -402,6 +419,7 @@ "https://etsi.me", "https://northboot.xyz", "https://paulgo.io", + "https://procurx.pt", "https://s.zhaocloud.net", "https://search.bus-hit.me", "https://search.mdosch.de", @@ -411,6 +429,7 @@ "https://search.rabbit-company.com", "https://search.vojkovic.xyz", "https://search.zzls.xyz", + "https://searx.bardia.tech", "https://searx.be", "https://searx.ebnar.xyz", "https://searx.esmailelbob.xyz", @@ -430,7 +449,7 @@ "whoogle": { "normal": [ "https://gowogle.voring.me", - "https://s.alefvanoon.xyz", + "https://s.tokhmi.xyz", "https://search.albony.xyz", "https://search.garudalinux.org", "https://search.sethforprivacy.com", @@ -466,8 +485,11 @@ ] }, "peertube": [ + "https://video.toby3d.me", + "https://videos.grafo.zone", + "https://tube.bakosi.org", + "https://tube.chocoflan.net", "https://video.pthreat.co", - "https://viet69.ml", "https://peertube.egroc.de", "https://zcxfruit.ru", "https://pt.k2s.sk", @@ -580,14 +602,12 @@ "https://tube.moec.top", "https://tube.erzbistum-hamburg.de", "https://video.germanische-heilkunde.at", - "https://pt.irnok.net", "https://tubulus.openlatin.org", "https://shiotube.f5.si", "https://views.southfox.me", "https://vide.oxel.me", "https://video.mttv.it", "https://peertube.cloud.nerdraum.de", - "https://v.jrgnsn.net", "https://vid.pretok.tv", "https://videos.slownewsdayshow.com", "https://videos.sarcasmstardust.com", @@ -651,7 +671,6 @@ "https://aktivtube.com", "https://peertube.offerman.com", "https://sneedtube.com", - "https://venuse.nastub.cz", "https://poast.tv", "https://testube.distrilab.fr", "https://peertube.rse43.com", @@ -705,7 +724,6 @@ "https://watch.rt4mn.org", "https://video.lrose.de", "https://video.chalec.org", - "https://galileo.news", "https://dud175.inf.tu-dresden.de", "https://peertube.fenarinarsa.com", "https://peertube.gardion.de", @@ -732,7 +750,6 @@ "https://peertube.aventer.biz", "https://video.bhscs2.club", "https://videos.rights.ninja", - "https://videos.piecemaker.rocks", "https://tube.die-rote-front.de", "https://v.endpoint.ml", "https://pertur.be", @@ -744,9 +761,7 @@ "https://open.movie", "https://tube.rfc1149.net", "https://tube.radiomercure.fr", - "https://video.3cmr.fr", "https://medias.debrouillonet.org", - "https://vid.thatswhathappened.tv", "https://peertube.1984.cz", "https://tube.sp4ke.com", "https://pt.nix.uno", @@ -793,7 +808,6 @@ "https://video.interru.io", "https://tube.cnr.it", "https://peertube.dtmf.ca", - "https://tube.tr4sk.me", "https://peertube.dk", "https://tube.ponsonaille.fr", "https://peertube.ares.bioxis-server.fr", @@ -811,7 +825,6 @@ "https://peertube.redpill-insight.com", "https://tube.22decembre.eu", "https://video.berzs.xyz", - "https://invoice.peertube.biz", "https://pt.sfunk1x.com", "https://video.antopie.org", "https://vtr.chikichiki.tube", @@ -1083,7 +1096,6 @@ "https://tube.pmj.rocks", "https://gary.vger.cloud", "https://video.guerredeclasse.fr", - "https://tube.wehost.lgbt", "https://ptmir5.inter21.net", "https://ptmir4.inter21.net", "https://ptmir3.inter21.net", @@ -1187,7 +1199,6 @@ "https://video.p1ng0ut.social", "https://watch.deranalyst.ch", "https://video.discord-insoumis.fr", - "https://peertube.forsud.be", "https://video.pcf.fr", "https://kumi.tube", "https://tube.rsi.cnr.it", @@ -1510,6 +1521,14 @@ "https://video.lw1.at", "https://www.yiny.org", "https://video.typica.us", - "https://videos.lescommuns.org" + "https://videos.lescommuns.org", + "https://dialup.express", + "https://peertube.1312.media", + "https://skeptikon.fr", + "https://video.blueline.mg", + "https://tube.homecomputing.fr", + "https://video.tedomum.net", + "https://video.g3l.org", + "https://fontube.fr" ] } \ No newline at end of file diff --git a/src/instances/get_instances.py b/src/instances/get_instances.py index e8e1952f..7b62a9f7 100644 --- a/src/instances/get_instances.py +++ b/src/instances/get_instances.py @@ -67,260 +67,279 @@ def is_cloudflare(url): return False -# Invidious -r = requests.get('https://api.invidious.io/instances.json') -rJson = json.loads(r.text) -invidiousList = {} -invidiousList['normal'] = [] -invidiousList['tor'] = [] -for instance in rJson: - if instance[1]['type'] == 'https': - invidiousList['normal'].append(instance[1]['uri']) - elif instance[1]['type'] == 'onion': - invidiousList['tor'].append(instance[1]['uri']) -mightyList['invidious'] = invidiousList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Invidious') - -# ProxiTok -r = requests.get( - 'https://raw.githubusercontent.com/wiki/pablouser1/ProxiTok/Public-instances.md') - -tmp = re.findall( - r"\| \[.*\]\(([-a-zA-Z0-9@:%_\+.~#?&//=]{2,}\.[a-z]{2,}\b(?:\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?)\)*\|*[A-Z]{0,}.*\|.*\|", r.text) -proxiTokList = {} -proxiTokList['normal'] = [] -proxiTokList['tor'] = [] -for item in tmp: - proxiTokList['normal'].append(item) -mightyList['proxiTok'] = proxiTokList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'ProxiTok') - -# Send -r = requests.get( - 'https://gitlab.com/timvisee/send-instances/-/raw/master/README.md') -tmp = re.findall( - r"- ([-a-zA-Z0-9@:%_\+.~#?&//=]{2,}\.[a-z0-9]{2,}\b(?:\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?)\)*\|*[A-Z]{0,}", r.text) -sendList = {} -sendList['normal'] = [] -sendList['tor'] = [] -for item in tmp: - sendList['normal'].append(item) -mightyList['send'] = sendList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Send') - -# Nitter -r = requests.get('https://github.com/zedeus/nitter/wiki/Instances') -soup = BeautifulSoup(r.text, 'html.parser') -markdownBody = soup.find(class_='markdown-body') -tables = markdownBody.find_all('table') -tables.pop(3) -tables.pop(3) -nitterList = {} -nitterList['normal'] = [] -nitterList['tor'] = [] -for table in tables: - tbody = table.find('tbody') - trs = tbody.find_all('tr') - for tr in trs: - td = tr.find('td') - a = td.find('a') - url = a.contents[0] - if url.endswith('.onion'): - url = 'http://' + url - nitterList['tor'].append(url) +def invidious(): + r = requests.get('https://api.invidious.io/instances.json') + rJson = json.loads(r.text) + invidiousList = {} + invidiousList['normal'] = [] + invidiousList['tor'] = [] + for instance in rJson: + if instance[1]['type'] == 'https': + invidiousList['normal'].append(instance[1]['uri']) + elif instance[1]['type'] == 'onion': + invidiousList['tor'].append(instance[1]['uri']) + mightyList['invidious'] = invidiousList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Invidious') + + +def piped(): + json_object = json.dumps(mightyList, ensure_ascii=False, indent=2) + with open('./src/instances/piped.json') as file: + mightyList['piped'] = json.load(file) + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Piped') + + +def proxitok(): + r = requests.get( + 'https://raw.githubusercontent.com/wiki/pablouser1/ProxiTok/Public-instances.md') + + tmp = re.findall( + r"\| \[.*\]\(([-a-zA-Z0-9@:%_\+.~#?&//=]{2,}\.[a-z]{2,}\b(?:\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?)\)*\|*[A-Z]{0,}.*\|.*\|", r.text) + proxiTokList = {} + proxiTokList['normal'] = [] + proxiTokList['tor'] = [] + for item in tmp: + proxiTokList['normal'].append(item) + mightyList['proxiTok'] = proxiTokList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'ProxiTok') + + +def send(): + r = requests.get( + 'https://gitlab.com/timvisee/send-instances/-/raw/master/README.md') + tmp = re.findall( + r"- ([-a-zA-Z0-9@:%_\+.~#?&//=]{2,}\.[a-z0-9]{2,}\b(?:\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?)\)*\|*[A-Z]{0,}", r.text) + sendList = {} + sendList['normal'] = [] + sendList['tor'] = [] + for item in tmp: + sendList['normal'].append(item) + mightyList['send'] = sendList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Send') + + +def nitter(): + r = requests.get('https://github.com/zedeus/nitter/wiki/Instances') + soup = BeautifulSoup(r.text, 'html.parser') + markdownBody = soup.find(class_='markdown-body') + tables = markdownBody.find_all('table') + tables.pop(3) + tables.pop(3) + nitterList = {} + nitterList['normal'] = [] + nitterList['tor'] = [] + for table in tables: + tbody = table.find('tbody') + trs = tbody.find_all('tr') + for tr in trs: + td = tr.find('td') + a = td.find('a') + url = a.contents[0] + if url.endswith('.onion'): + url = 'http://' + url + nitterList['tor'].append(url) + else: + url = 'https://' + url + nitterList['normal'].append(url) + mightyList['nitter'] = nitterList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Nitter') + + +def bibliogram(): + r = requests.get('https://bibliogram.pussthecat.org/api/instances') + rJson = json.loads(r.text) + bibliogramList = {} + bibliogramList['normal'] = [] + bibliogramList['tor'] = [] + for item in rJson['data']: + bibliogramList['normal'].append(item['address']) + mightyList['bibliogram'] = bibliogramList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Bibliogram') + + +def libreddit(): + r = requests.get( + 'https://raw.githubusercontent.com/spikecodes/libreddit/master/README.md') + libredditList = {} + libredditList['normal'] = [] + libredditList['tor'] = [] + + tmp = re.findall( + r"\| \[.*\]\(([-a-zA-Z0-9@:%_\+.~#?&//=]{2,}\.[a-z]{2,}\b(?:\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?)\)*\|*[A-Z]{0,}.*\|.*\|", r.text) + + tmp = filterLastSlash(tmp) + + for item in tmp: + if item.endswith('.onion'): + libredditList['tor'].append(item) else: - url = 'https://' + url - nitterList['normal'].append(url) -mightyList['nitter'] = nitterList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Nitter') - -# Bibliogram -r = requests.get('https://bibliogram.pussthecat.org/api/instances') -rJson = json.loads(r.text) -bibliogramList = {} -bibliogramList['normal'] = [] -bibliogramList['tor'] = [] -for item in rJson['data']: - bibliogramList['normal'].append(item['address']) -mightyList['bibliogram'] = bibliogramList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Bibliogram') - -# LibReddit -r = requests.get( - 'https://raw.githubusercontent.com/spikecodes/libreddit/master/README.md') -libredditList = {} -libredditList['normal'] = [] -libredditList['tor'] = [] - -tmp = re.findall( - r"\| \[.*\]\(([-a-zA-Z0-9@:%_\+.~#?&//=]{2,}\.[a-z]{2,}\b(?:\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?)\)*\|*[A-Z]{0,}.*\|.*\|", r.text) - -tmp = filterLastSlash(tmp) - -for item in tmp: - if item.endswith('.onion'): - libredditList['tor'].append(item) - else: - libredditList['normal'].append(item) -mightyList['libreddit'] = libredditList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'LibReddit') - -# Teddit -r = requests.get( - 'https://codeberg.org/teddit/teddit/raw/branch/main/instances.json') -rJson = json.loads(r.text) -tedditList = {} -tedditList['normal'] = [] -tedditList['tor'] = [] -for item in rJson: - url = item['url'] - if url != '': - tedditList['normal'].append(url) - if 'onion' in item: - onion = item['onion'] - if onion != '': - tedditList['tor'].append(onion) - -mightyList['teddit'] = tedditList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Teddit') - - -# Wikiless -r = requests.get('https://wikiless.org/instances.json') -rJson = json.loads(r.text) -wikilessList = {} -wikilessList['normal'] = [] -wikilessList['tor'] = [] -wikilessList['i2p'] = [] -for item in rJson: - if item.endswith('.onion'): - wikilessList['tor'].append('http://' + item) - elif item.endswith('.i2p'): - wikilessList['i2p'].append('http://' + item) - else: - wikilessList['normal'].append('https://' + item) -mightyList['wikiless'] = wikilessList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Wikiless') - -# Scribe -r = requests.get( - 'https://git.sr.ht/~edwardloveall/scribe/blob/main/docs/instances.json') -rJson = json.loads(r.text) -scribeList = {} -scribeList['normal'] = [] -scribeList['tor'] = [] -for item in rJson: - scribeList['normal'].append(item) -mightyList['scribe'] = scribeList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Scribe') - -# SimplyTranslate -r = requests.get('https://simple-web.org/instances/simplytranslate') -simplyTranslateList = {} -simplyTranslateList['normal'] = [] -for item in r.text.strip().split('\n'): - simplyTranslateList['normal'].append('https://' + item) - -r = requests.get('https://simple-web.org/instances/simplytranslate_onion') -simplyTranslateList['tor'] = [] -for item in r.text.strip().split('\n'): - simplyTranslateList['tor'].append('http://' + item) - -mightyList['simplyTranslate'] = simplyTranslateList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'SimplyTranslate') - -# LinvgaTranslate -r = requests.get( - 'https://raw.githubusercontent.com/TheDavidDelta/lingva-translate/main/instances.json') -rJson = json.loads(r.text) -lingvaList = {} -lingvaList['normal'] = [] -lingvaList['tor'] = [] -for item in rJson: - lingvaList['normal'].append(item) -mightyList['lingva'] = lingvaList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'LinvgaTranslate') - - -# SearX, SearXNG -r = requests.get('https://searx.space/data/instances.json') -rJson = json.loads(r.text) -searxList = {} -searxList['tor'] = [] -searxList['i2p'] = [] -searxList['normal'] = [] -searxngList = {} -searxngList['tor'] = [] -searxngList['i2p'] = [] -searxngList['normal'] = [] -for item in rJson['instances']: - if item[:-1].endswith('.onion'): - if (rJson['instances'][item].get('generator') == 'searxng'): - searxngList['tor'].append(item[:-1]) + libredditList['normal'].append(item) + mightyList['libreddit'] = libredditList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'LibReddit') + + +def teddit(): + r = requests.get( + 'https://codeberg.org/teddit/teddit/raw/branch/main/instances.json') + rJson = json.loads(r.text) + tedditList = {} + tedditList['normal'] = [] + tedditList['tor'] = [] + for item in rJson: + url = item['url'] + if url != '': + tedditList['normal'].append(url) + if 'onion' in item: + onion = item['onion'] + if onion != '': + tedditList['tor'].append(onion) + + mightyList['teddit'] = tedditList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Teddit') + + +def wikiless(): + r = requests.get('https://wikiless.org/instances.json') + rJson = json.loads(r.text) + wikilessList = {} + wikilessList['normal'] = [] + wikilessList['tor'] = [] + wikilessList['i2p'] = [] + for item in rJson: + if item.endswith('.onion'): + wikilessList['tor'].append('http://' + item) + elif item.endswith('.i2p'): + wikilessList['i2p'].append('http://' + item) else: - searxList['tor'].append(item[:-1]) - elif item[:-1].endswith('.i2p'): - if (rJson['instances'][item].get('generator') == 'searxng'): - searxngList['i2p'].append(item[:-1]) + wikilessList['normal'].append('https://' + item) + mightyList['wikiless'] = wikilessList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Wikiless') + + +def scribe(): + r = requests.get( + 'https://git.sr.ht/~edwardloveall/scribe/blob/main/docs/instances.json') + rJson = json.loads(r.text) + scribeList = {} + scribeList['normal'] = [] + scribeList['tor'] = [] + for item in rJson: + scribeList['normal'].append(item) + mightyList['scribe'] = scribeList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Scribe') + + +def simplytranslate(): + r = requests.get('https://simple-web.org/instances/simplytranslate') + simplyTranslateList = {} + simplyTranslateList['normal'] = [] + for item in r.text.strip().split('\n'): + simplyTranslateList['normal'].append('https://' + item) + + r = requests.get('https://simple-web.org/instances/simplytranslate_onion') + simplyTranslateList['tor'] = [] + for item in r.text.strip().split('\n'): + simplyTranslateList['tor'].append('http://' + item) + + mightyList['simplyTranslate'] = simplyTranslateList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'SimplyTranslate') + + +def linvgatranslate(): + r = requests.get( + 'https://raw.githubusercontent.com/TheDavidDelta/lingva-translate/main/instances.json') + rJson = json.loads(r.text) + lingvaList = {} + lingvaList['normal'] = [] + lingvaList['tor'] = [] + for item in rJson: + lingvaList['normal'].append(item) + mightyList['lingva'] = lingvaList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'LinvgaTranslate') + + +def searx_searxng(): + r = requests.get('https://searx.space/data/instances.json') + rJson = json.loads(r.text) + searxList = {} + searxList['tor'] = [] + searxList['i2p'] = [] + searxList['normal'] = [] + searxngList = {} + searxngList['tor'] = [] + searxngList['i2p'] = [] + searxngList['normal'] = [] + for item in rJson['instances']: + if item[:-1].endswith('.onion'): + if (rJson['instances'][item].get('generator') == 'searxng'): + searxngList['tor'].append(item[:-1]) + else: + searxList['tor'].append(item[:-1]) + elif item[:-1].endswith('.i2p'): + if (rJson['instances'][item].get('generator') == 'searxng'): + searxngList['i2p'].append(item[:-1]) + else: + searxList['i2p'].append(item[:-1]) else: - searxList['i2p'].append(item[:-1]) - else: - if (rJson['instances'][item].get('generator') == 'searxng'): - searxngList['normal'].append(item[:-1]) + if (rJson['instances'][item].get('generator') == 'searxng'): + searxngList['normal'].append(item[:-1]) + else: + searxList['normal'].append(item[:-1]) + + mightyList['searx'] = searxList + mightyList['searxng'] = searxngList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'SearX, SearXNG') + + +def whoogle(): + r = requests.get( + 'https://raw.githubusercontent.com/benbusby/whoogle-search/main/misc/instances.txt') + tmpList = r.text.strip().split('\n') + whoogleList = {} + whoogleList['normal'] = [] + whoogleList['tor'] = [] + whoogleList['i2p'] = [] + for item in tmpList: + if item.endswith('.onion'): + whoogleList['tor'].append(item) + elif item.endswith('.i2p'): + whoogleList['i2p'].append(item) else: - searxList['normal'].append(item[:-1]) - -mightyList['searx'] = searxList -mightyList['searxng'] = searxngList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'SearX, SearXNG') - -# Whoogle -r = requests.get( - 'https://raw.githubusercontent.com/benbusby/whoogle-search/main/misc/instances.txt') -tmpList = r.text.strip().split('\n') -whoogleList = {} -whoogleList['normal'] = [] -whoogleList['tor'] = [] -whoogleList['i2p'] = [] -for item in tmpList: - if item.endswith('.onion'): - whoogleList['tor'].append(item) - elif item.endswith('.i2p'): - whoogleList['i2p'].append(item) - else: - whoogleList['normal'].append(item) -mightyList['whoogle'] = whoogleList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Whoogle') - -# Rimgo -r = requests.get( - 'https://codeberg.org/video-prize-ranch/rimgo/raw/branch/main/instances.json') -rJson = json.loads(r.text) -rimgoList = {} -rimgoList['normal'] = [] -rimgoList['tor'] = [] -rimgoList['i2p'] = [] -for item in rJson: - if item.endswith('.onion'): - rimgoList['tor'].append('http://' + item) - elif item.endswith('.i2p'): - rimgoList['i2p'].append('http://' + item) - else: - rimgoList['normal'].append('https://' + item) -mightyList['rimgo'] = rimgoList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Rimgo') - -# Peertube -r = requests.get( - 'https://instances.joinpeertube.org/api/v1/instances?start=0&count=1045&sort=-createdAt') -rJson = json.loads(r.text) - -myList = [] -for k in rJson['data']: - myList.append('https://'+k['host']) - -mightyList['peertube'] = myList -print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Peertube') + whoogleList['normal'].append(item) + mightyList['whoogle'] = whoogleList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Whoogle') + + +def rimgo(): + r = requests.get( + 'https://codeberg.org/video-prize-ranch/rimgo/raw/branch/main/instances.json') + rJson = json.loads(r.text) + rimgoList = {} + rimgoList['normal'] = [] + rimgoList['tor'] = [] + rimgoList['i2p'] = [] + for item in rJson: + if item.endswith('.onion'): + rimgoList['tor'].append('http://' + item) + elif item.endswith('.i2p'): + rimgoList['i2p'].append('http://' + item) + else: + rimgoList['normal'].append('https://' + item) + mightyList['rimgo'] = rimgoList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Rimgo') + + +def peertube(): + r = requests.get( + 'https://instances.joinpeertube.org/api/v1/instances?start=0&count=1045&sort=-createdAt') + rJson = json.loads(r.text) + + myList = [] + for k in rJson['data']: + myList.append('https://'+k['host']) + + mightyList['peertube'] = myList + print(Fore.GREEN + 'Fetched ' + Style.RESET_ALL + 'Peertube') def isValid(url): # This code is contributed by avanitrachhadiya2155 @@ -331,17 +350,35 @@ def isValid(url): # This code is contributed by avanitrachhadiya2155 return False +invidious() +piped() +proxitok() +send() +nitter() +bibliogram() +libreddit() +teddit() +wikiless() +scribe() +simplytranslate() +linvgatranslate() +searx_searxng() +whoogle() +rimgo() + cloudflareMightyList = [] for k1, v1 in mightyList.items(): if type(mightyList[k1]) is dict: for k2, v2 in mightyList[k1].items(): for instance in mightyList[k1][k2]: - if (not isValid(instance)): - mightyList[k1][k2].remove(instance) - print("removed " + instance) - else: - if not instance.endswith('.onion') and not instance.endswith('.i2p') and is_cloudflare(instance): - cloudflareMightyList.append(instance) + # if (not isValid(instance)): + # del mightyList[k1][k2][instance] + # print("removed " + instance) + # else: + if not instance.endswith('.onion') and not instance.endswith('.i2p') and is_cloudflare(instance): + cloudflareMightyList.append(instance) + +peertube() # Writing to file diff --git a/src/instances/piped.json b/src/instances/piped.json index fa5cbef0..23cb8855 100644 --- a/src/instances/piped.json +++ b/src/instances/piped.json @@ -1,19 +1,17 @@ { - "piped": { - "normal": [ - "https://piped.kavin.rocks", - "https://piped.silkky.cloud", - "https://piped.tokhmi.xyz", - "https://piped.moomoo.me", - "https://il.ax", - "https://piped.syncpundit.com", - "https://piped.mha.fi", - "https://piped.mint.lgbt", - "https://piped.privacy.com.de", - "https://piped.notyourcomputer.net" - ], - "tor" : [ - "http://piped2bbch4xslbl2ckr6k62q56kon56ffowxaqzy42ai22a4sash3ad.onion" - ] - } -} + "normal": [ + "https://piped.kavin.rocks", + "https://piped.silkky.cloud", + "https://piped.tokhmi.xyz", + "https://piped.moomoo.me", + "https://il.ax", + "https://piped.syncpundit.com", + "https://piped.mha.fi", + "https://piped.mint.lgbt", + "https://piped.privacy.com.de", + "https://piped.notyourcomputer.net" + ], + "tor": [ + "http://piped2bbch4xslbl2ckr6k62q56kon56ffowxaqzy42ai22a4sash3ad.onion" + ] +} \ No newline at end of file diff --git a/src/pages/background/background.js b/src/pages/background/background.js index dffcdc5b..65be27ae 100644 --- a/src/pages/background/background.js +++ b/src/pages/background/background.js @@ -23,25 +23,28 @@ window.browser = window.browser || window.chrome; browser.runtime.onInstalled.addListener(async details => { if (details.reason == 'install') { - youtubeHelper.initDefaults(); - youtubeMusicHelper.initDefaults(); - twitterHelper.initDefaults(); - instagramHelper.initDefaults(); - mapsHelper.initDefaults(); - searchHelper.initDefaults(); - translateHelper.initDefaults(); - mediumHelper.initDefaults(); - redditHelper.initDefaults(); - wikipediaHelper.initDefaults(); - imgurHelper.initDefaults(); - tiktokHelper.initDefaults(); - speedtestHelper.initDefaults(); - sendTargetsHelper.initDefaults(); - peertubeHelper.initDefaults(); - lbryHelper.initDefaults(); - spotifyHelper.initDefaults(); + fetch('/instances/cloudflare.json').then(response => response.text()).then(async data => { + await browser.storage.local.set({ cloudflareList: JSON.parse(data) }) + youtubeHelper.initDefaults(); + youtubeMusicHelper.initDefaults(); + twitterHelper.initDefaults(); + instagramHelper.initDefaults(); + mapsHelper.initDefaults(); + searchHelper.initDefaults(); + translateHelper.initDefaults(); + mediumHelper.initDefaults(); + redditHelper.initDefaults(); + wikipediaHelper.initDefaults(); + imgurHelper.initDefaults(); + tiktokHelper.initDefaults(); + speedtestHelper.initDefaults(); + sendTargetsHelper.initDefaults(); + peertubeHelper.initDefaults(); + lbryHelper.initDefaults(); + spotifyHelper.initDefaults(); + }) } -}); +}) async function wholeInit() { await youtubeHelper.init(); diff --git a/src/pages/options/imgur/imgur.js b/src/pages/options/imgur/imgur.js index 2830f665..597d015b 100644 --- a/src/pages/options/imgur/imgur.js +++ b/src/pages/options/imgur/imgur.js @@ -9,7 +9,7 @@ document.addEventListener("change", async () => { disableImgur: !disableImgurElement.checked, imgurProtocol: protocolElement.value, }); - init(); + changeProtocolSettings(protocolElement.value); }) function changeProtocolSettings(protocol) { @@ -33,44 +33,21 @@ function changeProtocolSettings(protocol) { } } -function init() { - imgurHelper.init().then(() => { - browser.storage.local.get( - [ - "disableImgur", - "imgurProtocol", - ], - r => { - disableImgurElement.checked = !r.disableImgur; - protocolElement.value = r.imgurProtocol; - changeProtocolSettings(r.imgurProtocol); - } - ); - - - commonHelper.processDefaultCustomInstances( - 'rimgo', - 'normal', - imgurHelper, - document - ); - - commonHelper.processDefaultCustomInstances( - 'rimgo', - 'tor', - imgurHelper, - document - ); +browser.storage.local.get( + [ + "disableImgur", + "imgurProtocol", + ], + r => { + disableImgurElement.checked = !r.disableImgur; + protocolElement.value = r.imgurProtocol; + changeProtocolSettings(r.imgurProtocol); + } +); - commonHelper.processDefaultCustomInstances( - 'rimgo', - 'i2p', - imgurHelper, - document - ); - }); -} -init(); +commonHelper.processDefaultCustomInstances('imgur', 'rimgo', 'normal', document); +commonHelper.processDefaultCustomInstances('imgur', 'rimgo', 'tor', document); +commonHelper.processDefaultCustomInstances('imgur', 'rimgo', 'i2p', document); let latencyElement = document.getElementById("latency"); @@ -86,17 +63,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.rimgo.normal).then(r => { browser.storage.local.set({ rimgoLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances( - 'rimgo', - 'normal', - imgurHelper, - document, - imgurHelper.getRimgoNormalRedirectsChecks, - imgurHelper.setRimgoNormalRedirectsChecks, - imgurHelper.getRimgoNormalCustomRedirects, - imgurHelper.setRimgoNormalCustomRedirects, - r - ); + commonHelper.processDefaultCustomInstances('imgur', 'rimgo', 'normal', document); latencyElement.removeEventListener("click", reloadWindow) }); } diff --git a/src/pages/options/instagram/instagram.js b/src/pages/options/instagram/instagram.js index 7dcd5607..6b29d869 100644 --- a/src/pages/options/instagram/instagram.js +++ b/src/pages/options/instagram/instagram.js @@ -31,17 +31,16 @@ browser.storage.local.get( "instagramProtocol" ], r => { - disableInstagramElement.checked = !r.disableInstagram; let protocol = r.instagramProtocol; protocolElement.value = protocol; changeProtocolSettings(protocol); - - commonHelper.processDefaultCustomInstances('bibliogram', 'normal', instagramHelper, document) - commonHelper.processDefaultCustomInstances('bibliogram', 'tor', instagramHelper, document) }) +commonHelper.processDefaultCustomInstances('instagram', 'bibliogram', 'normal', document); +commonHelper.processDefaultCustomInstances('instagram', 'bibliogram', 'tor', document); + let latencyElement = document.getElementById("latency"); let latencyLabel = document.getElementById("latency-label"); latencyElement.addEventListener("click", @@ -55,7 +54,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.bibliogram.normal).then(r => { browser.storage.local.set({ bibliogramLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('bibliogram', 'normal', instagramHelper, document); + commonHelper.processDefaultCustomInstances('instagram', 'bibliogram', 'normal', document); latencyElement.removeEventListener("click", reloadWindow); }); } diff --git a/src/pages/options/lbry/lbry.js b/src/pages/options/lbry/lbry.js index 3ab04369..f1cb49da 100644 --- a/src/pages/options/lbry/lbry.js +++ b/src/pages/options/lbry/lbry.js @@ -31,16 +31,14 @@ browser.storage.local.get( "lbryTargetsProtocol" ], r => { - disableLbryElement.checked = !r.disableLbryTargets; - - let protocol = r.lbryTargetsProtocol; - protocolElement.value = protocol; - changeProtocolSettings(protocol); - - commonHelper.processDefaultCustomInstances('librarian', 'normal', lbryHelper, document); - commonHelper.processDefaultCustomInstances('librarian', 'tor', lbryHelper, document) -}) + disableLbryElement.checked = !r.disableLbryTargets; + let protocol = r.lbryTargetsProtocol; + protocolElement.value = protocol; + changeProtocolSettings(protocol); + }) +commonHelper.processDefaultCustomInstances('lbry', 'librarian', 'normal', document); +commonHelper.processDefaultCustomInstances('lbry', 'librarian', 'tor', document); let latencyElement = document.getElementById("latency"); let latencyLabel = document.getElementById("latency-label"); @@ -55,7 +53,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.librarian.normal).then(r => { browser.storage.local.set({ librarianLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('librarian', 'normal', lbryHelper, document); + commonHelper.processDefaultCustomInstances('lbry', 'librarian', 'normal', document); latencyElement.removeEventListener("click", reloadWindow); }); } diff --git a/src/pages/options/maps/maps.js b/src/pages/options/maps/maps.js index 982b7980..3f2df54d 100644 --- a/src/pages/options/maps/maps.js +++ b/src/pages/options/maps/maps.js @@ -2,18 +2,15 @@ import mapsHelper from "../../../assets/javascripts/helpers/maps.js"; import commonHelper from "../../../assets/javascripts/helpers/common.js"; let disableMapsElement = document.getElementById("disable-osm"); -disableMapsElement.addEventListener("change", - (event) => mapsHelper.setDisable(!event.target.checked) -); - let mapsFrontendElement = document.getElementById("maps-frontend"); -mapsFrontendElement.addEventListener("change", - event => { - let frontend = event.target.options[mapsFrontendElement.selectedIndex].value; - mapsHelper.setFrontend(frontend); - changeFrontendsSettings(frontend); - } -); + +document.addEventListener("change", async () => { + await browser.storage.local.set({ + disableMaps: !disableMapsElement.checked, + mapsFrontend: mapsFrontendElement.value, + }) + changeFrontendsSettings(mapsFrontendElement.value); +}) let facilDivElement = document.getElementById("facil") function changeFrontendsSettings(frontend) { @@ -24,18 +21,18 @@ function changeFrontendsSettings(frontend) { facilDivElement.style.display = 'none'; } } - -mapsHelper.init().then(() => { - console.log(mapsHelper.getFacilNormalRedirectsChecks()) - disableMapsElement.checked = !mapsHelper.getDisable(); - let frontend = mapsHelper.getFrontend(); - mapsFrontendElement.value = frontend; - changeFrontendsSettings(frontend); - - browser.storage.local.get("facilLatency").then(r => { - commonHelper.processDefaultCustomInstances('facil', 'normal', mapsHelper, document, r.facilLatency) - }) -}) +browser.storage.local.get( + [ + "disableMaps", + "mapsFrontend", + ], + r => { + disableMapsElement.checked = !r.disableMaps; + mapsFrontendElement.value = r.mapsFrontend; + changeFrontendsSettings(r.mapsFrontend); + } +) +commonHelper.processDefaultCustomInstances('maps', 'facil', 'normal', document); let latencyElement = document.getElementById("latency"); let latencyLabel = document.getElementById("latency-label"); @@ -50,7 +47,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.facil.normal).then(r => { browser.storage.local.set({ facilLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('facil', 'normal', mapsHelper, document); + commonHelper.processDefaultCustomInstances('maps', 'facil', 'normal', document); latencyElement.removeEventListener("click", reloadWindow); }); } diff --git a/src/pages/options/medium/medium.js b/src/pages/options/medium/medium.js index 4fb04092..753a8d72 100644 --- a/src/pages/options/medium/medium.js +++ b/src/pages/options/medium/medium.js @@ -15,11 +15,10 @@ browser.storage.local.get( let protocol = r.mediumProtocol; protocolElement.value = protocol; changeProtocolSettings(protocol); - - commonHelper.processDefaultCustomInstances('scribe', 'normal', mediumHelper, document) - commonHelper.processDefaultCustomInstances('scribe', 'tor', mediumHelper, document) } ) +commonHelper.processDefaultCustomInstances('medium', 'scribe', 'normal', document); +commonHelper.processDefaultCustomInstances('medium', 'scribe', 'tor', document); document.addEventListener("change", async () => { await browser.storage.local.set({ @@ -55,7 +54,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.scribe.normal).then(r => { browser.storage.local.set({ scribeLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('scribe', 'normal', mediumHelper, document); + commonHelper.processDefaultCustomInstances('medium', 'scribe', 'normal', document); latencyElement.removeEventListener("click", reloadWindow); }); } diff --git a/src/pages/options/peertube/peertube.js b/src/pages/options/peertube/peertube.js index 419523d0..3e2abb2f 100644 --- a/src/pages/options/peertube/peertube.js +++ b/src/pages/options/peertube/peertube.js @@ -11,14 +11,13 @@ browser.storage.local.get( r => { disablePeertubeElement.checked = !r.disablePeertubeTargets; - let protocol = peertubeTargetsProtocol; + let protocol = r.peertubeTargetsProtocol; protocolElement.value = protocol; changeProtocolSettings(protocol); - - commonHelper.processDefaultCustomInstances('simpleertube', 'normal', peertubeHelper, document); - commonHelper.processDefaultCustomInstances('simpleertube', 'tor', peertubeHelper, document) } ) +commonHelper.processDefaultCustomInstances('peertube', 'simpleertube', 'normal', document); +commonHelper.processDefaultCustomInstances('peertube', 'simpleertube', 'tor', document); document.addEventListener("change", async () => { await browser.storage.local.set({ @@ -54,17 +53,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.simpleertube.normal).then(r => { browser.storage.local.set({ simpleertubeLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances( - 'simpleertube', - 'normal', - peertubeHelper, - document, - peertubeHelper.getSimpleertubeNormalRedirectsChecks, - peertubeHelper.setSimpleertubeNormalRedirectsChecks, - peertubeHelper.getSimpleertubeNormalCustomRedirects, - peertubeHelper.setSimpleertubeNormalCustomRedirects, - r, - ); + commonHelper.processDefaultCustomInstances('peertube', 'simpleertube', 'normal', document); latencyElement.removeEventListener("click", reloadWindow); }); } diff --git a/src/pages/options/reddit/reddit.js b/src/pages/options/reddit/reddit.js index 3f79eeaa..475f8b61 100644 --- a/src/pages/options/reddit/reddit.js +++ b/src/pages/options/reddit/reddit.js @@ -42,7 +42,8 @@ document.addEventListener("change", async () => { redditUseHls: use_hls.checked, redditHideHlsNotification: hide_hls_notification.checked, }); - init(); + changeFrontendsSettings(redditFrontendElement.value); + changeProtocolSettings(protocolElement.value); }) function changeProtocolSettings(protocol) { @@ -129,10 +130,10 @@ browser.storage.local.get( } ) -commonHelper.processDefaultCustomInstances('libreddit', 'normal', redditHelper, document) -commonHelper.processDefaultCustomInstances('libreddit', 'tor', redditHelper, document) -commonHelper.processDefaultCustomInstances('teddit', 'normal', redditHelper, document); -commonHelper.processDefaultCustomInstances('teddit', 'tor', redditHelper, document); +commonHelper.processDefaultCustomInstances('reddit', 'libreddit', 'normal', document); +commonHelper.processDefaultCustomInstances('reddit', 'libreddit', 'tor', document); +commonHelper.processDefaultCustomInstances('reddit', 'teddit', 'normal', document); +commonHelper.processDefaultCustomInstances('reddit', 'teddit', 'tor', document); let latencyLibredditElement = document.getElementById("latency-libreddit"); @@ -148,7 +149,7 @@ latencyLibredditElement.addEventListener("click", commonHelper.testLatency(latencyLibredditLabel, redirects.libreddit.normal).then(r => { browser.storage.local.set({ libredditLatency: r }); latencyLibredditLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('libreddit', 'normal', redditHelper, document); + commonHelper.processDefaultCustomInstances('reddit', 'libreddit', 'normal', document); latencyLibredditElement.removeEventListener("click", reloadWindow); }); } @@ -167,7 +168,7 @@ latencyTedditElement.addEventListener("click", commonHelper.testLatency(latencyTedditLabel, redirects.teddit.normal).then(r => { browser.storage.local.set({ tedditLatency: r }); latencyTedditLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('teddit', 'normal', redditHelper, document); + commonHelper.processDefaultCustomInstances('reddit', 'teddit', 'normal', document); latencyTedditElement.removeEventListener("click", reloadWindow); }); } diff --git a/src/pages/options/search/search.js b/src/pages/options/search/search.js index 893c3e4f..37b0ed46 100644 --- a/src/pages/options/search/search.js +++ b/src/pages/options/search/search.js @@ -16,10 +16,10 @@ browser.storage.local.get( "searchProtocol", ], r => { - disableSearchElement.checked = !disableSearch; + disableSearchElement.checked = !r.disableSearch; - searchFrontendElement.value = r.searchFronten; - changeFrontendsSettings(r.searchFronten); + searchFrontendElement.value = r.searchFrontend; + changeFrontendsSettings(r.searchFrontend); protocolElement.value = r.searchProtocol; changeProtocolSettings(r.searchProtocol); @@ -106,15 +106,15 @@ function changeProtocolSettings(protocol) { } } -commonHelper.processDefaultCustomInstances('searx', 'normal', searchHelper, document); -commonHelper.processDefaultCustomInstances('searx', 'tor', searchHelper, document); -commonHelper.processDefaultCustomInstances('searx', 'i2p', searchHelper, document); -commonHelper.processDefaultCustomInstances('searxng', 'normal', searchHelper, document); -commonHelper.processDefaultCustomInstances('searxng', 'tor', searchHelper, document); -commonHelper.processDefaultCustomInstances('searxng', 'i2p', searchHelper, document); -commonHelper.processDefaultCustomInstances('whoogle', 'normal', searchHelper, document); -commonHelper.processDefaultCustomInstances('whoogle', 'tor', searchHelper, document); -commonHelper.processDefaultCustomInstances('whoogle', 'i2p', searchHelper, document); +commonHelper.processDefaultCustomInstances('search', 'searx', 'normal', document); +commonHelper.processDefaultCustomInstances('search', 'searx', 'tor', document); +commonHelper.processDefaultCustomInstances('search', 'searx', 'i2p', document); +commonHelper.processDefaultCustomInstances('search', 'searxng', 'normal', document); +commonHelper.processDefaultCustomInstances('search', 'searxng', 'tor', document); +commonHelper.processDefaultCustomInstances('search', 'searxng', 'i2p', document); +commonHelper.processDefaultCustomInstances('search', 'whoogle', 'normal', document); +commonHelper.processDefaultCustomInstances('search', 'whoogle', 'tor', document); +commonHelper.processDefaultCustomInstances('search', 'whoogle', 'i2p', document); let latencySearxElement = document.getElementById("latency-searx"); let latencySearxLabel = document.getElementById("latency-searx-label"); @@ -129,7 +129,7 @@ latencySearxElement.addEventListener("click", commonHelper.testLatency(latencySearxLabel, redirects.searx.normal).then(r => { browser.storage.local.set({ searxLatency: r }); latencySearxLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('searx', 'normal', searchHelper, document); + commonHelper.processDefaultCustomInstances('search', 'searx', 'normal', document); latencySearxElement.removeEventListener("click", reloadWindow); }); } @@ -148,7 +148,7 @@ latencySearxngElement.addEventListener("click", commonHelper.testLatency(latencySearxngLabel, redirects.searxng.normal).then(r => { browser.storage.local.set({ searxngLatency: r }); latencySearxngLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('searxng', 'normal', searchHelper, document); + commonHelper.processDefaultCustomInstances('search', 'searxng', 'normal', document); latencySearxngElement.removeEventListener("click", reloadWindow); }); } @@ -167,7 +167,7 @@ latencyWhoogleElement.addEventListener("click", commonHelper.testLatency(latencyWhoogleLabel, redirects.whoogle.normal).then(r => { browser.storage.local.set({ whoogleLatency: r }); latencyWhoogleLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('whoogle', 'normal', searchHelper, document); + commonHelper.processDefaultCustomInstances('search', 'whoogle', 'normal', document); latencyWhoogleElement.removeEventListener("click", reloadWindow); }); } diff --git a/src/pages/options/sendTargets/sendTargets.js b/src/pages/options/sendTargets/sendTargets.js index dc40f83f..236d6799 100644 --- a/src/pages/options/sendTargets/sendTargets.js +++ b/src/pages/options/sendTargets/sendTargets.js @@ -38,8 +38,8 @@ function changeProtocolSettings(protocol) { } } -commonHelper.processDefaultCustomInstances('send', 'normal', sendTargetsHelper, document); -commonHelper.processDefaultCustomInstances('send', 'tor', sendTargetsHelper, document,) +commonHelper.processDefaultCustomInstances('sendTargets', 'send', 'normal', document); +commonHelper.processDefaultCustomInstances('sendTargets', 'send', 'tor', document); let latencyElement = document.getElementById("latency"); let latencyLabel = document.getElementById("latency-label"); @@ -54,7 +54,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.send.normal).then(r => { browser.storage.local.set({ sendLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('send', 'normal', sendTargetsHelper, document) + commonHelper.processDefaultCustomInstances('sendTargets', 'send', 'normal', document); latencyElement.removeEventListener("click", reloadWindow) }); } diff --git a/src/pages/options/speedtest/speedtest.js b/src/pages/options/speedtest/speedtest.js index 95fa9fea..986f75c7 100644 --- a/src/pages/options/speedtest/speedtest.js +++ b/src/pages/options/speedtest/speedtest.js @@ -38,8 +38,8 @@ function changeProtocolSettings(protocol) { } } -commonHelper.processDefaultCustomInstances('librespeed', 'normal', speedtestHelper, document); -commonHelper.processDefaultCustomInstances('librespeed', 'tor', speedtestHelper, document); +commonHelper.processDefaultCustomInstances('speedtest', 'librespeed', 'normal', document); +commonHelper.processDefaultCustomInstances('speedtest', 'librespeed', 'tor', document); let latencyElement = document.getElementById("latency"); let latencyLabel = document.getElementById("latency-label"); @@ -54,7 +54,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.librespeed.normal).then(r => { browser.storage.local.set({ librespeedLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('librespeed', 'normal', speedtestHelper, document) + commonHelper.processDefaultCustomInstances('speedtest', 'librespeed', 'normal', document); latencyElement.removeEventListener("click", reloadWindow) }); } diff --git a/src/pages/options/spotify/spotify.js b/src/pages/options/spotify/spotify.js index 33cc9e91..16fa1f56 100644 --- a/src/pages/options/spotify/spotify.js +++ b/src/pages/options/spotify/spotify.js @@ -12,7 +12,7 @@ browser.storage.local.get( } ) -commonHelper.processDefaultCustomInstances('soju', 'normal', spotifyHelper, document); +commonHelper.processDefaultCustomInstances('spotify', 'soju', 'normal', document); let latencyElement = document.getElementById("latency"); let latencyLabel = document.getElementById("latency-label"); @@ -27,7 +27,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.soju.normal).then(r => { browser.storage.local.set({ sojuLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('soju', 'normal', spotifyHelper, document) + commonHelper.processDefaultCustomInstances('spotify', 'soju', 'normal', document); latencyElement.removeEventListener("click", reloadWindow) }); } diff --git a/src/pages/options/tiktok/tiktok.js b/src/pages/options/tiktok/tiktok.js index 61841145..56cf93dc 100644 --- a/src/pages/options/tiktok/tiktok.js +++ b/src/pages/options/tiktok/tiktok.js @@ -5,7 +5,7 @@ let disable = document.getElementById("disable-tiktok"); let protocol = document.getElementById("protocol") let enableCustomSettings = document.getElementById("enable-custom-settings"); -let customSettingsDiv = document.getElementsByClassName("custom-settings")[0]; +let customSettingsDiv = document.getElementsByClassName("custom-settings"); let theme = document.getElementById('proxiTok').getElementsByClassName('theme')[0]; let api_legacy = document.getElementById('proxiTok').getElementsByClassName('api-legacy')[0]; @@ -21,7 +21,7 @@ document.addEventListener("change", async () => { proxiTokApiLegacy: api_legacy.value, }); - init(); + changeProtocolSettings(protocol.value); }) window.onblur = tiktokHelper.initProxiTokCookies; @@ -39,6 +39,7 @@ browser.storage.local.get( r => { disable.checked = !r.disableTiktok; protocol.value = r.tiktokProtocol; + changeProtocolSettings(r.tiktokProtocol); let normalDiv = document.getElementsByClassName("normal")[0]; let torDiv = document.getElementsByClassName("tor")[0]; if (r.tiktokProtocol == 'normal') { @@ -57,13 +58,29 @@ browser.storage.local.get( customSettingsDiv.style.display = 'none'; theme.value = r.proxiTokTheme; - api_legacy.value = r.proxiTokApiLegacy + api_legacy.value = r.proxiTokApiLegacy; } ) -commonHelper.processDefaultCustomInstances('proxiTok', 'normal', tiktokHelper, document); -commonHelper.processDefaultCustomInstances('proxiTok', 'tor', tiktokHelper, document) +function changeProtocolSettings(protocol) { + let normalDiv = document.getElementsByClassName("normal")[0]; + let torDiv = document.getElementsByClassName("tor")[0]; + if (protocol == 'normal') { + normalDiv.style.display = 'block'; + torDiv.style.display = 'none'; + } + else if (protocol == 'tor') { + normalDiv.style.display = 'none'; + torDiv.style.display = 'block'; + } + if (enableCustomSettings.checked) + for (const item of customSettingsDiv) item.style.display = 'block'; + else + for (const item of customSettingsDiv) item.style.display = 'none'; +} +commonHelper.processDefaultCustomInstances('tiktok', 'proxiTok', 'normal', document); +commonHelper.processDefaultCustomInstances('tiktok', 'proxiTok', 'tor', document); let latencyElement = document.getElementById("latency"); let latencyLabel = document.getElementById("latency-label"); @@ -78,7 +95,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.proxiTok.normal).then(r => { browser.storage.local.set({ proxiTokLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('proxiTok', 'normal', tiktokHelper, document) + commonHelper.processDefaultCustomInstances('tiktok', 'proxiTok', 'normal', document); latencyElement.removeEventListener("click", reloadWindow) }); } diff --git a/src/pages/options/translate/translate.js b/src/pages/options/translate/translate.js index 999d5e30..3338f8ce 100644 --- a/src/pages/options/translate/translate.js +++ b/src/pages/options/translate/translate.js @@ -2,13 +2,10 @@ import translateHelper from "../../../assets/javascripts/helpers/translate/trans import commonHelper from "../../../assets/javascripts/helpers/common.js"; let disableElement = document.getElementById("disable-simplyTranslate"); -disableElement.addEventListener("change", - (event) => translateHelper.setDisable(!event.target.checked) -); - let simplyTranslateDivElement = document.getElementById("simplyTranslate"); let lingvaDivElement = document.getElementById("lingva"); - +let translateFrontendElement = document.getElementById("translate-frontend"); +let protocolElement = document.getElementById("protocol"); function changeFrontendsSettings(frontend) { if (frontend == 'simplyTranslate') { @@ -20,23 +17,20 @@ function changeFrontendsSettings(frontend) { lingvaDivElement.style.display = 'block'; } } -let translateFrontendElement = document.getElementById("translate-frontend"); -translateFrontendElement.addEventListener("change", - event => { - let frontend = event.target.options[translateFrontendElement.selectedIndex].value - translateHelper.setFrontend(frontend) - changeFrontendsSettings(frontend); - } -); -let protocolElement = document.getElementById("protocol"); -protocolElement.addEventListener("change", - (event) => { - let protocol = event.target.options[protocolElement.selectedIndex].value - translateHelper.setProtocol(protocol); - changeProtocolSettings(protocol); - } -); +document.addEventListener("change", async () => { + await browser.storage.local.set({ + translateDisable: !disableElement.checked, + translateFrontend: translateFrontendElement.value, + translateProtocol: protocolElement.value, + translateFrom: fromElement.value, + translateTo: toElement.value, + simplyTranslateEngine: simplyTranslateEngineElement.value, + }) + changeProtocolSettings(protocolElement.value); + changeFrontendsSettings(translateFrontendElement.value); +}) + function changeProtocolSettings(protocol) { let normalSimplyTranslateDiv = document.getElementById("simplyTranslate").getElementsByClassName("normal")[0]; @@ -60,88 +54,38 @@ function changeProtocolSettings(protocol) { } let fromElement = document.getElementsByClassName("from")[0]; -fromElement.addEventListener("change", - event => translateHelper.setFrom(event.target.options[fromElement.selectedIndex].value) -); - let toElement = document.getElementsByClassName("to")[0]; -toElement.addEventListener("change", - event => translateHelper.setTo(event.target.options[toElement.selectedIndex].value) -); - let simplyTranslateElement = document.getElementById("simplyTranslate") let simplyTranslateEngineElement = simplyTranslateElement.getElementsByClassName("engine")[0]; -simplyTranslateEngineElement.addEventListener("change", - event => translateHelper.setSimplyTranslateEngine(event.target.options[simplyTranslateEngineElement.selectedIndex].value) -); - -translateHelper.init().then(() => { - disableElement.checked = !translateHelper.getDisable(); - - let frontend = translateHelper.getFrontend(); - translateFrontendElement.value = frontend; - changeFrontendsSettings(frontend); - - let protocol = translateHelper.getProtocol(); - protocolElement.value = protocol; - changeProtocolSettings(protocol); - - fromElement.value = translateHelper.getFrom(); - toElement.value = translateHelper.getTo(); - simplyTranslateEngineElement.value = translateHelper.getSimplyTranslateEngine(); - browser.storage.local.get("simplyTranslateLatency").then(r => { - commonHelper.processDefaultCustomInstances( - 'simplyTranslate', - 'normal', - translateHelper, - document, - translateHelper.getSimplyTranslateNormalRedirectsChecks, - translateHelper.setSimplyTranslateNormalRedirectsChecks, - translateHelper.getSimplyTranslateNormalCustomRedirects, - translateHelper.setSimplyTranslateNormalCustomRedirects, - r.simplyTranslateLatency, - ) - }) - - commonHelper.processDefaultCustomInstances( - 'simplyTranslate', - 'tor', - translateHelper, - document, - translateHelper.getSimplyTranslateTorRedirectsChecks, - translateHelper.setSimplyTranslateTorRedirectsChecks, - translateHelper.getSimplyTranslateTorCustomRedirects, - translateHelper.setSimplyTranslateTorCustomRedirects - ); - - browser.storage.local.get("lingvaLatency").then(r => { - commonHelper.processDefaultCustomInstances( - 'lingva', - 'normal', - translateHelper, - document, - translateHelper.getLingvaNormalRedirectsChecks, - translateHelper.setLingvaNormalRedirectsChecks, - translateHelper.getLingvaNormalCustomRedirects, - translateHelper.setLingvaNormalCustomRedirects, - r.lingvaLatency, - ); - }); - - - commonHelper.processDefaultCustomInstances( - 'lingva', - 'tor', - translateHelper, - document, - translateHelper.getLingvaTorRedirectsChecks, - translateHelper.setLingvaTorRedirectsChecks, - translateHelper.getLingvaTorCustomRedirects, - translateHelper.setLingvaTorCustomRedirects, - ) -}); +browser.storage.local.get( + [ + "translateDisable", + "translateFrontend", + "translateProtocol", + "translateFrom", + "translateTo", + "simplyTranslateEngine", + ], + r => { + disableElement.checked = !r.translateDisable; + + translateFrontendElement.value = r.translateFrontend; + changeFrontendsSettings(r.translateFrontend); + + protocolElement.value = r.translateProtocol; + changeProtocolSettings(r.translateProtocol); + + fromElement.value = r.translateFrom; + toElement.value = r.translateTo; + simplyTranslateEngineElement.value = r.simplyTranslateEngine; + } +); +commonHelper.processDefaultCustomInstances('translate', 'simplyTranslate', 'normal', document) +commonHelper.processDefaultCustomInstances('translate', 'simplyTranslate', 'tor', document); +commonHelper.processDefaultCustomInstances('translate', 'lingva', 'normal', document); +commonHelper.processDefaultCustomInstances('translate', 'lingva', 'tor', document); let latencySimplyTranslateElement = document.getElementById("latency-simplyTranslate"); let latencySimplyTranslateLabel = document.getElementById("latency-simplyTranslate-label"); @@ -156,17 +100,7 @@ latencySimplyTranslateElement.addEventListener("click", commonHelper.testLatency(latencySimplyTranslateLabel, redirects.simplyTranslate.normal).then(r => { browser.storage.local.set({ simplyTranslateLatency: r }); latencySimplyTranslateLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances( - 'simplyTranslate', - 'normal', - translateHelper, - document, - translateHelper.getSimplyTranslateNormalRedirectsChecks, - translateHelper.setSimplyTranslateNormalRedirectsChecks, - translateHelper.getSimplyTranslateNormalCustomRedirects, - translateHelper.setSimplyTranslateNormalCustomRedirects, - r, - ); + commonHelper.processDefaultCustomInstances('translate', 'simplyTranslate', 'normal', document) latencySimplyTranslateElement.removeEventListener("click", reloadWindow); }); } @@ -185,17 +119,7 @@ latencyLingvaElement.addEventListener("click", commonHelper.testLatency(latencyLingvaLabel, redirects.lingva.normal).then(r => { browser.storage.local.set({ lingvaLatency: r }); latencyLingvaLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances( - 'lingva', - 'normal', - translateHelper, - document, - translateHelper.getLingvaNormalRedirectsChecks, - translateHelper.setLingvaNormalRedirectsChecks, - translateHelper.getLingvaNormalCustomRedirects, - translateHelper.setLingvaNormalCustomRedirects, - r, - ); + commonHelper.processDefaultCustomInstances('translate', 'lingva', 'normal', document); latencyLingvaElement.removeEventListener("click", reloadWindow); }); } diff --git a/src/pages/options/twitter/twitter.js b/src/pages/options/twitter/twitter.js index b77f5ecc..2fcf63c5 100644 --- a/src/pages/options/twitter/twitter.js +++ b/src/pages/options/twitter/twitter.js @@ -50,7 +50,7 @@ browser.storage.local.get( bypassWatchOnTwitterElement.checked = r.bypassWatchOnTwitter; protocolElement.value = r.twitterProtocol; changeProtocolSettings(r.twitterProtocol); - + // Display theme.value = r.nitterTheme; infiniteScroll.checked = r.nitterInfiniteScroll; @@ -61,7 +61,7 @@ browser.storage.local.get( hidePins.checked = r.nitterHidePins; hideReplies.checked = r.nitterHideReplies; squareAvatars.checked = r.nitterSquareAvatars; - + // Media mp4Playback.checked = r.nitterMp4Playback; hlsPlayback.checked = r.nitterHlsPlayback; @@ -96,7 +96,7 @@ document.addEventListener("change", async () => { nitterMuteVideos: muteVideos.checked, nitterAutoplayGifs: autoplayGifs.checked, }); - init(); + changeProtocolSettings(protocolElement.value); }) function changeProtocolSettings(protocol) { @@ -116,8 +116,8 @@ function changeProtocolSettings(protocol) { for (const item of customSettingsDivElement) item.style.display = 'none'; } -// commonHelper.processDefaultCustomInstances('nitter', 'normal', twitterHelper, document); -// commonHelper.processDefaultCustomInstances('nitter', 'tor', twitterHelper, document) +commonHelper.processDefaultCustomInstances('twitter', 'nitter', 'normal', document); +commonHelper.processDefaultCustomInstances('twitter', 'nitter', 'tor', document) window.onblur = twitterHelper.initNitterCookies; let latencyElement = document.getElementById("latency"); @@ -133,7 +133,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.nitter.normal).then(r => { browser.storage.local.set({ nitterLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('nitter', 'normal', twitterHelper, document) + commonHelper.processDefaultCustomInstances('twitter', 'nitter', 'normal', document); latencyElement.removeEventListener("click", reloadWindow) }); } diff --git a/src/pages/options/wikipedia/wikipedia.js b/src/pages/options/wikipedia/wikipedia.js index 0d9a1a6c..8d9af92a 100644 --- a/src/pages/options/wikipedia/wikipedia.js +++ b/src/pages/options/wikipedia/wikipedia.js @@ -44,9 +44,9 @@ function changeProtocolSettings(protocol) { i2pDiv.style.display = 'block'; } } -commonHelper.processDefaultCustomInstances('wikiless', 'normal', wikipediaHelper, document); -commonHelper.processDefaultCustomInstances('wikiless', 'tor', wikipediaHelper, document) -commonHelper.processDefaultCustomInstances('wikiless', 'i2p', wikipediaHelper, document) +commonHelper.processDefaultCustomInstances('wikipedia' ,'wikiless', 'normal', document); +commonHelper.processDefaultCustomInstances('wikipedia' ,'wikiless', 'tor', document); +commonHelper.processDefaultCustomInstances('wikipedia' ,'wikiless', 'i2p', document); window.onblur = wikipediaHelper.initWikilessCookies; @@ -63,7 +63,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.wikiless.normal).then(r => { browser.storage.local.set({ wikilessLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('wikiless', 'normal', wikipediaHelper, document) + commonHelper.processDefaultCustomInstances('wikipedia' ,'wikiless', 'normal', document); latencyElement.removeEventListener("click", reloadWindow) }); } diff --git a/src/pages/options/youtube/invidious.js b/src/pages/options/youtube/invidious.js index d314607e..fb1ddff7 100644 --- a/src/pages/options/youtube/invidious.js +++ b/src/pages/options/youtube/invidious.js @@ -80,84 +80,82 @@ invidious.addEventListener("change", async _ => { invidiousDefaultHome: default_home.value, invidiousFeedMenuList: feedMenuList, }); - init(); } ) }); -function init() { - browser.storage.local.get( - [ - "youtubeListen", - "youtubeVolume", - "youtubeAutoplay", - "invidiousQuality", - "invidiousAlwaysProxy", - "invidiousQuality", - "invidiousPlayerStyle", - "invidiousVideoLoop", - "invidiousContinueAutoplay", - "invidiousContinue", - "invidiousSpeed", - "invidiousQualityDash", - "invidiousComments", - "invidiousCaptions", - "invidiousRelatedVideos", - "invidiousAnnotations", - "invidiousExtendDesc", - "invidiousVrMode", - "invidiousSavePlayerPos", - "invidiousRegion", - "invidiousDarkMode", - "invidiousThinMode", - "invidiousDefaultHome", - "invidiousFeedMenuList", - ], - r => { - videoLoop.checked = r.invidiousVideoLoop; - autoplay.checked = r.youtubeAutoplay; - playerStyle.value = r.invidiousPlayerStyle; - - continueAutoplay.checked = r.invidiousContinueAutoplay; - invidiousContinue.checked = r.invidiousContinue; - alwaysProxy.checked = r.invidiousAlwaysProxy; - youtubeListen.checked = r.youtubeListen; - - speed.value = r.invidiousSpeed; - quality.value = r.invidiousQuality; - qualityDash.value = r.invidiousQualityDash; - - volume.value = r.youtubeVolume; - volumeValue.textContent = `${r.youtubeVolume}%`; - - comments0.value = r.invidiousComments[0]; - comments1.value = r.invidiousComments[1]; - - captions0.value = r.invidiousCaptions[0]; - captions1.value = r.invidiousCaptions[1]; - captions2.value = r.invidiousCaptions[2]; - - relatedVideo.checked = r.invidiousRelatedVideos; - annotations.checked = r.invidiousAnnotations; - extendDesc.checked = r.invidiousExtendDesc; - vrMode.checked = r.invidiousVrMode; - savePlayerPos.checked = r.invidiousSavePlayerPos; - - region.value = r.invidiousRegion; - darkMode.value = r.invidiousDarkMode; - thin_mode.checked = r.invidiousThinMode; - default_home.value = r.invidiousDefaultHome; - - feed_menu0.value = r.invidiousFeedMenuList[0]; - feed_menu1.value = r.invidiousFeedMenuList[1]; - - commonHelper.processDefaultCustomInstances('invidious', 'normal', youtubeHelper, document); - commonHelper.processDefaultCustomInstances('invidious', 'tor', youtubeHelper, document); - } - ) -} +browser.storage.local.get( + [ + "youtubeListen", + "youtubeVolume", + "youtubeAutoplay", + "invidiousQuality", + "invidiousAlwaysProxy", + "invidiousQuality", + "invidiousPlayerStyle", + "invidiousVideoLoop", + "invidiousContinueAutoplay", + "invidiousContinue", + "invidiousSpeed", + "invidiousQualityDash", + "invidiousComments", + "invidiousCaptions", + "invidiousRelatedVideos", + "invidiousAnnotations", + "invidiousExtendDesc", + "invidiousVrMode", + "invidiousSavePlayerPos", + "invidiousRegion", + "invidiousDarkMode", + "invidiousThinMode", + "invidiousDefaultHome", + "invidiousFeedMenuList", + ], + r => { + videoLoop.checked = r.invidiousVideoLoop; + autoplay.checked = r.youtubeAutoplay; + playerStyle.value = r.invidiousPlayerStyle; + + continueAutoplay.checked = r.invidiousContinueAutoplay; + invidiousContinue.checked = r.invidiousContinue; + alwaysProxy.checked = r.invidiousAlwaysProxy; + youtubeListen.checked = r.youtubeListen; + + speed.value = r.invidiousSpeed; + quality.value = r.invidiousQuality; + qualityDash.value = r.invidiousQualityDash; + + volume.value = r.youtubeVolume; + volumeValue.textContent = `${r.youtubeVolume}%`; + + comments0.value = r.invidiousComments[0]; + comments1.value = r.invidiousComments[1]; + + captions0.value = r.invidiousCaptions[0]; + captions1.value = r.invidiousCaptions[1]; + captions2.value = r.invidiousCaptions[2]; + + relatedVideo.checked = r.invidiousRelatedVideos; + annotations.checked = r.invidiousAnnotations; + extendDesc.checked = r.invidiousExtendDesc; + vrMode.checked = r.invidiousVrMode; + savePlayerPos.checked = r.invidiousSavePlayerPos; + + region.value = r.invidiousRegion; + darkMode.value = r.invidiousDarkMode; + thin_mode.checked = r.invidiousThinMode; + default_home.value = r.invidiousDefaultHome; + + feed_menu0.value = r.invidiousFeedMenuList[0]; + feed_menu1.value = r.invidiousFeedMenuList[1]; + + + } +) + +commonHelper.processDefaultCustomInstances('youtube', 'invidious', 'normal', document); +commonHelper.processDefaultCustomInstances('youtube', 'invidious', 'tor', document); -init(); let latencyInvidiousElement = document.getElementById("latency-invidious"); let latencyInvidiousLabel = document.getElementById("latency-invidious-label"); @@ -172,7 +170,7 @@ latencyInvidiousElement.addEventListener("click", commonHelper.testLatency(latencyInvidiousLabel, redirects.invidious.normal).then(r => { browser.storage.local.set({ invidiousLatency: r }); latencyInvidiousLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('invidious', 'normal', youtubeHelper, document); + commonHelper.processDefaultCustomInstances('youtube', 'invidious', 'normal', document); latencyInvidiousElement.removeEventListener("click", reloadWindow); }); } diff --git a/src/pages/options/youtube/piped.js b/src/pages/options/youtube/piped.js index 6e30b8e6..d8ebe2a4 100644 --- a/src/pages/options/youtube/piped.js +++ b/src/pages/options/youtube/piped.js @@ -76,65 +76,61 @@ piped.addEventListener("change", async () => { youtubeListen: pipedListen.checked, pipedSelectedSkip: selectSkip, }); - init(); }); -async function init() { - await browser.storage.local.get( - [ - "youtubeVolume", - "youtubeAutoplay", - "youtubeListen", +await browser.storage.local.get( + [ + "youtubeVolume", + "youtubeAutoplay", + "youtubeListen", - "pipedBufferGoal", - "pipedComments", - "pipedDisableLBRY", - "pipedEnabledCodecs", - "pipedHomepage", - "pipedMinimizeDescription", - "pipedProxyLBRY", - "pipedQuality", - "pipedRegion", - "pipedSelectedSkip", - "pipedSponsorblock", - "pipedDdlTheme", - "pipedWatchHistory", - ], - r => { - pipedSponsorblock.checked = r.pipedSponsorblock; - pipedDdlTheme.value = r.pipedDdlTheme; - selectSkip = r.pipedSelectedSkip; - pipedSelectedSkipSponsor.checked = selectSkip.includes('sponsor'); - pipedSelectedSkipIntro.checked = selectSkip.includes('intro'); - pipedSelectedSkipOutro.checked = selectSkip.includes('outro'); - pipedSelectedSkipPreview.checked = selectSkip.includes('preview'); - autoplay.checked = r.youtubeAutoplay; - pipedSelectedSkipInteraction.checked = selectSkip.includes('interaction'); - pipedSelectedSkipSelfpromo.checked = selectSkip.includes('selfpromo'); - pipedSelectedSkipMusicOfftopic.checked = selectSkip.includes('music_offtopic'); - pipedSelectedSkipPoiHighlight.checked = selectSkip.includes('poi_highlight'); - pipedSelectedSkipFiller.checked = selectSkip.includes('filler'); - pipedListen.checked = r.youtubeListen; - pipedQuality.value = r.pipedQuality; - pipedBufferGoal.value = r.pipedBufferGoal; - pipedRegion.value = r.pipedRegion; - pipedHomepage.value = r.pipedHomepage; - pipedComments.checked = r.pipedComments; - pipedMinimizeDescription.checked = r.pipedMinimizeDescription; - pipedWatchHistory.checked = r.pipedWatchHistory; - pipedEnabledCodecs.value = r.pipedEnabledCodecs; - pipedDisableLBRY.checked = r.pipedDisableLBRY; - pipedProxyLBRY.checked = r.pipedProxyLBRY; + "pipedBufferGoal", + "pipedComments", + "pipedDisableLBRY", + "pipedEnabledCodecs", + "pipedHomepage", + "pipedMinimizeDescription", + "pipedProxyLBRY", + "pipedQuality", + "pipedRegion", + "pipedSelectedSkip", + "pipedSponsorblock", + "pipedDdlTheme", + "pipedWatchHistory", + ], + r => { + pipedSponsorblock.checked = r.pipedSponsorblock; + pipedDdlTheme.value = r.pipedDdlTheme; + selectSkip = r.pipedSelectedSkip; + pipedSelectedSkipSponsor.checked = selectSkip.includes('sponsor'); + pipedSelectedSkipIntro.checked = selectSkip.includes('intro'); + pipedSelectedSkipOutro.checked = selectSkip.includes('outro'); + pipedSelectedSkipPreview.checked = selectSkip.includes('preview'); + autoplay.checked = r.youtubeAutoplay; + pipedSelectedSkipInteraction.checked = selectSkip.includes('interaction'); + pipedSelectedSkipSelfpromo.checked = selectSkip.includes('selfpromo'); + pipedSelectedSkipMusicOfftopic.checked = selectSkip.includes('music_offtopic'); + pipedSelectedSkipPoiHighlight.checked = selectSkip.includes('poi_highlight'); + pipedSelectedSkipFiller.checked = selectSkip.includes('filler'); + pipedListen.checked = r.youtubeListen; + pipedQuality.value = r.pipedQuality; + pipedBufferGoal.value = r.pipedBufferGoal; + pipedRegion.value = r.pipedRegion; + pipedHomepage.value = r.pipedHomepage; + pipedComments.checked = r.pipedComments; + pipedMinimizeDescription.checked = r.pipedMinimizeDescription; + pipedWatchHistory.checked = r.pipedWatchHistory; + pipedEnabledCodecs.value = r.pipedEnabledCodecs; + pipedDisableLBRY.checked = r.pipedDisableLBRY; + pipedProxyLBRY.checked = r.pipedProxyLBRY; - volume.value = r.youtubeVolume; - volumeValue.textContent = `${r.youtubeVolume}%`; + volume.value = r.youtubeVolume; + volumeValue.textContent = `${r.youtubeVolume}%`; + } +); - commonHelper.processDefaultCustomInstances('piped', 'normal', youtubeHelper, document); - commonHelper.processDefaultCustomInstances('piped', 'tor', youtubeHelper, document); - } - ); -} -init(); +commonHelper.processDefaultCustomInstances('youtube', 'piped', 'normal', document); +commonHelper.processDefaultCustomInstances('youtube', 'piped', 'tor', document); let latencyPipedElement = document.getElementById("latency-piped"); let latencyPipedLabel = document.getElementById("latency-piped-label"); @@ -149,7 +145,7 @@ latencyPipedElement.addEventListener("click", commonHelper.testLatency(latencyPipedLabel, redirects.piped.normal).then(r => { browser.storage.local.set({ pipedLatency: r }); latencyPipedLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('piped', 'normal', youtubeHelper, document); + commonHelper.processDefaultCustomInstances('youtube', 'piped', 'normal', document); latencyPipedElement.removeEventListener("click", reloadWindow); }); } diff --git a/src/pages/options/youtube/pipedMaterial.js b/src/pages/options/youtube/pipedMaterial.js index 7c647b18..3dc0e677 100644 --- a/src/pages/options/youtube/pipedMaterial.js +++ b/src/pages/options/youtube/pipedMaterial.js @@ -67,46 +67,43 @@ pipedMaterialElement.addEventListener("change", async () => { init(); }); -function init() { - browser.storage.local.get( - [ - "youtubeAutoplay", - "youtubeVolume", - "youtubeListen", - - "pipedDisableLBRY", - "pipedProxyLBRY", - "pipedSelectedSkip", - "pipedSponsorblock", - - "pipedMaterialSkipToLastPoint", - ], - r => { - autoplayElement.checked = r.youtubeAutoplay; - - listenElement.checked = r.youtubeListen; - disableLBRYElement.checked = r.pipedDisableLBRY; - proxyLBRYElement.checked = r.pipedProxyLBRY; - sponsorblockElement.checked = r.pipedSponsorblock; - skipToLastPointElement.checked = r.pipedMaterialSkipToLastPoint; - - selectSkip = r.pipedSelectedSkip; - selectedSkipSponsorElement.checked = selectSkip.includes('sponsors'); - selectedSkipIntroElement.checked = selectSkip.includes('intro'); - selectedSkipOutroElement.checked = selectSkip.includes('outro'); - selectedSkipPreviewElement.checked = selectSkip.includes('preview'); - selectedSkipInteractionElement.checked = selectSkip.includes('interaction'); - selectedSkipSelfpromoElement.checked = selectSkip.includes('selfpromo'); - selectedSkipMusicOfftopicElement.checked = selectSkip.includes('music_offtopic'); - - volumeElement.value = r.youtubeVolume; - volumeValueElement.textContent = `${r.youtubeVolume}%`; - - commonHelper.processDefaultCustomInstances('pipedMaterial', 'normal', youtubeHelper, document); - commonHelper.processDefaultCustomInstances('pipedMaterial', 'tor', youtubeHelper, document); - }); -} -init(); +browser.storage.local.get( + [ + "youtubeAutoplay", + "youtubeVolume", + "youtubeListen", + + "pipedDisableLBRY", + "pipedProxyLBRY", + "pipedSelectedSkip", + "pipedSponsorblock", + + "pipedMaterialSkipToLastPoint", + ], + r => { + autoplayElement.checked = r.youtubeAutoplay; + + listenElement.checked = r.youtubeListen; + disableLBRYElement.checked = r.pipedDisableLBRY; + proxyLBRYElement.checked = r.pipedProxyLBRY; + sponsorblockElement.checked = r.pipedSponsorblock; + skipToLastPointElement.checked = r.pipedMaterialSkipToLastPoint; + + selectSkip = r.pipedSelectedSkip; + selectedSkipSponsorElement.checked = selectSkip.includes('sponsors'); + selectedSkipIntroElement.checked = selectSkip.includes('intro'); + selectedSkipOutroElement.checked = selectSkip.includes('outro'); + selectedSkipPreviewElement.checked = selectSkip.includes('preview'); + selectedSkipInteractionElement.checked = selectSkip.includes('interaction'); + selectedSkipSelfpromoElement.checked = selectSkip.includes('selfpromo'); + selectedSkipMusicOfftopicElement.checked = selectSkip.includes('music_offtopic'); + + volumeElement.value = r.youtubeVolume; + volumeValueElement.textContent = `${r.youtubeVolume}%`; + }); + +commonHelper.processDefaultCustomInstances('youtube' ,'pipedMaterial', 'normal', document); +commonHelper.processDefaultCustomInstances('youtube' ,'pipedMaterial', 'tor', document); let latencyPipedMaterialElement = document.getElementById("latency-pipedMaterial"); let latencyPipedMaterialLabel = document.getElementById("latency-pipedMaterial-label"); @@ -121,7 +118,7 @@ latencyPipedMaterialElement.addEventListener("click", commonHelper.testLatency(latencyPipedMaterialLabel, redirects.pipedMaterial.normal).then(r => { browser.storage.local.set({ pipedMaterialLatency: r }); latencyPipedMaterialLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('pipedMaterial', 'normal', youtubeHelper, document); + commonHelper.processDefaultCustomInstances('youtube' ,'pipedMaterial', 'normal', document); latencyPipedMaterialElement.removeEventListener("click", reloadWindow); }); } diff --git a/src/pages/options/youtubeMusic/youtubeMusic.js b/src/pages/options/youtubeMusic/youtubeMusic.js index 54a6f8d6..518c651d 100644 --- a/src/pages/options/youtubeMusic/youtubeMusic.js +++ b/src/pages/options/youtubeMusic/youtubeMusic.js @@ -18,7 +18,7 @@ document.addEventListener("change", async () => { }) }) -commonHelper.processDefaultCustomInstances('beatbump', 'normal', youtubeMusicHelper, document); +commonHelper.processDefaultCustomInstances('youtubeMusic', 'beatbump', 'normal', document); let latencyElement = document.getElementById("latency"); let latencyLabel = document.getElementById("latency-label"); @@ -33,7 +33,7 @@ latencyElement.addEventListener("click", commonHelper.testLatency(latencyLabel, redirects.beatbump.normal).then(r => { browser.storage.local.set({ beatbumpLatency: r }); latencyLabel.innerHTML = oldHtml; - commonHelper.processDefaultCustomInstances('beatbump', 'normal', youtubeMusicHelper, document) + commonHelper.processDefaultCustomInstances('youtubeMusic', 'beatbump', 'normal', document); latencyElement.removeEventListener("click", reloadWindow) }); } |