Gebruiker:Magere Hein/rollback.js

In dit artikel zullen we de impact van Gebruiker:Magere Hein/rollback.js in de huidige samenleving analyseren en de implicaties ervan op verschillende gebieden onderzoeken. Gebruiker:Magere Hein/rollback.js is de afgelopen jaren het onderwerp geweest van onderzoek en debat, en de invloed ervan is duidelijk zichtbaar op gebieden als technologie, politiek, cultuur en economie. Door middel van deze analyse zullen we proberen te begrijpen in welke mate Gebruiker:Magere Hein/rollback.js onze manier van denken, communiceren en leven in de hedendaagse wereld heeft getransformeerd. Op dezelfde manier zullen we de uitdagingen en kansen onderzoeken die Gebruiker:Magere Hein/rollback.js voor de toekomst biedt, rekening houdend met de uiteenlopende perspectieven en meningen hierover.
// Created by Gracenotes
// Credits: Porchcrop for some minor improvements. Information shown at ]
// Version with default summary text Dutch by Magere Hein, 2018
 
function addSumLink() {
    var rbnode = , diffnode, index = {}, gebcn = function(a, b, c) { return a.getElementsByClassName(c) };
    if (typeof rollbackLinksDisable == 'object' && rollbackLinksDisable instanceof Array)
        for (var i = 0; i < rollbackLinksDisable.length; i++)
            index] = true;
    if (!('user' in index) && wgCanonicalSpecialPageName == "Contributions" ||
        !('recent' in index) && wgCanonicalSpecialPageName == "Recentchanges" ||
        !('watchlist' in index) && wgCanonicalSpecialPageName == "Watchlist")
        rbnode = gebcn(document.getElementById("bodyContent"), "span", "mw-rollback-link");
    else if (!('history' in index) && wgAction == "history")
        rbnode = gebcn(document.getElementById("pagehistory"), "span", "mw-rollback-link");
    else if (!('diff' in index) && (diffnode = document.getElementById("mw-diff-ntitle2")))
        rbnode = gebcn(diffnode, "span", "mw-rollback-link");
    for (var i = 0, len = rbnode.length; i < len; i++)
        addRollbackSummaryLink(rbnode);
};
 
function confirmRollback() {
    var url = this.href;
    var user = url.match(/from=(*)/);
    if (!user) return;
    user = decodeURIComponent(user.replace(/\+/g, " "));
    var summary = prompt("Bewerkingssamenvatting voor terugdraaien:",
                         "Bewerkingen door ] (]) ] tot de laatste versie van $1. ");
    if (summary == null || summary == "") return false;
    else if (summary == "Bewerkingen door ] (]) ] tot de laatste versie van $1. ")
        return true;
    this.href = this.href.replace("?", "?summary=" + encodeURIComponent(summary) + "&"); 
};
 
function addRollbackSummaryLink(rbnode) {
    var rblink = rbnode.getElementsByTagName("a");
    var alink = rblink.cloneNode(true);
    alink.className = ""; //don't confuse other scripts
    alink.firstChild.nodeValue = "sum";
    alink.onclick = confirmRollback;
    rbnode.insertBefore(alink, rblink.nextSibling);
    rbnode.insertBefore(document.createTextNode(" | "), alink);
};
if (typeof rollbackLinksDisable == 'undefined')
    rollbackLinksDisable = ;
if (typeof rollbackSummaryDefault == 'undefined')
    rollbackSummaryDefault = ""; 
 
$(addSumLink);