MediaWiki:Gadget-common-special-newpages.js
Заўвага: Пасля апублікавання, вам можа спатрэбіцца ачыстка кэшу браўзера, каб убачыць унесеныя змены.
- Firefox / Safari: націсніце Reload, утрымліваючы Shift, або націсніце Ctrl-F5 ці Ctrl-R (⌘-R на Макінтошах)
- Google Chrome: Націсніце Ctrl-Shift-R (⌘-Shift-R на Mac)
- Internet Explorer / Edge: націсніце Refresh, утрымліваючы Ctrl, або націсніце Ctrl-F5
- Opera: Увайдзіце Menu → Settings (Opera → Preferences на Mac), далей Privacy & security → Clear browsing data → Cached images and files.
$( function () {
var nonFlaggedNS = [];
$.each( mw.config.get( 'wgFormattedNamespaces' ), function ( i, ns ) {
if ( i > 0 && i !== 6 && i !== 10 && i !== 14 ) {
nonFlaggedNS.push( ns );
}
});
nonFlaggedNS.push( 'Удзельніца' );
nonFlaggedNS = new RegExp( '^(' + nonFlaggedNS.join( '|' ) + '):' );
var title,
titles = [],
link = {};
$( 'a.mw-newpages-pagename' ).each( function ( i, lnk ) {
title = $( lnk ).attr( 'title' );
if ( nonFlaggedNS.test( title ) ) {
return;
}
titles.push( title );
link[ title ] = lnk;
});
while ( titles.length ) {
$.post( // !!! часова з-за [[mediazilla:36839]]
mw.util.wikiScript( 'api' ),
{
action: 'query',
format: 'json',
prop: 'info|flagged|categories',
inprop: 'talkid|watched',
cllimit: 500,
titles: titles.splice( 0, 50 ).join( '|' )
},
function ( resp ) {
if ( !resp || !( resp = resp.query ) ) {
return;
}
for ( var id in resp.pages ) {
markLink( resp.pages[ id ] );
}
}
);
}
function markLink( pg ) {
var lnk = $( link[ pg.title ] ),
li = lnk.closest( 'li' ),
className,
catText,
catColor,
catTip;
if ( pg.flagged ) {
if ( pg.lastrevid == pg.flagged.stable_revid ) {
className = 'flaggedrevs-color-1';
} else {
className = 'flaggedrevs-pending';
addLink( 'oldid=' + pg.flagged.stable_revid + '&diff=' + pg.lastrevid, 'непров' );
}
} else {
className = 'flaggedrevs-unreviewed';
}
li.addClass( className );
if ( typeof pg.watched === 'string' ) {
lnk.wrap( '<strong class="mw-watched" />' );
}
if ( pg.talkid ) {
addLink( 'curid=' + pg.talkid, '<b>абм.</b>' );
}
if ( pg.categories ) {
for ( var c = 0; c < pg.categories.length; c++ ) {
var cat = pg.categories[ c ].title.replace( /^[^:]+:/, '' ); //rm prefix
if ( /^Старонкі да хуткага выдалення$/.test( cat ) && !catText ) {
catText = 'Да хуткага выдалення';
catColor = '#f88';
catTip = cat;
} else if ( /^Артыкулы да выдалення$/.test( cat ) ) {
catText = 'Да выдалення';
catColor = '#faa';
catTip = cat;
}
}
if ( catText ) {
var span = $( '<span>' )
.css( 'background', catColor )
.attr( 'title', '«' + catTip + '»' )
.text( '(' + catText + ')' );
li.append( span );
}
}
function addLink( href, content ) {
var a = $( '<a>' )
.attr( 'href', mw.config.get( 'wgScript' ) + '?' + href )
.html( content );
li
.find( '.mw-newpages-history a:last' )
.after( ' | ', a );
}
} // markLink
} );