MediaWiki:Gadget-OcultarReferencias.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é.
/**
* Oculta referencias
* <nowiki>
*/
if ( mw.config.get( 'wgNamespaceNumber' ) >= 0 ) {
var ocultarReferencias = {};
window.ocultarReferencias = ocultarReferencias;
//Scope local para no contaminar espacio global
(function ( $, mw ) {
'use strict';
if( mw.config.get( 'wgAction' ) != 'edit' ) {
ocultarReferencias.click = false;
ocultarReferencias.ocultar = function () {
if ( ocultarReferencias.click ) {
mw.util.addCSS( 'sup.reference {display:inline} ol.references, .ocultarefs {display:block}' );
$( '#c-ocultarefs' ).children().text( 'ocultar refs' );
ocultarReferencias.click = false;
} else {
mw.util.addCSS( 'sup.reference, ol.references, .ocultarefs {display:none}' );
$( '#c-ocultarefs' ).children().text( 'mostrar refs' );
ocultarReferencias.click = true;
}
};
ocultarReferencias.install = function () {
mw.util.addPortletLink( 'p-cactions', '#', 'ocultar refs', 'c-ocultarefs', 'Oculta las referencias en la página' );
$( '#Referencias' ).parent().addClass('ocultarefs');
$( '#c-ocultarefs' ).click( ocultarReferencias.ocultar );
};
$( document ).ready( ocultarReferencias.install );
}
if( $.inArray( mw.config.get( 'wgAction' ), ['edit', 'submit'] ) > -1 ) {
ocultarReferencias.savedRefs = [];
ocultarReferencias.updateMessage = function () {
var regExp = /Referencias ocultas: [0-9]* \(<a href="#" onclick="return ocultarReferencias\.click\(\);">(mostrar|ocultar)<\/a>\)/,
newMessage = 'Referencias ocultas: ' + ocultarReferencias.savedRefs.length +
' (<a href="#" onclick="return ocultarReferencias.click();">' +
(ocultarReferencias.savedRefs.length == 0 ? 'ocultar' : 'mostrar') + '</a>)';
document.getElementById('contentSub').innerHTML = document.getElementById('contentSub').innerHTML.replace( regExp, newMessage );
};
ocultarReferencias.showRefs = function () {
var pageText = document.getElementById("wpTextbox1").value;
for ( var i = 0; i < ocultarReferencias.savedRefs.length; i++ ) {
pageText = pageText.replace( "<!R" + i + ">", ocultarReferencias.savedRefs[i] );
}
document.getElementById("wpTextbox1").value = pageText;
ocultarReferencias.savedRefs = [];
};
ocultarReferencias.hideRefs = function () {
var regExp = new RegExp('<ref name=[^>]*/>|<ref( (name|group)=[^>/]*)?>.*?</ref>', 'g'),
textBox = document.getElementById("wpTextbox1"),
pageText = textBox ? textBox.value : '',
matches = pageText.match( regExp );
if ( matches != null && textBox ) {
for ( var i = 0; i < matches.length; i++ ) {
ocultarReferencias.savedRefs.push( matches[i] );
pageText = pageText.replace( matches[i], "<!R" + i + ">" );
}
textBox.value = pageText;
}
};
ocultarReferencias.toggleRefs = function () {
if ( ocultarReferencias.savedRefs.length > 0 ) {
ocultarReferencias.showRefs();
} else {
ocultarReferencias.hideRefs();
}
};
ocultarReferencias.click = function () {
ocultarReferencias.toggleRefs();
ocultarReferencias.updateMessage();
return false;
};
ocultarReferencias.submitListener = function (event) {
$( '#editform' ).on( 'submit', function() {
ocultarReferencias.showRefs();
this.submit();
} );
};
ocultarReferencias.install2 = function () {
if ( document.getElementById('contentSub').innerHTML ) {
document.getElementById('contentSub').innerHTML += '<br>';
}
document.getElementById('contentSub').innerHTML += 'Referencias ocultas: 0 ' +
'(<a href="#" onclick="return ocultarReferencias.click();">ocultar</a>)';
ocultarReferencias.hideRefs();
ocultarReferencias.updateMessage();
ocultarReferencias.submitListener();
};
$( document ).ready( ocultarReferencias.install2 );
}
})( jQuery, mediaWiki ); // Fin de función anónima
} //fin de chequeo
// </nowiki>