MediaWiki:Gadget-MarkDeletedPages.js

Från Wikipedia

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)
  • Internet Explorer / Edge: Håll ned Ctrl och klicka på Uppdatera eller tryck Ctrl-F5
  • Opera: Tryck Ctrl-F5.
$( function() {
	'use strict';
	var titles = new Set();
	var container = $( '#mw-content-text' ).find( '.mw-parser-output' );
	var links = container.find( 'a.new' );
	links.each( function( i, e ) {
		var title = $( e ).attr( 'title' );
		if ( title ) {
			titles.add( title.replace( ' [inte skriven än]', '' ) );
		}
	} );
	if ( titles.size ) {
		( new mw.Api() ).get( {
			action: 'query',
			titles: Array.from( titles ),
			prop: 'deletedrevisions',
			formatversion: 2
		} ).done( function( data ) {
			var q = data.query;
			var pages;
			var deletedpages = [];
			if ( q ) {
				pages = q.pages;
				if ( pages ) {
					if ( pages.length ) {
						pages.forEach( function( v ) {
							if ( v.hasOwnProperty( 'deletedrevisions' ) ) {
								deletedpages.push( v.title );
							}
						} );
						links.each( function( i, e ) {
							var title = $( e ).attr( 'title' );
							if ( title ) {
								if ( deletedpages.includes( title.replace( ' [inte skriven än]', '' ) ) ) {
									$( e ).addClass( 'gadget-markdeletedpages' );
								}
							}
						} );
					}
				}
			}
		} );
	}
} );