MediaWiki:Gadget-purgetab.js

Nota: Després de desar, heu de netejar la memòria cau del navegador per veure els canvis. En la majoria de navegadors amb Windows o Linux, premeu Ctrl+F5 o bé premeu Shift i cliqueu el botó "Actualitza" (Ctrl i "Actualitza" amb Internet Explorer). Vegeu més informació i instruccions per a cada navegador a Viquipèdia:Neteja de la memòria cau.

/**
 * Add "Purge" content action link.
 *
 * Dependencies: mediawiki.util, mediawiki.api
 * 
 * @source: https://www.mediawiki.org/wiki/Snippets/Purge_action
 * @revision 2016-05-22
 * Modificat per afegir traduccions
 */
$( function () {
	if ( $( '#ca-purge' ).length || mw.config.get( 'wgNamespaceNumber' ) < 0 ) return;
	var conf = {
		ca: {
			portletLabel: 'Refresca',
			portletTooltip: 'Refresca la memòria cau d’aquesta pàgina',
			portletFailed: 'El refrescament ha fallat'
		},
		en: {
			portletLabel: 'Purge',
			portletTooltip: 'Purge the server cache of this page',
			portletFailed: 'Purge failed'
		},
		es: {
			portletLabel: 'Purgar',
			portletTooltip: 'Purgar la caché de la página',
			portletFailed: 'Purge failed'
		},
		fr: {
			portletLabel: 'Purger',
			portletTooltip: 'Purger le cache de la page',
			portletFailed: 'Purge failed'
		},
		gl: {
			portletLabel: 'Purgar',
			portletTooltip: 'Purgar a caché da páxina',
			portletFailed: 'Purge failed'
		},
		nl: {
			portletLabel: 'Verversen',
			portletTooltip: 'De server cache van deze pagina verversen',
			portletFailed: 'Purge failed'
		},
		no: {
			portletLabel: 'Slett cache',
			portletTooltip: 'Slett serverens cache for denne siden',
			portletFailed: 'Purge failed'
		},
		oc: {
			portletLabel: 'Purgar',
			portletTooltip: 'Purgar l’amagatal de la pagina',
			portletFailed: 'Purge failed'
		},
		pl: {
			portletLabel: 'Odśwież',
			portletTooltip: 'Wyczyść pamięć podręczną dla tej strony',
			portletFailed: 'Purge failed'
		},
		pt: {
			portletLabel: 'Purgar',
			portletTooltip: 'Purgar o cache desta página no servidor',
			portletFailed: 'Purge failed'
		},
		uk: {
			portletLabel: 'Очистити кеш',
			portletTooltip: 'Очистити серверний кеш для цієї сторінки',
			portletFailed: 'Purge failed'
		}
	};
	var lang = mw.user.options.get( 'language' );
	if( !conf[ lang ] ) {
		lang = 'en';
	}
	var node = mw.util.addPortletLink(
		'p-cactions',
		mw.util.getUrl( null, { action: 'purge' } ),
		mw.config.get( 'skin' ) === 'vector' ||  mw.config.get( 'skin' ) === 'vector-2022' ? conf[lang].portletLabel : '*',
		'ca-purge',
		conf[lang].portletTooltip,
		'*'
	);
	$(node).on( 'click', function (e) {
		new mw.Api().post( { action: 'purge', titles: mw.config.get( 'wgPageName' ) } ).then(function () {
			location.reload();
		}, function () {
			mw.notify( conf[lang].portletFailed, { type: 'error' } );
		});
		e.preventDefault();
	});
});