MediaWiki:Gadget-vandalwarner.js
Catatan: Cappu mattangkung, ida harusuk mallajo browser cache ida barak géppa mita perubahan na. Mozilla/Firefox/Safari:' tekan itta Shift rilante klik Reload, a klik Ctrl-Shift-R ( Cmd-Shift-R: Apple Mac); IE:, tekan itta Ctrl rilante klik Refresh, a tekan Ctrl-F-5; Konqueror: klik Reload, a klik F5; Opera: harusuk mallajo cache ri Tools→Preferences.
/* Vandal Warner, version [0.2.0]
Created and maintained by User:Huji, modified by User:Hoo man
Based on Whackamole, a script written by User:Pilotguy */
var WarnVandalList, WarnVandalSig;
var WarnVandalItems = [];
var WarnVandalCustomItems = [];
WarnVandalItems.push( ['test', 1, 'Experimenting', 'Test edit'] );
WarnVandalItems.push( ['testarticle', 1, 'Experimenting', 'Test page'] );
WarnVandalItems.push( ['test2', 1, 'Nonsense change', 'Nonsense'] );
WarnVandalItems.push( ['test2a', 1, 'Removing content', 'Don\'t remove'] );
WarnVandalItems.push( ['test3', 1, 'Please stop vandalizing', 'Please stop'] );
WarnVandalItems.push( ['test4', 1, 'Last chance to stop vandalising', 'Last chance'] );
WarnVandalItems.push( ['test4im', 1, 'Last chance to stop vandalising', 'Only warning'] );
WarnVandalItems.push( ['spam', 1, 'Don\'t spam', 'Don\'t spam'] );
WarnVandalItems.push( ['block', 0, 'Blocked', 'Blocked 1'] );
WarnVandalItems.push( ['block2', 0, 'Blocked', 'Blocked 2'] );
WarnVandalItems.push( ['Welcome', 0, 'Welcome to Wikipedia', 'Welcome'] );
function WarnVandal (message, param, summary) {
var tbox = document.getElementById('wpTextbox1');
var a = "" + (window.getSelection ? window.getSelection()
: document.getSelection ? document.getSelection()
: document.selection.createRange().text);
if (param != "") {
a = prompt ("Article name?\n(Empty+OK for a generic message.)\n(Cancel now aborts.)", a);
if (a == null) return;
if (a != null && a != "") {
message = message.replace(/\|/,"|"+a);
summary += " in [[" + a + "]]";
} else {
message = param;
}
}
if (WarnVandalSig == undefined) {
WarnVandalSig = " ~~" + "~~\n";
}
document.getElementById('wpTextbox1').value += message + WarnVandalSig;
document.getElementById('wpSummary').value = summary;
document.getElementById('wpMinoredit').checked=false;
document.getElementById('wpWatchthis').checked=false;
document.getElementById('wpTextbox1').focus();
if (document.getElementById('wpTextbox1').scrollTop || true) {
document.getElementById('wpTextbox1').scrollTop =
document.getElementById('wpTextbox1').scrollHeight;
}
}
window.WarnVandal_addlilink=function(tabs, url, name, id, title, key){
var na = document.createElement('a');
na.href = url;
na.appendChild(document.createTextNode(name));
var li = document.createElement('li');
if(id) li.id = id;
li.appendChild(na);
WarnVandalList.appendChild(li);
if(id) {
if(key && title) ta[id] = [key, title];
else if(key) ta[id] = [key];
else if(title) ta[id] = ['', title];
}
return li;
}
window.WarnVandal_addToolboxLink=function(url, name, id){
var tb = document.getElementById('p-tb').getElementsByTagName('ul')[0];
WarnVandal_addlilink(tb, url, name, id);
}
$(document).ready( function () {
if ((mw.config.get('wgAction') == 'edit' || mw.config.get('wgAction') == 'submit') && mw.config.get('wgCanonicalNamespace') === 'User_talk') {
var link_div = document.createElement('div');
if(skin === 'vector') {
link_div.className = 'body';
}else{
link_div.className = 'pBody';
}
WarnVandalList = document.createElement('ul');
link_div.appendChild(WarnVandalList);
var div = document.createElement('div');
div.setAttribute('id', 'p-vandalwarner');
var heading = document.createElement('h5');
heading.appendChild(document.createTextNode('Vandal Warner'));
div.appendChild(heading);
div.appendChild(link_div);
if (WarnVandalCustomItems.length > 0){
for (i=0; i<WarnVandalCustomItems.length; i++) {
itm = WarnVandalCustomItems[i];
WarnVandal_addToolboxLink('javascript:WarnVandal ("{'+'{subst:'+itm[0]+'|}}", ' +
(itm[1] ? '"{'+'{subst:'+itm[0]+'}}"' : '""') + ', ' +
'"'+itm[2]+'"); void(0);', itm[3], '');
}
} else {
for (i=0; i<WarnVandalItems.length; i++) {
itm = WarnVandalItems[i];
WarnVandal_addToolboxLink('javascript:WarnVandal ("{'+'{subst:'+itm[0]+'|}}", ' +
(itm[1] ? '"{'+'{subst:'+itm[0]+'}}"' : '""') + ', ' +
'"'+itm[2]+'"); void(0);', itm[3], '');
}
}
if(skin === 'vector') {
document.getElementById('mw-panel').insertBefore(div, document.getElementById('p-tb'));
div.className = 'portal';
}else{
div.className = 'portlet';
var side_col = document.getElementById('column-one');
var node = document.getElementById('p-tb');
side_col.insertBefore(div, node);
}
}
});