MediaWiki:Gadget-show-patrol-activity.js

Fra Wikipedia, den frie encyklopedi

Merk: Etter publisering vil det kanskje være nødvendig å slette mellomlageret i nettleseren din for å se endringene.

  • Firefox / Safari: Hold Shift mens du klikker på Oppdater, eller trykk enten Ctrl+F5 eller Ctrl+R (⌘+R på Mac)
  • Google Chrome: Trykk Ctrl+Shift+R (⌘+Shift+R på Mac)
  • Internet Explorer / Edge: Hold Ctrl mens du trykker på Oppdater eller trykk Ctrl+F5
  • Opera: Ttrykk Ctrl+F5.
function getPatrolList() {
	getList( 'span.patrol-activity', 'patroller', 'Wikipedia:Patruljering/Status', processAllPatrollers);
}

function processAllPatrollers(obj) {
	// Get the bodyContent-container to construct the table
	var docobj = mw.util.$content.find( '#bodyContent' )[0];
	if (obj.special) {
		var searchName = obj.special.search.name.replace(/\s/g, '_');
		docobj = document.getElementById('patrol-activity-'+searchName);
	}
	if (obj.query && docobj) {
		var header = ['Navn','Siste patruljering','Siste redigering','50 redigeringer','Ant.red.', 'E-post'];
		var types = ['name','lastpatrol','lastedit','last50edit', 'editcount', 'emailable'];
		processAll(header, types, obj.query.allusers, docobj, processPatroller);
	}
}

function processPatroller(obj) {
	var query = { action:'query', format:'json', 'continue': '' };
	var edits = { list:'usercontribs', ucuser: obj };
	var APICalls = {
		'patrol': [$.extend({}, query, { list:'logevents', lelimit:1, leuser: obj, letype: 'patrol' }), patrol_handler ],
		'last-edit': [$.extend({}, query, edits, { uclimit: 1 }), getLastEdit ],
		'last-50-edits': [$.extend({}, query, edits, { uclimit: 50 }), getLast50Edit ],
		'user-info': [$.extend({}, query, { list:'users', usprop: 'editcount|emailable', ususers: obj }), getUserinfo ]
	};
	$.each( APICalls, function(api, data){
		try {
			$.getJSON( mw.util.wikiScript( 'api' ), data[0], data[1] );
		} catch(e) {
			mw.log( 'Error using API for ' + api );
		}
	});
}

if ( ( mw.config.get( 'wgAction' ) == 'view' ) && $.inArray( mw.config.get( 'wgNamespaceNumber' ), [ 2, 3, 4, 5 ]) > -1 ) {
	var isDiff = ( document.location.search && ( document.location.search.indexOf( 'diff=' ) != -1 || document.location.search.indexOf( 'oldid=' ) != -1 ) );
	if ( !isDiff ) {
		$( document ).ready( function () {
			$.getScript( '//no.wikipedia.org/w/index.php?title=MediaWiki:Gadget-show-activity.js&action=raw&ctype=text/javascript', getPatrolList );
		});
	}
}