NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript==
// @name Real Ignore User
// @version 1337
// @description Remove the posts of users you ignore completely and not just hide it.
// @author DrDoof
// @license MIT
// @match *://hackforums.net/showthread.php?*
// @match *://hackforums.net/usercp.php?action=editlists
// @grant GM_addStyle
// @grant GM_setValue
// @grant GM_getValue
// ==/UserScript==
const replacements = ['rattle', 'nonsense', 'literal trash', 'blah blah', 'gibberish', 'yada yada'];
GM_addStyle('.ignored_post{display:none;}');
(function() {
if (-1 < window.location.href.indexOf("editlists")) {
let ignoredUsers = [];
document.querySelectorAll('#ignore_list span').forEach(e => ignoredUsers.push(e.innerText));
GM_setValue('ignoredUsers', ignoredUsers);
} else {
let ignoredUsers = GM_getValue('ignoredUsers');
if (ignoredUsers !== undefined) {
let regex = /\)(.*).{7}$/;
let citations = document.querySelectorAll('.mycode_quote > cite');
citations.forEach(e => {
let data = e.innerText.trim().match(regex);
if (data !== null)
if (ignoredUsers.includes(data[1]))
e.parentElement.innerHTML = `<cite>${e.innerHTML}</cite>${randomReplacement()}`;
});
} else
console.log("Ignored users hasn't been fetched yet");
}
})();
function randomReplacement() {
return replacements[Math.floor(Math.random() * replacements.length)];
}