mirror of
https://codeberg.org/crimeflare/cloudflare-tor
synced 2024-12-22 15:40:32 +00:00
Compare commits
66 Commits
621e86f526
...
9db670be26
Author | SHA1 | Date | |
---|---|---|---|
|
9db670be26 | ||
|
ab4a7083fd | ||
|
ccea789830 | ||
|
3f7ce53364 | ||
|
ba55495f75 | ||
|
30b4db9cff | ||
|
ab91dbd967 | ||
|
14e0231dfb | ||
|
7228bd7fc2 | ||
|
031a93f888 | ||
|
d8f038a9d9 | ||
|
99aca4f9a8 | ||
|
1eff83857a | ||
|
07250ea427 | ||
|
69a0459489 | ||
|
b76c722026 | ||
|
24fa4b84cd | ||
|
25258e4532 | ||
|
5b9c390f1f | ||
|
76172eab96 | ||
|
b37f0d0705 | ||
|
f681cf9621 | ||
|
920b6f12ad | ||
|
11056eaa60 | ||
|
d41ce59413 | ||
|
210e362e11 | ||
|
97af1da52d | ||
|
10c86b5235 | ||
|
3e644d5263 | ||
|
84664846e2 | ||
|
9a10529e21 | ||
|
5e7ed5e645 | ||
|
8275646ae6 | ||
|
1f1bdb9255 | ||
|
ea2619f20b | ||
|
2d085c6faa | ||
|
847c73a563 | ||
|
b912f44a6d | ||
|
8f09c3f25c | ||
|
4eb1f7c39c | ||
|
5e40c437e4 | ||
|
d91d1458a8 | ||
|
529d06fb56 | ||
|
3fc44bb014 | ||
|
af22ae1903 | ||
|
09bd606aa2 | ||
|
e571fe4165 | ||
|
2b0d7b7311 | ||
|
fbd28e804c | ||
|
856d76a8cb | ||
|
a7100f5e7f | ||
|
6851fa8cfe | ||
|
f19352948c | ||
|
8575ee814f | ||
|
397934cb20 | ||
|
fbed9456b6 | ||
|
7c6b4edd4a | ||
|
3bcd8c0ef0 | ||
|
a0d04792c3 | ||
|
7461b743f7 | ||
|
a6c5e7c238 | ||
|
81906526df | ||
|
e2241098dc | ||
|
5fe12eff35 | ||
|
8fc017cb56 | ||
|
9e45e5843e |
@ -1,4 +1,4 @@
|
||||
### Aldonaĵo por Firefox
|
||||
### Aldonaĵo por Firefox/Chromium
|
||||
|
||||
|
||||
- Funkcias plej bone kun plej nova [Tor Browser](https://www.torproject.org/download/)(rekomendas) aŭ [Mozilla Firefox _ESR_](https://portableapps.com/apps/internet/firefox-portable-esr)
|
||||
@ -7,7 +7,7 @@
|
||||
|
||||
-----
|
||||
|
||||
### Addons for Firefox
|
||||
### Addons for Firefox/Chromium
|
||||
|
||||
|
||||
- Works best with latest [Tor Browser](https://www.torproject.org/download/)(recommend) or [Mozilla Firefox _ESR_](https://portableapps.com/apps/internet/firefox-portable-esr)
|
||||
|
14
addons/bcmaCR/README.md
Normal file
14
addons/bcmaCR/README.md
Normal file
@ -0,0 +1,14 @@
|
||||
[//]: # (do not edit me; start)
|
||||
|
||||
Versio: _1.0.4.3_
|
||||
|
||||
[//]: # (do not edit me; end)
|
||||
|
||||
|
||||
- [Pli informo / Elŝuto](../../subfiles/about.bcma.md)
|
||||
- Malgarantio: Ĉi tio NE estas spegulo de suprenflua deponejo. Sinkronigado eble prokrastas.
|
||||
|
||||
-----
|
||||
|
||||
- [More information / Download](../../subfiles/about.bcma.md)
|
||||
- Disclaimer: This is NOT a mirror of upstream repository. Synchronization may be delayed.
|
1386
addons/bcmaCR/cf.js
Normal file
1386
addons/bcmaCR/cf.js
Normal file
File diff suppressed because one or more lines are too long
154
addons/bcmaCR/cg.html
Normal file
154
addons/bcmaCR/cg.html
Normal file
@ -0,0 +1,154 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
|
||||
</head>
|
||||
<body>
|
||||
<br>
|
||||
<b>📢 <span transk="actnow"></span></b><br>
|
||||
<label><input type="radio" id="ta0" name="ta" value="0"> <span transk="actt0"></span></label><br>
|
||||
<label><input type="radio" id="ta1" name="ta" value="1"> <span transk="actt1"></span></label><br>
|
||||
<label><input type="radio" id="ta2" name="ta" value="2"> <span transk="actt2"></span></label><br>
|
||||
<label><input type="radio" id="ta4" name="ta" value="4"> <span transk="actt4"></span></label><br>
|
||||
<label><input type="radio" id="ta3" name="ta" value="3"> <span transk="actt3"></span></label><br>
|
||||
<br>
|
||||
<label><input type="checkbox" id="csa1"> <span transk="csuse1"></span></label><br>
|
||||
<label><input type="checkbox" id="csa2"> <span transk="csuse2"></span></label><br>
|
||||
<br> <br>
|
||||
<b>🖇 <span transk="uralturl"></span></b><br>
|
||||
<span transk="ururepl"></span><br>
|
||||
<input type="text" id="vau" spellcheck="false" value="" placeholder="ekz. https://mia.ekzemplo.net/proxy?url=%%URL%%">
|
||||
<button type="button" id="aus"> <span transk="apply"></span> </button>
|
||||
<br> <br>
|
||||
<b>🔔 <span transk="notify"></span> (Esperanto)</b><br>
|
||||
<label><input type="checkbox" id="nnf1"> <span transk="notif1"></span></label><br>
|
||||
<label><input type="checkbox" id="nnf2"> <span transk="notif2"></span></label>
|
||||
<br> <br>
|
||||
<b>📒 <span transk="urdomco"></span></b><br>
|
||||
<textarea cols="50" rows="10" id="t" wrap="off" spellcheck="false" placeholder="Cloudflare domajnoj" readonly></textarea>
|
||||
<br>
|
||||
<button type="button" id="exp" disabled> <span transk="export"></span> </button>
|
||||
<button type="button" id="clr"> <span transk="clear"></span> </button>
|
||||
<br> <br>
|
||||
<b>🏳 <span transk="urwhite"></span></b><br>
|
||||
<textarea cols="50" rows="10" id="g" wrap="off" spellcheck="false" placeholder="ekzemplo.com"></textarea>
|
||||
<br>
|
||||
<button type="button" id="ign"> <span transk="apply"></span> </button>
|
||||
<br> <br>
|
||||
<b>💬 Internacio</b><br>
|
||||
<select id="myul">
|
||||
<option value="" selected> --- </option>
|
||||
<option value="af">af, Afrikaans</option>
|
||||
<option value="am">am, አማርኛ</option>
|
||||
<option value="ar">ar, العربية</option>
|
||||
<option value="az">az, Azərbaycanca</option>
|
||||
<option value="be">be, Беларуская</option>
|
||||
<option value="bg">bg, Български</option>
|
||||
<option value="bn">bn, বাংলা</option>
|
||||
<option value="bs">bs, босански</option>
|
||||
<option value="ca">ca, Català</option>
|
||||
<option value="cb">cb, Cebuan</option>
|
||||
<option value="co">co, Corsu</option>
|
||||
<option value="cs">cs, Čeština</option>
|
||||
<option value="cy">cy, Cymraeg</option>
|
||||
<option value="da">da, Dansk</option>
|
||||
<option value="de">de, Deutsch</option>
|
||||
<option value="el">el, Ελληνικά</option>
|
||||
<option value="eo">eo, Esperanto 🏆</option>
|
||||
<option value="es">es, Español</option>
|
||||
<option value="et">et, Eesti</option>
|
||||
<option value="eu">eu, Euskara</option>
|
||||
<option value="fa">fa, فارسی</option>
|
||||
<option value="fi">fi, Suomi</option>
|
||||
<option value="fl">fl, Wikang Filipino</option>
|
||||
<option value="fr">fr, Français</option>
|
||||
<option value="fy">fy, Frisian</option>
|
||||
<option value="ga">ga, Gaeilge</option>
|
||||
<option value="gd">gd, Gàidhlig</option>
|
||||
<option value="gl">gl, Galego</option>
|
||||
<option value="gu">gu, Gujarātī</option>
|
||||
<option value="ha">ha, Harshen</option>
|
||||
<option value="he">he, עברית</option>
|
||||
<option value="hi">hi, हिंदी</option>
|
||||
<option value="hm">hm, lus Hmoob</option>
|
||||
<option value="hr">hr, Hrvatski</option>
|
||||
<option value="ht">ht, Kreyòl</option>
|
||||
<option value="hu">hu, Magyar</option>
|
||||
<option value="hy">hy, հայերեն</option>
|
||||
<option value="id">id, Indonesia</option>
|
||||
<option value="ig">ig, Asụsụ Igbo</option>
|
||||
<option value="is">is, Íslenska</option>
|
||||
<option value="it">it, Italiano</option>
|
||||
<option value="ja">ja, 日本語</option>
|
||||
<option value="jv">jv, ꦧꦱꦗꦮ</option>
|
||||
<option value="ka">ka, ქართული</option>
|
||||
<option value="kk">kk, Қазақша</option>
|
||||
<option value="km">km, ភាសាខ្មែរ</option>
|
||||
<option value="kn">kn, ಕನ್ನಡ</option>
|
||||
<option value="ko">ko, 힌디어</option>
|
||||
<option value="ku">ku, کوردی</option>
|
||||
<option value="ky">ky, Кыргызча</option>
|
||||
<option value="la">la, Latīna</option>
|
||||
<option value="lb">lb, Lëtzebuergesch</option>
|
||||
<option value="lo">lo, ພາສາລາວ</option>
|
||||
<option value="lt">lt, Lietuvių</option>
|
||||
<option value="lv">lv, Latviešu</option>
|
||||
<option value="mg">mg, Malagasy</option>
|
||||
<option value="mi">mi, Māori</option>
|
||||
<option value="mk">mk, македонски</option>
|
||||
<option value="ml">ml, മലയാളം</option>
|
||||
<option value="mn">mn, монгол</option>
|
||||
<option value="mr">mr, मराठी</option>
|
||||
<option value="ms">ms, bahasa Melayu</option>
|
||||
<option value="mt">mt, Malti</option>
|
||||
<option value="ne">ne, नेपाली</option>
|
||||
<option value="nl">nl, Nederlands</option>
|
||||
<option value="no">no, Norsk Bokmål</option>
|
||||
<option value="ny">ny, Chichewa</option>
|
||||
<option value="or">or, ଓଡ଼ିଆ</option>
|
||||
<option value="pa">pa, ਪੰਜਾਬੀ</option>
|
||||
<option value="pl">pl, Polski</option>
|
||||
<option value="ps">ps, پښتو</option>
|
||||
<option value="pt">pt, Português</option>
|
||||
<option value="ro">ro, Română</option>
|
||||
<option value="ru">ru, Русский</option>
|
||||
<option value="rw">rw, Kinyarwanda</option>
|
||||
<option value="sd">sd, سنڌي</option>
|
||||
<option value="si">si, සිංහල</option>
|
||||
<option value="sk">sk, Slovenčina</option>
|
||||
<option value="sl">sl, Slovenščina</option>
|
||||
<option value="sm">sm, Gagana Sāmoa</option>
|
||||
<option value="sn">sn, chiShona</option>
|
||||
<option value="so">so, Af Soomaali</option>
|
||||
<option value="sq">sq, Shqip</option>
|
||||
<option value="sr">sr, Српски</option>
|
||||
<option value="st">st, Sesotho</option>
|
||||
<option value="su">su, Basa Sunda</option>
|
||||
<option value="sv">sv, Svenska</option>
|
||||
<option value="sw">sw, Kiswahili</option>
|
||||
<option value="ta">ta, தமிழ்</option>
|
||||
<option value="te">te, తెలుగు</option>
|
||||
<option value="tg">tg, тоҷикӣ</option>
|
||||
<option value="th">th, ภาษาไทย</option>
|
||||
<option value="tk">tk, Türkmençe</option>
|
||||
<option value="tr">tr, Türkçe</option>
|
||||
<option value="tt">tt, татар теле</option>
|
||||
<option value="ug">ug, ئۇيغۇرچە</option>
|
||||
<option value="uk">uk, Українська</option>
|
||||
<option value="ur">ur, اردو</option>
|
||||
<option value="vi">vi, Tiếng Việt</option>
|
||||
<option value="xh">xh, isiXhosa</option>
|
||||
<option value="yi">yi, אידיש</option>
|
||||
<option value="yo">yo, Èdè Yorùbá</option>
|
||||
<option value="zh">zh, 汉语</option>
|
||||
<option value="zu">zu, isiZulu</option>
|
||||
</select>
|
||||
<br> <br>
|
||||
<b>📚 <span transk="useflik"></span></b><br>
|
||||
<ul>
|
||||
<li><a href="https://crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/ss/tool_ismitm.php" target="_blank"><span transk="tsmitm"></span></a></li>
|
||||
<li><a href="https://codeberg.org/crimeflare/cloudflare-tor" target="_blank">"The Great Cloudwall"</a></li>
|
||||
</ul>
|
||||
<br>
|
||||
<script src="cg.js"></script>
|
||||
</body>
|
||||
</html>
|
108
addons/bcmaCR/cg.js
Normal file
108
addons/bcmaCR/cg.js
Normal file
@ -0,0 +1,108 @@
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
chrome.runtime.sendMessage(['cf'], (r) => {
|
||||
fetch('i18n/' + r[5] + '.json', {
|
||||
method: 'GET'
|
||||
}).then(j => j.json()).then(j => {
|
||||
document.querySelectorAll('span[transk]').forEach(x => {
|
||||
x.innerText = j[x.getAttribute('transk')];
|
||||
});
|
||||
});
|
||||
document.getElementById('t').value = JSON.parse(r[0]).join("\n");
|
||||
document.getElementById('g').value = JSON.parse(r[1]).join("\n");
|
||||
document.getElementById('vau').value = r[3];
|
||||
document.getElementById('nnf1').checked = r[4][0];
|
||||
document.getElementById('nnf2').checked = r[4][1];
|
||||
document.getElementById('csa1').checked = r[4][2];
|
||||
document.getElementById('csa2').checked = r[4][3];
|
||||
switch (r[2]) {
|
||||
case 0:
|
||||
document.getElementById('ta0').checked = true;
|
||||
document.getElementById('ta1').checked = false;
|
||||
document.getElementById('ta2').checked = false;
|
||||
document.getElementById('ta3').checked = false;
|
||||
document.getElementById('ta4').checked = false;
|
||||
break;
|
||||
case 1:
|
||||
document.getElementById('ta0').checked = false;
|
||||
document.getElementById('ta1').checked = true;
|
||||
document.getElementById('ta2').checked = false;
|
||||
document.getElementById('ta3').checked = false;
|
||||
document.getElementById('ta4').checked = false;
|
||||
break;
|
||||
case 3:
|
||||
document.getElementById('ta0').checked = false;
|
||||
document.getElementById('ta1').checked = false;
|
||||
document.getElementById('ta2').checked = false;
|
||||
document.getElementById('ta3').checked = true;
|
||||
document.getElementById('ta4').checked = false;
|
||||
break;
|
||||
case 4:
|
||||
document.getElementById('ta0').checked = false;
|
||||
document.getElementById('ta1').checked = false;
|
||||
document.getElementById('ta2').checked = false;
|
||||
document.getElementById('ta3').checked = false;
|
||||
document.getElementById('ta4').checked = true;
|
||||
break;
|
||||
default:
|
||||
document.getElementById('ta0').checked = false;
|
||||
document.getElementById('ta1').checked = false;
|
||||
document.getElementById('ta2').checked = true;
|
||||
document.getElementById('ta3').checked = false;
|
||||
document.getElementById('ta4').checked = false;
|
||||
break;
|
||||
}
|
||||
});
|
||||
document.getElementById('aus').addEventListener('click', function () {
|
||||
chrome.runtime.sendMessage(['au', document.getElementById('vau').value]);
|
||||
});
|
||||
document.getElementById('clr').addEventListener('click', () => {
|
||||
chrome.runtime.sendMessage(['dy']);
|
||||
document.getElementById('t').value = '';
|
||||
});
|
||||
document.getElementById('nnf1').addEventListener('click', function () {
|
||||
chrome.runtime.sendMessage(['nnf', '1', (this.checked ? true : false)]);
|
||||
});
|
||||
document.getElementById('nnf2').addEventListener('click', function () {
|
||||
chrome.runtime.sendMessage(['nnf', '2', (this.checked ? true : false)]);
|
||||
});
|
||||
document.getElementById('csa1').addEventListener('click', function () {
|
||||
chrome.runtime.sendMessage(['csa', '1', (this.checked ? true : false)]);
|
||||
});
|
||||
document.getElementById('csa2').addEventListener('click', function () {
|
||||
chrome.runtime.sendMessage(['csa', '2', (this.checked ? true : false)]);
|
||||
});
|
||||
document.getElementById('ta0').addEventListener('click', function () {
|
||||
if (this.checked) {
|
||||
chrome.runtime.sendMessage(['ta', '0']);
|
||||
}
|
||||
});
|
||||
document.getElementById('ta1').addEventListener('click', function () {
|
||||
if (this.checked) {
|
||||
chrome.runtime.sendMessage(['ta', '1']);
|
||||
}
|
||||
});
|
||||
document.getElementById('ta2').addEventListener('click', function () {
|
||||
if (this.checked) {
|
||||
chrome.runtime.sendMessage(['ta', '2']);
|
||||
}
|
||||
});
|
||||
document.getElementById('ta3').addEventListener('click', function () {
|
||||
if (this.checked) {
|
||||
chrome.runtime.sendMessage(['ta', '3']);
|
||||
}
|
||||
});
|
||||
document.getElementById('ta4').addEventListener('click', function () {
|
||||
if (this.checked) {
|
||||
chrome.runtime.sendMessage(['ta', '4']);
|
||||
}
|
||||
});
|
||||
document.getElementById('ign').addEventListener('click', function () {
|
||||
chrome.runtime.sendMessage(['ig', document.getElementById('g').value.split("\n")]);
|
||||
});
|
||||
document.getElementById('myul').addEventListener('change', () => {
|
||||
if (document.getElementById('myul').value != '') {
|
||||
chrome.runtime.sendMessage(['ul', document.getElementById('myul').value]);
|
||||
location.reload(true);
|
||||
}
|
||||
});
|
||||
});
|
49
addons/bcmaCR/cs.js
Normal file
49
addons/bcmaCR/cs.js
Normal file
@ -0,0 +1,49 @@
|
||||
if (document.body && !location.hostname.endsWith('.onion')) {
|
||||
chrome.runtime.onMessage.addListener((a, b, c) => {
|
||||
if (a[0] == location.hostname && a[1]) {
|
||||
if (a[2]) {
|
||||
let _tt = document.title;
|
||||
function codeBy_Sw_updateBorder() {
|
||||
if (!document.title.startsWith('[!!MITM')) {
|
||||
document.title = '[!!MITM!!]' + _tt;
|
||||
}
|
||||
document.body.style = 'border:6px dashed #' + ['e74c3c', '9b59b6', '3498db', '17a589', '196f3d', 'f4d03f', 'f39c12', 'd35400'][Math.floor(Math.random() * 8)] + ' !important';
|
||||
setTimeout(codeBy_Sw_updateBorder, 6500);
|
||||
}
|
||||
codeBy_Sw_updateBorder();
|
||||
}
|
||||
if (a[3]) {
|
||||
function codeBy_smege1001_decodeEmail(hash) {
|
||||
let decoded = '',
|
||||
hashArray = [];
|
||||
for (let hAIndex = 0; hAIndex < hash.length; hAIndex += 2) {
|
||||
hashArray.push(parseInt(hash.substring(hAIndex, hAIndex + 2), 16));
|
||||
}
|
||||
let key = hashArray[0];
|
||||
for (let index = 1; index < hashArray.length; index++) {
|
||||
decoded += String.fromCharCode(hashArray[index] ^ key);
|
||||
}
|
||||
return decoded;
|
||||
}
|
||||
document.querySelectorAll('.__cf_email__[data-cfemail]:not(a)').forEach(a => {
|
||||
let aV = a.dataset.cfemail;
|
||||
if (/^([a-f0-9]{4,})$/.test(aV)) {
|
||||
a.dataset.cfemail = '';
|
||||
a.innerText = codeBy_smege1001_decodeEmail(aV);
|
||||
}
|
||||
});
|
||||
document.querySelectorAll("a.__cf_email__[data-cfemail]").forEach(a => {
|
||||
let aV = a.dataset.cfemail;
|
||||
if (/^([a-f0-9]{4,})$/.test(aV)) {
|
||||
a.dataset.cfemail = '';
|
||||
a.innerText = codeBy_smege1001_decodeEmail(aV);
|
||||
a.href = 'mailto:' + a.innerText;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
c(true);
|
||||
return;
|
||||
});
|
||||
chrome.runtime.sendMessage(['cs', location.hostname]);
|
||||
}
|
48
addons/bcmaCR/manifest.json
Normal file
48
addons/bcmaCR/manifest.json
Normal file
@ -0,0 +1,48 @@
|
||||
{
|
||||
"manifest_version": 2,
|
||||
"name": "Bloku Cloudflaron MITM-Atakon",
|
||||
"version": "1.0.4.3",
|
||||
"minimum_chrome_version": "68",
|
||||
"homepage_url": "https://crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/",
|
||||
"author": "Crimeflare",
|
||||
"incognito": "split",
|
||||
"permissions": [
|
||||
"<all_urls>",
|
||||
"activeTab",
|
||||
"tabs",
|
||||
"webRequest",
|
||||
"webRequestBlocking",
|
||||
"webNavigation",
|
||||
"notifications",
|
||||
"storage",
|
||||
"unlimitedStorage"
|
||||
],
|
||||
"icons": {
|
||||
"72": "icons/72.png"
|
||||
},
|
||||
"background": {
|
||||
"scripts": [
|
||||
"cf.js"
|
||||
]
|
||||
},
|
||||
"options_ui": {
|
||||
"page": "cg.html"
|
||||
},
|
||||
"browser_action": {
|
||||
"default_icon": {
|
||||
"32": "icons/cf_0.png"
|
||||
}
|
||||
},
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": [
|
||||
"http://*/*",
|
||||
"https://*/*"
|
||||
],
|
||||
"js": [
|
||||
"cs.js"
|
||||
],
|
||||
"run_at": "document_end"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
[//]: # (do not edit me; start)
|
||||
|
||||
Versio: _1.0.4.2_
|
||||
Versio: _1.0.4.3_
|
||||
|
||||
[//]: # (do not edit me; end)
|
||||
|
||||
|
@ -37,38 +37,110 @@
|
||||
<b>💬 Internacio</b><br>
|
||||
<select id="myul">
|
||||
<option value="" selected> --- </option>
|
||||
<option value="ar">العربية</option>
|
||||
<option value="bn">বাংলা</option>
|
||||
<option value="de">Deutsch</option>
|
||||
<option value="eo">Esperanto 🏆</option>
|
||||
<option value="es">Español</option>
|
||||
<option value="fa">فارسی</option>
|
||||
<option value="fr">Français</option>
|
||||
<option value="gu">Gujarātī</option>
|
||||
<option value="ha">Harshen</option>
|
||||
<option value="hi">हिंदी</option>
|
||||
<option value="id">Indonesia</option>
|
||||
<option value="it">Italiano</option>
|
||||
<option value="ja">日本語</option>
|
||||
<option value="jv">ꦧꦱꦗꦮ</option>
|
||||
<option value="ko">힌디어</option>
|
||||
<option value="mr">मराठी</option>
|
||||
<option value="ms">bahasa Melayu</option>
|
||||
<option value="nl">Nederlands</option>
|
||||
<option value="pa">ਪੰਜਾਬੀ</option>
|
||||
<option value="pl">Polski</option>
|
||||
<option value="pt">Português</option>
|
||||
<option value="ru">Русский</option>
|
||||
<option value="sv">Svenska</option>
|
||||
<option value="sw">Kiswahili</option>
|
||||
<option value="ta">தமிழ்</option>
|
||||
<option value="te">తెలుగు</option>
|
||||
<option value="th">ภาษาไทย</option>
|
||||
<option value="tr">Türkçe</option>
|
||||
<option value="uk">Українська</option>
|
||||
<option value="ur">اردو</option>
|
||||
<option value="vi">Tiếng Việt</option>
|
||||
<option value="zh">中文</option>
|
||||
<option value="af">af, Afrikaans</option>
|
||||
<option value="am">am, አማርኛ</option>
|
||||
<option value="ar">ar, العربية</option>
|
||||
<option value="az">az, Azərbaycanca</option>
|
||||
<option value="be">be, Беларуская</option>
|
||||
<option value="bg">bg, Български</option>
|
||||
<option value="bn">bn, বাংলা</option>
|
||||
<option value="bs">bs, босански</option>
|
||||
<option value="ca">ca, Català</option>
|
||||
<option value="cb">cb, Cebuan</option>
|
||||
<option value="co">co, Corsu</option>
|
||||
<option value="cs">cs, Čeština</option>
|
||||
<option value="cy">cy, Cymraeg</option>
|
||||
<option value="da">da, Dansk</option>
|
||||
<option value="de">de, Deutsch</option>
|
||||
<option value="el">el, Ελληνικά</option>
|
||||
<option value="eo">eo, Esperanto 🏆</option>
|
||||
<option value="es">es, Español</option>
|
||||
<option value="et">et, Eesti</option>
|
||||
<option value="eu">eu, Euskara</option>
|
||||
<option value="fa">fa, فارسی</option>
|
||||
<option value="fi">fi, Suomi</option>
|
||||
<option value="fl">fl, Wikang Filipino</option>
|
||||
<option value="fr">fr, Français</option>
|
||||
<option value="fy">fy, Frisian</option>
|
||||
<option value="ga">ga, Gaeilge</option>
|
||||
<option value="gd">gd, Gàidhlig</option>
|
||||
<option value="gl">gl, Galego</option>
|
||||
<option value="gu">gu, Gujarātī</option>
|
||||
<option value="ha">ha, Harshen</option>
|
||||
<option value="he">he, עברית</option>
|
||||
<option value="hi">hi, हिंदी</option>
|
||||
<option value="hm">hm, lus Hmoob</option>
|
||||
<option value="hr">hr, Hrvatski</option>
|
||||
<option value="ht">ht, Kreyòl</option>
|
||||
<option value="hu">hu, Magyar</option>
|
||||
<option value="hy">hy, հայերեն</option>
|
||||
<option value="id">id, Indonesia</option>
|
||||
<option value="ig">ig, Asụsụ Igbo</option>
|
||||
<option value="is">is, Íslenska</option>
|
||||
<option value="it">it, Italiano</option>
|
||||
<option value="ja">ja, 日本語</option>
|
||||
<option value="jv">jv, ꦧꦱꦗꦮ</option>
|
||||
<option value="ka">ka, ქართული</option>
|
||||
<option value="kk">kk, Қазақша</option>
|
||||
<option value="km">km, ភាសាខ្មែរ</option>
|
||||
<option value="kn">kn, ಕನ್ನಡ</option>
|
||||
<option value="ko">ko, 힌디어</option>
|
||||
<option value="ku">ku, کوردی</option>
|
||||
<option value="ky">ky, Кыргызча</option>
|
||||
<option value="la">la, Latīna</option>
|
||||
<option value="lb">lb, Lëtzebuergesch</option>
|
||||
<option value="lo">lo, ພາສາລາວ</option>
|
||||
<option value="lt">lt, Lietuvių</option>
|
||||
<option value="lv">lv, Latviešu</option>
|
||||
<option value="mg">mg, Malagasy</option>
|
||||
<option value="mi">mi, Māori</option>
|
||||
<option value="mk">mk, македонски</option>
|
||||
<option value="ml">ml, മലയാളം</option>
|
||||
<option value="mn">mn, монгол</option>
|
||||
<option value="mr">mr, मराठी</option>
|
||||
<option value="ms">ms, bahasa Melayu</option>
|
||||
<option value="mt">mt, Malti</option>
|
||||
<option value="ne">ne, नेपाली</option>
|
||||
<option value="nl">nl, Nederlands</option>
|
||||
<option value="no">no, Norsk Bokmål</option>
|
||||
<option value="ny">ny, Chichewa</option>
|
||||
<option value="or">or, ଓଡ଼ିଆ</option>
|
||||
<option value="pa">pa, ਪੰਜਾਬੀ</option>
|
||||
<option value="pl">pl, Polski</option>
|
||||
<option value="ps">ps, پښتو</option>
|
||||
<option value="pt">pt, Português</option>
|
||||
<option value="ro">ro, Română</option>
|
||||
<option value="ru">ru, Русский</option>
|
||||
<option value="rw">rw, Kinyarwanda</option>
|
||||
<option value="sd">sd, سنڌي</option>
|
||||
<option value="si">si, සිංහල</option>
|
||||
<option value="sk">sk, Slovenčina</option>
|
||||
<option value="sl">sl, Slovenščina</option>
|
||||
<option value="sm">sm, Gagana Sāmoa</option>
|
||||
<option value="sn">sn, chiShona</option>
|
||||
<option value="so">so, Af Soomaali</option>
|
||||
<option value="sq">sq, Shqip</option>
|
||||
<option value="sr">sr, Српски</option>
|
||||
<option value="st">st, Sesotho</option>
|
||||
<option value="su">su, Basa Sunda</option>
|
||||
<option value="sv">sv, Svenska</option>
|
||||
<option value="sw">sw, Kiswahili</option>
|
||||
<option value="ta">ta, தமிழ்</option>
|
||||
<option value="te">te, తెలుగు</option>
|
||||
<option value="tg">tg, тоҷикӣ</option>
|
||||
<option value="th">th, ภาษาไทย</option>
|
||||
<option value="tk">tk, Türkmençe</option>
|
||||
<option value="tr">tr, Türkçe</option>
|
||||
<option value="tt">tt, татар теле</option>
|
||||
<option value="ug">ug, ئۇيغۇرچە</option>
|
||||
<option value="uk">uk, Українська</option>
|
||||
<option value="ur">ur, اردو</option>
|
||||
<option value="vi">vi, Tiếng Việt</option>
|
||||
<option value="xh">xh, isiXhosa</option>
|
||||
<option value="yi">yi, אידיש</option>
|
||||
<option value="yo">yo, Èdè Yorùbá</option>
|
||||
<option value="zh">zh, 汉语</option>
|
||||
<option value="zu">zu, isiZulu</option>
|
||||
</select>
|
||||
<br> <br>
|
||||
<b>📚 <span transk="useflik"></span></b><br>
|
||||
|
@ -2,7 +2,7 @@
|
||||
"manifest_version": 2,
|
||||
"name": "Bloku Cloudflaron MITM-Atakon",
|
||||
"description": "Submetiĝu al tutmonda gvatado aŭ rezistu. La elekto estas via.",
|
||||
"version": "1.0.4.2",
|
||||
"version": "1.0.4.3",
|
||||
"homepage_url": "https://crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/",
|
||||
"author": "Crimeflare",
|
||||
"permissions": [
|
||||
|
14
addons/isattlinkCR/README.md
Normal file
14
addons/isattlinkCR/README.md
Normal file
@ -0,0 +1,14 @@
|
||||
[//]: # (do not edit me; start)
|
||||
|
||||
Versio: _1.0.2.5_
|
||||
|
||||
[//]: # (do not edit me; end)
|
||||
|
||||
|
||||
- [Pli informo / Elŝuto](../../subfiles/about.isat.md)
|
||||
- Malgarantio: Ĉi tio NE estas spegulo de suprenflua deponejo. Sinkronigado eble prokrastas.
|
||||
|
||||
-----
|
||||
|
||||
- [More information / Download](../../subfiles/about.isat.md)
|
||||
- Disclaimer: This is NOT a mirror of upstream repository. Synchronization may be delayed.
|
267
addons/isattlinkCR/bg.js
Normal file
267
addons/isattlinkCR/bg.js
Normal file
@ -0,0 +1,267 @@
|
||||
let localUse = false,
|
||||
localDB = [],
|
||||
timr, memcache = {},
|
||||
forcePurge = false,
|
||||
apiurl = 'http://api.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/_/is_antitor.php';
|
||||
/*
|
||||
chrome.storage.local.get(['cep'], g => {
|
||||
if (g.cep == 'y') {
|
||||
apiurl = 'http://api.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/_/is_antitor.php';
|
||||
} else {
|
||||
if (g.cep != 'n') {
|
||||
chrome.storage.local.set({
|
||||
'cep': 'n'
|
||||
});
|
||||
fetch('http://api.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/_/ok.php', {
|
||||
method: 'GET',
|
||||
mode: 'cors'
|
||||
}).then(r => r.text()).then(r => {
|
||||
if (r == 'ok') {
|
||||
apiurl = 'http://api.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/_/is_antitor.php';
|
||||
chrome.storage.local.set({
|
||||
'cep': 'y'
|
||||
});
|
||||
}
|
||||
}).catch(() => {});
|
||||
}
|
||||
}
|
||||
});
|
||||
*/
|
||||
function is_hostile(f) {
|
||||
if (localUse) {
|
||||
return new Promise((g, b) => {
|
||||
g(localDB.includes(f) ? true : false);
|
||||
});
|
||||
}
|
||||
return new Promise((g, b) => {
|
||||
fetch(apiurl, {
|
||||
method: 'POST',
|
||||
mode: 'cors',
|
||||
headers: {
|
||||
'Content-Type': 'application/x-www-form-urlencoded'
|
||||
},
|
||||
body: 'f=' + f
|
||||
}).then(r => r.json()).then(r => {
|
||||
if (r[0]) {
|
||||
g(r[1]);
|
||||
} else {
|
||||
b();
|
||||
}
|
||||
}).catch(b);
|
||||
});
|
||||
}
|
||||
function i_know_you(f) {
|
||||
if (!/^([a-z0-9_.-]{1,255})\.([a-z]{2,80})$/.test(f)) {
|
||||
return new Promise((g, b) => {
|
||||
g(200);
|
||||
});
|
||||
}
|
||||
let m;
|
||||
if (memcache[f] != undefined) {
|
||||
m = memcache[f];
|
||||
return new Promise((g, b) => {
|
||||
g(m);
|
||||
});
|
||||
}
|
||||
return new Promise((g, b) => {
|
||||
chrome.storage.local.get([f], (ff) => {
|
||||
if (ff[f]) {
|
||||
if (ff[f] == 'y') {
|
||||
memcache[f] = 1;
|
||||
g(1);
|
||||
} else {
|
||||
memcache[f] = -1;
|
||||
g(-1);
|
||||
}
|
||||
} else {
|
||||
g(0);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
function forget_cache() {
|
||||
chrome.storage.local.get(['ign1', 'obs', 'dbg', 'alt', 'cep', 'mul', 'opd', 'ldb'], g => {
|
||||
chrome.storage.local.clear();
|
||||
memcache = {};
|
||||
chrome.storage.local.set({
|
||||
'ign1': (g.ign1 == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'obs': (g.obs == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'dbg': (g.dbg == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'alt': (g.alt == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'cep': (g.cep == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'mul': (g.mul != undefined ? g.mul : 'eo')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'opd': (g.opd == 'n' ? 'n' : 'y')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'ldb': (g.ldb != undefined ? g.ldb : '[]')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'lastU': Math.round((new Date()).getTime() / 1000)
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'lastV': (chrome.runtime.getManifest()).version
|
||||
});
|
||||
});
|
||||
clearTimeout(timr);
|
||||
timr = setTimeout(function () {
|
||||
forget_cache();
|
||||
}, 1814400000);
|
||||
}
|
||||
chrome.storage.local.get(['lastU', 'lastV', 'ldb', 'opd'], g => {
|
||||
localUse = (g.opd == 'n') ? true : false;
|
||||
localDB = JSON.parse(g.ldb || '[]');
|
||||
if (g.lastU) {
|
||||
if (Math.abs(Math.round((new Date()).getTime() / 1000) - g.lastU) > 1814400) {
|
||||
chrome.storage.local.get(['ign1', 'obs', 'dbg', 'alt', 'cep', 'mul', 'opd', 'ldb'], g => {
|
||||
chrome.storage.local.clear();
|
||||
memcache = {};
|
||||
chrome.storage.local.set({
|
||||
'ign1': (g.ign1 == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'obs': (g.obs == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'dbg': (g.dbg == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'alt': (g.alt == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'cep': (g.cep == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'mul': (g.mul != undefined ? g.mul : 'eo')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'opd': (g.opd == 'n' ? 'n' : 'y')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'ldb': (g.ldb != undefined ? g.ldb : '[]')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'lastU': Math.round((new Date()).getTime() / 1000)
|
||||
});
|
||||
});
|
||||
}
|
||||
} else {
|
||||
chrome.storage.local.set({
|
||||
'lastU': Math.round((new Date()).getTime() / 1000)
|
||||
});
|
||||
}
|
||||
let nowVer = (chrome.runtime.getManifest()).version;
|
||||
if (g.lastV != nowVer || forcePurge) {
|
||||
chrome.storage.local.get(['ign1', 'obs', 'dbg', 'alt', 'cep', 'mul', 'opd', 'ldb'], g => {
|
||||
chrome.storage.local.clear();
|
||||
memcache = {};
|
||||
chrome.storage.local.set({
|
||||
'ign1': (g.ign1 == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'obs': (g.obs == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'dbg': (g.dbg == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'alt': (g.alt == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'cep': (g.cep == 'y' ? 'y' : 'n')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'mul': (g.mul != undefined ? g.mul : 'eo')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'opd': (g.opd == 'n' ? 'n' : 'y')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'ldb': (g.ldb != undefined ? g.ldb : '[]')
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'lastU': Math.round((new Date()).getTime() / 1000)
|
||||
});
|
||||
chrome.storage.local.set({
|
||||
'lastV': (chrome.runtime.getManifest()).version
|
||||
});
|
||||
});
|
||||
}
|
||||
timr = setTimeout(function () {
|
||||
forget_cache();
|
||||
}, 1814400000);
|
||||
});
|
||||
chrome.runtime.onMessage.addListener((requests, sender, sendResponse) => {
|
||||
if (requests) {
|
||||
if (requests === 'clear') {
|
||||
forget_cache();
|
||||
return;
|
||||
}
|
||||
if (requests.indexOf('dbmode,') === 0) {
|
||||
switch (requests) {
|
||||
case 'dbmode,s1':
|
||||
chrome.storage.local.set({
|
||||
'opd': 'y'
|
||||
});
|
||||
localUse = false;
|
||||
break;
|
||||
case 'dbmode,s0':
|
||||
chrome.storage.local.set({
|
||||
'opd': 'n'
|
||||
});
|
||||
localUse = true;
|
||||
break;
|
||||
case 'dbmode,cl':
|
||||
chrome.storage.local.set({
|
||||
'ldb': '[]'
|
||||
});
|
||||
localDB = [];
|
||||
break;
|
||||
case 'dbmode,rl':
|
||||
chrome.storage.local.get(['ldb'], (g) => {
|
||||
localDB = JSON.parse(g.ldb || '[]');
|
||||
});
|
||||
break;
|
||||
}
|
||||
return;
|
||||
}
|
||||
requests.forEach(request => {
|
||||
i_know_you(request).then((r) => {
|
||||
if (r == 1 || r == -1) {
|
||||
chrome.tabs.sendMessage(sender.tab.id, [request, ((r == 1) ? true : false)]);
|
||||
}
|
||||
if (r == 0) {
|
||||
is_hostile(request).then((a) => {
|
||||
if (a) {
|
||||
chrome.storage.local.set({
|
||||
[request]: 'y'
|
||||
});
|
||||
} else {
|
||||
chrome.storage.local.set({
|
||||
[request]: 'n'
|
||||
});
|
||||
}
|
||||
if (Object.keys(memcache).length > 650) {
|
||||
memcache = {};
|
||||
}
|
||||
chrome.tabs.sendMessage(sender.tab.id, [request, a]);
|
||||
}, () => {
|
||||
chrome.tabs.sendMessage(sender.tab.id, [request, false]);
|
||||
});
|
||||
}
|
||||
}, () => {});
|
||||
});
|
||||
}
|
||||
return;
|
||||
});
|
137
addons/isattlinkCR/cfg.html
Normal file
137
addons/isattlinkCR/cfg.html
Normal file
@ -0,0 +1,137 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
|
||||
</head>
|
||||
<body style="display:none">
|
||||
<br>
|
||||
<label><input type="checkbox" id="ign1"> <span tek="tlign1"></span></label><br>
|
||||
<label><input type="checkbox" id="obs"> <span tek="tlobs"></span></label><br>
|
||||
<label><input type="checkbox" id="alt"> <span tek="tlalt"></span></label><br>
|
||||
<label><input type="checkbox" id="dbg" disabled> <span tek="tldbg"></span></label><br>
|
||||
<br> <br>
|
||||
<span tek="opmode"></span><br>
|
||||
<label><input type="radio" name="opm" id="opon"> <span tek="opmon"></span></label> [ → <a href="https://crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/#!op=info/api" target="_blank">Crimeflare API</a> ]<br>
|
||||
<label><input type="radio" name="opm" id="opoff"> <span tek="opmoff"></span></label> [ → <a href="./localdb.html" target="_blank"><span tek="opmode"></span></a> ]<br>
|
||||
<br> <br>
|
||||
💬
|
||||
<select id="myul">
|
||||
<option value="" selected> --- </option>
|
||||
<option value="af">af, Afrikaans</option>
|
||||
<option value="am">am, አማርኛ</option>
|
||||
<option value="ar">ar, العربية</option>
|
||||
<option value="az">az, Azərbaycanca</option>
|
||||
<option value="be">be, Беларуская</option>
|
||||
<option value="bg">bg, Български</option>
|
||||
<option value="bn">bn, বাংলা</option>
|
||||
<option value="bs">bs, босански</option>
|
||||
<option value="ca">ca, Català</option>
|
||||
<option value="cb">cb, Cebuan</option>
|
||||
<option value="co">co, Corsu</option>
|
||||
<option value="cs">cs, Čeština</option>
|
||||
<option value="cy">cy, Cymraeg</option>
|
||||
<option value="da">da, Dansk</option>
|
||||
<option value="de">de, Deutsch</option>
|
||||
<option value="el">el, Ελληνικά</option>
|
||||
<option value="eo">eo, Esperanto 🏆</option>
|
||||
<option value="es">es, Español</option>
|
||||
<option value="et">et, Eesti</option>
|
||||
<option value="eu">eu, Euskara</option>
|
||||
<option value="fa">fa, فارسی</option>
|
||||
<option value="fi">fi, Suomi</option>
|
||||
<option value="fl">fl, Wikang Filipino</option>
|
||||
<option value="fr">fr, Français</option>
|
||||
<option value="fy">fy, Frisian</option>
|
||||
<option value="ga">ga, Gaeilge</option>
|
||||
<option value="gd">gd, Gàidhlig</option>
|
||||
<option value="gl">gl, Galego</option>
|
||||
<option value="gu">gu, Gujarātī</option>
|
||||
<option value="ha">ha, Harshen</option>
|
||||
<option value="he">he, עברית</option>
|
||||
<option value="hi">hi, हिंदी</option>
|
||||
<option value="hm">hm, lus Hmoob</option>
|
||||
<option value="hr">hr, Hrvatski</option>
|
||||
<option value="ht">ht, Kreyòl</option>
|
||||
<option value="hu">hu, Magyar</option>
|
||||
<option value="hy">hy, հայերեն</option>
|
||||
<option value="id">id, Indonesia</option>
|
||||
<option value="ig">ig, Asụsụ Igbo</option>
|
||||
<option value="is">is, Íslenska</option>
|
||||
<option value="it">it, Italiano</option>
|
||||
<option value="ja">ja, 日本語</option>
|
||||
<option value="jv">jv, ꦧꦱꦗꦮ</option>
|
||||
<option value="ka">ka, ქართული</option>
|
||||
<option value="kk">kk, Қазақша</option>
|
||||
<option value="km">km, ភាសាខ្មែរ</option>
|
||||
<option value="kn">kn, ಕನ್ನಡ</option>
|
||||
<option value="ko">ko, 힌디어</option>
|
||||
<option value="ku">ku, کوردی</option>
|
||||
<option value="ky">ky, Кыргызча</option>
|
||||
<option value="la">la, Latīna</option>
|
||||
<option value="lb">lb, Lëtzebuergesch</option>
|
||||
<option value="lo">lo, ພາສາລາວ</option>
|
||||
<option value="lt">lt, Lietuvių</option>
|
||||
<option value="lv">lv, Latviešu</option>
|
||||
<option value="mg">mg, Malagasy</option>
|
||||
<option value="mi">mi, Māori</option>
|
||||
<option value="mk">mk, македонски</option>
|
||||
<option value="ml">ml, മലയാളം</option>
|
||||
<option value="mn">mn, монгол</option>
|
||||
<option value="mr">mr, मराठी</option>
|
||||
<option value="ms">ms, bahasa Melayu</option>
|
||||
<option value="mt">mt, Malti</option>
|
||||
<option value="ne">ne, नेपाली</option>
|
||||
<option value="nl">nl, Nederlands</option>
|
||||
<option value="no">no, Norsk Bokmål</option>
|
||||
<option value="ny">ny, Chichewa</option>
|
||||
<option value="or">or, ଓଡ଼ିଆ</option>
|
||||
<option value="pa">pa, ਪੰਜਾਬੀ</option>
|
||||
<option value="pl">pl, Polski</option>
|
||||
<option value="ps">ps, پښتو</option>
|
||||
<option value="pt">pt, Português</option>
|
||||
<option value="ro">ro, Română</option>
|
||||
<option value="ru">ru, Русский</option>
|
||||
<option value="rw">rw, Kinyarwanda</option>
|
||||
<option value="sd">sd, سنڌي</option>
|
||||
<option value="si">si, සිංහල</option>
|
||||
<option value="sk">sk, Slovenčina</option>
|
||||
<option value="sl">sl, Slovenščina</option>
|
||||
<option value="sm">sm, Gagana Sāmoa</option>
|
||||
<option value="sn">sn, chiShona</option>
|
||||
<option value="so">so, Af Soomaali</option>
|
||||
<option value="sq">sq, Shqip</option>
|
||||
<option value="sr">sr, Српски</option>
|
||||
<option value="st">st, Sesotho</option>
|
||||
<option value="su">su, Basa Sunda</option>
|
||||
<option value="sv">sv, Svenska</option>
|
||||
<option value="sw">sw, Kiswahili</option>
|
||||
<option value="ta">ta, தமிழ்</option>
|
||||
<option value="te">te, తెలుగు</option>
|
||||
<option value="tg">tg, тоҷикӣ</option>
|
||||
<option value="th">th, ภาษาไทย</option>
|
||||
<option value="tk">tk, Türkmençe</option>
|
||||
<option value="tr">tr, Türkçe</option>
|
||||
<option value="tt">tt, татар теле</option>
|
||||
<option value="ug">ug, ئۇيغۇرچە</option>
|
||||
<option value="uk">uk, Українська</option>
|
||||
<option value="ur">ur, اردو</option>
|
||||
<option value="vi">vi, Tiếng Việt</option>
|
||||
<option value="xh">xh, isiXhosa</option>
|
||||
<option value="yi">yi, אידיש</option>
|
||||
<option value="yo">yo, Èdè Yorùbá</option>
|
||||
<option value="zh">zh, 汉语</option>
|
||||
<option value="zu">zu, isiZulu</option>
|
||||
</select>
|
||||
<br> <br> <br>
|
||||
<span tek="aboutcache"></span><br>
|
||||
<span id="smsa"><button type="button" id="sms"> <span tek="statsshow"></span> </button></span>
|
||||
<span id="smsb" style="display:none">
|
||||
<br>
|
||||
<span tek="hostile"></span>: <span id="viry">?</span><br>
|
||||
<span tek="neutral"></span>: <span id="virn">?</span><br>
|
||||
<span tek="total"></span>: <span id="viro">?</span><br>
|
||||
<br>
|
||||
<button type="button" id="crs"> <span tek="statsclear"></span> </button>
|
||||
</span>
|
||||
<br><br><script src="cg.js"></script>
|
||||
</body>
|
||||
</html>
|
90
addons/isattlinkCR/cg.js
Normal file
90
addons/isattlinkCR/cg.js
Normal file
@ -0,0 +1,90 @@
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
chrome.storage.local.get(['ign1', 'obs', 'dbg', 'alt', 'mul', 'opd'], g => {
|
||||
document.getElementById('ign1').checked = (g.ign1 == 'y') ? true : false;
|
||||
document.getElementById('obs').checked = (g.obs == 'y') ? true : false;
|
||||
document.getElementById('alt').checked = (g.alt == 'y') ? true : false;
|
||||
document.getElementById('opon').checked = (g.opd != 'n') ? true : false;
|
||||
document.getElementById('opoff').checked = (g.opd == 'n') ? true : false;
|
||||
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('myul').addEventListener('change', () => {
|
||||
let xul = document.getElementById('myul').value;
|
||||
if (xul.length == 2) {
|
||||
chrome.storage.local.set({
|
||||
'mul': xul
|
||||
});
|
||||
location.reload(true);
|
||||
}
|
||||
});
|
||||
document.getElementById('ign1').addEventListener('click', () => {
|
||||
chrome.storage.local.set({
|
||||
'ign1': (document.getElementById('ign1').checked ? 'y' : 'n')
|
||||
});
|
||||
});
|
||||
document.getElementById('obs').addEventListener('click', () => {
|
||||
chrome.storage.local.set({
|
||||
'obs': (document.getElementById('obs').checked ? 'y' : 'n')
|
||||
});
|
||||
});
|
||||
document.getElementById('alt').addEventListener('click', () => {
|
||||
chrome.storage.local.set({
|
||||
'alt': (document.getElementById('alt').checked ? 'y' : 'n')
|
||||
});
|
||||
});
|
||||
document.getElementById('opon').addEventListener('click', () => {
|
||||
chrome.runtime.sendMessage('dbmode,s1', () => {
|
||||
location.reload();
|
||||
});
|
||||
});
|
||||
document.getElementById('opoff').addEventListener('click', () => {
|
||||
chrome.runtime.sendMessage('dbmode,s0', () => {
|
||||
location.reload();
|
||||
});
|
||||
});
|
||||
document.getElementById('crs').addEventListener('click', () => {
|
||||
chrome.runtime.sendMessage('clear', () => {
|
||||
location.reload();
|
||||
});
|
||||
});
|
||||
document.getElementById('sms').addEventListener('click', () => {
|
||||
document.getElementById('smsa').style.display = 'none';
|
||||
chrome.storage.local.get(null, g => {
|
||||
let iY = 0,
|
||||
iN = 0,
|
||||
iT, tmp, akd = [];
|
||||
Object.keys(g).forEach(a => {
|
||||
if (!['ign1', 'obs', 'dbg', 'alt', 'lastU', 'lastV', 'cep', 'mul', 'opd', 'ldb'].includes(a) && (g[a] == 'y' || g[a] == 'n')) {
|
||||
if (!akd.includes(a)) {
|
||||
akd.push(a);
|
||||
if (g[a] == 'y') {
|
||||
iY++;
|
||||
} else {
|
||||
iN++;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
iT = iY + iN;
|
||||
if (iT > 0) {
|
||||
tmp = (iY * 100 / iT).toFixed(1);
|
||||
document.getElementById('viry').innerText = iY + ' (' + tmp + '%)';
|
||||
tmp = (iN * 100 / iT).toFixed(1);
|
||||
document.getElementById('virn').innerText = iN + ' (' + tmp + '%)';
|
||||
document.getElementById('viro').innerText = (iY + iN);
|
||||
} else {
|
||||
document.getElementById('viry').innerText = 0;
|
||||
document.getElementById('virn').innerText = 0;
|
||||
document.getElementById('viro').innerText = 0;
|
||||
}
|
||||
document.getElementById('smsb').style.display = 'inline';
|
||||
});
|
||||
});
|
1126
addons/isattlinkCR/cs.js
Normal file
1126
addons/isattlinkCR/cs.js
Normal file
File diff suppressed because one or more lines are too long
17
addons/isattlinkCR/localdb.html
Normal file
17
addons/isattlinkCR/localdb.html
Normal file
@ -0,0 +1,17 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
|
||||
<title>🗄</title>
|
||||
</head>
|
||||
<body style="display:none">
|
||||
<br>
|
||||
<meter id="pbr" value="0" min="0" max="100" style="width:50%"></meter><br><br>
|
||||
<button type="button" id="ldb_i"> 📝 <span tek="opximp"></span> </button>
|
||||
<button type="button" id="ldb_c"> 🗑 <span tek="opxclr"></span> </button>
|
||||
<span style="display:none">
|
||||
<input type="file" id="f" accept="text/plain">
|
||||
<span tek="opxdone"></span>
|
||||
</span>
|
||||
<script src="localdb.js"></script>
|
||||
</body>
|
||||
</html>
|
67
addons/isattlinkCR/localdb.js
Normal file
67
addons/isattlinkCR/localdb.js
Normal file
@ -0,0 +1,67 @@
|
||||
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();
|
||||
});
|
||||
}
|
||||
});
|
37
addons/isattlinkCR/manifest.json
Normal file
37
addons/isattlinkCR/manifest.json
Normal file
@ -0,0 +1,37 @@
|
||||
{
|
||||
"manifest_version": 2,
|
||||
"name": "Ĉu ĉi tiuj ligoj blokos Tor-uzanton?",
|
||||
"version": "1.0.2.5",
|
||||
"minimum_chrome_version": "68",
|
||||
"homepage_url": "https://crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/",
|
||||
"author": "Crimeflare",
|
||||
"incognito": "split",
|
||||
"permissions": [
|
||||
"storage",
|
||||
"unlimitedStorage"
|
||||
],
|
||||
"icons": {
|
||||
"72": "icons/72.png"
|
||||
},
|
||||
"background": {
|
||||
"scripts": [
|
||||
"bg.js"
|
||||
]
|
||||
},
|
||||
"options_ui": {
|
||||
"chrome_style": false,
|
||||
"page": "cfg.html"
|
||||
},
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": [
|
||||
"http://*/*",
|
||||
"https://*/*"
|
||||
],
|
||||
"js": [
|
||||
"cs.js"
|
||||
],
|
||||
"run_at": "document_end"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
[//]: # (do not edit me; start)
|
||||
|
||||
Versio: _1.0.2.4_
|
||||
Versio: _1.0.2.5_
|
||||
|
||||
[//]: # (do not edit me; end)
|
||||
|
||||
|
@ -16,38 +16,110 @@
|
||||
💬
|
||||
<select id="myul">
|
||||
<option value="" selected> --- </option>
|
||||
<option value="ar">العربية</option>
|
||||
<option value="bn">বাংলা</option>
|
||||
<option value="de">Deutsch</option>
|
||||
<option value="eo">Esperanto 🏆</option>
|
||||
<option value="es">Español</option>
|
||||
<option value="fa">فارسی</option>
|
||||
<option value="fr">Français</option>
|
||||
<option value="gu">Gujarātī</option>
|
||||
<option value="ha">Harshen</option>
|
||||
<option value="hi">हिंदी</option>
|
||||
<option value="id">Indonesia</option>
|
||||
<option value="it">Italiano</option>
|
||||
<option value="ja">日本語</option>
|
||||
<option value="jv">ꦧꦱꦗꦮ</option>
|
||||
<option value="ko">힌디어</option>
|
||||
<option value="mr">मराठी</option>
|
||||
<option value="ms">bahasa Melayu</option>
|
||||
<option value="nl">Nederlands</option>
|
||||
<option value="pa">ਪੰਜਾਬੀ</option>
|
||||
<option value="pl">Polski</option>
|
||||
<option value="pt">Português</option>
|
||||
<option value="ru">Русский</option>
|
||||
<option value="sv">Svenska</option>
|
||||
<option value="sw">Kiswahili</option>
|
||||
<option value="ta">தமிழ்</option>
|
||||
<option value="te">తెలుగు</option>
|
||||
<option value="th">ภาษาไทย</option>
|
||||
<option value="tr">Türkçe</option>
|
||||
<option value="uk">Українська</option>
|
||||
<option value="ur">اردو</option>
|
||||
<option value="vi">Tiếng Việt</option>
|
||||
<option value="zh">中文</option>
|
||||
<option value="af">af, Afrikaans</option>
|
||||
<option value="am">am, አማርኛ</option>
|
||||
<option value="ar">ar, العربية</option>
|
||||
<option value="az">az, Azərbaycanca</option>
|
||||
<option value="be">be, Беларуская</option>
|
||||
<option value="bg">bg, Български</option>
|
||||
<option value="bn">bn, বাংলা</option>
|
||||
<option value="bs">bs, босански</option>
|
||||
<option value="ca">ca, Català</option>
|
||||
<option value="cb">cb, Cebuan</option>
|
||||
<option value="co">co, Corsu</option>
|
||||
<option value="cs">cs, Čeština</option>
|
||||
<option value="cy">cy, Cymraeg</option>
|
||||
<option value="da">da, Dansk</option>
|
||||
<option value="de">de, Deutsch</option>
|
||||
<option value="el">el, Ελληνικά</option>
|
||||
<option value="eo">eo, Esperanto 🏆</option>
|
||||
<option value="es">es, Español</option>
|
||||
<option value="et">et, Eesti</option>
|
||||
<option value="eu">eu, Euskara</option>
|
||||
<option value="fa">fa, فارسی</option>
|
||||
<option value="fi">fi, Suomi</option>
|
||||
<option value="fl">fl, Wikang Filipino</option>
|
||||
<option value="fr">fr, Français</option>
|
||||
<option value="fy">fy, Frisian</option>
|
||||
<option value="ga">ga, Gaeilge</option>
|
||||
<option value="gd">gd, Gàidhlig</option>
|
||||
<option value="gl">gl, Galego</option>
|
||||
<option value="gu">gu, Gujarātī</option>
|
||||
<option value="ha">ha, Harshen</option>
|
||||
<option value="he">he, עברית</option>
|
||||
<option value="hi">hi, हिंदी</option>
|
||||
<option value="hm">hm, lus Hmoob</option>
|
||||
<option value="hr">hr, Hrvatski</option>
|
||||
<option value="ht">ht, Kreyòl</option>
|
||||
<option value="hu">hu, Magyar</option>
|
||||
<option value="hy">hy, հայերեն</option>
|
||||
<option value="id">id, Indonesia</option>
|
||||
<option value="ig">ig, Asụsụ Igbo</option>
|
||||
<option value="is">is, Íslenska</option>
|
||||
<option value="it">it, Italiano</option>
|
||||
<option value="ja">ja, 日本語</option>
|
||||
<option value="jv">jv, ꦧꦱꦗꦮ</option>
|
||||
<option value="ka">ka, ქართული</option>
|
||||
<option value="kk">kk, Қазақша</option>
|
||||
<option value="km">km, ភាសាខ្មែរ</option>
|
||||
<option value="kn">kn, ಕನ್ನಡ</option>
|
||||
<option value="ko">ko, 힌디어</option>
|
||||
<option value="ku">ku, کوردی</option>
|
||||
<option value="ky">ky, Кыргызча</option>
|
||||
<option value="la">la, Latīna</option>
|
||||
<option value="lb">lb, Lëtzebuergesch</option>
|
||||
<option value="lo">lo, ພາສາລາວ</option>
|
||||
<option value="lt">lt, Lietuvių</option>
|
||||
<option value="lv">lv, Latviešu</option>
|
||||
<option value="mg">mg, Malagasy</option>
|
||||
<option value="mi">mi, Māori</option>
|
||||
<option value="mk">mk, македонски</option>
|
||||
<option value="ml">ml, മലയാളം</option>
|
||||
<option value="mn">mn, монгол</option>
|
||||
<option value="mr">mr, मराठी</option>
|
||||
<option value="ms">ms, bahasa Melayu</option>
|
||||
<option value="mt">mt, Malti</option>
|
||||
<option value="ne">ne, नेपाली</option>
|
||||
<option value="nl">nl, Nederlands</option>
|
||||
<option value="no">no, Norsk Bokmål</option>
|
||||
<option value="ny">ny, Chichewa</option>
|
||||
<option value="or">or, ଓଡ଼ିଆ</option>
|
||||
<option value="pa">pa, ਪੰਜਾਬੀ</option>
|
||||
<option value="pl">pl, Polski</option>
|
||||
<option value="ps">ps, پښتو</option>
|
||||
<option value="pt">pt, Português</option>
|
||||
<option value="ro">ro, Română</option>
|
||||
<option value="ru">ru, Русский</option>
|
||||
<option value="rw">rw, Kinyarwanda</option>
|
||||
<option value="sd">sd, سنڌي</option>
|
||||
<option value="si">si, සිංහල</option>
|
||||
<option value="sk">sk, Slovenčina</option>
|
||||
<option value="sl">sl, Slovenščina</option>
|
||||
<option value="sm">sm, Gagana Sāmoa</option>
|
||||
<option value="sn">sn, chiShona</option>
|
||||
<option value="so">so, Af Soomaali</option>
|
||||
<option value="sq">sq, Shqip</option>
|
||||
<option value="sr">sr, Српски</option>
|
||||
<option value="st">st, Sesotho</option>
|
||||
<option value="su">su, Basa Sunda</option>
|
||||
<option value="sv">sv, Svenska</option>
|
||||
<option value="sw">sw, Kiswahili</option>
|
||||
<option value="ta">ta, தமிழ்</option>
|
||||
<option value="te">te, తెలుగు</option>
|
||||
<option value="tg">tg, тоҷикӣ</option>
|
||||
<option value="th">th, ภาษาไทย</option>
|
||||
<option value="tk">tk, Türkmençe</option>
|
||||
<option value="tr">tr, Türkçe</option>
|
||||
<option value="tt">tt, татар теле</option>
|
||||
<option value="ug">ug, ئۇيغۇرچە</option>
|
||||
<option value="uk">uk, Українська</option>
|
||||
<option value="ur">ur, اردو</option>
|
||||
<option value="vi">vi, Tiếng Việt</option>
|
||||
<option value="xh">xh, isiXhosa</option>
|
||||
<option value="yi">yi, אידיש</option>
|
||||
<option value="yo">yo, Èdè Yorùbá</option>
|
||||
<option value="zh">zh, 汉语</option>
|
||||
<option value="zu">zu, isiZulu</option>
|
||||
</select>
|
||||
<br> <br> <br>
|
||||
<span tek="aboutcache"></span><br>
|
||||
|
@ -2,7 +2,7 @@
|
||||
"manifest_version": 2,
|
||||
"name": "Ĉu ĉi tiuj ligoj blokos Tor-uzanton?",
|
||||
"description": "Skanu FQDN uzante la API",
|
||||
"version": "1.0.2.4",
|
||||
"version": "1.0.2.5",
|
||||
"homepage_url": "https://crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/",
|
||||
"author": "Crimeflare",
|
||||
"permissions": [
|
||||
|
14
addons/ismitmlinkCR/README.md
Normal file
14
addons/ismitmlinkCR/README.md
Normal file
@ -0,0 +1,14 @@
|
||||
[//]: # (do not edit me; start)
|
||||
|
||||
Versio: _1.0.20.5_
|
||||
|
||||
[//]: # (do not edit me; end)
|
||||
|
||||
|
||||
- [Pli informo / Elŝuto](../../subfiles/about.ismm.md)
|
||||
- Malgarantio: Ĉi tio NE estas spegulo de suprenflua deponejo. Sinkronigado eble prokrastas.
|
||||
|
||||
-----
|
||||
|
||||
- [More information / Download](../../subfiles/about.ismm.md)
|
||||
- Disclaimer: This is NOT a mirror of upstream repository. Synchronization may be delayed.
|
1340
addons/ismitmlinkCR/bg.js
Normal file
1340
addons/ismitmlinkCR/bg.js
Normal file
File diff suppressed because one or more lines are too long
138
addons/ismitmlinkCR/cfg.html
Normal file
138
addons/ismitmlinkCR/cfg.html
Normal file
@ -0,0 +1,138 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
|
||||
</head>
|
||||
<body style="display:none">
|
||||
<br>
|
||||
<label><input type="checkbox" id="ign1"> <span tek="tlign1"></span></label><br>
|
||||
<label><input type="checkbox" id="ign2"> <span tek="tlign2"></span></label><br>
|
||||
<label><input type="checkbox" id="obs"> <span tek="tlobs"></span></label><br>
|
||||
<label><input type="checkbox" id="alt"> <span tek="tlalt"></span></label><br>
|
||||
<label><input type="checkbox" id="dbg" disabled> <span tek="tldbg"></span></label><br>
|
||||
<br> <br>
|
||||
<span tek="opmode"></span><br>
|
||||
<label><input type="radio" name="opm" id="opon"> <span tek="opmon"></span></label> [ → <a href="https://crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/#!op=info/api" target="_blank">Crimeflare API</a> ]<br>
|
||||
<label><input type="radio" name="opm" id="opoff"> <span tek="opmoff"></span></label> [ → <a href="./localdb.html" target="_blank"><span tek="opmode"></span></a> ]<br>
|
||||
<br> <br>
|
||||
💬
|
||||
<select id="myul">
|
||||
<option value="" selected> --- </option>
|
||||
<option value="af">af, Afrikaans</option>
|
||||
<option value="am">am, አማርኛ</option>
|
||||
<option value="ar">ar, العربية</option>
|
||||
<option value="az">az, Azərbaycanca</option>
|
||||
<option value="be">be, Беларуская</option>
|
||||
<option value="bg">bg, Български</option>
|
||||
<option value="bn">bn, বাংলা</option>
|
||||
<option value="bs">bs, босански</option>
|
||||
<option value="ca">ca, Català</option>
|
||||
<option value="cb">cb, Cebuan</option>
|
||||
<option value="co">co, Corsu</option>
|
||||
<option value="cs">cs, Čeština</option>
|
||||
<option value="cy">cy, Cymraeg</option>
|
||||
<option value="da">da, Dansk</option>
|
||||
<option value="de">de, Deutsch</option>
|
||||
<option value="el">el, Ελληνικά</option>
|
||||
<option value="eo">eo, Esperanto 🏆</option>
|
||||
<option value="es">es, Español</option>
|
||||
<option value="et">et, Eesti</option>
|
||||
<option value="eu">eu, Euskara</option>
|
||||
<option value="fa">fa, فارسی</option>
|
||||
<option value="fi">fi, Suomi</option>
|
||||
<option value="fl">fl, Wikang Filipino</option>
|
||||
<option value="fr">fr, Français</option>
|
||||
<option value="fy">fy, Frisian</option>
|
||||
<option value="ga">ga, Gaeilge</option>
|
||||
<option value="gd">gd, Gàidhlig</option>
|
||||
<option value="gl">gl, Galego</option>
|
||||
<option value="gu">gu, Gujarātī</option>
|
||||
<option value="ha">ha, Harshen</option>
|
||||
<option value="he">he, עברית</option>
|
||||
<option value="hi">hi, हिंदी</option>
|
||||
<option value="hm">hm, lus Hmoob</option>
|
||||
<option value="hr">hr, Hrvatski</option>
|
||||
<option value="ht">ht, Kreyòl</option>
|
||||
<option value="hu">hu, Magyar</option>
|
||||
<option value="hy">hy, հայերեն</option>
|
||||
<option value="id">id, Indonesia</option>
|
||||
<option value="ig">ig, Asụsụ Igbo</option>
|
||||
<option value="is">is, Íslenska</option>
|
||||
<option value="it">it, Italiano</option>
|
||||
<option value="ja">ja, 日本語</option>
|
||||
<option value="jv">jv, ꦧꦱꦗꦮ</option>
|
||||
<option value="ka">ka, ქართული</option>
|
||||
<option value="kk">kk, Қазақша</option>
|
||||
<option value="km">km, ភាសាខ្មែរ</option>
|
||||
<option value="kn">kn, ಕನ್ನಡ</option>
|
||||
<option value="ko">ko, 힌디어</option>
|
||||
<option value="ku">ku, کوردی</option>
|
||||
<option value="ky">ky, Кыргызча</option>
|
||||
<option value="la">la, Latīna</option>
|
||||
<option value="lb">lb, Lëtzebuergesch</option>
|
||||
<option value="lo">lo, ພາສາລາວ</option>
|
||||
<option value="lt">lt, Lietuvių</option>
|
||||
<option value="lv">lv, Latviešu</option>
|
||||
<option value="mg">mg, Malagasy</option>
|
||||
<option value="mi">mi, Māori</option>
|
||||
<option value="mk">mk, македонски</option>
|
||||
<option value="ml">ml, മലയാളം</option>
|
||||
<option value="mn">mn, монгол</option>
|
||||
<option value="mr">mr, मराठी</option>
|
||||
<option value="ms">ms, bahasa Melayu</option>
|
||||
<option value="mt">mt, Malti</option>
|
||||
<option value="ne">ne, नेपाली</option>
|
||||
<option value="nl">nl, Nederlands</option>
|
||||
<option value="no">no, Norsk Bokmål</option>
|
||||
<option value="ny">ny, Chichewa</option>
|
||||
<option value="or">or, ଓଡ଼ିଆ</option>
|
||||
<option value="pa">pa, ਪੰਜਾਬੀ</option>
|
||||
<option value="pl">pl, Polski</option>
|
||||
<option value="ps">ps, پښتو</option>
|
||||
<option value="pt">pt, Português</option>
|
||||
<option value="ro">ro, Română</option>
|
||||
<option value="ru">ru, Русский</option>
|
||||
<option value="rw">rw, Kinyarwanda</option>
|
||||
<option value="sd">sd, سنڌي</option>
|
||||
<option value="si">si, සිංහල</option>
|
||||
<option value="sk">sk, Slovenčina</option>
|
||||
<option value="sl">sl, Slovenščina</option>
|
||||
<option value="sm">sm, Gagana Sāmoa</option>
|
||||
<option value="sn">sn, chiShona</option>
|
||||
<option value="so">so, Af Soomaali</option>
|
||||
<option value="sq">sq, Shqip</option>
|
||||
<option value="sr">sr, Српски</option>
|
||||
<option value="st">st, Sesotho</option>
|
||||
<option value="su">su, Basa Sunda</option>
|
||||
<option value="sv">sv, Svenska</option>
|
||||
<option value="sw">sw, Kiswahili</option>
|
||||
<option value="ta">ta, தமிழ்</option>
|
||||
<option value="te">te, తెలుగు</option>
|
||||
<option value="tg">tg, тоҷикӣ</option>
|
||||
<option value="th">th, ภาษาไทย</option>
|
||||
<option value="tk">tk, Türkmençe</option>
|
||||
<option value="tr">tr, Türkçe</option>
|
||||
<option value="tt">tt, татар теле</option>
|
||||
<option value="ug">ug, ئۇيغۇرچە</option>
|
||||
<option value="uk">uk, Українська</option>
|
||||
<option value="ur">ur, اردو</option>
|
||||
<option value="vi">vi, Tiếng Việt</option>
|
||||
<option value="xh">xh, isiXhosa</option>
|
||||
<option value="yi">yi, אידיש</option>
|
||||
<option value="yo">yo, Èdè Yorùbá</option>
|
||||
<option value="zh">zh, 汉语</option>
|
||||
<option value="zu">zu, isiZulu</option>
|
||||
</select>
|
||||
<br> <br> <br>
|
||||
<span tek="aboutcache"></span><br>
|
||||
<span id="smsa"><button type="button" id="sms"> <span tek="statsshow"></span> </button></span>
|
||||
<span id="smsb" style="display:none">
|
||||
<br>
|
||||
<span tek="hostile"></span>: <span id="viry">?</span><br>
|
||||
<span tek="neutral"></span>: <span id="virn">?</span><br>
|
||||
<span tek="total"></span>: <span id="viro">?</span><br>
|
||||
<br>
|
||||
<button type="button" id="crs"> <span tek="statsclear"></span> </button>
|
||||
</span>
|
||||
<br><br><script src="cg.js"></script>
|
||||
</body>
|
||||
</html>
|
1151
addons/ismitmlinkCR/cg.js
Normal file
1151
addons/ismitmlinkCR/cg.js
Normal file
File diff suppressed because one or more lines are too long
73
addons/ismitmlinkCR/cs.js
Normal file
73
addons/ismitmlinkCR/cs.js
Normal file
@ -0,0 +1,73 @@
|
||||
if (document.body && !['crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion', 'crimeflare.eu.org', 'api.crimeflare.eu.org', 'ansero.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion', 'ansero.eu.org'].includes(location.hostname)) {
|
||||
let cs = (function () {
|
||||
let s = document.createElement('style');
|
||||
document.head.appendChild(s);
|
||||
return s.sheet;
|
||||
})();
|
||||
if (cs) {
|
||||
cs.insertRule("a[data-mitm=y]{cursor:not-allowed !important;text-decoration-line:line-through !important;text-decoration-color:red !important;text-decoration-style:double !important}", 0);
|
||||
cs.insertRule("a[data-mitm=y]::before{content:'[\\26A0]';font-weight:bold !important;color:red !important;display:inline-block !important}", 1);
|
||||
cs.insertRule("a[data-mitm=y]:hover::before{content:'[\\26A1]'}", 2);
|
||||
cs.insertRule("a[data-mitm=y]:hover{color:red !important}", 3);
|
||||
cs.insertRule("img[data-mitm=y]{cursor:not-allowed !important;border:2px red dotted !important}", 4);
|
||||
cs.insertRule("img[data-mitm=y]:hover{filter:sepia(20%)}", 5);
|
||||
}
|
||||
chrome.storage.local.get(['ign1', 'ign2', 'obs', 'dbg', 'alt'], (g) => {
|
||||
let asked = ['', 'crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion', 'crimeflare.eu.org', 'api.crimeflare.eu.org', 'ansero.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion', 'ansero.eu.org', 'addons.mozilla.org', 'addons.thunderbird.net', 'web.archive.org', 't.co'];
|
||||
if (g.ign1 == 'y') {
|
||||
asked.push(location.hostname);
|
||||
}
|
||||
let qstall = (g.ign2 == 'y') ? 'a[href]:not([data-mitm])' : 'a[href]:not([data-mitm]),img[src]:not([data-mitm])';
|
||||
let running = false;
|
||||
function scanme() {
|
||||
if (!running) {
|
||||
running = true;
|
||||
let unknown = [];
|
||||
document.querySelectorAll(qstall).forEach(a => {
|
||||
let aF = (a.tagName == 'A' ? (new URL(a.href)).hostname : (new URL(a.src)).hostname) || '';
|
||||
a.dataset.mitm = aF;
|
||||
if (!asked.includes(aF)) {
|
||||
asked.push(aF);
|
||||
if (!/^(.*)\.(danwin1210\.me|wikipedia\.org|onion|i2p|invalid|test|local|localhost|([0-9]{1,3})|bbs|chan|cyb|dyn|geek|gopher|indy|libre|neo|null|o|oss|oz|parody|pirate|bit|lib|coin|emc|bazar|fur)$/.test(aF) && aF.length >= 4) {
|
||||
unknown.push(aF);
|
||||
}
|
||||
}
|
||||
});
|
||||
if (unknown.length > 0) {
|
||||
chrome.runtime.sendMessage(unknown);
|
||||
}
|
||||
running = false;
|
||||
}
|
||||
}
|
||||
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
|
||||
if (request.length == 2) {
|
||||
document.querySelectorAll(g.ign2 == 'y' ? "a[href][data-mitm='" + request[0] + "']" : "a[href][data-mitm='" + request[0] + "'],img[src][data-mitm='" + request[0] + "']").forEach(a => {
|
||||
if (request[1]) {
|
||||
a.dataset.mitm = 'y';
|
||||
if (g.alt == 'y' && a.tagName == 'A') {
|
||||
if (!a.href.startsWith('https://web.archive.org/web/')) {
|
||||
a.href = 'https://web.archive.org/web/' + a.href;
|
||||
}
|
||||
a.title = 'Arkivo!';
|
||||
} else {
|
||||
a.title = 'MITM!';
|
||||
}
|
||||
} else {
|
||||
a.dataset.mitm = 'n';
|
||||
}
|
||||
});
|
||||
}
|
||||
sendResponse(true);
|
||||
return;
|
||||
});
|
||||
scanme();
|
||||
if (g.obs == 'y') {
|
||||
(new MutationObserver(scanme)).observe(document, {
|
||||
attributes: true,
|
||||
attributeFilter: ['href'],
|
||||
childList: true,
|
||||
subtree: true
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
17
addons/ismitmlinkCR/localdb.html
Normal file
17
addons/ismitmlinkCR/localdb.html
Normal file
@ -0,0 +1,17 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
|
||||
<title>🗄</title>
|
||||
</head>
|
||||
<body style="display:none">
|
||||
<br>
|
||||
<meter id="pbr" value="0" min="0" max="100" style="width:50%"></meter><br><br>
|
||||
<button type="button" id="ldb_i"> 📝 <span tek="opximp"></span> </button>
|
||||
<button type="button" id="ldb_c"> 🗑 <span tek="opxclr"></span> </button>
|
||||
<span style="display:none">
|
||||
<input type="file" id="f" accept="text/plain">
|
||||
<span tek="opxdone"></span>
|
||||
</span>
|
||||
<script src="localdb.js"></script>
|
||||
</body>
|
||||
</html>
|
67
addons/ismitmlinkCR/localdb.js
Normal file
67
addons/ismitmlinkCR/localdb.js
Normal file
@ -0,0 +1,67 @@
|
||||
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();
|
||||
});
|
||||
}
|
||||
});
|
37
addons/ismitmlinkCR/manifest.json
Normal file
37
addons/ismitmlinkCR/manifest.json
Normal file
@ -0,0 +1,37 @@
|
||||
{
|
||||
"manifest_version": 2,
|
||||
"name": "Ĉu ligoj estas vundeblaj al MITM-atako?",
|
||||
"version": "1.0.20.5",
|
||||
"minimum_chrome_version": "68",
|
||||
"homepage_url": "https://crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/",
|
||||
"author": "Crimeflare",
|
||||
"incognito": "split",
|
||||
"permissions": [
|
||||
"storage",
|
||||
"unlimitedStorage"
|
||||
],
|
||||
"icons": {
|
||||
"72": "icons/72.png"
|
||||
},
|
||||
"background": {
|
||||
"scripts": [
|
||||
"bg.js"
|
||||
]
|
||||
},
|
||||
"options_ui": {
|
||||
"chrome_style": false,
|
||||
"page": "cfg.html"
|
||||
},
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": [
|
||||
"http://*/*",
|
||||
"https://*/*"
|
||||
],
|
||||
"js": [
|
||||
"cs.js"
|
||||
],
|
||||
"run_at": "document_end"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
[//]: # (do not edit me; start)
|
||||
|
||||
Versio: _1.0.20.4_
|
||||
Versio: _1.0.20.5_
|
||||
|
||||
[//]: # (do not edit me; end)
|
||||
|
||||
|
@ -17,38 +17,110 @@
|
||||
💬
|
||||
<select id="myul">
|
||||
<option value="" selected> --- </option>
|
||||
<option value="ar">العربية</option>
|
||||
<option value="bn">বাংলা</option>
|
||||
<option value="de">Deutsch</option>
|
||||
<option value="eo">Esperanto 🏆</option>
|
||||
<option value="es">Español</option>
|
||||
<option value="fa">فارسی</option>
|
||||
<option value="fr">Français</option>
|
||||
<option value="gu">Gujarātī</option>
|
||||
<option value="ha">Harshen</option>
|
||||
<option value="hi">हिंदी</option>
|
||||
<option value="id">Indonesia</option>
|
||||
<option value="it">Italiano</option>
|
||||
<option value="ja">日本語</option>
|
||||
<option value="jv">ꦧꦱꦗꦮ</option>
|
||||
<option value="ko">힌디어</option>
|
||||
<option value="mr">मराठी</option>
|
||||
<option value="ms">bahasa Melayu</option>
|
||||
<option value="nl">Nederlands</option>
|
||||
<option value="pa">ਪੰਜਾਬੀ</option>
|
||||
<option value="pl">Polski</option>
|
||||
<option value="pt">Português</option>
|
||||
<option value="ru">Русский</option>
|
||||
<option value="sv">Svenska</option>
|
||||
<option value="sw">Kiswahili</option>
|
||||
<option value="ta">தமிழ்</option>
|
||||
<option value="te">తెలుగు</option>
|
||||
<option value="th">ภาษาไทย</option>
|
||||
<option value="tr">Türkçe</option>
|
||||
<option value="uk">Українська</option>
|
||||
<option value="ur">اردو</option>
|
||||
<option value="vi">Tiếng Việt</option>
|
||||
<option value="zh">中文</option>
|
||||
<option value="af">af, Afrikaans</option>
|
||||
<option value="am">am, አማርኛ</option>
|
||||
<option value="ar">ar, العربية</option>
|
||||
<option value="az">az, Azərbaycanca</option>
|
||||
<option value="be">be, Беларуская</option>
|
||||
<option value="bg">bg, Български</option>
|
||||
<option value="bn">bn, বাংলা</option>
|
||||
<option value="bs">bs, босански</option>
|
||||
<option value="ca">ca, Català</option>
|
||||
<option value="cb">cb, Cebuan</option>
|
||||
<option value="co">co, Corsu</option>
|
||||
<option value="cs">cs, Čeština</option>
|
||||
<option value="cy">cy, Cymraeg</option>
|
||||
<option value="da">da, Dansk</option>
|
||||
<option value="de">de, Deutsch</option>
|
||||
<option value="el">el, Ελληνικά</option>
|
||||
<option value="eo">eo, Esperanto 🏆</option>
|
||||
<option value="es">es, Español</option>
|
||||
<option value="et">et, Eesti</option>
|
||||
<option value="eu">eu, Euskara</option>
|
||||
<option value="fa">fa, فارسی</option>
|
||||
<option value="fi">fi, Suomi</option>
|
||||
<option value="fl">fl, Wikang Filipino</option>
|
||||
<option value="fr">fr, Français</option>
|
||||
<option value="fy">fy, Frisian</option>
|
||||
<option value="ga">ga, Gaeilge</option>
|
||||
<option value="gd">gd, Gàidhlig</option>
|
||||
<option value="gl">gl, Galego</option>
|
||||
<option value="gu">gu, Gujarātī</option>
|
||||
<option value="ha">ha, Harshen</option>
|
||||
<option value="he">he, עברית</option>
|
||||
<option value="hi">hi, हिंदी</option>
|
||||
<option value="hm">hm, lus Hmoob</option>
|
||||
<option value="hr">hr, Hrvatski</option>
|
||||
<option value="ht">ht, Kreyòl</option>
|
||||
<option value="hu">hu, Magyar</option>
|
||||
<option value="hy">hy, հայերեն</option>
|
||||
<option value="id">id, Indonesia</option>
|
||||
<option value="ig">ig, Asụsụ Igbo</option>
|
||||
<option value="is">is, Íslenska</option>
|
||||
<option value="it">it, Italiano</option>
|
||||
<option value="ja">ja, 日本語</option>
|
||||
<option value="jv">jv, ꦧꦱꦗꦮ</option>
|
||||
<option value="ka">ka, ქართული</option>
|
||||
<option value="kk">kk, Қазақша</option>
|
||||
<option value="km">km, ភាសាខ្មែរ</option>
|
||||
<option value="kn">kn, ಕನ್ನಡ</option>
|
||||
<option value="ko">ko, 힌디어</option>
|
||||
<option value="ku">ku, کوردی</option>
|
||||
<option value="ky">ky, Кыргызча</option>
|
||||
<option value="la">la, Latīna</option>
|
||||
<option value="lb">lb, Lëtzebuergesch</option>
|
||||
<option value="lo">lo, ພາສາລາວ</option>
|
||||
<option value="lt">lt, Lietuvių</option>
|
||||
<option value="lv">lv, Latviešu</option>
|
||||
<option value="mg">mg, Malagasy</option>
|
||||
<option value="mi">mi, Māori</option>
|
||||
<option value="mk">mk, македонски</option>
|
||||
<option value="ml">ml, മലയാളം</option>
|
||||
<option value="mn">mn, монгол</option>
|
||||
<option value="mr">mr, मराठी</option>
|
||||
<option value="ms">ms, bahasa Melayu</option>
|
||||
<option value="mt">mt, Malti</option>
|
||||
<option value="ne">ne, नेपाली</option>
|
||||
<option value="nl">nl, Nederlands</option>
|
||||
<option value="no">no, Norsk Bokmål</option>
|
||||
<option value="ny">ny, Chichewa</option>
|
||||
<option value="or">or, ଓଡ଼ିଆ</option>
|
||||
<option value="pa">pa, ਪੰਜਾਬੀ</option>
|
||||
<option value="pl">pl, Polski</option>
|
||||
<option value="ps">ps, پښتو</option>
|
||||
<option value="pt">pt, Português</option>
|
||||
<option value="ro">ro, Română</option>
|
||||
<option value="ru">ru, Русский</option>
|
||||
<option value="rw">rw, Kinyarwanda</option>
|
||||
<option value="sd">sd, سنڌي</option>
|
||||
<option value="si">si, සිංහල</option>
|
||||
<option value="sk">sk, Slovenčina</option>
|
||||
<option value="sl">sl, Slovenščina</option>
|
||||
<option value="sm">sm, Gagana Sāmoa</option>
|
||||
<option value="sn">sn, chiShona</option>
|
||||
<option value="so">so, Af Soomaali</option>
|
||||
<option value="sq">sq, Shqip</option>
|
||||
<option value="sr">sr, Српски</option>
|
||||
<option value="st">st, Sesotho</option>
|
||||
<option value="su">su, Basa Sunda</option>
|
||||
<option value="sv">sv, Svenska</option>
|
||||
<option value="sw">sw, Kiswahili</option>
|
||||
<option value="ta">ta, தமிழ்</option>
|
||||
<option value="te">te, తెలుగు</option>
|
||||
<option value="tg">tg, тоҷикӣ</option>
|
||||
<option value="th">th, ภาษาไทย</option>
|
||||
<option value="tk">tk, Türkmençe</option>
|
||||
<option value="tr">tr, Türkçe</option>
|
||||
<option value="tt">tt, татар теле</option>
|
||||
<option value="ug">ug, ئۇيغۇرچە</option>
|
||||
<option value="uk">uk, Українська</option>
|
||||
<option value="ur">ur, اردو</option>
|
||||
<option value="vi">vi, Tiếng Việt</option>
|
||||
<option value="xh">xh, isiXhosa</option>
|
||||
<option value="yi">yi, אידיש</option>
|
||||
<option value="yo">yo, Èdè Yorùbá</option>
|
||||
<option value="zh">zh, 汉语</option>
|
||||
<option value="zu">zu, isiZulu</option>
|
||||
</select>
|
||||
<br> <br> <br>
|
||||
<span tek="aboutcache"></span><br>
|
||||
|
@ -2,7 +2,7 @@
|
||||
"manifest_version": 2,
|
||||
"name": "Ĉu ligoj estas vundeblaj al MITM-atako?",
|
||||
"description": "Skanu FQDN uzante la API",
|
||||
"version": "1.0.20.4",
|
||||
"version": "1.0.20.5",
|
||||
"homepage_url": "https://crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/",
|
||||
"author": "Crimeflare",
|
||||
"permissions": [
|
||||
|
14
addons/urejectCR/README.md
Normal file
14
addons/urejectCR/README.md
Normal file
@ -0,0 +1,14 @@
|
||||
[//]: # (do not edit me; start)
|
||||
|
||||
Versio: _1.0.3_
|
||||
|
||||
[//]: # (do not edit me; end)
|
||||
|
||||
|
||||
- [Pli informo / Elŝuto](../../subfiles/about.urjm.md)
|
||||
- Malgarantio: Ĉi tio NE estas spegulo de suprenflua deponejo. Sinkronigado eble prokrastas.
|
||||
|
||||
-----
|
||||
|
||||
- [More information / Download](../../subfiles/about.urjm.md)
|
||||
- Disclaimer: This is NOT a mirror of upstream repository. Synchronization may be delayed.
|
34
addons/urejectCR/bg.js
Normal file
34
addons/urejectCR/bg.js
Normal file
@ -0,0 +1,34 @@
|
||||
let history = {};
|
||||
chrome.webRequest.onResponseStarted.addListener(i => {
|
||||
if ([403, 406, 410, 429, 451, 462].includes(i.statusCode)) {
|
||||
let iFQDN = (new URL(i.url)).hostname;
|
||||
if (['crimeflare.eu.org', 'ansero.eu.org', 'crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion', 'ansero.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion'].includes(iFQDN)) {
|
||||
return;
|
||||
}
|
||||
let iServer = '?';
|
||||
i.responseHeaders.forEach(x => {
|
||||
if (x.name == 'Server' || x.name == 'server') {
|
||||
iServer = x.value;
|
||||
}
|
||||
});
|
||||
history[iFQDN] = [i.url, iServer, i.statusCode, (new Date()).toUTCString()];
|
||||
}
|
||||
return;
|
||||
}, {
|
||||
urls: ['http://*/*', 'https://*/*'],
|
||||
types: ['main_frame']
|
||||
}, ['responseHeaders']);
|
||||
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
|
||||
if (request && sender) {
|
||||
if (request == 'get') {
|
||||
sendResponse(history);
|
||||
}
|
||||
if (request == 'clear') {
|
||||
history = {};
|
||||
sendResponse(true);
|
||||
}
|
||||
}
|
||||
});
|
||||
chrome.browserAction.onClicked.addListener(() => {
|
||||
chrome.runtime.openOptionsPage();
|
||||
});
|
20
addons/urejectCR/log.html
Normal file
20
addons/urejectCR/log.html
Normal file
@ -0,0 +1,20 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
|
||||
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
|
||||
<title>📝</title>
|
||||
</head>
|
||||
<body style="display:none">
|
||||
<br><br>
|
||||
<b>Detaloj</b><br>
|
||||
<table style="width:90%" border=1>
|
||||
<tbody></tbody>
|
||||
</table>
|
||||
<br>
|
||||
<input id="clear" type="button" value=" Malplenigu liston "><br>
|
||||
<br><br>
|
||||
<b>Nur FQDN</b><br>
|
||||
<textarea id="export" cols=60 rows=20 readonly></textarea>
|
||||
<script src="log.js"></script>
|
||||
</body>
|
||||
</html>
|
18
addons/urejectCR/log.js
Normal file
18
addons/urejectCR/log.js
Normal file
@ -0,0 +1,18 @@
|
||||
function newrow(w) {
|
||||
let tt = document.getElementsByTagName('tbody')[0];
|
||||
let tr = tt.insertRow(tt.rows.length);
|
||||
tr.innerHTML = w;
|
||||
}
|
||||
newrow('<tr><td><b>FQDN</b></td><td><b>Servilo</b></td><td><b>Stato</b></td><td><b>Kie</b></td><td><b>Kiam</b></td></tr>');
|
||||
chrome.runtime.sendMessage('get', g => {
|
||||
for (let k in g) {
|
||||
newrow('<tr><td>' + k + '</td><td>' + g[k][1] + '</td><td>' + g[k][2] + '</td><td><a href="' + g[k][0] + '" rel="noreferrer noopener" target="_blank"> 🔗 </a></td><td>' + g[k][3] + '</td></tr>');
|
||||
document.getElementById('export').innerHTML += k + "\n";
|
||||
}
|
||||
});
|
||||
document.body.style.display = 'block';
|
||||
document.getElementById('clear').addEventListener('click', () => {
|
||||
chrome.runtime.sendMessage('clear', () => {
|
||||
location.reload(true);
|
||||
});
|
||||
});
|
31
addons/urejectCR/manifest.json
Normal file
31
addons/urejectCR/manifest.json
Normal file
@ -0,0 +1,31 @@
|
||||
{
|
||||
"manifest_version": 2,
|
||||
"name": "Kiu retejo malakceptis min?",
|
||||
"version": "1.0.3",
|
||||
"minimum_chrome_version": "60",
|
||||
"homepage_url": "https://crimeflare.wodferndripvpe6ib4uz4rtngrnzichnirgn7t5x64gxcyroopbhsuqd.onion/",
|
||||
"author": "Crimeflare",
|
||||
"incognito": "split",
|
||||
"permissions": [
|
||||
"webRequest",
|
||||
"<all_urls>"
|
||||
],
|
||||
"icons": {
|
||||
"72": "icons/72.png"
|
||||
},
|
||||
"background": {
|
||||
"scripts": [
|
||||
"bg.js"
|
||||
]
|
||||
},
|
||||
"options_ui": {
|
||||
"open_in_tab": true,
|
||||
"chrome_style": false,
|
||||
"page": "log.html"
|
||||
},
|
||||
"browser_action": {
|
||||
"default_icon": {
|
||||
"72": "icons/72.png"
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user