MediaWiki:Gadget-purgetab.js: Difference between revisions
From Elwiki
No edit summary |
No edit summary |
||
Line 11: | Line 11: | ||
var translations = { | var translations = { | ||
en: { | en: { | ||
tabName: 'Purge', | tabName: 'Purge cache', | ||
tabDescription: 'Purge the server cache of this page', | tabDescription: 'Purge the server cache of this page', | ||
errorMessage: 'Purge failed' | errorMessage: 'Purge failed' | ||
}, | }, | ||
fr: { | fr: { | ||
tabName: 'Purger', | tabName: 'Purger le cache', | ||
tabDescription: 'Purger le cache serveur de cette page', | tabDescription: 'Purger le cache serveur de cette page', | ||
errorMessage: 'Purge échouée' | errorMessage: 'Purge échouée' | ||
}, | }, | ||
pl: { | pl: { | ||
tabName: ' | tabName: 'Usuń cache', | ||
tabDescription: 'Usuń dla tej strony dane z pamięci podręcznej serwera', | tabDescription: 'Usuń dla tej strony dane z pamięci podręcznej serwera', | ||
errorMessage: 'Odświeżenie nieudane' | errorMessage: 'Odświeżenie nieudane' |
Revision as of 12:40, 10 May 2022
/**
* Add "Purge" content action link.
*
* Dependencies: mediawiki.api, mediawiki.language mediawiki.util
*
* @source https://www.mediawiki.org/wiki/Snippets/Purge_action
* @revision 2016-05-22
*/
$( function () {
var messages = ( function () {
var translations = {
en: {
tabName: 'Purge cache',
tabDescription: 'Purge the server cache of this page',
errorMessage: 'Purge failed'
},
fr: {
tabName: 'Purger le cache',
tabDescription: 'Purger le cache serveur de cette page',
errorMessage: 'Purge échouée'
},
pl: {
tabName: 'Usuń cache',
tabDescription: 'Usuń dla tej strony dane z pamięci podręcznej serwera',
errorMessage: 'Odświeżenie nieudane'
},
mk: {
tabName: 'Превчитај',
tabDescription: 'Исчистете го опслужувачкиот меѓусклад на страницава',
errorMessage: 'Превчитувањето не успеа'
}
},
chain = mw.language.getFallbackLanguageChain(),
len = chain.length,
ret = {},
i = len - 1;
while ( i >= 0 ) {
if ( translations.hasOwnProperty( chain[ i ] ) ) {
$.extend( ret, translations[ chain[ i ] ] );
}
i = i - 1;
}
return ret;
}() );
if ( $( '#ca-purge' ).length || mw.config.get( 'wgNamespaceNumber' ) < 0 ) {
return;
}
var node = mw.util.addPortletLink(
'p-cactions',
mw.util.getUrl( null, { action: 'purge' } ),
messages.tabName,
'ca-purge',
messages.tabDescription
);
$( node ).on( 'click', function ( e ) {
new mw.Api().post( {
action: 'purge',
titles: mw.config.get( 'wgPageName' )
} )
.then( function () {
location.reload();
}, function () {
mw.notify( messages.errorMessage, { type: 'error' } );
} );
e.preventDefault();
} );
} );