saumonarcenciel / JVSafe

// ==UserScript==
// @name         JVSafe
// @version      1.1
// @description  Détruit les insultes pour vous éviter les sanctions
// @author       NocturneX pour le code + Saumon pour l'édition du texte
// @match        http://www.jeuxvideo.com/forums/*
// @match        http://m.jeuxvideo.com/forums/*
// @updateURL    
// @grant       GM_xmlhttpRequest
// @grant       GM_getValue
// @grant       GM_setValue
// @grant       GM_listValues
// @grant       GM_deleteValue
// @connect     
// ==/UserScript==

(function() {
    var version = "1.3.6";
    
    var code = [];
    var ctnCode = [];
    var numCode = 0;
    var parCode = [];
        

   
        
    
    addCode(":c2:", "'C.2 - Respect de la tranche d'âge : Le Blabla 18-25 Ans s'adressant aux personnes ayant une affinité comprise entre 18 et 25 ans, les contenus, titres de topic ou effets de mode jugés trop puériles peuvent donc se voir supprimés et sanctionnés. Tout effet de mode du 15-18 ou du -15 pourra être supprimé sans préavis (Délire Ruquier, etc). Pour poster des contenus plus légers, merci de vous rendre sur le blabla -15 ou le blabla 15-18 ans.");
    addCode("ferme ta gueule", "aurais-tu l'amabilité de te taire ?");
    addCode("FTG", "aurais-tu l'amabilité de te taire ?");
    addCode("ftg", "aurais-tu l'amabilité de te taire ?");
    addCode("fdp", "[Censure]");
    addCode("FDP", "[Censure]");
    addCode("TG", "tu m'insupportes");
    addCode("tg", "tu m'insupportes");
    addCode("ta gueule", "tu m'insupportes");
    addCode("tagueul", "tu m'insupportes");
    addCode("tu m'insupportese", "tu m'insupportes");
    addCode("taggle", "[Censure]");
    addCode("salo", "[Censure]");
    addCode("je la baise", "je la trouve jolie");
    addCode("je te baise", "Je ne suis pas de ton avis");
    addCode("pute", "perle");
    addCode("salope", "perle");
    addCode("connar", "[Censure]");
    addCode("conar", "[Censure]");
    addCode("gauchiasse", "personne de gauche");
    addCode("individu à la peau noiree", "individu à la peau noire");
    addCode("bougnoul", "individu à la peau noire");
    addCode("tocar", "[Censure]");
    addCode("[Censure]d", "[Censure]");
    addCode("abruti", "[Censure]");
    addCode("négro", "individu à la peau noire");
    addCode("negro", "individu à la peau noire");
    addCode("nègre", "individu à la peau noire");
    addCode("nique tes morts", "[Censure]");
    addCode("je te baise", "Je te respecte");
    addCode("bien fait pour sa gueule", "(J'allais dire quelque chose, puis non en fait...)");
    addCode("negre", "individu à la peau noire");
    addCode("grosse conne", "[Censure]");
    addCode("pauvre con", "[Censure]");
    addCode("sous merde", "(j'allais te manquer de respect mais je me suis ravisé)");
    addCode("sous-merde", "(j'allais te manquer de respect mais je me suis ravisé)");
    addCode("origine des agresseurs", "La source est-elle fiable");
    addCode("origine de l'agresseur", "La source est-elle fiable");
    addCode("padamalgam", "attendons d'en savoir plus");
    addCode("l'odeur des noirs", "J'allais dire un truc mais finalement non");
    addCode("sombre fdp", "je ne t'apprécie pas");
    addCode("salaud", "méchant bonhomme");
    addCode("ta bite", "ton organe reproducteur mâle");
    addCode("une bite", "un organe reproducteur mâle");
    addCode("petite bite", "petit organe reproducteur mâle");
    addCode("sale arabe", "[Censure]");
    addCode("sales arabes", "[Censure]");
    addCode("[Censure]ard", "[Censure]");
    addCode("sale singe", "[Censure]");
    addCode("[Censure]p", "[Censure]");
    addCode("sales singes", "[Censure]");
    addCode("sale merde", "(J'ai failli t'insulter puis j'ai décidé de ne pas le faire)");
    addCode("trou du cul", "[Censure]");
    addCode("trouduc", "[Censure]");
    addCode("fils de chien", "[Censure]");
    addCode("[Censure]ne", "[Censure]");
    addCode("nique la france", "[Censure]");
    addCode("[Censure]ul", "[Censure]");
    addCode("sale blanc", "[Censure]");
    addCode("sale juif", "[Censure]");
    addCode("sale nègre", "[Censure]");
    addCode("sale individu à la peau noire", "[Censure]");
    addCode("salo:", "vilain garnement");
    addCode("enculé", "méchant bonhomme");
    addCode("goy", "individu non juif");
    addCode("goyim", "personne de confession juive");
    addCode("negresse", "femme à la peau noire"); // No ban stp
    addCode("ducon", "vilain garnement"); /* ou */ addCode(":dark:", "[[sticker:p/1kgx]]");
    addCode("renoi", "homme à la peau noire");
    addCode("sous-merde", "individu peu fréquentable");
    addCode("pakpak", "personne fidèle à ses convictions");
    addCode("espèce de singe", "[Censure]");
    addCode("gouine", "femme dont je n'adhère pas à ses principes moraux");
    addCode("nique ta", "va cajoler ta");
    addCode("foutre", "faire");
    addCode("sale chienne", "[Censure]");
    addCode("ta race", "[Censure]");
    addCode("va te faire mettre", "va manger un twix");
    addCode("va te faire foutre", "va cuisiner un cassoulet");
    addCode("gaucho", "personne de gauche");
    addCode("chienasse", "[Censure]");
    addCode("enculé de ta race", "(Je voudrais dire ce que je pense mais je vais respecter la charte pour une fois)");
    addCode("hitler", "le dirigeant Allemand ayant mal tourné lors de la seconde guerre mondiale");
    addCode("pd", "homosexuel");
    addCode("sale homosexuel", "homosexuel");
    addCode("islamo-gauchiste", "(Je voudrais dire ce que je pense mais je vais respecter la charte pour une fois)");
    addCode("ntm", "respecte ta maman");
    addCode("flamish", "(Je voudrais dire ce que je pense mais je vais respecter la charte pour une fois)");
    addCode("feuj", "juif");
    addCode("beurette", "femme arabe");
    addCode("à mort les", "(Je voudrais dire ce que je pense mais je vais respecter la charte pour une fois)");
    addCode("mort aux", "[Censure]");
    addCode("chinetok", "chinois");
    addCode("guignol", "petit rigolo");
    addCode("consanguin", "(J'allais tenir un propos extrême mais je me suis ravisé, ouf)");
    addCode("enculay", "vilain garnement");
    addCode("cépalislam", "(J'allais dire un truc mais je préfère me censurer)");
    addCode("bâtar", "(J'ai failli t'insulter puis j'ai décider de ne pas le faire)");
    addCode("batar", "(J'ai failli t'insulter puis j'ai décider de ne pas le faire)");
    addCode("batard", "(J'ai failli t'insulter puis j'ai décider de ne pas le faire)");
    addCode("BATARD", "(J'ai failli t'insulter puis j'ai décider de ne pas le faire)");
    addCode("suce-boule", "vilain troll :hap:");
    addCode("je baise ton", "je respecte ton");
    addCode("je baise tes", "je respecte tes");
    addCode("j'encule", "je tenais à montrer mon respect");
    addCode("va mourir", "je te recommande de trouver de l'aide");
    addCode("va crever", "laisse moi s'il te plaît");
    addCode("crétin", "(J'allais dire une bétise, bon passons)");
    addCode("enfoiré", "petit frippon");
    addCode("bande d'enfoirés", "bande de trolls");
    addCode("bande d'enculés", "bande de trolls"); /* ou */ 
    addCode("bande d'enculay", "bande de trolls");
    addCode("collabo", "(J'allais dire collabo mais je ne suis pas sûr que le mot soit le bon)");
    addCode("ton claque merde", "ta bouche");
    addCode("salopard", "(J'allais dire une insulte mais je tiens à mon pseudo)");
    addCode("abruti", "troll");
    addCode("un abruti", "un trolleur");
    addCode("biatch", "femme dont je ne partage pas les principes moraux");
    addCode("bicot", "un homme d'origine africaine");
    addCode("un bicot", "un homme d'origine africaine");
    addCode("un boudin", "une femme obèse mais belle malgré tout");
    addCode("clochard", "personne sans domicile fixe qui a besoin d'aide");
    addCode("un clochard", "une personne pauvre que j'aiderais si j'en avais moi même les moyens");
    addCode("casse-couille", "trouble-fête");
    addCode("trouble-fêtes:", "trouble-fête");
    addCode("sa va", "ça va");
    addCode("une conne", "personne dont je ne partage pas la façon de penser");
    addCode("cette conne", "cette personne dont je ne partage pas la façon de penser :hap:");
    addCode("conasse", "personne dont je ne partage pas la façon de penser");
    addCode("un connar", "un troll");
    addCode("crevure", "troll");
    addCode("le débile", "(J'ai failli dire une bétise, heureusement je respecte la charte)");
    addCode("débilos", "(J'ai failli dire une bétise, heureusement je respecte la charte)");
    addCode("débil mental", "(J'ai failli dire une bétise, heureusement je respecte la charte)");
    addCode("ducon", "(Encore un peu et j'enfreingnais la charte)");
    addCode(":grr:", "[[sticker:p/zu9]]");
    addCode("des conneries", "des sottises");
    addCode("dugland", "le troll");
    addCode("ordure", "[Censure]");
    addCode("déchet", "[Propos potentiellement insultant]");
    addCode("garce", "perle");
    addCode("fiotte", "(J'allais t'insulter puis finalement non, mieux vaut qu'on se calme)");
    addCode("gogol", "(J'allais t'insulter puis finalement non, mieux vaut qu'on se calme)");
    addCode("glandu", "(J'allais t'insulter puis finalement non, mieux vaut qu'on se calme)");
    addCode("garage à bite", "personne dont j'ai du mal à donner un avis favorable");
    addCode("imbécile", "[Censure, je tiens à mon pseudo]");
    addCode("jean-foutre", "[Censure, je tiens à mon pseudo]");
    addCode("lopette", "(Hum vous m'aurez compri)");
    addCode("tapette", "(Hum vous m'aurez compri)");
    addCode("tafiole", "(Hum vous m'aurez compri)");
    addCode("morue", "femme dont le physique ne me plaît pas");
    addCode("merdeux", "petit voyous");
    addCode("minable", "(J'allais lâcher une insulte mais je ne le ferai pas finalement)");
    addCode("mange-merde", "(Je préfère censurer le mot)");
    addCode("lol", ":noel:");
    addCode("xd", ":hap:");
    addCode("ptdr", ":lol:");
    addCode("^^", ":cool:");
    addCode("tukif", "[Censure]");
    addCode("youporn", "[Censure]"); 
    addCode("beeg", "[Censure]");
    addCode("xnnx", "[Censure]");
    addCode("xhamster", "[Censure]");
    addCode("pornz", "[Censure]");
    addCode("batporno", "[Censure]");
    addCode("youjizz", "[Censure]");
    addCode("redtube", "[Censure]");
    addCode("sombre merde", "[Censure]");
    addCode("sombre con", "[Censure]");
    addCode("de con", "[Censure]");
    addCode("sale con", "[Censure]");
    addCode("jerry", "j'ai rigolé");
    addCode("grognasse", "(J'ai manqué de poster une insulte)");
    addCode("sale gay", "[Censure]");
    addCode("[Censure]pe", "[Censure]");

 
    
    //////////////////////////////////////////////////////
    
    function addCode(cod, par)
    {
        code[numCode] = cod;
        ctnCode[cod] = par;
        parCode[par] = cod;
        numCode++;
    }

    document.getElementById("message_topic").addEventListener('keyup', function(event) 
    {
        for(var i= 0; i < code.length; i++)
        {
            document.getElementById("message_topic").value = document.getElementById("message_topic").value.replace(code[i], ctnCode[code[i]]);
            
        }
    });

    for(var i= 0; i < document.getElementsByClassName("img-stickers").length; i++)
     {
         var son_code = document.getElementsByClassName("img-stickers")[i].getAttribute("src").replace("http://jv.stkr.fr/p/", "");
         
         if(parCode["[[sticker:p/"+son_code+"]]"] !== undefined)
         {
             document.getElementsByClassName("img-stickers")[i].setAttribute("title", parCode["[[sticker:p/"+son_code+"]]"]);
             document.getElementsByClassName("img-stickers")[i].setAttribute("alt", parCode["[[sticker:p/"+son_code+"]]"]);
         }
         
     }
    
    document.getElementsByClassName("jv-editor")[0].insertAdjacentHTML('afterend', '> <a title="Règles" href="http://www.jeuxvideo.com/forums/blabla-18-25-ans/regles-forum/51" target="_blank " style="font-size: 1em">Afficher les règles</a><br>');
    document.getElementsByClassName("jv-editor")[0].insertAdjacentHTML('afterend', '> <a title="Charte" href="http://www.jeuxvideo.com/forums_charte.htm" target="_blank" style="font-size: 1em">Afficher la charte</a><br>');
    
    
    GM_xmlhttpRequest({


        onload: function(response) {
               if(response.responseText != version)
               {
                   document.getElementsByClassName("jv-editor")[0].insertAdjacentHTML('afterend', '> <a style="color: red" href="http://noctex.craym.eu/code.user.js" target="_blank">Une nouvelle version du script "Code Stickers" est disponible !</a><br>');
               }
           
        }
    });
})();