MediaWiki:Gadget-purge.js
Uwaga: aby zobaczyć zmiany po opublikowaniu, może zajść potrzeba wyczyszczenia pamięci podręcznej przeglądarki.
- Firefox / Safari: Przytrzymaj Shift podczas klikania Odśwież bieżącą stronę, lub naciśnij klawisze Ctrl+F5, lub Ctrl+R (⌘-R na komputerze Mac)
- Google Chrome: Naciśnij Ctrl-Shift-R (⌘-Shift-R na komputerze Mac)
- Edge: Przytrzymaj Ctrl, jednocześnie klikając Odśwież, lub naciśnij klawisze Ctrl+F5.
- Opera: Naciśnij klawisze Ctrl+F5.
$(function () {
// Nie wyświetlaj w trybie edycji ani na stronach specjalnych
if(mw.config.get('wgNamespaceNumber') < 0 || mw.config.get('wgAction') != 'view') return;
// Wybierz odpowiednie menu, w którym wyświetlić link
var portletId = 'p-cactions';
if(mw.config.get('skin') === 'minerva') portletId = 'p-tb';
// Zwykły link do ?action=purge
var purgeHref = mw.util.getUrl( null, { action: 'purge' } );
var purgeTab = mw.util.addPortletLink(
portletId,
purgeHref,
'Odśwież',
'ca-purge',
'Wyczyść pamięć podręczną dla tej strony\n(Shift: przeładuj tablice linków, Ctrl: przeładuj rekursywnie)'
);
$(purgeTab).click(function (e) {
// Nie przechodź po linku, odświeżymy stronę przez API
e.preventDefault();
var purgeParams = {
action: 'purge',
titles: mw.config.get('wgPageName'),
};
// Shift: Przeładuj tablice linkujących
purgeParams.forcelinkupdate = !!e.shiftKey;
// Ctrl: Przeładuj strony rekursywnie (zawiera w sobie powyższe)
purgeParams.forcerecursivelinkupdate = !!e.ctrlKey;
new mw.Api()
.post(purgeParams)
.then(function () {
// Wyświetl odświeżoną stronę
window.location.reload();
}).fail(function () {
// Nie udało się, przejdź do ?action=purge
window.location = purgeHref;
});
});
});