User:PB2008/test.js: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
Created page with "// References: MediaWiki:Gadget-rollback-summary.js from zhwp (https://zh.wikipedia.org/wiki/MediaWiki:Gadget-rollback-summary.js) // Reference2: MediaWiki:Revertpage from 52pokewiki (https://wiki.52poke.com/wiki/MediaWiki:Revertpage) (function rollbackSummary($, mw) { var batchConv = require('ext.gadget.HanAssist').batchConv; mw.messages.set(batchConv({ 'rollback-summary-custom': { hans: '已还原$1([[..." |
mNo edit summary |
||
| Line 1: | Line 1: | ||
// References: [[ |
// References: [[User:KuduIO/Rollback_summary-g.js]] from simplewp (https://simple.wikipedia.org/wiki/User:KuduIO/Rollback_summary-g.js) |
||
function addSumLink() { |
|||
// Reference2: [[MediaWiki:Revertpage]] from 52pokewiki (https://wiki.52poke.com/wiki/MediaWiki:Revertpage) |
|||
var rbnode = [], diffnode, index = {}, gebcn = document.getElementsByClassName |
|||
(function rollbackSummary($, mw) { |
|||
? function(a, b, c) { return a.getElementsByClassName(c) } |
|||
var batchConv = require('ext.gadget.HanAssist').batchConv; |
|||
: getElementsByClassName; |
|||
if (typeof rollbackLinksDisable == 'object' && rollbackLinksDisable instanceof Array) |
|||
mw.messages.set(batchConv({ |
|||
for (var i = 0; i < rollbackLinksDisable.length; i++) |
|||
'rollback-summary-custom': { |
|||
index[rollbackLinksDisable[i]] = true; |
|||
hans: '已还原[[Special:Contributions/$1|$1]]([[User talk:$1|对话]])的编辑:', |
|||
if (!('user' in index) && wgCanonicalSpecialPageName == "Contributions" || |
|||
hant: '已還原[[Special:Contributions/$1|$1]]([[User talk:$1|對話]])的編輯:' |
|||
!('recent' in index) && wgCanonicalSpecialPageName == "Recentchanges" || |
|||
}, |
|||
!('watchlist' in index) && wgCanonicalSpecialPageName == "Watchlist") |
|||
'rollback-summary-nouser': { hans: '回退已隐藏用户的编辑:', hant: '回退已隱藏使用者的編輯:' }, |
|||
rbnode = gebcn(document.getElementById("bodyContent"), "span", "mw-rollback-link"); |
|||
'rollback-summary-prompt': { |
|||
else if (!('history' in index) && wgAction == "history") |
|||
hans: '请输入自定义回退摘要(留空则使用系统默认摘要)', |
|||
rbnode = gebcn(document.getElementById("pagehistory"), "span", "mw-rollback-link"); |
|||
hant: '請輸入自定義回退摘要(留空則使用系統預設摘要)' |
|||
else if (!('diff' in index) && (diffnode = document.getElementById("mw-diff-ntitle2"))) |
|||
} |
|||
| ⚫ | |||
})); |
|||
for (var i = 0, len = rbnode.length; i < len; i++) |
|||
addRollbackSummaryLink(rbnode[i]); |
|||
var updateLinks = function updateLinks() { |
|||
}; |
|||
$('.mw-rollback-link a').off('click'); |
|||
| ⚫ | |||
function confirmRollback() { |
|||
var url = this.href; |
|||
var user = url.match(/[?&]from=([^&]*)/); |
|||
| ⚫ | |||
var summary = prompt(mw.message('rollback-summary-prompt')); |
|||
user = decodeURIComponent(user[1].replace(/\+/g, " ")); |
|||
| ⚫ | |||
var summary = prompt("Enter a summary to use for rollback.\n\nLeave blank to use the default. $user will be replaced with \"" + user + "\".", |
|||
| ⚫ | |||
rollbackSummaryDefault); |
|||
if (summary == undefined) |
|||
location.assign(href); |
|||
return false; |
|||
| ⚫ | |||
var username = mw.util.getParamValue('from', href); |
|||
return true; |
|||
| ⚫ | |||
? (summary = mw.message('rollback-summary-custom', username).plain() + summary) |
|||
return true; |
|||
: (summary = mw.message('rollback-summary-nouser').plain() + summary); |
|||
}; |
|||
| ⚫ | |||
location.assign(href); |
|||
function addRollbackSummaryLink(rbnode) { |
|||
} |
|||
var rblink = rbnode.getElementsByTagName("a")[0]; |
|||
}) |
|||
var alink = rblink.cloneNode(true); |
|||
alink.className = ""; //don't confuse other scripts |
|||
}; |
|||
alink.firstChild.nodeValue = "sum"; |
|||
mw.hook('wikipage.content').add(function () { |
|||
alink.onclick = confirmRollback; |
|||
updateLinks(); |
|||
rbnode.insertBefore(alink, rblink.nextSibling); |
|||
}); |
|||
rbnode.insertBefore(document.createTextNode(" | "), alink); |
|||
})(jQuery, mw); |
|||
}; |
|||
if (typeof rollbackLinksDisable == 'undefined') |
|||
rollbackLinksDisable = []; |
|||
if (typeof rollbackSummaryDefault == 'undefined') |
|||
rollbackSummaryDefault = ""; |
|||
$(addSumLink); |
|||
Latest revision as of 12:44, 25 March 2024
// References: [[User:KuduIO/Rollback_summary-g.js]] from simplewp (https://simple.wikipedia.org/wiki/User:KuduIO/Rollback_summary-g.js)
function addSumLink() {
var rbnode = [], diffnode, index = {}, gebcn = document.getElementsByClassName
? function(a, b, c) { return a.getElementsByClassName(c) }
: getElementsByClassName;
if (typeof rollbackLinksDisable == 'object' && rollbackLinksDisable instanceof Array)
for (var i = 0; i < rollbackLinksDisable.length; i++)
index[rollbackLinksDisable[i]] = 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[i]);
};
function confirmRollback() {
var url = this.href;
var user = url.match(/[?&]from=([^&]*)/);
if (!user) return;
user = decodeURIComponent(user[1].replace(/\+/g, " "));
var summary = prompt("Enter a summary to use for rollback.\n\nLeave blank to use the default. $user will be replaced with \"" + user + "\".",
rollbackSummaryDefault);
if (summary == undefined)
return false;
else if (summary == "")
return true;
this.href += "&summary=" + encodeURIComponent(summary.replace(/\$user/g, user));
return true;
};
function addRollbackSummaryLink(rbnode) {
var rblink = rbnode.getElementsByTagName("a")[0];
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);