MediaWiki:Gadget-shorts.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.
/**
* Dodanie zakładki do zwijania i rozwijania skrótów
* Przeróbka oryginalnego kodu autorstwa [[User:Sp5uhe]]
* Przegląd i modyfikacje: [[User:Peter Bowman]]
* Starsze wersje w historii [[MediaWiki:Monobook.js]] i [[MediaWiki:Common.js]]
*/
mw.libs.shorts = {
$caShorts: $(),
storageKey: 'ext.gadget.shorts.state',
L10n: {
qqx: [ 'shorts-collapse', 'shorts-expand', 'shorts-none', 'shorts-desc' ],
en: [ 'Collapse shorts', 'Expand shorts', 'No shorts', 'Show/hide abbreviations' ],
es: [ 'Contraer abreviaturas', 'Expandir abreviaturas', 'No hay abreviaturas', 'Mostrar/ocultar abreviaturas' ],
pl: [ 'Zwiń skróty', 'Rozwiń skróty', 'Brak skrótów', 'Pokaż/ukryj skróty' ],
ru: [ 'Свернуть сокращения', 'Развернуть сокращения', 'Нет сокращений', 'Показать/спрятать сокращения' ]
},
process: function () {
$( document.body ).toggleClass( 'gadget-shorts-expanded' );
mw.libs.shorts.expanded = !mw.libs.shorts.expanded;
mw.libs.shorts.update();
mw.storage.set( mw.libs.shorts.storageKey, mw.libs.shorts.expanded
? 'expanded'
: 'collapsed'
);
},
update: function () {
mw.libs.shorts.$caShorts.find( 'a' ).text( mw.msg( mw.libs.shorts.found
? ( mw.libs.shorts.expanded ? 'shorts-collapse' : 'shorts-expand' )
: 'shorts-none'
) );
}
};
if ( mw.config.get( 'wgNamespaceNumber' ) !== -1 ) {
$.each(
mw.libs.shorts.L10n[ mw.config.get( 'wgUserLanguage' ) ] ||
mw.libs.shorts.L10n.en
, function ( i, message ) {
mw.messages.set( mw.libs.shorts.L10n.qqx[ i ], message );
} );
mw.libs.shorts.expanded = false;
if ( mw.storage.get( mw.libs.shorts.storageKey ) === 'expanded' ) {
mw.libs.shorts.process();
}
$( function () {
mw.libs.shorts.$caShorts = $( mw.util.addPortletLink(
'p-cactions',
'#',
mw.msg( mw.libs.shorts.expanded ? 'shorts-collapse' : 'shorts-expand' ),
'ca-shorts',
mw.msg( 'shorts-desc' ),
'a',
'#ca-history'
) )
.on( 'click', function () {
mw.libs.shorts.found && mw.libs.shorts.process();
return false;
} );
} );
mw.hook( 'wikipage.content' ).add( function ( $content ) {
var $elements = $content.find( '.short-container' );
// [[Specjalna:Niezmienny link/4523134#Przecinki między kwalifikatorami]]
$elements
.not( '.short-no-comma-next' )
.filter( function () {
var $next = $( this ).next();
// TemplateStyles
if ( $next.is( 'style,link' ) ) {
$next = $next.next();
}
return (
$next.is( '.short-container:not(.short-no-comma-prev)' ) &&
$( this.nextSibling ).text() === ' '
);
} )
.addClass( 'short-comma' );
mw.libs.shorts.found = ( $elements.length !== 0 );
} );
}