MediaWiki:Gadget-common-special-movepage.js
Перейти к навигации
Перейти к поиску
JS-код ниже относится к скрытому гаджету common-special-movepage. Он включён по умолчанию.
После сохранения или недавних изменений очистите кэш браузера.
// Не удаляйте проверку на название спецстраницы
( function() {
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) !== 'Movepage' ) {
return;
}
$( '.mw-movepage-editreasons' ).addClass( 'group-sysop-show group-engineer-show' );
var $newTitle = $('[name="wpNewTitleNs"]');
var $reasonList = $( '[name="wpReasonList"]' );
// Simplify dropdown list
$reasonList.find( 'option' ).each( function( i, opt ) {
if ( i === 0 ) return;
opt.title = opt.value;
opt.text = opt.value.replace( /\[\[[^|]+\|([^\]]+)\]\]/g, '$1' );
} );
// Making it easier to transfer the drafts from the user namespaces
function reactToReasons() {
var val = $reasonList.val();
if ( val && val.includes( 'перенос черновика' ) ) {
var $nm = $( '[name="wpNewTitleMain"]' );
var userSubpage = mw.config.get( 'wgUserName' ) + '/';
var subpageBelongsToUser = $nm.val().indexOf( userSubpage ) !== -1;
if ( subpageBelongsToUser ) {
$nm.val( $nm.val().replace( new RegExp( userSubpage + '(?:Черновики?/|)', 'i' ), '' ) );
$newTitle.val( 0 ).change();
}
}
}
$( reactToReasons );
$reasonList.on( 'change', reactToReasons );
// For files: lowercase the extension and suppress the redirect
if ( $newTitle.val() == 6 ) {
var $nm = $( '[name="wpNewTitleMain"]' );
var val = $nm.val();
if ( val ) {
$nm.val(
val.replace(/\.[A-Z0-9]{3,4}$/,
function (s) {
return s.toLowerCase();
})
);
}
$( '[name="wpLeaveRedirect"]' ).prop( 'checked', false );
}
// For categories: suppress the redirect
if ( $newTitle.val() == 14 ) {
$( '[name="wpLeaveRedirect"]' ).prop( 'checked', false );
}
}() );