aboutsummaryrefslogtreecommitdiffstats
path: root/addons/code
diff options
context:
space:
mode:
authorcesar <cesar@noreply.codeberg.org>2021-03-22 00:02:01 +0100
committercesar <cesar@noreply.codeberg.org>2021-03-22 00:02:01 +0100
commit7b5dc0a5058936a82920fdb7ab88e7120407b601 (patch)
treea092847a91f6fc2e4e53f88d981de027937b828f /addons/code
parent23bac08fee40a32c7ddc1702f2b407d8c17be941 (diff)
downloadcloudflare-tor-7b5dc0a5058936a82920fdb7ab88e7120407b601.tar.lz
cloudflare-tor-7b5dc0a5058936a82920fdb7ab88e7120407b601.tar.xz
cloudflare-tor-7b5dc0a5058936a82920fdb7ab88e7120407b601.zip
Update 'addons/code/bcma/cs.js'
Diffstat (limited to 'addons/code')
-rw-r--r--addons/code/bcma/cs.js49
1 files changed, 49 insertions, 0 deletions
diff --git a/addons/code/bcma/cs.js b/addons/code/bcma/cs.js
new file mode 100644
index 00000000..82be38ef
--- /dev/null
+++ b/addons/code/bcma/cs.js
@@ -0,0 +1,49 @@
+if (document.body && !location.hostname.endsWith('.onion')) {
+ browser.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;
+ });
+ browser.runtime.sendMessage(['cs', location.hostname]);
+} \ No newline at end of file