In this article we are going to address the topic of
User:Epicgenius/rollback.js from a broad and detailed perspective. This topic has been the subject of debate and study in different areas, so it is relevant to analyze it from various disciplines and approaches. Throughout the article, we will explore different aspects related to
User:Epicgenius/rollback.js, including its impact on society, its evolution over time, and possible future implications. In addition, we will immerse ourselves in the different opinions and positions that exist around this topic, with the aim of offering a complete and balanced vision. Through this comprehensive approach, we seek to provide the reader with a deep and enriching understanding of
User:Epicgenius/rollback.js, thus enriching knowledge and reflection on this topic.
// Created by Gracenotes
// Derived from ]
// Credits: Porchcrop for some minor improvements. Information shown at ]
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) && mw.config.get('wgCanonicalSpecialPageName') == "Contributions" ||
!('recent' in index) && mw.config.get('wgCanonicalSpecialPageName') == "Recentchanges" ||
!('watchlist' in index) && mw.config.get('wgCanonicalSpecialPageName') == "Watchlist")
rbnode = gebcn(document.getElementById("bodyContent"), "span", "mw-rollback-link");
else if (!('history' in index) && mw.config.get('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("Enter summary for rollback (or leave as current to use default summary):",
"Reverted edits by ] (]) to last version by $1");
if (summary == null || summary == "") return false;
else if (summary == "Reverted edits by ] (]) to last version by $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);