Downvote Drumph

/r/The_Donald = garbage

Versión del día 29/11/2016. Echa un vistazo a la versión más reciente.

// ==UserScript==
// @name         Downvote Drumph
// @namespace    http://tampermonkey.net/
// @version      2.1.0
// @description  /r/The_Donald = garbage
// @author       fuck_donald_trump
// @match        *://*.reddit.com/*
// @grant        none
// ==/UserScript==
(()=>{
    'use strict';
    var m=()=>{
        var u = $("[name=uh]").val(), w = 0, downic="rLDnA2z", downsel="XOeCTgS", upic="jcdsjVm", upsel="DUOnJRZ",
		done = JSON.parse(localStorage.getItem("downvoted_d")||"[]"),
        down = JSON.parse(localStorage.getItem("down_d")||"[\"The_Donald\"]"),
		up = JSON.parse(localStorage.getItem("up_d")||"[\"EnoughTrumpSpam\"]"),
		current = (/\/r\/([^\/]*)\//.exec(window.location)||['',''])[1],
		timeouts = [],
        d = (l, r, e)=>{
			if(l.length){
				w=0;
				console.log((e?"Up":"Down")+"voting "+(e?"":"& removing ")+l.length+" posts from /r/"+r+".");
				l.each((i, v)=>{ k(v, e); });
			}
        },
		k=(m, e)=>{
            var name = $(m).attr("data-fullname"), b=true;
            for(var i=0; i<done.length; i++) if(done[i].n === name){ b=false; break; }
            if(b&&m){
                w += Math.random() * 2000 + 1000;
                timeouts.push(setTimeout((m, done, e)=>{
                    done.push({n: name, d: new Date().getTime()});
                    localStorage.setItem("downvoted_d", JSON.stringify(done));
                    $.post("/api/vote?dir="+(e?"1":"-1")+"&id="+name,{ uh: u });
                    if(e) $(m).find(".arrow").removeClass("up").addClass("upmod");
                }, w, m, done, e));
            }
			if(!e) $(m).hide();
            return b;
        },
		g=()=>{
			for(var i=0; i<down.length; i++) d($("[data-subreddit="+down[i]+"]"), down[i]);
			for(var j=0; j<up.length; j++) d($("[data-subreddit="+up[j]+"]"), up[j], true);
		},
		restart=()=>{
			for(var i=0; i<timeouts.length; i++) clearTimeout(timeouts[i]);
			timeouts = [];
			g();
		};


		if(current !== "" && current !== "all"){
            var upicon = $("<span>").addClass((up.indexOf(current)>-1?".up-yes":"up-no") + " dd-icon").css("margin-left", "16px").click((e)=>{
					upicon.toggleClass("up-yes").toggleClass("up-no");
					if(up.indexOf(current)>-1){
                        up.splice(up.indexOf(current), 1);
                    } else {
                        downicon.removeClass("down-yes").addClass("down-no");
                        if(down.indexOf(current)>-1) down.splice(down.indexOf(current), 1);
                    }
                    localStorage.setItem("up_d", JSON.stringify(up));
                    localStorage.setItem("down_d", JSON.stringify(down));
					restart();
				}),
                downicon = $("<span>").addClass((down.indexOf(current)>-1?"down-yes":"down-no") + " dd-icon").css("margin-right", "-13px").click((e)=>{
					downicon.toggleClass("down-yes").toggleClass("down-no");
					if(down.indexOf(current)>-1){
                        down.splice(down.indexOf(current), 1);
                    } else {
                        upicon.removeClass("up-yes").addClass("up-no");
                        if(up.indexOf(current)>-1) up.splice(up.indexOf(current), 1);
                    }
                    localStorage.setItem("up_d", JSON.stringify(up));
                    localStorage.setItem("down_d", JSON.stringify(down));
					restart();
				});
			$(".user")
                .before(upicon)
				.before(downicon);
		}
		
		document.body.addEventListener("DOMNodeInserted", (e)=>{
            if(e.target.tagName==="DIV" && ($(e.target).attr("id")||"").indexOf("siteTable")>-1){
                for(var i=0; i<down.length; i++) d($(e.target).find("[data-subreddit="+down[i]+"]"), down[i]);
				for(var j=0; j<up.length; j++) d($(e.target).find("[data-subreddit="+up[j]+"]"), up[j], true);
			}
        }, true);

        if(down.indexOf(current)>-1) setInterval(()=>{ window.location.reload(); }, 60000+Math.random() * 10000);
        setInterval(()=>{
            var d = new Date().getTime() - (60000*48);
            for(var i=0; i<done.length; i++){
                if(done[i].d < d)
                    done.splice(i, 1);
            }
            localStorage.setItem("downvoted_d", JSON.stringify(done));
        }, 30000);
		g();
    };
	var css = ".dd-icon {display:inline-block;height:16px; width:16px; cursor:pointer;} .down-no {background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAPCAYAAADtc08vAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AsdEyISRVglMAAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAAB30lEQVQoz22TvWtUURTEf3PesiFKGq3UQkiZbCeKpAhIGguxSGWVzr9AA9lCrCQKVmJpZS8BFa0UG7UwnWuIgp2k8itRk7zdfWcs9q1mw144xb33zJwZ7lxlpiQxXJJ87O7GjV76nEFpQoKG2Nhenr1u+38z0ACwLUkeHiaeMczbKO0iLGdBkzEr6ukec2fAAiM8tgOIofIRpAfSEyJN2A4f6hmxcFD+wMI/UGQ9RHaMJTgMHviiCqkyGIwkR1CNG9aYvr+5uN93rQSH1PvVrU5q4DsFEjjg+Ol7m4uJizSkkSAaP8u8+LubVw39gAypCrmPZINcE1Rm+ute9TDtSFMYsgg9FsDEaudpZRYkopafAttWZYoQGVLaKHHY7ALPuu3WUrzb2lXZbl2y/SZNmabIdKRdpBnWYI8jzV6a5912a8m2NEyWJBe33r+SdDZEUQdBmY6QUsJA3/Cy125d3ikrTTUDHYymJE/c7rxIMy+oaoKiJkBivVxpzR3EjLzt+tauypXWwlQzHjULlROF9pqN2G8W6k429Lpcac29/fJH45IIwJkTkzz5tKPv12auFGKtl2700zJe216evfDx277OnzoyGprMVGaGbQ3r849SAEfvfHjQXO3cHH64cfUXJCsqR3fwzt8AAAAASUVORK5CYII=') center no-repeat;} .down-yes {background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAPCAYAAADtc08vAAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AsdEyMZy5HN+QAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAACLUlEQVQoz3VSTUuUYRQ95z7v65hOgSQFgSO4jAja1KoSDBKJQPukhbToB7QIWvTpok2r1tEiCjKCvqSMaGWLapNgUVBIwRRENgnTqDPjvO89LXRsTL1wN4fznHueew/dnSRRL5KaLicXBOxsMjIT0SqJEBk/tsR2RtI/MoAIACSRpOpgNdXWyy9/7nn7o0ICYdumZl3t2dyEVSoiCUlaDgvfijV9+FWFIGUztoKxzAEAAliiREYCNEGUYAQUG7mmQKN9AIiNRsBcMAEmAHGgrfWFFebmU6UCUuOCKwKqpkpXGxbli/OHjAhGIHGo5qpVE20BICNdEgWoUvONnwqVgSgwxEYEAyVY1L4u9M4mOvXiy0xSc3nqSgUkhXIiARTA6XKqp5OlLhK3Amnrm0LY15X11pgjBIBa6k8O3sv3jOVnrZx4aoTHRhFgKgSSnjI4QgYtqIS+rta54f6OUZKDJolxsAOjxztf7e/KVtsyIUSkAQiuhVZxKujh5eZkaFd2e/VzZbi/4xnJQUkLm10MUs+Dw7nx3bnWJBjNBXPAVC6x9vxaJt7Q7jvO3ZmbuHKsjeRrX0zk0mkWRbofHcm92ZtrDV7fdRRD+XfoHDjN8bM9E6W5yhDJYj0Uy27rvuDk8dHc/e7OlqoLZWdUQeEreievvyd5AkAfyT9onNzY1cS5iN88OfJ95vzY1Ox0sXQXwG8At0lebHwHd6e7W6NI6qqL3JB06f+gFQqFJe5fCwo4yopE2VUAAAAASUVORK5CYII=') center no-repeat;} .up-no {background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAPCAYAAADtc08vAAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AsdEyQk3LgXLwAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAAB2klEQVQoz22SvWtUURDFf+e+lwTZGLRIE6K2Ngr5QBQktU2wSxUbC8FaN4vJH2BSBUQCNhYWFmKnhaCFkEKIlYUQbBVFiaC4q8lm3xyLty/7oQMDl2HumTPnDLZlWxGhiJBtFT++CqB15+Kz5uqlmwBV33DKdgJMGQIsyc36zHs6nbM4EvnIw9HFWzdGFpaDoUh9b8XeR0tyqz7zgqI4A3SAgoil9vPNe5LsX3v/ABjAP785mzztVn12y+E5lERKgVKBlGMvNlfmG2li0vHlQ2+qbQFIcnNlboOIZWACyTgSdtYFCaRPpGxrfH3nfuw3pbEaClvtx2t58e7lpovDJaRj3WZjJxw9ACzMZ2X5o9r6zl3bytYuT40evnn6gM7BNcQYwkggAU4YIZU1A/YJiuL86sL0VDp56lXWmN6rc/D7NpSrlEYARj0GR0qlbu04RWe+2N0mZ791Bfs11TfcAWbBNWzhyAhA6Tt4twRwwhbtP1cVttTvpeRW48K2XZzr08Ck7Mn4xtvrleg9G+3h28DlsipFc5f/wJyjyAc+VmCORDjDIeyMsFGh/j5J2B4EUDWkol5pAMYpDfdJGgToo6JulmLhsjbEVBK5SrhBIUrf48jW8i78P7Z/AZi8IeOXgjxmAAAAAElFTkSuQmCC') center no-repeat;} .up-yes {background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAPCAYAAADtc08vAAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AsdEyQQ/QzjmgAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAACfklEQVQoz21TTWiUVxQ9531vZhJiQCjBRRDRRbVIqVVEt+7cmLgxSjddqmTXinXRLhRTUUFdqJhFForuJCj+kAYKEamiJg3xh1BSUEJFTaaJGZKZ+eZ77x4XmYlRvPDg3cu55x7eeReSKIlmRjNjIwcAqy7cUpYeBIBG/fMDSW5ZwTWaVZ1/UT6zN9YGe6WQ9cU3E8mXCDw+BhVqcrmCZHGgcu6HNfb6n1B7M5HY7OuuQtfRKsluxUC4ZKnJAxAAwOJis3QxvfzzFpt6ScgMISA+H/KpO75L0iTJkwoZkfglgsXxiZekk2l/T2f893ETYohwThChSinG8Xsra3daf5S0QPK8zAgSXgAw/cpbWjmb9v/eFUcHm5WWDaQAB8AIOtP8rIXRgXaQ3RZDK507IYne/h7IufXbLtVunt4XR+9SWTWCjou6RAgA629UmkIYub0ait2Wlr9CpXSYKhWPyOdPZH9cCDAzSBGAhbFBqTznIEvcqnXRrdtiAIm5d86mXvnmQ9cjYtbj0dy6kz4/lN99BACEUAuKYXOYeNSChVnCYuLav0Gh46ci8k3PbPyvQnrjVIJcgfD5Ti+f38HlXuYKslLxPshvkXgHMpmZmUHfsWNPfus51ep9bv/w0+cvvwMAEh4SwOUUaOSEwGBgb/9g4dqLmbUgz4aQPfh+44ZfzOzKJzbWv+viJck5SAlknCxlPP+05Ir/z42RvEpyK8npBt59OriuxOcdoARmydcrfWKVeYwNP1oBoEnSWkkdDbzDl8I51s1zZub+/HVftmnr9j0AKgCipANLaj9bpvoWzj+M05PlWPyvau/f1vT+bTry5PFNAGhra2tZjv8AeQanwCFA6jUAAAAASUVORK5CYII=') center no-repeat;} ";
    $("body")
		.append($("<style>").html(css))
		.append($("<script>").attr("type", "text/javascript").html("("+m.toString()+")();"));
})();
长期地址
遇到问题?请前往 GitHub 提 Issues。