Usuario:LuchoCR/reTAB.js
Nota: Después de guardar, debes refrescar la caché de tu navegador para ver los cambios. Internet Explorer: mantén presionada Ctrl mientras pulsas Actualizar. Firefox: mientras presionas Mayús pulsas el botón Actualizar, (o presiona Ctrl-Shift-R). Los usuarios de Google Chrome y Safari pueden simplemente pulsar el botón Recargar. Para más detalles e instrucciones acerca de otros exploradores, véase Ayuda:Cómo limpiar la caché.
/**
* reTAB.js, para responder ({{hecho}}) a las solicitudes en el tablón
* adaptación de Hasley, basado en [[m:User:DannyS712/SRG.js]] <https://meta.wikimedia.org/?oldid=20260849>
*/
// <nowiki>
$( function () {
var TAB = {};
window.reTAB = TAB;
TAB.setup = function () {
$('span.mw-editsection-bracket:first-child').each( function() {
console.log( this );
try {
var sectionNumber = this.parentElement.childNodes[1].href.match( /action=edit§ion=(\d+)/ )[1];
console.log( sectionNumber );
this.after( ' | ' );
$(this).after( $( '<a href="#" class="reTAB-hecho" section=' + sectionNumber + '>hecho</a>') );
} catch ( e ) {
}
} );
$('a.reTAB-hecho').click( function(e) {
e.preventDefault();
console.log( this );
TAB.close( this );
} );
};
TAB.close = function ( section ) {
console.log( section );
var sectionNumber = section.outerHTML.match( /section="(\d+)"/ )[1];
var pageTitle = mw.config.get( 'wgPageName' );
console.log( sectionNumber );
new mw.Api().get( {
action: 'parse',
page: pageTitle,
prop: 'wikitext',
section: sectionNumber
}).done( function( result ) {
console.log( result );
var wikitext = result.parse.wikitext['*'];
wikitext = wikitext.replace( /\(a rellenar por un bibliotecario\)/, '{{hecho}}, gracias por el aviso. —~~~~' );
console.log( wikitext );
new mw.Api().postWithEditToken( {
action: 'edit',
title: pageTitle,
section: sectionNumber,
text: wikitext,
summary: 'respuesta',
minor: false,
nocreate: true
}).done( function( result ) {
console.log( result );
if ( result && result.edit && result.edit.result && result.edit.result === 'Success' ){
location.reload();
}
});
});
};
} );
mw.loader.using( 'mediawiki.api', function() {
$(document).ready( function () {
if ( mw.config.get('wgAction') === 'view' && (
mw.config.get('wgArticleId') === 19013 || // VEC
mw.config.get('wgArticleId') === 951915 || // TABM
mw.config.get('wgArticleId') === 8949119 || // NVP
mw.config.get('wgArticleId') === 951913 || // TABF
mw.config.get('wgArticleId') === 951911 // TABP
)
) {
window.reTAB.setup();
}
});
} );
// </nowiki>