about summary refs log tree commit diff stats
path: root/src/assets
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2022-04-16 16:06:32 +0300
committerManeraKai <manerakai@protonmail.com>2022-04-16 16:06:32 +0300
commitd308102880553b955f74e785032cec5c2b009116 (patch)
treedc023f52420f4c633785def94a67e49e8b7e0e21 /src/assets
parentUpdated README (diff)
downloadlibredirect-d308102880553b955f74e785032cec5c2b009116.zip
Added cloudflare detection #99
Diffstat (limited to 'src/assets')
-rw-r--r--src/assets/javascripts/helpers/common.js20
1 files changed, 18 insertions, 2 deletions
diff --git a/src/assets/javascripts/helpers/common.js b/src/assets/javascripts/helpers/common.js
index 6dd0e7fb..287604d2 100644
--- a/src/assets/javascripts/helpers/common.js
+++ b/src/assets/javascripts/helpers/common.js
@@ -15,6 +15,16 @@ function getRandomInstance(instances) {
   return instances[~~(instances.length * Math.random())];
 }
 
+let cloudflareList = [];
+async function initCloudflareList() {
+  return new Promise(resolve => {
+    fetch('/instances/cloudflare.json').then(response => response.text()).then(data => {
+      console.log(data);
+      cloudflareList = data;
+      resolve();
+    })
+  });
+}
 async function wholeInit() {
   await youtubeHelper.init();
   await twitterHelper.init();
@@ -26,6 +36,7 @@ async function wholeInit() {
   await mediumHelper.init();
   await sendTargetsHelper.init();
   await tikTokHelper.init();
+  await initCloudflareList();
 }
 
 async function updateInstances() {
@@ -79,7 +90,9 @@ function protocolHost(url) {
   return `${url.protocol}//${url.host}`;
 }
 
-function processDefaultCustomInstances(
+
+
+async function processDefaultCustomInstances(
   name,
   protocol,
   nameHelper,
@@ -95,6 +108,8 @@ function processDefaultCustomInstances(
   let nameCheckListElement = nameProtocolElement.getElementsByClassName('checklist')[0];
   let nameDefaultRedirects;
 
+  await initCloudflareList();
+
   function calcNameCheckBoxes() {
     let isTrue = true;
     for (const item of nameHelper.getRedirects()[name][protocol])
@@ -109,10 +124,11 @@ function processDefaultCustomInstances(
 
   nameDefaultRedirects = getNameRedirectsChecks();
 
+  console.log('cloudflareList', cloudflareList)
   nameCheckListElement.innerHTML =
     [
       `<div><x data-localise="__MSG_toggleAll__">Toggle All</x><input type="checkbox" class="toogle-all" /></div>`,
-      ...nameHelper.getRedirects()[name][protocol].map((x) => `<div>${x}<input type="checkbox" class="${x}" /></div>`),
+      ...nameHelper.getRedirects()[name][protocol].map(x => `<div><x>${x}${cloudflareList.includes(x) ? ' <span style="color:red;">cloudflare</span>' : ''}</x><input type="checkbox" class="${x}" /></div>`),
     ].join('\n<hr>\n');
 
   localise.localisePage();