about summary refs log tree commit diff stats
path: root/src/assets
diff options
context:
space:
mode:
Diffstat (limited to 'src/assets')
-rw-r--r--src/assets/javascripts/helpers/common.js37
-rw-r--r--src/assets/javascripts/helpers/imgur.js2
-rw-r--r--src/assets/javascripts/helpers/instagram.js6
-rw-r--r--src/assets/javascripts/helpers/lbry.js2
-rw-r--r--src/assets/javascripts/helpers/medium.js2
-rw-r--r--src/assets/javascripts/helpers/peertube.js4
-rw-r--r--src/assets/javascripts/helpers/reddit.js4
-rw-r--r--src/assets/javascripts/helpers/search.js2
-rw-r--r--src/assets/javascripts/helpers/sendTargets.js2
-rw-r--r--src/assets/javascripts/helpers/spotify.js2
-rw-r--r--src/assets/javascripts/helpers/translate/translate.js4
-rw-r--r--src/assets/javascripts/helpers/twitter.js8
-rw-r--r--src/assets/javascripts/helpers/wikipedia.js2
-rw-r--r--src/assets/javascripts/helpers/youtube/youtube.js8
14 files changed, 34 insertions, 51 deletions
diff --git a/src/assets/javascripts/helpers/common.js b/src/assets/javascripts/helpers/common.js
index 961f5bd6..f3982cd6 100644
--- a/src/assets/javascripts/helpers/common.js
+++ b/src/assets/javascripts/helpers/common.js
@@ -12,28 +12,6 @@ function getRandomInstance(instances) {
   return instances[~~(instances.length * Math.random())];
 }
 
