aboutsummaryrefslogtreecommitdiffstats
path: root/addons
diff options
context:
space:
mode:
authorMaurizio Monti <7fe82a138a5365a1fb70f0b3ae2afd10d13c5cc4@cloudflare.com>2020-08-20 09:56:19 +0200
committerMaurizio Monti <7fe82a138a5365a1fb70f0b3ae2afd10d13c5cc4@cloudflare.com>2020-08-20 09:56:19 +0200
commitb76c7220262a1a8539fbb8da151a227268420d52 (patch)
treed72ec22d77471e2584afe8ae45bb0cecd88eead9 /addons
parent24fa4b84cd605cd2c4967d78f3e5d41b7cc0fb16 (diff)
downloadcloudflare-tor-b76c7220262a1a8539fbb8da151a227268420d52.tar.lz
cloudflare-tor-b76c7220262a1a8539fbb8da151a227268420d52.tar.xz
cloudflare-tor-b76c7220262a1a8539fbb8da151a227268420d52.zip
localdb.js
Diffstat (limited to 'addons')
-rw-r--r--addons/isattlinkCR/localdb.js68
1 files changed, 67 insertions, 1 deletions
diff --git a/addons/isattlinkCR/localdb.js b/addons/isattlinkCR/localdb.js
index 945c9b46..d23904c1 100644
--- a/addons/isattlinkCR/localdb.js
+++ b/addons/isattlinkCR/localdb.js
@@ -1 +1,67 @@
-. \ No newline at end of file
+let irun = false;
+document.addEventListener('DOMContentLoaded', () => {
+ chrome.storage.local.get(['mul'], g => {
+ let ul = g.mul || 'eo';
+ fetch('i18n/' + ul + '.json', {
+ method: 'GET'
+ }).then(j => j.json()).then(j => {
+ document.querySelectorAll('span[tek]').forEach(x => {
+ x.innerText = j[x.getAttribute('tek')];
+ });
+ document.body.style.display = 'block';
+ });
+ });
+});
+document.getElementById('f').addEventListener('change', e => {
+ let ff = e.target.files[0];
+ if (ff) {
+ let r = new FileReader();
+ r.addEventListener('load', e => {
+ if (ff.size > 4) {
+ let g = e.target.result.replace(/(?:\r\n|\r|\n)/g, "\n").split("\n");
+ if (g.length > 0) {
+ chrome.storage.local.get(['ldb'], gs => {
+ irun = true;
+ let cnt0, cnt1 = 0,
+ gc = 1,
+ db = JSON.parse(gs.ldb || '[]');
+ cnt0 = db.length;
+ document.getElementById('pbr').max = g.length;
+ g.forEach(x => {
+ document.getElementById('pbr').value = gc;
+ gc++;
+ if (/^([0-9a-z.-]{4,400})\.([a-z]{2,40})$/.test(x) && !db.includes(x)) {
+ db.push(x);
+ }
+ });
+ g = null;
+ cnt1 = db.length;
+ if (cnt1 != cnt0) {
+ chrome.storage.local.set({
+ 'ldb': JSON.stringify(db)
+ });
+ }
+ chrome.runtime.sendMessage('dbmode,rl', () => {
+ alert(document.querySelector('span[tek=opxdone]').innerText + "\n\n" + cnt0 + " -> " + cnt1);
+ location.reload();
+ });
+ });
+ }
+ }
+ });
+ r.readAsText(ff);
+ }
+});
+document.getElementById('ldb_i').addEventListener('click', () => {
+ if (!irun) {
+ document.getElementById('f').click();
+ }
+});
+document.getElementById('ldb_c').addEventListener('click', () => {
+ if (!irun) {
+ chrome.runtime.sendMessage('dbmode,cl', () => {
+ alert(document.querySelector('span[tek=opxdone]').innerText);
+ location.reload();
+ });
+ }
+}); \ No newline at end of file