MediaWiki:Group-sysop.js
Возможно, этот код документирован.
//Гаджет для удаления страниц
if ( mw.config.get( 'wgAction' ) === 'delete' ) {
mw.loader.load( 'ext.gadget.common-action-delete' );
}
mw.hook('wikipage.content').add( function() {
if ( mw.config.get( 'wgNamespaceNumber' ) >= 0 &&
mw.config.get( 'wgArticleId' )
) {
switch ( mw.config.get( 'wgAction' ) ) {
case 'protect':
case 'unprotect': //avoid [move=autoconfirmed] in logs
$( '#mwProtect-level-edit' ).change( function() {
if ( !$( '#mwProtectUnchained' ).attr( 'checked' ) &&
$( '#mwProtect-level-move' ).val() === 'autoconfirmed'
) {
$( '#mwProtect-level-move' ).val( '' );
}
} );
break;
case 'history':
hideRevDel();
break;
}//switch
}
//============= Special pages =============
switch ( mw.config.get( 'wgCanonicalSpecialPageName' ) ) {
case 'Log':
case 'Contributions':
hideRevDel();
break;
}
//=============
function hideRevDel() { //initially hide RevDel [[ ВП:Удаление правки]] interface
if ( !window.hrdOff ) {
window.hideRevDelCSS = mw.util.addCSS( '\
#mw-log-deleterevision-submit input[type="checkbox"],\
button.mw-log-deleterevision-button,\
#pagehistory input[type="checkbox"],\
button.mw-history-revisiondelete-button,\
span.mw-revdelundel-link {\
display: none;\
}' );
window.revisionDelete = function() {
window.hideRevDelCSS.disabled = !window.hideRevDelCSS.disabled;
return false;
};
addSysopLink( '#', 'Скрытие правок', revisionDelete );
}
}
function addSysopLink( url, txt, handler ) {
var $cSub = $( '#contentSub' );
if ( $cSub.children().last().prop( 'nodeName' ) === 'A' ) {
$cSub.append( ' · ' );
}
var $node = $( '<a>' )
.attr( 'href', url )
.append(
$( '<img>' ).attr( 'src', '//upload.wikimedia.org/wikipedia/commons/thumb/f/f2/Edit-clear.svg/10px-Edit-clear.svg.png' ),
$( '<span>' )
.text( txt )
.css( 'margin-left', '0.25em' )
)
.appendTo( $cSub );
if ( typeof handler === 'function' ) {
$node.on( 'click', handler );
}
}
} );