From 3bc5cafe65caa86734f6ad9ef13d3a70f5effa4c Mon Sep 17 00:00:00 2001 From: BobIsMyManager Date: Fri, 22 Jul 2022 19:39:08 +0100 Subject: Make almost all instances follow new protocol structre Closes https://github.com/libredirect/libredirect/issues/238 Closes https://github.com/libredirect/libredirect/issues/391 --- src/assets/javascripts/medium.js | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) (limited to 'src/assets/javascripts/medium.js') diff --git a/src/assets/javascripts/medium.js b/src/assets/javascripts/medium.js index 37a8a3db..d4c81ba8 100644 --- a/src/assets/javascripts/medium.js +++ b/src/assets/javascripts/medium.js @@ -61,6 +61,8 @@ let scribeNormalCustomRedirects, scribeTorRedirectsChecks, scribeTorCustomRedirects, + scribeI2pCustomRedirects, + scribeLokiCustomRedirects, protocol, protocolFallback; @@ -74,6 +76,8 @@ function init() { "scribeNormalCustomRedirects", "scribeTorRedirectsChecks", "scribeTorCustomRedirects", + "scribeI2pCustomRedirects", + "scribeLokiCustomRedirects", "protocol", "protocolFallback" ], @@ -84,6 +88,8 @@ function init() { scribeNormalCustomRedirects = r.scribeNormalCustomRedirects; scribeTorRedirectsChecks = r.scribeTorRedirectsChecks; scribeTorCustomRedirects = r.scribeTorCustomRedirects; + scribeI2pCustomRedirects = r.scribeI2pCustomRedirects; + scribeLokiCustomRedirects = r.scribeLokiCustomRedirects; protocol = r.protocol; protocolFallback = r.protocolFallback; resolve(); @@ -105,13 +111,17 @@ function redirect(url, type, initiator, disableOverride) { ...mediumRedirects.scribe.tor, ...scribeNormalCustomRedirects, ...scribeTorCustomRedirects, + ...scribeI2pCustomRedirects, + ...scribeLokiCustomRedirects ].includes(initiator.origin))) return; if (!targets.some(rx => rx.test(url.host))) return; if (/^\/(@[a-zA-Z.]{0,}(\/|)$)/.test(url.pathname)) return; let instancesList = []; - if (protocol == 'tor') instancesList = [...scribeTorRedirectsChecks, ...scribeTorCustomRedirects]; + if (protocol == 'loki') instancesList = [...scribeLokiCustomRedirects]; + else if (protocol == 'i2p') instancesList = [...scribeI2pCustomRedirects]; + else if (protocol == 'tor') instancesList = [...scribeTorRedirectsChecks, ...scribeTorCustomRedirects]; if ((instancesList.length === 0 && protocolFallback) || protocol == 'normal') { instancesList = [...scribeNormalRedirectsChecks, ...scribeNormalCustomRedirects]; } @@ -132,11 +142,15 @@ function switchInstance(url, disableOverride) { ...scribeNormalCustomRedirects, ...scribeTorCustomRedirects, + ...scribeI2pCustomRedirects, + ...scribeLokiCustomRedirects ]; if (!all.includes(protocolHost)) { resolve(); return; } let instancesList = []; - if (protocol == 'tor') instancesList = [...scribeTorRedirectsChecks, ...scribeTorCustomRedirects]; + if (protocol == 'loki') instancesList = [...scribeLokiCustomRedirects]; + else if (protocol == 'i2p') instancesList = [...scribeI2pCustomRedirects]; + else if (protocol == 'tor') instancesList = [...scribeTorRedirectsChecks, ...scribeTorCustomRedirects]; if ((instancesList.length === 0 && protocolFallback) || protocol == 'normal') { instancesList = [...scribeNormalRedirectsChecks, ...scribeNormalCustomRedirects]; } @@ -173,6 +187,10 @@ function initDefaults() { scribeTorRedirectsChecks: [...redirects.scribe.tor], scribeTorCustomRedirects: [], + + scribeI2pCustomRedirects: [], + + scribeLokiCustomRedirects: [] }, () => resolve()) }) }) -- cgit 1.4.1