Add support for unifying settings

This commit is contained in:
BobIsMyManager 2022-07-14 16:39:04 +01:00
parent 714ef46a8d
commit c531943e48
7 changed files with 70 additions and 12 deletions

View File

@ -32,7 +32,7 @@ Quora => [Quetre](https://github.com/zyachel/quetre)\
IMDb => [Libremdb](https://github.com/zyachel/libremdb)\ IMDb => [Libremdb](https://github.com/zyachel/libremdb)\
PeerTube => [SimpleerTube](https://git.sr.ht/~metalune/simpleweb_peertube)\ PeerTube => [SimpleerTube](https://git.sr.ht/~metalune/simpleweb_peertube)\
LBRY/Odysee => [Librarian](https://codeberg.org/librarian/librarian)\ LBRY/Odysee => [Librarian](https://codeberg.org/librarian/librarian)\
Search => [SearXNG](https://github.com/searxng/searxng), [SearX](https://searx.github.io/searx/), [Whoogle](https://benbusby.com/projects/whoogle-search/)\ Search => [SearXNG](https://github.com/searxng/searxng), [SearX](https://searx.github.io/searx/), [Whoogle](https://benbusby.com/projects/whoogle-search/), [Librex](https://github.com/hnhx/librex/)\
Translate => [SimplyTranslate](https://git.sr.ht/~metalune/simplytranslate_web), [LingvaTranslate](https://github.com/TheDavidDelta/lingva-translate)\ Translate => [SimplyTranslate](https://git.sr.ht/~metalune/simplytranslate_web), [LingvaTranslate](https://github.com/TheDavidDelta/lingva-translate)\
Maps => [OpenStreetMap](https://www.openstreetmap.org/), [FacilMap](https://github.com/FacilMap/facilmap)\ Maps => [OpenStreetMap](https://www.openstreetmap.org/), [FacilMap](https://github.com/FacilMap/facilmap)\
Send Files => [Send](https://gitlab.com/timvisee/send) Send Files => [Send](https://gitlab.com/timvisee/send)

View File

@ -66,7 +66,7 @@ function setRedirects(val) {
if (c > -1) whoogleNormalRedirectsChecks.splice(c, 1); if (c > -1) whoogleNormalRedirectsChecks.splice(c, 1);
const d = librexNormalRedirectsChecks.indexOf(instance); const d = librexNormalRedirectsChecks.indexOf(instance);
if (c > -1) librexNormalRedirectsChecks.splice(d, 1); if (d > -1) librexNormalRedirectsChecks.splice(d, 1);
} }
browser.storage.local.set({ browser.storage.local.set({
searchRedirects: redirects, searchRedirects: redirects,
@ -224,8 +224,9 @@ function pasteSearxCookies() {
await init(); await init();
if (disableSearch || searchFrontend != 'searx') { resolve(); return; } if (disableSearch || searchFrontend != 'searx') { resolve(); return; }
let checkedInstances; let checkedInstances;
if (searchProtocol == 'normal') checkedInstances = [...searxNormalRedirectsChecks, ...searxNormalCustomRedirects] if (searchProtocol == 'normal') checkedInstances = [...searxNormalRedirectsChecks, ...searxNormalCustomRedirects];
else if (searchProtocol == 'tor') checkedInstances = [...searxTorRedirectsChecks, ...searxTorCustomRedirects] else if (searchProtocol == 'tor') checkedInstances = [...searxTorRedirectsChecks, ...searxTorCustomRedirects];
else if (searchProtocol == 'i2p') checkedInstances = [...searxI2pRedirectsChecks, ...searxI2pCustomRedirects];
utils.getCookiesFromStorage('searx', checkedInstances, 'advanced_search'); utils.getCookiesFromStorage('searx', checkedInstances, 'advanced_search');
utils.getCookiesFromStorage('searx', checkedInstances, 'autocomplete'); utils.getCookiesFromStorage('searx', checkedInstances, 'autocomplete');
utils.getCookiesFromStorage('searx', checkedInstances, 'categories'); utils.getCookiesFromStorage('searx', checkedInstances, 'categories');
@ -294,8 +295,9 @@ function pasteSearxngCookies() {
await init(); await init();
if (disableSearch || searchFrontend != 'searxng', searchProtocol === undefined) { resolve(); return; } if (disableSearch || searchFrontend != 'searxng', searchProtocol === undefined) { resolve(); return; }
let checkedInstances; let checkedInstances;
if (searchProtocol == 'normal') checkedInstances = [...searxngNormalRedirectsChecks, ...searxngNormalCustomRedirects] if (searchProtocol == 'normal') checkedInstances = [...searxngNormalRedirectsChecks, ...searxngNormalCustomRedirects];
else if (searchProtocol == 'tor') checkedInstances = [...searxngTorRedirectsChecks, ...searxngTorCustomRedirects] else if (searchProtocol == 'tor') checkedInstances = [...searxngTorRedirectsChecks, ...searxngTorCustomRedirects];
else if (searchProtocol == 'i2p') checkedInstances = [...searxngI2pRedirectsChecks, ...searxngI2pCustomRedirects];
utils.getCookiesFromStorage('searxng', checkedInstances, 'autocomplete'); utils.getCookiesFromStorage('searxng', checkedInstances, 'autocomplete');
utils.getCookiesFromStorage('searxng', checkedInstances, 'categories'); utils.getCookiesFromStorage('searxng', checkedInstances, 'categories');
utils.getCookiesFromStorage('searxng', checkedInstances, 'disabled_engines'); utils.getCookiesFromStorage('searxng', checkedInstances, 'disabled_engines');
@ -319,6 +321,56 @@ function pasteSearxngCookies() {
}) })
} }
function initLibrexCookies(test, from) {
return new Promise(async resolve => {
await init();
let protocolHost = utils.protocolHost(from);
if (![
...librexNormalRedirectsChecks,
...librexNormalCustomRedirects,
...librexTorRedirectsChecks,
...librexTorCustomRedirects,
...librexI2pRedirectsChecks,
...librexI2pCustomRedirects,
].includes(protocolHost)) { resolve(); return; }
if(!test) {
let checkedInstances;
if (searchProtocol == 'normal') checkedInstances = [...librexNormalRedirectsChecks, ...librexNormalCustomRedirects];
else if (searchProtocol == 'tor') checkedInstances = [...librexTorRedirectsChecks, ...librexTorCustomRedirects];
else if (searchProtocol == 'i2p') checkedInstances = [...librexI2pRedirectsChecks, ...librexI2pCustomRedirects];
await utils.copyCookie('librex', from, checkedInstances, 'bibliogram');
await utils.copyCookie('librex', from, checkedInstances, 'disable_special');
await utils.copyCookie('librex', from, checkedInstances, 'invidious');
await utils.copyCookie('librex', from, checkedInstances, 'libreddit');
await utils.copyCookie('librex', from, checkedInstances, 'nitter');
await utils.copyCookie('librex', from, checkedInstances, 'proxitok');
await utils.copyCookie('librex', from, checkedInstances, 'theme');
await utils.copyCookie('librex', from, checkedInstances, 'wikiless');
}
resolve(true);
})
}
function pasteLibrexCookies() {
return new Promise(async resolve => {
await init();
if (disableSearch || searchFrontend != 'librex', searchProtocol === undefined) { resolve(); return; }
let checkedInstances;
if (searchProtocol == 'normal') checkedInstances = [...librexNormalRedirectsChecks, ...librexNormalCustomRedirects];
else if (searchProtocol == 'tor') checkedInstances = [...librexTorRedirectsChecks, ...librexTorCustomRedirects];
else if (searchProtocol == 'i2p') checkedInstances = [...librexI2pRedirectsChecks, ...librexI2pCustomRedirects];
utils.getCookiesFromStorage('librex', checkedInstances, 'bibliogram');
utils.getCookiesFromStorage('librex', checkedInstances, 'disable_special');
utils.getCookiesFromStorage('librex', checkedInstances, 'invidious');
utils.getCookiesFromStorage('librex', checkedInstances, 'libreddit');
utils.getCookiesFromStorage('librex', checkedInstances, 'nitter');
utils.getCookiesFromStorage('librex', checkedInstances, 'proxitok');
utils.getCookiesFromStorage('librex', checkedInstances, 'theme');
utils.getCookiesFromStorage('librex', checkedInstances, 'wikiless');
resolve();
})
}
function redirect(url, disableOverride) { function redirect(url, disableOverride) {
if (disableSearch && !disableOverride) return; if (disableSearch && !disableOverride) return;
@ -523,10 +575,10 @@ function initDefaults() {
librexNormalRedirectsChecks: librexNormalRedirectsChecks, librexNormalRedirectsChecks: librexNormalRedirectsChecks,
librexNormalCustomRedirects: [], librexNormalCustomRedirects: [],
librexTorRedirectsChecks: librexTorRedirectsChecks, librexTorRedirectsChecks: [...redirects.librex.tor],
librexTorCustomRedirects: [], librexTorCustomRedirects: [],
librexI2pRedirectsChecks: librexI2pRedirectsChecks, librexI2pRedirectsChecks: [...redirects.librex.i2p],
librexI2pCustomRedirects: [] librexI2pCustomRedirects: []
}, () => resolve()) }, () => resolve())
}) })
@ -540,6 +592,8 @@ export default {
pasteSearxCookies, pasteSearxCookies,
initSearxngCookies, initSearxngCookies,
pasteSearxngCookies, pasteSearxngCookies,
initLibrexCookies,
pasteLibrexCookies,
redirect, redirect,
initDefaults, initDefaults,
switchInstance, switchInstance,

View File

@ -46,7 +46,7 @@ function updateInstances() {
instagramHelper.setRedirects(instances.bibliogram); instagramHelper.setRedirects(instances.bibliogram);
redditHelper.setRedirects({ 'libreddit': instances.libreddit, 'teddit': instances.teddit }); redditHelper.setRedirects({ 'libreddit': instances.libreddit, 'teddit': instances.teddit });
translateHelper.setRedirects({ "simplyTranslate": instances.simplyTranslate, "lingva": instances.lingva }); translateHelper.setRedirects({ "simplyTranslate": instances.simplyTranslate, "lingva": instances.lingva });
searchHelper.setRedirects({ 'searx': instances.searx, 'searxng': instances.searxng, 'whoogle': instances.whoogle }); searchHelper.setRedirects({ 'searx': instances.searx, 'searxng': instances.searxng, 'whoogle': instances.whoogle, 'librex': instances.librex });
wikipediaHelper.setRedirects(instances.wikiless); wikipediaHelper.setRedirects(instances.wikiless);
mediumHelper.setRedirects(instances.scribe); mediumHelper.setRedirects(instances.scribe);
quoraHelper.setRedirects(instances.quetre); quoraHelper.setRedirects(instances.quetre);
@ -384,6 +384,7 @@ function unify(test) {
if (!result) result = await searchHelper.initSearxCookies(test, url); if (!result) result = await searchHelper.initSearxCookies(test, url);
if (!result) result = await searchHelper.initSearxngCookies(test, url); if (!result) result = await searchHelper.initSearxngCookies(test, url);
if (!result) result = await searchHelper.initLibrexCookies(test, url);
if (!result) result = await tiktokHelper.initProxiTokCookies(test, url); if (!result) result = await tiktokHelper.initProxiTokCookies(test, url);

View File

@ -385,7 +385,7 @@ def librex():
_list['i2p'] = [] _list['i2p'] = []
tmp = re.findall( tmp = re.findall(
r"\| \[(?:(?:[a-zA-Z0-9]+\.)+[a-zA-Z]{2,}|✅)\]\((https?:\/{2}(?:[a-zA-Z0-9]+\.)+[a-zA-Z0-9]{2,})", r.text) r"\| {1,2}\[(?:(?:[a-zA-Z0-9]+\.)+[a-zA-Z]{2,}|✅)\]\((https?:\/{2}(?:[a-zA-Z0-9]+\.)+[a-zA-Z0-9]{2,})", r.text)
tmp = filterLastSlash(tmp) tmp = filterLastSlash(tmp)
for item in tmp: for item in tmp:

View File

@ -81,6 +81,7 @@ twitterHelper.pasteNitterCookies();
wikipediaHelper.pasteWikilessCookies(); wikipediaHelper.pasteWikilessCookies();
searchHelper.pasteSearxCookies(); searchHelper.pasteSearxCookies();
searchHelper.pasteSearxngCookies(); searchHelper.pasteSearxngCookies();
searchHelper.pasteLibrexCookies();
redditHelper.pasteLibredditCookies(); redditHelper.pasteLibredditCookies();
redditHelper.pasteTedditCookies(); redditHelper.pasteTedditCookies();
tiktokHelper.pasteProxiTokCookies(); tiktokHelper.pasteProxiTokCookies();
@ -257,4 +258,4 @@ browser.contextMenus.onClicked.addListener(
browser.runtime.onMessage.addListener((message, sender, sendResponse) => { browser.runtime.onMessage.addListener((message, sender, sendResponse) => {
if (message.function === 'unify') utils.unify(false).then(r => sendResponse({ response: r })) if (message.function === 'unify') utils.unify(false).then(r => sendResponse({ response: r }))
return true; return true;
}); });

View File

@ -14,8 +14,9 @@ await twitterHelper.pasteNitterCookies();
await wikipediaHelper.pasteWikilessCookies(); await wikipediaHelper.pasteWikilessCookies();
await searchHelper.pasteSearxCookies(); await searchHelper.pasteSearxCookies();
await searchHelper.pasteSearxngCookies(); await searchHelper.pasteSearxngCookies();
await searchHelper.pasteLibrexCookies();
await redditHelper.pasteLibredditCookies(); await redditHelper.pasteLibredditCookies();
await redditHelper.pasteTedditCookies(); await redditHelper.pasteTedditCookies();
await tiktokHelper.pasteProxiTokCookies(); await tiktokHelper.pasteProxiTokCookies();
window.close() window.close()

View File

@ -83,6 +83,7 @@ importSettingsElement.addEventListener("change",
await searchHelper.pasteSearxCookies(); await searchHelper.pasteSearxCookies();
await searchHelper.pasteSearxngCookies(); await searchHelper.pasteSearxngCookies();
await searchHelper.pasteLibrexCookies();
await redditHelper.pasteLibredditCookies(); await redditHelper.pasteLibredditCookies();
await redditHelper.pasteTedditCookies(); await redditHelper.pasteTedditCookies();