NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name PurgeGordon // @description No more gordon messages after the initial load of messages // @version 1.00 // @match http://*.minethings.com/miners/list_miners // @grant none // @author Zaikantos // @require http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js // ==/UserScript== (function() { 'use strict'; //make JQuery work jQuery.noConflict(); //stop chat updater pex.stop(); //chat updater script in page //see source of *.minethings.com/miners/list_miners var script = document.getElementById("fullcenter").childNodes[1].childNodes[7].innerHTML; //grab user's numerical ID, as this is used in the updater to not print your own messages var index = script.indexOf("chat.minerId !=")+16; var stringWithIndex = script.substring(index); var userID = stringWithIndex.substring(0, stringWithIndex.indexOf(")")); //We use this instead of a JQuery call in the PeriodicalExecuter var chatsDiv = document.getElementById("ChatsDiv"); //new PeriodicalExecuter //mostly identical to the one found in the source of the HTML, with an extra if statement to check for gordon and no more jquery var chat = new PeriodicalExecuter(function(pe) { new Ajax.Request("/php/getChats.php?lastChatId="+lastChatId, { asynchronous:true, evalScripts:true, onComplete:function(request, json) { //We don't use evalJSON because greasemonkey doesn't like it data = jQuery.parseJSON(request.responseText) if (lastChatId != data.lastChatId) for (var i = 0; i < data.chats.length; i++) { chat = data.chats[i]; //new line, removes gordonstretch from chat if(chat.minerName != "gordonstretch") { if (lastChatId == 0 || chat.minerId != userID) { //uses userID if (chatIgnores.indexOf(chat.minerName) == -1) chatsDiv.insert(chat.text); else chatsDiv.insert("<div style=\"display:inline;font-size:6px;\">[ignored] </div>"); } } } if (data.timestamp != undefined) timestamp = data.timestamp; lastChatId = data.lastChatId; UpdateTimestamp("timestamp"); if (atBottom) new Effect.Tween("ChatsDiv", chatsDiv.scrollTop, chatsDiv.scrollHeight, {duration: 1.0}, "scrollTop"); } }); atBottom = (lastChatId == 0 || chatsDiv.scrollTop >= (chatsDiv.scrollHeight - 510));}, 3); //run PeriodicalExecuter chat.execute(); })();