MediaWiki:Gadget-RecentChangesUnpatrolledPages.js
Utseende
OBS: Efter du har publicerat sidan kan du behöva tömma din webbläsares cache för att se ändringarna.
- Firefox / Safari: Håll ned Skift och klicka på Uppdatera sidan eller tryck Ctrl-F5 eller Ctrl-R (⌘-R på Mac)
- Google Chrome: Tryck Ctrl-Skift-R (⌘-Skift-R på Mac)
- Edge Håll ned Ctrl och klicka på Uppdatera eller tryck Ctrl-F5.
- Opera: Tryck Ctrl-F5.
$( function() {
'use strict';
var oldtitlesstr = '';
function update() {
if ( !$( '.mw-recentchanges-toplinks-collapsed' ).length ) {
new mw.Api().get( {
action: 'query',
list: 'recentchanges',
rctype: 'new',
rcshow: '!redirect|!patrolled',
rclimit: '50',
rcnamespace: 0,
formatversion: 2
} ).done( function( data ) {
var query = data.query;
var unpatrolledpages;
var titles;
var titlesstr;
var numberOfUnpat;
var text;
if ( query ) {
unpatrolledpages = query.recentchanges;
if ( unpatrolledpages ) {
if ( unpatrolledpages.length ) {
titles = unpatrolledpages.map( function( obj ) {
if ( obj.title ) {
return obj.title;
}
} );
titlesstr = titles.join( ', ' );
numberOfUnpat = titles.length;
text = 'opatrullerad';
if ( numberOfUnpat > 1 ) {
text = 'opatrullerade';
}
if ( titlesstr !== oldtitlesstr ) {
$( '#gadget-unpatrolledpages' ).remove();
$( '#rclinks_nya_sidor' ).append( '<span id="gadget-unpatrolledpages"> (<a href="/w/index.php?title=Special:Nya_sidor&hidepatrolled=1" title="' + mw.html.escape( titlesstr ) + '" id="gadget-unpatrolledpages-link">' + numberOfUnpat + ' ' + text + '</a>)</span>' );
oldtitlesstr = titlesstr;
}
} else {
$( '#gadget-unpatrolledpages' ).remove();
}
}
}
} );
}
}
if ( $( '#rclinks_nya_sidor' ).length ) {
update();
mw.hook( 'wikipage.content' ).add( function( elements ) {
if ( elements.hasClass( 'mw-changeslist' ) ) {
update();
}
} );
}
} );