User:Igna/AutoReportSpambot.js
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
//Basado en https://es.wikipedia.org/wiki/Usuario:Ezarate/AutoVEC.js
//<nowiki>
var user = null;
function cancelar(){
$('#ReportSpambot').remove();
}
function editPage(info){
$.ajax({
url: mw.util.wikiScript( 'api' ),
type: 'POST',
dataType: 'json',
data:{
format: 'json',
action: 'edit',
title: info.title,
appendtext: info.text, // will replace entire page content
summary: 'Reporting: ' + user + ' using [[m:User:Igna/AutoReportSpambot.js|AutoReportSpambot]]',
token: mw.user.tokens.get('editToken')
}
}).done (function(data){
if (data && data.edit && data.edit.result && data.edit.result == 'Success'){
alert('Usuario reportado exitosamente!');
}else{
alert('Un error ha ocurrido');
}
}).fail (function(){
alert( 'La solicitud AJAX ha fallado' );
});
}
function reportar(){
var pagina = mw.config.get('wgPageName');
if ( mw.config.get( 'wgNamespaceNumber' ) === -1 ){
user = mw.util.getParamValue( 'target' ) || pagina.split( '/' )[1];
}else{
user = pagina.split( ':' )[1];
}
var plantreporte = null;
regexpusuario= /\d+\.\d+\.\d+\.\d+/;
if (regexpusuario.test(user)){
plantreporte = '\n* {{Srcu|user}}';
}else{
plantreporte = '\n{{Srcu|user}}';
}
editPage({
title: 'm:User:Igna/Spambots',
text: plantreporte,
summary: user,
});
}
function armarbotonera(){
if($('#ReportSpambot').length === 0){
var pagina = mw.config.get('wgPageName');
var divisor = pagina.split('/');
var texto= '<div id="ReportSpambot"><input type="button" value="OK" onclick="reportar()"><input type="button" value="Cancelar" onclick="cancelar()"></div>';
$('#contentSub').append(texto);
}
}
if ((mw.config.get('wgNamespaceNumber') === 3) ||(mw.config.get('wgPageName').indexOf("Special:Contributions") > -1)){
$('#contentSub').append( '<input type="button" value= "ReportSpambot" onclick = armarbotonera() title="Report Spambot">');
}
//</nowiki>