MediaWiki:Newpages.js
Перейти до навігації
Перейти до пошуку
Увага: Після публікування слід очистити кеш браузера, щоб побачити зміни.
- Firefox / Safari: тримайте Shift, коли натискаєте Оновити, або натисніть Ctrl-F5 чи Ctrl-Shift-R (⌘-R на Apple Mac)
- Google Chrome: натисніть Ctrl-Shift-R (⌘-Shift-R на Apple Mac)
- Internet Explorer / Edge: тримайте Ctrl, коли натискаєте Оновити, або натисніть Ctrl-F5
- Opera: натисніть Ctrl-F5
//Взято з https://ru.wikipedia.org/wiki/MediaWiki:Newpages.js
$(function(){
mw.loader.using(['mediawiki.util']).done(function () {
mw.util.addCSS('\
.flaggedrevs-color-1 {background-color:#f0f8ff}\
.flaggedrevs-unreviewed {background-color:#FAEBD7}\
.flaggedrevs-pending {background-color: #FFC}\
#flagged-legend {display:block !important}\
');
});
var nonFlaggedNS = []
$.each(mw.config.get('wgFormattedNamespaces'), function(i, ns){
if( i > 0 && i!=6 && i!=10 && i!=14)
nonFlaggedNS.push(ns)
})
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] )
}
)
return
function markLink(pg){
var lnk = $(link[pg.title])
var li = lnk.closest('li')
var clss, catText, catColor, catTip
if( pg.flagged ){
if( pg.lastrevid == pg.flagged.stable_revid){
clss = 'flaggedrevs-color-1'
}else{
clss = 'flaggedrevs-pending'
addLnk('oldid='+pg.flagged.stable_revid + '&diff='+pg.lastrevid, 'неперев')
}
}else{
clss = 'flaggedrevs-unreviewed'
}
li.addClass(clss)
if( typeof pg.watched == 'string' )
lnk.wrap('<strong class="mw-watched" />')
if( pg.talkid )
addLnk('curid=' + pg.talkid, '<b>обг</b>')
function addLnk(href, name){
li.find('.mw-newpages-history a:last')
.after(' | <a href="' + mw.config.get('wgScript') + '?' + href + '">' + name + '</a>')
}
}//markLink
})