-async function getRandomOnlineInstance(instances) {
-  const shuffledInstances = instances.sort((a, b) => 0.5 - Math.random())
-
-  for (let ins of shuffledInstances) {
-    try {
-      const res = await fetch(ins, { redirect: 'follow' })
-      console.log(res)
-      if (res.status >= 200 && res.status < 300)
-        return ins // instance seems healthy!
-      else
-        console.warn(`Instance ${ins} seems offline (status code: ${res.status}). we try another one`)
-
-    } catch (err) {
-      console.warn(`Instance ${ins} seems offline. we try another one`)
-    }
-  }
-
-  // everything offline? -> unlikely
-  // rather respond with any entry instead of breaking the functionality
-  return shuffledInstances[0]
-}
-
 async function wholeInit() {
   await youtubeHelper.init();
   await twitterHelper.init();
@@ -85,6 +63,11 @@ function isFirefox() {
   return typeof InstallTrigger !== "undefined";
 }
 
+function protocolHost(url) {
+  if (url.username && url.password) return `${url.protocol}//${url.username}:${url.password}@${url.host}`;
+  return `${url.protocol}//${url.host}`;
+}
+
 function processDefaultCustomInstances(
   name,
   protocol,
@@ -173,10 +156,10 @@ function processDefaultCustomInstances(
     event.preventDefault();
     let nameCustomInstanceInput = document.getElementById(`${name}-${protocol}-custom-instance`);
     let url = new URL(nameCustomInstanceInput.value);
-    let protocolHost = `${url.protocol}//${url.host}`;
-    if (nameCustomInstanceInput.validity.valid && !nameHelper.getRedirects()[name][protocol].includes(protocolHost)) {
-      if (!nameCustomInstances.includes(protocolHost)) {
-        nameCustomInstances.push(protocolHost)
+    let protocolHostVar = protocolHost(url);
+    if (nameCustomInstanceInput.validity.valid && !nameHelper.getRedirects()[name][protocol].includes(protocolHostVar)) {
+      if (!nameCustomInstances.includes(protocolHostVar)) {
+        nameCustomInstances.push(protocolHostVar)
         setNameCustomRedirects(nameCustomInstances);
         nameCustomInstanceInput.value = '';
       }
@@ -187,8 +170,8 @@ function processDefaultCustomInstances(
 
 export default {
   getRandomInstance,
-  getRandomOnlineInstance,
   updateInstances,
+  protocolHost,
   isFirefox,
   processDefaultCustomInstances,
 };
diff --git a/src/assets/javascripts/helpers/imgur.js b/src/assets/javascripts/helpers/imgur.js
index 407a7586..7227bab6 100644
--- a/src/assets/javascripts/helpers/imgur.js
+++ b/src/assets/javascripts/helpers/imgur.js
@@ -120,7 +120,7 @@ function redirect(url, type) {
 }
 
 function switchInstance(url) {
-    let protocolHost = `${url.protocol}//${url.host}`;
+    let protocolHost = commonHelper.protocolHost(url);
 
     let imgurList = [
         ...redirects.rimgo.normal,
diff --git a/src/assets/javascripts/helpers/instagram.js b/src/assets/javascripts/helpers/instagram.js
index bae8147e..eedf1475 100644
--- a/src/assets/javascripts/helpers/instagram.js
+++ b/src/assets/javascripts/helpers/instagram.js
@@ -121,7 +121,7 @@ function redirect(url, type, initiator) {
 }
 
 function switchInstance(url) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
 
   let instagramList = [
     ...redirects.bibliogram.normal,
@@ -147,7 +147,7 @@ function switchInstance(url) {
 }
 
 function isBibliogram(url) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
   return [
     ...redirects.bibliogram.normal,
     ...redirects.bibliogram.tor,
@@ -160,7 +160,7 @@ let instancesCookies;
 let theme;
 let applyThemeToSites;
 function initBibliogramCookies(url) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
   browser.cookies.get(
     {
       url: protocolHost,
diff --git a/src/assets/javascripts/helpers/lbry.js b/src/assets/javascripts/helpers/lbry.js
index 56857f17..21779fa9 100644
--- a/src/assets/javascripts/helpers/lbry.js
+++ b/src/assets/javascripts/helpers/lbry.js
@@ -97,7 +97,7 @@ function setProtocol(val) {
 }
 
 function switchInstance(url) {
-    let protocolHost = `${url.protocol}//${url.host}`;
+    let protocolHost = commonHelper.protocolHost(url);
 
     let librarianList = [
         ...redirects.librarian.normal,
diff --git a/src/assets/javascripts/helpers/medium.js b/src/assets/javascripts/helpers/medium.js
index 02d5a9b6..dc044505 100644
--- a/src/assets/javascripts/helpers/medium.js
+++ b/src/assets/javascripts/helpers/medium.js
@@ -135,7 +135,7 @@ function redirect(url, type, initiator) {
 }
 
 function switchInstance(url) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
 
   let mediumList = [
     ...redirects.scribe.tor,
diff --git a/src/assets/javascripts/helpers/peertube.js b/src/assets/javascripts/helpers/peertube.js
index a68eddba..c9aae80c 100644
--- a/src/assets/javascripts/helpers/peertube.js
+++ b/src/assets/javascripts/helpers/peertube.js
@@ -92,7 +92,7 @@ function setProtocol(val) {
 }
 
 function switchInstance(url) {
-    let protocolHost = `${url.protocol}//${url.host}`;
+    let protocolHost = commonHelper.protocolHost(url);
 
     let simpleertubeList = [
         ...redirects.simpleertube.normal,
@@ -119,7 +119,7 @@ function switchInstance(url) {
 
 function redirect(url, type, initiator) {
 
-    let protocolHost = `${url.protocol}//${url.host}`;
+    let protocolHost = commonHelper.protocolHost(url);
 
     if (disable) return null;
     if (initiator && ([...redirects.simpleertube.normal, ...simpleertubeNormalCustomRedirects].includes(initiator.origin) || targets.includes(initiator.host))) return null;
diff --git a/src/assets/javascripts/helpers/reddit.js b/src/assets/javascripts/helpers/reddit.js
index 9a970a68..73f10c42 100644
--- a/src/assets/javascripts/helpers/reddit.js
+++ b/src/assets/javascripts/helpers/reddit.js
@@ -246,7 +246,7 @@ let alwaysUsePreferred;
 function redirect(url, type, initiator) {
   if (disableReddit) return null;
 
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
 
   let isTeddit = [
     ...redirects.teddit.normal,
@@ -367,7 +367,7 @@ function redirect(url, type, initiator) {
 }
 
 function switchInstance(url) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
 
   let isTeddit = [
     ...redirects.teddit.normal,
diff --git a/src/assets/javascripts/helpers/search.js b/src/assets/javascripts/helpers/search.js
index e1c3bdef..ea14ca35 100644
--- a/src/assets/javascripts/helpers/search.js
+++ b/src/assets/javascripts/helpers/search.js
@@ -270,7 +270,7 @@ function redirect(url) {
 }
 
 function switchInstance(url) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
 
   let searchList = [
     ...redirects.searx.normal,
diff --git a/src/assets/javascripts/helpers/sendTargets.js b/src/assets/javascripts/helpers/sendTargets.js
index d81aa4ee..8cfca7bb 100644
--- a/src/assets/javascripts/helpers/sendTargets.js
+++ b/src/assets/javascripts/helpers/sendTargets.js
@@ -107,7 +107,7 @@ function setProtocol(val) {
 }
 
 function switchInstance(url) {
-    let protocolHost = `${url.protocol}//${url.host}`;
+    let protocolHost = commonHelper.protocolHost(url);
 
     let sendList = [
         ...redirects.send.normal,
diff --git a/src/assets/javascripts/helpers/spotify.js b/src/assets/javascripts/helpers/spotify.js
index a4e56f77..22f596d0 100644
--- a/src/assets/javascripts/helpers/spotify.js
+++ b/src/assets/javascripts/helpers/spotify.js
@@ -91,7 +91,7 @@ function setProtocol(val) {
 }
 
 function switchInstance(url) {
-    let protocolHost = `${url.protocol}//${url.host}`;
+    let protocolHost = commonHelper.protocolHost(url);
 
     let sojuList = [
         ...redirects.soju.normal,
diff --git a/src/assets/javascripts/helpers/translate/translate.js b/src/assets/javascripts/helpers/translate/translate.js
index 24339ed7..525480eb 100644
--- a/src/assets/javascripts/helpers/translate/translate.js
+++ b/src/assets/javascripts/helpers/translate/translate.js
@@ -185,7 +185,7 @@ function setSimplyTranslateEngine(val) {
 }
 
 function isTranslateRedirects(url, type, frontend) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
 
   if (type !== "main_frame") return false;
 
@@ -271,7 +271,7 @@ function redirect(url) {
 }
 
 function switchInstance(url) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
 
   let translateList = [
     ...redirects.simplyTranslate.normal,
diff --git a/src/assets/javascripts/helpers/twitter.js b/src/assets/javascripts/helpers/twitter.js
index 5ecd244e..a8ed2cf5 100644
--- a/src/assets/javascripts/helpers/twitter.js
+++ b/src/assets/javascripts/helpers/twitter.js
@@ -103,7 +103,7 @@ function setBypassWatchOnTwitter(val) {
 let alwaysUsePreferred;
 
 function redirect(url, initiator) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
   let isNitter = [
     ...redirects.nitter.normal,
     ...redirects.nitter.tor
@@ -159,7 +159,7 @@ function redirect(url, initiator) {
 }
 
 function switchInstance(url) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
 
   let twitterList = [
     ...redirects.nitter.normal,
@@ -186,7 +186,7 @@ function switchInstance(url) {
 
 function removeXFrameOptions(e) {
   let url = new URL(e.url);
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
   let twitterList = [
     ...redirects.nitter.normal,
     ...redirects.nitter.tor,
@@ -204,7 +204,7 @@ function removeXFrameOptions(e) {
 }
 
 function isNitter(url, type) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
 
   if (type !== "main_frame" && type !== "sub_frame") return false;
 
diff --git a/src/assets/javascripts/helpers/wikipedia.js b/src/assets/javascripts/helpers/wikipedia.js
index 21263e33..5570045f 100644
--- a/src/assets/javascripts/helpers/wikipedia.js
+++ b/src/assets/javascripts/helpers/wikipedia.js
@@ -157,7 +157,7 @@ function redirect(url) {
 }
 
 function switchInstance(url) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
 
   let wikipediaList = [
     ...redirects.wikiless.normal,
diff --git a/src/assets/javascripts/helpers/youtube/youtube.js b/src/assets/javascripts/helpers/youtube/youtube.js
index 29be4915..9e88eb31 100644
--- a/src/assets/javascripts/helpers/youtube/youtube.js
+++ b/src/assets/javascripts/helpers/youtube/youtube.js
@@ -308,7 +308,7 @@ function setExceptions(val) {
 
 function isException(url) {
   for (const item of exceptions.url) {
-    let protocolHost = `${url.protocol}//${url.host}`
+    let protocolHost = commonHelper.protocolHost(url);
     console.log(item, protocolHost)
     if (item == protocolHost) return true;
   }
@@ -321,7 +321,7 @@ let alwaysUsePreferred;
 function redirect(url, details, initiator) {
   if (disable) return null;
 
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
 
   let isInvidious = [
     ...redirects.invidious.normal,
@@ -451,7 +451,7 @@ function redirect(url, details, initiator) {
 }
 
 function switchInstance(url) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
   if (
     protocol == 'normal' &&
     ![
@@ -502,7 +502,7 @@ function switchInstance(url) {
 }
 
 function isPipedorInvidious(url, type, frontend) {
-  let protocolHost = `${url.protocol}//${url.host}`;
+  let protocolHost = commonHelper.protocolHost(url);
 
   if (type !== "main_frame" && type !== "sub_frame") return false;