NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name 1337 Wall of Shame // @version 0.1.0 // @description Say no more to toxic students // @author ahaddadi // @homepageURL https://github.com/AmmarHaddadi/1337-wall-of-shame // @updateURL https://raw.githubusercontent.com/AmmarHaddadi/1337-wall-of-shame/refs/heads/main/script.js // @downloadURL https://raw.githubusercontent.com/AmmarHaddadi/1337-wall-of-shame/refs/heads/main/script.js // @match profile.intra.42.fr // @match profile.intra.42.fr/users/* // @icon https://www.google.com/s2/favicons?sz=64&domain=42.fr // @license MIT // ==/UserScript== const res = await fetch("https://raw.githubusercontent.com/AmmarHaddadi/1337-wall-of-shame/refs/heads/main/blacklist.json"); const blacklist = await res.json(); window.addEventListener('load', function() { 'use strict'; // Main page correction section if (window.location.href == "profile.intra.42.fr") { let correctors = document.querySelectorAll("div.bg-white:nth-child(2) > div:nth-child(1) > div:nth-child(2) > div"); correctors.forEach((c) => { const txt = c.textContent; for (let mf of blacklist) { if (txt.includes(mf.username)) { c.style.cssText = 'background-color: red;' } } }) } });