diff --git a/addon_firefox/whyrejectme/bg.js b/addon_firefox/whyrejectme/bg.js new file mode 100644 index 000000000..a60583fa1 --- /dev/null +++ b/addon_firefox/whyrejectme/bg.js @@ -0,0 +1,31 @@ +let history = {}; + +browser.webRequest.onResponseStarted.addListener(i => { + if (i.statusCode == 403) { + let iFQDN = (new URL(i.url)).hostname; + let iServer = 'Unknown'; + i.responseHeaders.forEach(x => { + if (x.name == 'Server') { + iServer = x.value; + } + }); + let iDate = (new Date()).toUTCString(); + history[iFQDN] = [i.url, iServer, iDate]; + } + return; +}, { + urls: ['http://*/*', 'https://*/*'], + types: ['main_frame'] +}, ['responseHeaders']); + +browser.runtime.onMessage.addListener((request, sender, sendResponse) => { + if (request && sender) { + if (request == 'get') { + sendResponse(history); + } + if (request == 'clear') { + history = {}; + sendResponse(true); + } + } +}); \ No newline at end of file diff --git a/addon_firefox/whyrejectme/log.html b/addon_firefox/whyrejectme/log.html new file mode 100644 index 000000000..611fb9c81 --- /dev/null +++ b/addon_firefox/whyrejectme/log.html @@ -0,0 +1,17 @@ + + + Log + + + + +
+
+ ↑ Details
+  → Action:
+ ↓ FQDN only
+
+ + + + \ No newline at end of file diff --git a/addon_firefox/whyrejectme/log.js b/addon_firefox/whyrejectme/log.js new file mode 100644 index 000000000..8ea37c787 --- /dev/null +++ b/addon_firefox/whyrejectme/log.js @@ -0,0 +1,22 @@ +function newrow(w) { + let tt = document.getElementsByTagName('tbody')[0]; + let tr = tt.insertRow(tt.rows.length); + tr.innerHTML = w; +} + +newrow('FQDNServerWhereWhen'); + +browser.runtime.sendMessage('get').then(g => { + for (let k in g) { + newrow('' + k + '' + g[k][1] + 'Link' + g[k][2] + ''); + document.getElementById('export').innerHTML += k + "\n"; + } +}); + +document.body.style.display = 'block'; + +document.getElementById('clear').addEventListener('click', () => { + browser.runtime.sendMessage('clear').then(() => { + location.reload(true); + }); +}); \ No newline at end of file diff --git a/addon_firefox/whyrejectme/manifest.json b/addon_firefox/whyrejectme/manifest.json new file mode 100644 index 000000000..87f2bf717 --- /dev/null +++ b/addon_firefox/whyrejectme/manifest.json @@ -0,0 +1,31 @@ +{ + "manifest_version": 2, + "name": "Which website rejected me?", + "description": "Your website rejected me, but I know I'm going to be okay.", + "version": "1.0.0", + "author": "Maslin Bossé", + "permissions": [ + "webRequest", + "" + ], + "icons": { + "32": "icons/32.png" + }, + "background": { + "scripts": [ + "bg.js" + ] + }, + "options_ui": { + "browser_style": false, + "open_in_tab": true, + "page": "log.html" + }, + "applications": { + "gecko": { + "id": "urejectme@searxes.danwin1210.me", + "strict_min_version": "56.0", + "update_url":"https://searxes.danwin1210.me/collab/addon/au.php?for=ureject" + } + } +} \ No newline at end of file