Finish offline detection

This commit is contained in:
BobIsMyManager 2022-08-02 21:55:17 +01:00
parent d436d6a18a
commit 341afc4055
22 changed files with 242 additions and 263 deletions

View File

@ -17,10 +17,10 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects.libremdb = val redirects.libremdb = val
libremdbNormalRedirectsChecks = [...redirects.libremdb.normal] libremdbNormalRedirectsChecks = [...redirects.libremdb.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = libremdbNormalRedirectsChecks.indexOf(instance) const a = libremdbNormalRedirectsChecks.indexOf(instance)
if (a > -1) libremdbNormalRedirectsChecks.splice(a, 1) if (a > -1) libremdbNormalRedirectsChecks.splice(a, 1)
} }
@ -172,12 +172,18 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
libremdbNormalRedirectsChecks = [...redirects.libremdb.normal]
for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = libremdbNormalRedirectsChecks.indexOf(instance)
if (a > -1) libremdbNormalRedirectsChecks.splice(a, 1)
}
browser.storage.local.set( browser.storage.local.set(
{ {
disableImdb: true, disableImdb: true,
imdbRedirects: redirects, imdbRedirects: redirects,
libremdbNormalRedirectsChecks: [...redirects.libremdb.normal], libremdbNormalRedirectsChecks,
libremdbNormalCustomRedirects: [], libremdbNormalCustomRedirects: [],
libremdbTorRedirectsChecks: [...redirects.libremdb.tor], libremdbTorRedirectsChecks: [...redirects.libremdb.tor],
@ -193,6 +199,7 @@ function initDefaults() {
) )
}) })
}) })
})
} }
export default { export default {

View File

@ -16,38 +16,17 @@ for (let i = 0; i < frontends.length; i++) {
} }
} }
function setRedirects() { function setRedirects(val) {
return new Promise(resolve => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
fetch("/instances/data.json") redirects.rimgo = val
.then(response => response.text())
.then(async data => {
let dataJson = JSON.parse(data)
redirects.rimgo = dataJson.rimgo
rimgoNormalRedirectsChecks = [...redirects.rimgo.normal] rimgoNormalRedirectsChecks = [...redirects.rimgo.normal]
rimgoTorRedirectsChecks = [...redirects.rimgo.tor] for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
rimgoI2pRedirectsChecks = [...redirects.rimgo.i2p]
for (const instance of r.cloudflareBlackList) {
const a = rimgoNormalRedirectsChecks.indexOf(instance) const a = rimgoNormalRedirectsChecks.indexOf(instance)
if (a > -1) rimgoNormalRedirectsChecks.splice(a, 1) if (a > -1) rimgoNormalRedirectsChecks.splice(a, 1)
const b = rimgoTorRedirectsChecks.indexOf(instance)
if (b > -1) rimgoTorRedirectsChecks.splice(b, 1)
const c = rimgoI2pRedirectsChecks.indexOf(instance)
if (c > -1) rimgoI2pRedirectsChecks.splice(c, 1)
} }
browser.storage.local.set({
browser.storage.local.set(
{
imgurRedirects: redirects, imgurRedirects: redirects,
rimgoNormalRedirectsChecks, rimgoNormalRedirectsChecks,
rimgoTorRedirectsChecks,
rimgoI2pRedirectsChecks,
},
() => resolve()
)
}) })
}) })
} }
@ -195,11 +174,11 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get("cloudflareBlackList", async r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
rimgoNormalRedirectsChecks = [...redirects.rimgo.normal] rimgoNormalRedirectsChecks = [...redirects.rimgo.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const i = rimgoNormalRedirectsChecks.indexOf(instance) const a = rimgoNormalRedirectsChecks.indexOf(instance)
if (i > -1) rimgoNormalRedirectsChecks.splice(i, 1) if (a > -1) rimgoNormalRedirectsChecks.splice(a, 1)
} }
browser.storage.local.set( browser.storage.local.set(
{ {

View File

@ -16,10 +16,10 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", async r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
redirects.bibliogram = val redirects.bibliogram = val
bibliogramNormalRedirectsChecks = [...redirects.bibliogram.normal] bibliogramNormalRedirectsChecks = [...redirects.bibliogram.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = bibliogramNormalRedirectsChecks.indexOf(instance) const a = bibliogramNormalRedirectsChecks.indexOf(instance)
if (a > -1) bibliogramNormalRedirectsChecks.splice(a, 1) if (a > -1) bibliogramNormalRedirectsChecks.splice(a, 1)
} }
@ -203,17 +203,17 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
bibliogramNormalRedirectsChecks = [...redirects.bibliogram.normal] bibliogramNormalRedirectsChecks = [...redirects.bibliogram.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const i = bibliogramNormalRedirectsChecks.indexOf(instance) const a = bibliogramNormalRedirectsChecks.indexOf(instance)
if (i > -1) bibliogramNormalRedirectsChecks.splice(i, 1) if (a > -1) bibliogramNormalRedirectsChecks.splice(a, 1)
} }
browser.storage.local.set({ browser.storage.local.set({
disableInstagram: false, disableInstagram: false,
instagramRedirects: redirects, instagramRedirects: redirects,
bibliogramNormalRedirectsChecks: bibliogramNormalRedirectsChecks, bibliogramNormalRedirectsChecks,
bibliogramNormalCustomRedirects: [], bibliogramNormalCustomRedirects: [],
bibliogramTorRedirectsChecks: [...redirects.bibliogram.tor], bibliogramTorRedirectsChecks: [...redirects.bibliogram.tor],

View File

@ -17,10 +17,10 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects.librarian = val redirects.librarian = val
librarianNormalRedirectsChecks = [...redirects.librarian.normal] librarianNormalRedirectsChecks = [...redirects.librarian.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = librarianNormalRedirectsChecks.indexOf(instance) const a = librarianNormalRedirectsChecks.indexOf(instance)
if (a > -1) librarianNormalRedirectsChecks.splice(a, 1) if (a > -1) librarianNormalRedirectsChecks.splice(a, 1)
} }
@ -175,6 +175,12 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
librarianNormalRedirectsChecks = [...redirects.librarian.normal]
for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = librarianNormalRedirectsChecks.indexOf(instance)
if (a > -1) librarianNormalRedirectsChecks.splice(a, 1)
}
browser.storage.local.set( browser.storage.local.set(
{ {
disableLbryTargets: true, disableLbryTargets: true,
@ -182,7 +188,7 @@ function initDefaults() {
lbryTargetsRedirects: redirects, lbryTargetsRedirects: redirects,
lbryRedirectType: "both", lbryRedirectType: "both",
librarianNormalRedirectsChecks: [...redirects.librarian.normal], librarianNormalRedirectsChecks,
librarianNormalCustomRedirects: [], librarianNormalCustomRedirects: [],
librarianTorRedirectsChecks: [...redirects.librarian.tor], librarianTorRedirectsChecks: [...redirects.librarian.tor],
@ -198,6 +204,7 @@ function initDefaults() {
) )
}) })
}) })
})
} }
export default { export default {

View File

@ -21,10 +21,10 @@ redirects.osm = {}
redirects.osm.normal = ["https://www.openstreetmap.org"] redirects.osm.normal = ["https://www.openstreetmap.org"]
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects.facil = val redirects.facil = val
facilNormalRedirectsChecks = [...redirects.facil.normal] facilNormalRedirectsChecks = [...redirects.facil.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = facilNormalRedirectsChecks.indexOf(instance) const a = facilNormalRedirectsChecks.indexOf(instance)
if (a > -1) facilNormalRedirectsChecks.splice(a, 1) if (a > -1) facilNormalRedirectsChecks.splice(a, 1)
} }
@ -264,12 +264,18 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
facilNormalRedirectsChecks = [...redirects.facil.normal]
for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = facilNormalRedirectsChecks.indexOf(instance)
if (a > -1) facilNormalRedirectsChecks.splice(a, 1)
}
browser.storage.local.set( browser.storage.local.set(
{ {
disableMaps: false, disableMaps: false,
mapsFrontend: "osm", mapsFrontend: "osm",
mapsRedirects: redirects, mapsRedirects: redirects,
facilNormalRedirectsChecks: [...redirects.facil.normal], facilNormalRedirectsChecks,
facilNormalCustomRedirects: [], facilNormalCustomRedirects: [],
facilTorRedirectsChecks: [...redirects.facil.tor], facilTorRedirectsChecks: [...redirects.facil.tor],
@ -285,6 +291,7 @@ function initDefaults() {
) )
}) })
}) })
})
} }
export default { export default {

View File

@ -40,10 +40,10 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects.scribe = val redirects.scribe = val
scribeNormalRedirectsChecks = [...redirects.scribe.normal] scribeNormalRedirectsChecks = [...redirects.scribe.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = scribeNormalRedirectsChecks.indexOf(instance) const a = scribeNormalRedirectsChecks.indexOf(instance)
if (a > -1) scribeNormalRedirectsChecks.splice(a, 1) if (a > -1) scribeNormalRedirectsChecks.splice(a, 1)
} }
@ -181,18 +181,18 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get("cloudflareBlackList", async r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
scribeNormalRedirectsChecks = [...redirects.scribe.normal] scribeNormalRedirectsChecks = [...redirects.scribe.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
let i = scribeNormalRedirectsChecks.indexOf(instance) const a = scribeNormalRedirectsChecks.indexOf(instance)
if (i > -1) scribeNormalRedirectsChecks.splice(i, 1) if (a > -1) scribeNormalRedirectsChecks.splice(a, 1)
} }
browser.storage.local.set( browser.storage.local.set(
{ {
disableMedium: false, disableMedium: false,
mediumRedirects: redirects, mediumRedirects: redirects,
scribeNormalRedirectsChecks: scribeNormalRedirectsChecks, scribeNormalRedirectsChecks,
scribeNormalCustomRedirects: [], scribeNormalCustomRedirects: [],
scribeTorRedirectsChecks: [...redirects.scribe.tor], scribeTorRedirectsChecks: [...redirects.scribe.tor],

View File

@ -15,10 +15,10 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects.simpleertube = val redirects.simpleertube = val
simpleertubeNormalRedirectsChecks = [...redirects.simpleertube.normal] simpleertubeNormalRedirectsChecks = [...redirects.simpleertube.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = simpleertubeNormalRedirectsChecks.indexOf(instance) const a = simpleertubeNormalRedirectsChecks.indexOf(instance)
if (a > -1) simpleertubeNormalRedirectsChecks.splice(a, 1) if (a > -1) simpleertubeNormalRedirectsChecks.splice(a, 1)
} }
@ -162,11 +162,11 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get("cloudflareBlackList", async r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
simpleertubeNormalRedirectsChecks = [...redirects.simpleertube.normal] simpleertubeNormalRedirectsChecks = [...redirects.simpleertube.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
let i = simpleertubeNormalRedirectsChecks.indexOf(instance) const a = simpleertubeNormalRedirectsChecks.indexOf(instance)
if (i > -1) simpleertubeNormalRedirectsChecks.splice(i, 1) if (a > -1) simpleertubeNormalRedirectsChecks.splice(a, 1)
} }
browser.storage.local.set( browser.storage.local.set(
{ {
@ -174,7 +174,7 @@ function initDefaults() {
disablePeertubeTargets: true, disablePeertubeTargets: true,
peertubeRedirects: redirects, peertubeRedirects: redirects,
simpleertubeNormalRedirectsChecks: simpleertubeNormalRedirectsChecks, simpleertubeNormalRedirectsChecks,
simpleertubeNormalCustomRedirects: [], simpleertubeNormalCustomRedirects: [],
simpleertubeTorRedirectsChecks: [...redirects.simpleertube.tor], simpleertubeTorRedirectsChecks: [...redirects.simpleertube.tor],

View File

@ -17,10 +17,10 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects.quetre = val redirects.quetre = val
quetreNormalRedirectsChecks = [...redirects.quetre.normal] quetreNormalRedirectsChecks = [...redirects.quetre.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = quetreNormalRedirectsChecks.indexOf(instance) const a = quetreNormalRedirectsChecks.indexOf(instance)
if (a > -1) quetreNormalRedirectsChecks.splice(a, 1) if (a > -1) quetreNormalRedirectsChecks.splice(a, 1)
} }
@ -157,13 +157,19 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
quetreNormalRedirectsChecks = [...redirects.quetre.normal]
for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = quetreNormalRedirectsChecks.indexOf(instance)
if (a > -1) quetreNormalRedirectsChecks.splice(a, 1)
}
browser.storage.local.set( browser.storage.local.set(
{ {
disableQuora: false, disableQuora: false,
quoraRedirects: redirects, quoraRedirects: redirects,
quetreNormalRedirectsChecks: [...redirects.quetre.normal], quetreNormalRedirectsChecks,
quetreNormalCustomRedirects: [], quetreNormalCustomRedirects: [],
quetreTorRedirectsChecks: [...redirects.quetre.tor], quetreTorRedirectsChecks: [...redirects.quetre.tor],
@ -179,6 +185,7 @@ function initDefaults() {
) )
}) })
}) })
})
} }
export default { export default {

View File

@ -16,11 +16,11 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects = val redirects = val
libredditNormalRedirectsChecks = [...redirects.libreddit.normal] libredditNormalRedirectsChecks = [...redirects.libreddit.normal]
tedditNormalRedirectsChecks = [...redirects.teddit.normal] tedditNormalRedirectsChecks = [...redirects.teddit.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = libredditNormalRedirectsChecks.indexOf(instance) const a = libredditNormalRedirectsChecks.indexOf(instance)
if (a > -1) libredditNormalRedirectsChecks.splice(a, 1) if (a > -1) libredditNormalRedirectsChecks.splice(a, 1)
@ -330,17 +330,15 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get("cloudflareBlackList", async r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
libredditNormalRedirectsChecks = [...redirects.libreddit.normal] libredditNormalRedirectsChecks = [...redirects.libreddit.normal]
tedditNormalRedirectsChecks = [...redirects.teddit.normal] tedditNormalRedirectsChecks = [...redirects.teddit.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
let i const a = libredditNormalRedirectsChecks.indexOf(instance)
if (a > -1) libredditNormalRedirectsChecks.splice(a, 1)
i = libredditNormalRedirectsChecks.indexOf(instance) const b = tedditNormalRedirectsChecks.indexOf(instance)
if (i > -1) libredditNormalRedirectsChecks.splice(i, 1) if (b > -1) tedditNormalRedirectsChecks.splice(b, 1)
i = tedditNormalRedirectsChecks.indexOf(instance)
if (i > -1) tedditNormalRedirectsChecks.splice(i, 1)
} }
browser.storage.local.set( browser.storage.local.set(
{ {
@ -348,7 +346,7 @@ function initDefaults() {
redditFrontend: "libreddit", redditFrontend: "libreddit",
redditRedirects: redirects, redditRedirects: redirects,
libredditNormalRedirectsChecks: libredditNormalRedirectsChecks, libredditNormalRedirectsChecks,
libredditNormalCustomRedirects: [], libredditNormalCustomRedirects: [],
libredditTorRedirectsChecks: [...redirects.libreddit.tor], libredditTorRedirectsChecks: [...redirects.libreddit.tor],
@ -360,7 +358,7 @@ function initDefaults() {
libredditLokiRedirectsChecks: [...redirects.libreddit.loki], libredditLokiRedirectsChecks: [...redirects.libreddit.loki],
libredditLokiCustomRedirects: [], libredditLokiCustomRedirects: [],
tedditNormalRedirectsChecks: tedditNormalRedirectsChecks, tedditNormalRedirectsChecks,
tedditNormalCustomRedirects: [], tedditNormalCustomRedirects: [],
tedditTorRedirectsChecks: [...redirects.teddit.tor], tedditTorRedirectsChecks: [...redirects.teddit.tor],

View File

@ -17,10 +17,10 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects.neuters = val redirects.neuters = val
neutersNormalRedirectsChecks = [...redirects.neuters.normal] neutersNormalRedirectsChecks = [...redirects.neuters.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = neutersNormalRedirectsChecks.indexOf(instance) const a = neutersNormalRedirectsChecks.indexOf(instance)
if (a > -1) neutersNormalRedirectsChecks.splice(a, 1) if (a > -1) neutersNormalRedirectsChecks.splice(a, 1)
} }
@ -109,13 +109,19 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
neutersNormalRedirectsChecks = [...redirects.neuters.normal]
for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = neutersNormalRedirectsChecks.indexOf(instance)
if (a > -1) neutersNormalRedirectsChecks.splice(a, 1)
}
browser.storage.local.set( browser.storage.local.set(
{ {
disableReuters: true, disableReuters: true,
reutersRedirects: redirects, reutersRedirects: redirects,
neutersNormalRedirectsChecks: [...redirects.neuters.normal], neutersNormalRedirectsChecks,
neutersNormalCustomRedirects: [], neutersNormalCustomRedirects: [],
neutersTorRedirectsChecks: [...redirects.neuters.tor], neutersTorRedirectsChecks: [...redirects.neuters.tor],
@ -131,6 +137,7 @@ function initDefaults() {
) )
}) })
}) })
})
} }
export default { export default {

View File

@ -8,52 +8,22 @@ const frontends = new Array("searx", "searxng", "whoogle", "librex")
const protocols = new Array("normal", "tor", "i2p", "loki") const protocols = new Array("normal", "tor", "i2p", "loki")
const redirects = {} const redirects = {}
/*
"searx": {
"normal": [],
"tor": [],
"i2p": []
},
"searxng": {
"normal": [],
"tor": [],
"i2p": []
},
"whoogle": {
"normal": [],
"tor": [],
"i2p": []
}
*/
//};
//let tmp = "{"
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
//redirects.frontends[i] = {}
//redirects.push(frontends[i])
//tmp = frontends[i]
//tmp = tmp + '\n"' + frontends[i] + '": {'
redirects[frontends[i]] = {} redirects[frontends[i]] = {}
for (let x = 0; x < protocols.length; x++) { for (let x = 0; x < protocols.length; x++) {
//redirects.frontends[i].protocols = []
//tmp = tmp + '\n"' + protocols[x] + '": [],'
redirects[frontends[i]][protocols[x]] = [] redirects[frontends[i]][protocols[x]] = []
} }
//tmp = tmp + "\n},"
} }
//tmp = tmp + "\n}"
//const redirects = JSON.parse(tmp)
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects = val redirects = val
searxNormalRedirectsChecks = [...redirects.searx.normal] searxNormalRedirectsChecks = [...redirects.searx.normal]
searxngNormalRedirectsChecks = [...redirects.searxng.normal] searxngNormalRedirectsChecks = [...redirects.searxng.normal]
whoogleNormalRedirectsChecks = [...redirects.whoogle.normal] whoogleNormalRedirectsChecks = [...redirects.whoogle.normal]
librexNormalRedirectsChecks = [...redirects.librex.normal] librexNormalRedirectsChecks = [...redirects.librex.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = searxNormalRedirectsChecks.indexOf(instance) const a = searxNormalRedirectsChecks.indexOf(instance)
if (a > -1) searxNormalRedirectsChecks.splice(a, 1) if (a > -1) searxNormalRedirectsChecks.splice(a, 1)
@ -499,34 +469,27 @@ function initDefaults() {
.then(response => response.text()) .then(response => response.text())
.then(async data => { .then(async data => {
let dataJson = JSON.parse(data) let dataJson = JSON.parse(data)
/*
redirects.searx = dataJson.searx;
redirects.searxng = dataJson.searxng;
redirects.whoogle = dataJson.whoogle;
*/
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get("cloudflareBlackList", async r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
whoogleNormalRedirectsChecks = [...redirects.whoogle.normal]
searxNormalRedirectsChecks = [...redirects.searx.normal] searxNormalRedirectsChecks = [...redirects.searx.normal]
searxngNormalRedirectsChecks = [...redirects.searxng.normal] searxngNormalRedirectsChecks = [...redirects.searxng.normal]
whoogleNormalRedirectsChecks = [...redirects.whoogle.normal]
librexNormalRedirectsChecks = [...redirects.librex.normal] librexNormalRedirectsChecks = [...redirects.librex.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
let i const a = searxNormalRedirectsChecks.indexOf(instance)
if (a > -1) searxNormalRedirectsChecks.splice(a, 1)
i = whoogleNormalRedirectsChecks.indexOf(instance) const b = searxngNormalRedirectsChecks.indexOf(instance)
if (i > -1) whoogleNormalRedirectsChecks.splice(i, 1) if (b > -1) searxngNormalRedirectsChecks.splice(b, 1)
i = searxNormalRedirectsChecks.indexOf(instance) const c = whoogleNormalRedirectsChecks.indexOf(instance)
if (i > -1) searxNormalRedirectsChecks.splice(i, 1) if (c > -1) whoogleNormalRedirectsChecks.splice(c, 1)
i = searxngNormalRedirectsChecks.indexOf(instance) const d = librexNormalRedirectsChecks.indexOf(instance)
if (i > -1) searxngNormalRedirectsChecks.splice(i, 1) if (d > -1) librexNormalRedirectsChecks.splice(d, 1)
i = librexNormalRedirectsChecks.indexOf(instance)
if (i > -1) librexNormalRedirectsChecks.splice(i, 1)
} }
browser.storage.local.set( browser.storage.local.set(
{ {
@ -535,7 +498,7 @@ function initDefaults() {
searchRedirects: redirects, searchRedirects: redirects,
searxngCustomSettings: false, searxngCustomSettings: false,
whoogleNormalRedirectsChecks: whoogleNormalRedirectsChecks, whoogleNormalRedirectsChecks,
whoogleNormalCustomRedirects: [], whoogleNormalCustomRedirects: [],
whoogleTorRedirectsChecks: [...redirects.whoogle.tor], whoogleTorRedirectsChecks: [...redirects.whoogle.tor],
@ -547,7 +510,7 @@ function initDefaults() {
whoogleLokiRedirectsChecks: [...redirects.whoogle.loki], whoogleLokiRedirectsChecks: [...redirects.whoogle.loki],
whoogleLokiCustomRedirects: [], whoogleLokiCustomRedirects: [],
searxNormalRedirectsChecks: searxNormalRedirectsChecks, searxNormalRedirectsChecks,
searxNormalCustomRedirects: [], searxNormalCustomRedirects: [],
searxTorRedirectsChecks: [...redirects.searx.tor], searxTorRedirectsChecks: [...redirects.searx.tor],
@ -559,7 +522,7 @@ function initDefaults() {
searxLokiRedirectsChecks: [...redirects.searx.loki], searxLokiRedirectsChecks: [...redirects.searx.loki],
searxLokiCustomRedirects: [], searxLokiCustomRedirects: [],
searxngNormalRedirectsChecks: searxngNormalRedirectsChecks, searxngNormalRedirectsChecks,
searxngNormalCustomRedirects: [], searxngNormalCustomRedirects: [],
searxngTorRedirectsChecks: [...redirects.searxng.tor], searxngTorRedirectsChecks: [...redirects.searxng.tor],
@ -571,7 +534,7 @@ function initDefaults() {
searxngLokiRedirectsChecks: [...redirects.searxng.loki], searxngLokiRedirectsChecks: [...redirects.searxng.loki],
searxngLokiCustomRedirects: [], searxngLokiCustomRedirects: [],
librexNormalRedirectsChecks: librexNormalRedirectsChecks, librexNormalRedirectsChecks,
librexNormalCustomRedirects: [], librexNormalCustomRedirects: [],
librexTorRedirectsChecks: [...redirects.librex.tor], librexTorRedirectsChecks: [...redirects.librex.tor],

View File

@ -17,10 +17,10 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects.send = val redirects.send = val
sendNormalRedirectsChecks = [...redirects.send.normal] sendNormalRedirectsChecks = [...redirects.send.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = sendNormalRedirectsChecks.indexOf(instance) const a = sendNormalRedirectsChecks.indexOf(instance)
if (a > -1) sendNormalRedirectsChecks.splice(a, 1) if (a > -1) sendNormalRedirectsChecks.splice(a, 1)
} }
@ -154,18 +154,18 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get("cloudflareBlackList", async r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
sendNormalRedirectsChecks = [...redirects.send.normal] sendNormalRedirectsChecks = [...redirects.send.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
let i = sendNormalRedirectsChecks.indexOf(instance) const a = sendNormalRedirectsChecks.indexOf(instance)
if (i > -1) sendNormalRedirectsChecks.splice(i, 1) if (a > -1) sendNormalRedirectsChecks.splice(a, 1)
} }
browser.storage.local.set( browser.storage.local.set(
{ {
disableSendTarget: false, disableSendTarget: false,
sendTargetsRedirects: redirects, sendTargetsRedirects: redirects,
sendNormalRedirectsChecks: sendNormalRedirectsChecks, sendNormalRedirectsChecks,
sendNormalCustomRedirects: [], sendNormalCustomRedirects: [],
sendTorRedirectsChecks: [...redirects.send.tor], sendTorRedirectsChecks: [...redirects.send.tor],

View File

@ -17,10 +17,10 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects.proxiTok = val redirects.proxiTok = val
proxiTokNormalRedirectsChecks = [...redirects.proxiTok.normal] proxiTokNormalRedirectsChecks = [...redirects.proxiTok.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = proxiTokNormalRedirectsChecks.indexOf(instance) const a = proxiTokNormalRedirectsChecks.indexOf(instance)
if (a > -1) proxiTokNormalRedirectsChecks.splice(a, 1) if (a > -1) proxiTokNormalRedirectsChecks.splice(a, 1)
} }
@ -202,13 +202,20 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
proxiTokNormalRedirectsChecks = [...redirects.proxiTok.normal]
console.log(r)
for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = proxiTokNormalRedirectsChecks.indexOf(instance)
if (a > -1) proxiTokNormalRedirectsChecks.splice(a, 1)
}
browser.storage.local.set( browser.storage.local.set(
{ {
disableTiktok: false, disableTiktok: false,
tiktokRedirects: redirects, tiktokRedirects: redirects,
proxiTokNormalRedirectsChecks: [...redirects.proxiTok.normal], proxiTokNormalRedirectsChecks,
proxiTokNormalCustomRedirects: [], proxiTokNormalCustomRedirects: [],
proxiTokTorRedirectsChecks: [...redirects.proxiTok.tor], proxiTokTorRedirectsChecks: [...redirects.proxiTok.tor],
@ -224,6 +231,7 @@ function initDefaults() {
) )
}) })
}) })
})
} }
export default { export default {

View File

@ -91,21 +91,21 @@ init()
browser.storage.onChanged.addListener(init) browser.storage.onChanged.addListener(init)
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects = val redirects = val
simplyTranslateNormalRedirectsChecks = [...redirects.simplyTranslate.normal]
lingvaNormalRedirectsChecks = [...redirects.lingva.normal] lingvaNormalRedirectsChecks = [...redirects.lingva.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = simplyTranslateNormalCustomRedirects.indexOf(instance)
if (a > -1) simplyTranslateNormalCustomRedirects.splice(a, 1)
const i = lingvaNormalRedirectsChecks.indexOf(instance) const i = lingvaNormalRedirectsChecks.indexOf(instance)
if (i > -1) lingvaNormalRedirectsChecks.splice(i, 1) if (i > -1) lingvaNormalRedirectsChecks.splice(i, 1)
} }
browser.storage.local.set({ browser.storage.local.set({
translateRedirects: redirects, translateRedirects: redirects,
simplyTranslateNormalRedirectsChecks: redirects.simplyTranslate.normal, simplyTranslateNormalRedirectsChecks,
simplyTranslateTorRedirectsChecks: redirects.simplyTranslate.tor,
simplyTranslateI2pRedirectsChecks: redirects.simplyTranslate.i2p,
simplyTranslateLokiRedirectsChecks: redirects.simplyTranslate.loki,
lingvaNormalRedirectsChecks, lingvaNormalRedirectsChecks,
lingvaTorRedirectsChecks: redirects.lingva.tor,
}) })
}) })
} }
@ -309,11 +309,16 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get("cloudflareBlackList", async r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
simplyTranslateNormalCustomRedirects = [...redirects.simplyTranslate.normal]
lingvaNormalRedirectsChecks = [...redirects.lingva.normal] lingvaNormalRedirectsChecks = [...redirects.lingva.normal]
for (const instance of r.cloudflareBlackList) { console.log(r.offlineBlackList)
const i = lingvaNormalRedirectsChecks.indexOf(instance) for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
if (i > -1) lingvaNormalRedirectsChecks.splice(i, 1) const a = simplyTranslateNormalCustomRedirects.indexOf(instance)
if (a > -1) simplyTranslateNormalCustomRedirects.splice(a, 1)
const b = lingvaNormalRedirectsChecks.indexOf(instance)
if (b > -1) lingvaNormalRedirectsChecks.splice(b, 1)
} }
browser.storage.local.set( browser.storage.local.set(
{ {
@ -321,7 +326,7 @@ function initDefaults() {
translateFrontend: "simplyTranslate", translateFrontend: "simplyTranslate",
translateRedirects: redirects, translateRedirects: redirects,
simplyTranslateNormalRedirectsChecks: [...redirects.simplyTranslate.normal], simplyTranslateNormalRedirectsChecks,
simplyTranslateNormalCustomRedirects: [], simplyTranslateNormalCustomRedirects: [],
simplyTranslateTorRedirectsChecks: [...redirects.simplyTranslate.tor], simplyTranslateTorRedirectsChecks: [...redirects.simplyTranslate.tor],
@ -333,7 +338,7 @@ function initDefaults() {
simplyTranslateLokiRedirectsChecks: [...redirects.simplyTranslate.loki], simplyTranslateLokiRedirectsChecks: [...redirects.simplyTranslate.loki],
simplyTranslateLokiCustomRedirects: [], simplyTranslateLokiCustomRedirects: [],
lingvaNormalRedirectsChecks: lingvaNormalRedirectsChecks, lingvaNormalRedirectsChecks,
lingvaNormalCustomRedirects: [], lingvaNormalCustomRedirects: [],
lingvaTorRedirectsChecks: [...redirects.lingva.tor], lingvaTorRedirectsChecks: [...redirects.lingva.tor],

View File

@ -17,17 +17,16 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get(["cloudflareBlackList", "authenticateBlackList"], r => { browser.storage.local.get(["cloudflareBlackList", "authenticateBlackList", "offlineBlackList"], r => {
redirects.nitter = val redirects.nitter = val
nitterNormalRedirectsChecks = [...redirects.nitter.normal] nitterNormalRedirectsChecks = [...redirects.nitter.normal]
for (const instance of [...r.cloudflareBlackList, ...r.authenticateBlackList]) { for (const instance of [...r.cloudflareBlackList, ...r.authenticateBlackList, ...r.offlineBlackList]) {
let i = nitterNormalRedirectsChecks.indexOf(instance) let i = nitterNormalRedirectsChecks.indexOf(instance)
if (i > -1) nitterNormalRedirectsChecks.splice(i, 1) if (i > -1) nitterNormalRedirectsChecks.splice(i, 1)
} }
browser.storage.local.set({ browser.storage.local.set({
twitterRedirects: redirects, twitterRedirects: redirects,
nitterNormalRedirectsChecks, nitterNormalRedirectsChecks,
nitterTorRedirectsChecks: [...redirects.nitter.tor],
}) })
}) })
} }
@ -224,9 +223,9 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get(["cloudflareBlackList", "authenticateBlackList"], async r => { browser.storage.local.get(["cloudflareBlackList", "authenticateBlackList", "offlineBlackList"], async r => {
nitterNormalRedirectsChecks = [...redirects.nitter.normal] nitterNormalRedirectsChecks = [...redirects.nitter.normal]
for (const instance of [...r.cloudflareBlackList, ...r.authenticateBlackList]) { for (const instance of [...r.cloudflareBlackList, ...r.authenticateBlackList, ...r.offlineBlackList]) {
let i = nitterNormalRedirectsChecks.indexOf(instance) let i = nitterNormalRedirectsChecks.indexOf(instance)
if (i > -1) nitterNormalRedirectsChecks.splice(i, 1) if (i > -1) nitterNormalRedirectsChecks.splice(i, 1)
} }
@ -236,7 +235,7 @@ function initDefaults() {
twitterRedirects: redirects, twitterRedirects: redirects,
twitterRedirectType: "both", twitterRedirectType: "both",
nitterNormalRedirectsChecks: nitterNormalRedirectsChecks, nitterNormalRedirectsChecks,
nitterNormalCustomRedirects: [], nitterNormalCustomRedirects: [],
nitterTorRedirectsChecks: [...redirects.nitter.tor], nitterTorRedirectsChecks: [...redirects.nitter.tor],

View File

@ -25,7 +25,7 @@ function getRandomInstance(instances) {
let cloudflareBlackList = [] let cloudflareBlackList = []
let authenticateBlackList = [] let authenticateBlackList = []
let offlineBlacklist = [] let offlineBlackList = []
async function initBlackList() { async function initBlackList() {
return new Promise(resolve => { return new Promise(resolve => {
fetch("/instances/blacklist.json") fetch("/instances/blacklist.json")
@ -33,7 +33,7 @@ async function initBlackList() {
.then(data => { .then(data => {
cloudflareBlackList = JSON.parse(data).cloudflare cloudflareBlackList = JSON.parse(data).cloudflare
authenticateBlackList = JSON.parse(data).authenticate authenticateBlackList = JSON.parse(data).authenticate
offlineBlacklist = JSON.parse(data).offlineBlacklist offlineBlackList = JSON.parse(data).offline
resolve() resolve()
}) })
}) })
@ -62,6 +62,7 @@ function updateInstances() {
invidious: instances.invidious, invidious: instances.invidious,
piped: instances.piped, piped: instances.piped,
pipedMaterial: instances.pipedMaterial, pipedMaterial: instances.pipedMaterial,
cloudtube: instances.cloudtube
}) })
twitterHelper.setRedirects(instances.nitter) twitterHelper.setRedirects(instances.nitter)
instagramHelper.setRedirects(instances.bibliogram) instagramHelper.setRedirects(instances.bibliogram)
@ -164,7 +165,7 @@ async function processDefaultCustomInstances(target, name, protocol, document) {
...redirects[name][protocol].map(x => { ...redirects[name][protocol].map(x => {
const cloudflare = cloudflareBlackList.includes(x) ? ' <span style="color:red;">cloudflare</span>' : "" const cloudflare = cloudflareBlackList.includes(x) ? ' <span style="color:red;">cloudflare</span>' : ""
const authenticate = authenticateBlackList.includes(x) ? ' <span style="color:orange;">authenticate</span>' : "" const authenticate = authenticateBlackList.includes(x) ? ' <span style="color:orange;">authenticate</span>' : ""
const offline = offlineBlacklist.includes(x) ? ' <span style="color:grey;">offline</span>' : "" const offline = offlineBlackList.includes(x) ? ' <span style="color:grey;">offline</span>' : ""
let ms = instancesLatency[x] let ms = instancesLatency[x]
let latencyColor = ms <= 1000 ? "green" : ms <= 2000 ? "orange" : "red" let latencyColor = ms <= 1000 ? "green" : ms <= 2000 ? "orange" : "red"
@ -285,7 +286,6 @@ function pingOnce(href) {
resolve(5000 + http.status) resolve(5000 + http.status)
} }
} }
} }
http.open("GET", `${href}?_=${new Date().getTime()}`, true) http.open("GET", `${href}?_=${new Date().getTime()}`, true)
started = new Date().getTime() started = new Date().getTime()
@ -293,22 +293,15 @@ function pingOnce(href) {
}) })
} }
async function testLatency(element, instances, frontend) { async function testLatency(element, instances, frontend) {
return new Promise(async resolve => { return new Promise(async resolve => {
let myList = {} let myList = {}
let latencyThreshold let latencyThreshold
let redirectsChecks = [] let redirectsChecks = []
browser.storage.local.get( browser.storage.local.get(["latencyThreshold", `${frontend}NormalRedirectsChecks`], r => {
[
"latencyThreshold",
`${frontend}NormalRedirectsChecks`
],
r => {
latencyThreshold = r.latencyThreshold latencyThreshold = r.latencyThreshold
redirectsChecks = r[`${frontend}NormalRedirectsChecks`] redirectsChecks = r[`${frontend}NormalRedirectsChecks`]
} })
)
for (const href of instances) for (const href of instances)
await ping(href).then(time => { await ping(href).then(time => {
if (time) { if (time) {

View File

@ -17,10 +17,10 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects.wikiless = val redirects.wikiless = val
wikilessNormalRedirectsChecks = [...redirects.wikiless.normal] wikilessNormalRedirectsChecks = [...redirects.wikiless.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = wikilessNormalRedirectsChecks.indexOf(instance) const a = wikilessNormalRedirectsChecks.indexOf(instance)
if (a > -1) wikilessNormalRedirectsChecks.splice(a, 1) if (a > -1) wikilessNormalRedirectsChecks.splice(a, 1)
} }
@ -200,18 +200,18 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get("cloudflareBlackList", async r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
wikilessNormalRedirectsChecks = [...redirects.wikiless.normal] wikilessNormalRedirectsChecks = [...redirects.wikiless.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
let i = wikilessNormalRedirectsChecks.indexOf(instance) const a = wikilessNormalRedirectsChecks.indexOf(instance)
if (i > -1) wikilessNormalRedirectsChecks.splice(i, 1) if (a > -1) wikilessNormalRedirectsChecks.splice(a, 1)
} }
browser.storage.local.set( browser.storage.local.set(
{ {
disableWikipedia: true, disableWikipedia: true,
wikipediaRedirects: redirects, wikipediaRedirects: redirects,
wikilessNormalRedirectsChecks: wikilessNormalRedirectsChecks, wikilessNormalRedirectsChecks,
wikilessNormalCustomRedirects: [], wikilessNormalCustomRedirects: [],
wikilessTorRedirectsChecks: [...redirects.wikiless.tor], wikilessTorRedirectsChecks: [...redirects.wikiless.tor],

View File

@ -30,14 +30,13 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
for (let i = 0; i < frontends.length; i++) { redirects = val
redirects.frontends = val.frontends
}
invidiousNormalRedirectsChecks = [...redirects.invidious.normal] invidiousNormalRedirectsChecks = [...redirects.invidious.normal]
pipedNormalRedirectsChecks = [...redirects.piped.normal] pipedNormalRedirectsChecks = [...redirects.piped.normal]
pipedMaterialNormalRedirectsChecks = [...redirects.pipedMaterial.normal] pipedMaterialNormalRedirectsChecks = [...redirects.pipedMaterial.normal]
for (const instance of r.cloudflareBlackList) { cloudtubeNormalRedirectsChecks = [...redirects.cloudtube.normal]
for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = invidiousNormalRedirectsChecks.indexOf(instance) const a = invidiousNormalRedirectsChecks.indexOf(instance)
if (a > -1) invidiousNormalRedirectsChecks.splice(a, 1) if (a > -1) invidiousNormalRedirectsChecks.splice(a, 1)
@ -450,13 +449,12 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get("cloudflareBlackList", async r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
invidiousNormalRedirectsChecks = [...redirects.invidious.normal] invidiousNormalRedirectsChecks = [...redirects.invidious.normal]
pipedNormalRedirectsChecks = [...redirects.piped.normal] pipedNormalRedirectsChecks = [...redirects.piped.normal]
pipedMaterialNormalRedirectsChecks = [...redirects.pipedMaterial.normal] pipedMaterialNormalRedirectsChecks = [...redirects.pipedMaterial.normal]
cloudtubeNormalRedirectsChecks = [...redirects.cloudtube.normal] cloudtubeNormalRedirectsChecks = [...redirects.cloudtube.normal]
for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
for (const instance of r.cloudflareBlackList) {
const a = invidiousNormalRedirectsChecks.indexOf(instance) const a = invidiousNormalRedirectsChecks.indexOf(instance)
if (a > -1) invidiousNormalRedirectsChecks.splice(a, 1) if (a > -1) invidiousNormalRedirectsChecks.splice(a, 1)
@ -467,9 +465,8 @@ function initDefaults() {
if (c > -1) pipedMaterialNormalRedirectsChecks.splice(c, 1) if (c > -1) pipedMaterialNormalRedirectsChecks.splice(c, 1)
const d = cloudtubeNormalRedirectsChecks.indexOf(instance) const d = cloudtubeNormalRedirectsChecks.indexOf(instance)
if (d > -1) cloudtubeNormalRedirectsChecks.indexOf(instance) if (c > -1) cloudtubeNormalRedirectsChecks.splice(d, 1)
} }
browser.storage.local.set( browser.storage.local.set(
{ {
disableYoutube: false, disableYoutube: false,
@ -478,7 +475,7 @@ function initDefaults() {
youtubeRedirects: redirects, youtubeRedirects: redirects,
youtubeFrontend: "invidious", youtubeFrontend: "invidious",
invidiousNormalRedirectsChecks: invidiousNormalRedirectsChecks, invidiousNormalRedirectsChecks,
invidiousNormalCustomRedirects: [], invidiousNormalCustomRedirects: [],
invidiousTorRedirectsChecks: [...redirects.invidious.tor], invidiousTorRedirectsChecks: [...redirects.invidious.tor],
@ -490,7 +487,7 @@ function initDefaults() {
invidiousLokiRedirectsChecks: [...redirects.invidious.loki], invidiousLokiRedirectsChecks: [...redirects.invidious.loki],
invidiousLokiCustomRedirects: [], invidiousLokiCustomRedirects: [],
pipedNormalRedirectsChecks: pipedNormalRedirectsChecks, pipedNormalRedirectsChecks,
pipedNormalCustomRedirects: [], pipedNormalCustomRedirects: [],
pipedTorRedirectsChecks: [...redirects.piped.tor], pipedTorRedirectsChecks: [...redirects.piped.tor],

View File

@ -19,11 +19,11 @@ for (let i = 0; i < frontends.length; i++) {
} }
function setRedirects(val) { function setRedirects(val) {
browser.storage.local.get("cloudflareBlackList", r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], r => {
redirects = val redirects = val
beatbumpNormalRedirectsChecks = [...redirects.beatbump.normal] beatbumpNormalRedirectsChecks = [...redirects.beatbump.normal]
hyperpipeNormalRedirectsChecks = [...redirects.hyperpipe.normal] hyperpipeNormalRedirectsChecks = [...redirects.hyperpipe.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
const a = beatbumpNormalRedirectsChecks.indexOf(instance) const a = beatbumpNormalRedirectsChecks.indexOf(instance)
if (a > -1) beatbumpNormalRedirectsChecks.splice(a, 1) if (a > -1) beatbumpNormalRedirectsChecks.splice(a, 1)
@ -266,17 +266,15 @@ function initDefaults() {
for (let i = 0; i < frontends.length; i++) { for (let i = 0; i < frontends.length; i++) {
redirects[frontends[i]] = dataJson[frontends[i]] redirects[frontends[i]] = dataJson[frontends[i]]
} }
browser.storage.local.get("cloudflareBlackList", async r => { browser.storage.local.get(["cloudflareBlackList", "offlineBlackList"], async r => {
beatbumpNormalRedirectsChecks = [...redirects.beatbump.normal] beatbumpNormalRedirectsChecks = [...redirects.beatbump.normal]
hyperpipeNormalRedirectsChecks = [...redirects.hyperpipe.normal] hyperpipeNormalRedirectsChecks = [...redirects.hyperpipe.normal]
for (const instance of r.cloudflareBlackList) { for (const instance of [...r.cloudflareBlackList, ...r.offlineBlackList]) {
let i const a = beatbumpNormalRedirectsChecks.indexOf(instance)
if (a > -1) beatbumpNormalRedirectsChecks.splice(a, 1)
i = beatbumpNormalRedirectsChecks.indexOf(instance) const b = hyperpipeNormalRedirectsChecks.indexOf(instance)
if (i > -1) beatbumpNormalRedirectsChecks.splice(i, 1) if (b > -1) hyperpipeNormalRedirectsChecks.splice(b, 1)
i = hyperpipeNormalRedirectsChecks.indexOf(instance)
if (i > -1) hyperpipeNormalRedirectsChecks.splice(i, 1)
} }
browser.storage.local.set( browser.storage.local.set(
{ {
@ -284,7 +282,7 @@ function initDefaults() {
youtubeMusicFrontend: "hyperpipe", youtubeMusicFrontend: "hyperpipe",
youtubeMusicRedirects: redirects, youtubeMusicRedirects: redirects,
beatbumpNormalRedirectsChecks: beatbumpNormalRedirectsChecks, beatbumpNormalRedirectsChecks,
beatbumpNormalCustomRedirects: [], beatbumpNormalCustomRedirects: [],
beatbumpTorRedirectsChecks: [...redirects.beatbump.tor], beatbumpTorRedirectsChecks: [...redirects.beatbump.tor],
@ -296,7 +294,7 @@ function initDefaults() {
beatbumpLokiRedirectsChecks: [...redirects.beatbump.loki], beatbumpLokiRedirectsChecks: [...redirects.beatbump.loki],
beatbumpLokiCustomRedirects: [], beatbumpLokiCustomRedirects: [],
hyperpipeNormalRedirectsChecks: hyperpipeNormalRedirectsChecks, hyperpipeNormalRedirectsChecks,
hyperpipeNormalCustomRedirects: [], hyperpipeNormalCustomRedirects: [],
hyperpipeTorRedirectsChecks: [...redirects.hyperpipe.tor], hyperpipeTorRedirectsChecks: [...redirects.hyperpipe.tor],

View File

@ -32,6 +32,7 @@ browser.runtime.onInstalled.addListener(details => {
browser.storage.local.clear(() => { browser.storage.local.clear(() => {
browser.storage.local.set({ cloudflareBlackList: JSON.parse(data).cloudflare }, () => { browser.storage.local.set({ cloudflareBlackList: JSON.parse(data).cloudflare }, () => {
browser.storage.local.set({ authenticateBlackList: JSON.parse(data).authenticate }, () => { browser.storage.local.set({ authenticateBlackList: JSON.parse(data).authenticate }, () => {
browser.storage.local.set({ offlineBlackList: JSON.parse(data).offline }, () => {
generalHelper.initDefaults() generalHelper.initDefaults()
youtubeHelper.initDefaults() youtubeHelper.initDefaults()
youtubeMusicHelper.initDefaults() youtubeMusicHelper.initDefaults()
@ -55,6 +56,7 @@ browser.runtime.onInstalled.addListener(details => {
}) })
}) })
}) })
})
} }
if (details.reason == "install") initDefaults() if (details.reason == "install") initDefaults()

View File

@ -81,6 +81,7 @@ resetSettings.addEventListener("click", async () => {
.then(response => response.text()) .then(response => response.text())
.then(async data => { .then(async data => {
browser.storage.local.set({ cloudflareBlackList: JSON.parse(data).cloudflare }, () => { browser.storage.local.set({ cloudflareBlackList: JSON.parse(data).cloudflare }, () => {
browser.storage.local.set({ offlineBlackList: JSON.parse(data).offline }, () => {
browser.storage.local.set({ authenticateBlackList: JSON.parse(data).authenticate }, async () => { browser.storage.local.set({ authenticateBlackList: JSON.parse(data).authenticate }, async () => {
await generalHelper.initDefaults() await generalHelper.initDefaults()
await youtubeHelper.initDefaults() await youtubeHelper.initDefaults()
@ -107,6 +108,7 @@ resetSettings.addEventListener("click", async () => {
}) })
}) })
}) })
})
let autoRedirectElement = document.getElementById("auto-redirect") let autoRedirectElement = document.getElementById("auto-redirect")
autoRedirectElement.addEventListener("change", event => { autoRedirectElement.addEventListener("change", event => {