Заўвага: Пасля апублікавання, вам можа спатрэбіцца ачыстка кэшу браўзера, каб убачыць унесеныя змены.

  • 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.
importScript('Wikipedysta:Farary/sidebar.js');

/* Odśwież od razu, bez ładowania dodatkowej strony z przyciskiem „Wyczyść” (PAnM, PDA), kod z: https://pl.wiktionary.org/wiki/MediaWiki:Gadget-purge.js */
var messages = {
		'purge-tab-label': 'Odśwież',
		'purge-tab-tooltip': 'Wyczyść pamięć podręczną dla tej strony',
		'purge-notification-success': 'Wyczyszczono pamięć podręczną strony.',
		'purge-notification-error': 'Wyczyszczenie pamięci podręcznej się nie powiodło.'
	},
	modules = [
		'mediawiki.api',
		'jquery.spinner'
	],
	config = mw.config.get( [
		'wgNamespaceNumber',
		'wgPageName'
	] ),
	apiParams = {
		action: 'purge',
		titles: config.wgPageName
	},
	spinnerConfig = {
		size: 'small',
		type: 'inline'
	};

function processElements( $els ) {
	$els
		.append( $.createSpinner( spinnerConfig ).hide() )
		.on( 'click', onClickHandler );
}

function onClickHandler( e ) {
	var $spinner = $( this ).children( '.mw-spinner' );
	
	e.preventDefault();
	$spinner.show();
	
	new mw.Api().post( apiParams ).done( function () {
		location.href = mw.util.getUrl();
		mw.notify( mw.msg( 'purge-notification-success' ) );
	} ).fail( function () {
		mw.notify( mw.msg( 'purge-notification-error' ), {
			type: 'error'
		} );
	} ).always( function () {
		$spinner.hide();
	} );
}

if ( config.wgNamespaceNumber >= 0 ) {
	mw.messages.set( messages );
	
	$( function () {
		var $li = $( mw.util.addPortletLink(
			'p-cactions',
			mw.util.getUrl( null, {
				action: 'purge'
			} ),
			mw.msg( 'purge-tab-label' ),
			'ca-purge',
			mw.msg( 'purge-tab-tooltip' )
		) );
		
		mw.loader.using( modules ).done( function () {
			processElements( $li );
		} );
	} );
	
	mw.hook( 'wikipage.content' ).add( function ( $content ) {
		var $purgeLinks = $content.find( '.purgelink' ); // [[Szablon:odśwież]]
		
		if ( $purgeLinks.length ) {
			mw.loader.using( modules ).done( function () {
				processElements( $purgeLinks );
			} );
		}
	} );
}