// ==UserScript== // @name OP only // @version 1.4 // @description Voir seulement les posts de l'auteur // @author NocturneX // @match http://www.jeuxvideo.com/forums/42-* // @match https://www.jeuxvideo.com/forums/42-* // @match http://www.jeuxvideo.com/forums/1-* // @match https://www.jeuxvideo.com/forums/1-* // @grant GM_xmlhttpRequest // @grant GM_addStyle // @icon http://image.noelshack.com/fichiers/2017/25/7/1498400760-puma-prepa-gif.gif // @require https://raw.githubusercontent.com/NocturneJVC/jvc_script/master/jvcapi.js // ==/UserScript== (function() { 'use strict'; let groupe = document.querySelectorAll(".group-two"); let page_p = 0; let page_last = 0; let topicInfo = JVCAPI.topic.getUrlInfos(); let auteur = ""; let nb = 0; function getMessages(){ desactiveTopicLive(); let current_page = document.querySelector(".page-active"); current_page = current_page !== null ? current_page.innerHTML.trim() : 1; if(page_p === 0) { document.querySelector(".conteneur-messages-pagi").innerHTML = `
Récupération des messages de l'auteur page 1
`; page_p = 1; } if(page_p > page_last) { document.querySelector("#op-progress").innerHTML = "Récupération des messages de l'auteur terminée (nb: "+nb+")."; JVCAREtoLINK(); return; } let info = topicInfo; info.page = page_p; document.querySelector("#op-progress > span").innerHTML = page_p; JVCAPI.topic.getMessages(info, function (o) { if(o.error) { document.querySelector("#op-progress").innerHTML = o.error; return; } if(page_p == 1) { auteur = o.posts[0].pseudo; } o.posts.forEach(function (post) { if(post.pseudo.toLowerCase() == auteur.toLowerCase()) { document.querySelector("#zone-post").innerHTML += postHTML(post); nb++; } }); page_p++; getMessages(); }); } if(groupe !== null) { document.querySelector(".bloc-liste-num-page").querySelectorAll(".lien-jv").forEach(function (o) { let r = o.innerHTML.trim(); if(r !== "»" && r !== "«") page_last = parseInt(r); }); page_last = page_last === 0 ? 1 : page_last; groupe.forEach(function (g) { let bt = document.createElement("a"); bt.innerHTML = `Auteur seulement`; bt.onclick = function () { getMessages(); }; g.appendChild(bt); }); GM_addStyle(`#op-progress{text-align: center; font-size: 1.2em;}`); } function postHTML(post) { return `
`+post.pseudo+`
`+post.date+` / Page originale: `+post.page+`
`+post.message+`
`; } function JVCAREtoLINK() { document.querySelectorAll(".bloc-contenu").forEach(function (a) { a.querySelectorAll(".JvCare").forEach(function(o){ let miniature = o.querySelector(".img-shack"); if(miniature !== null) { o.innerHTML = `${o.innerHTML}`; } else { o.innerHTML = `${o.innerHTML}`; } }); }); } let desactiveTopicLiveFait = false; function desactiveTopicLive() // Pour éviter les problèmes avec TopicLive { if(desactiveTopicLiveFait) return; let nouveauxMessages = []; addEventListener("topiclive:newmessage", function(event){ nouveauxMessages.push(event.detail.id); }); let en = []; addEventListener("topiclive:doneprocessing", function(){ nouveauxMessages.forEach(function (element, index, array){ document.querySelector("div[data-id='"+element+"']").remove(); console.log("[OP only] Message "+element+" supprimé"); }); nouveauxMessages = []; }); desactiveTopicLiveFait = true; } })();