MediaWiki:Common.js
Zur Navigation springen
Zur Suche springen
Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.
- Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
- Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
- Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
- Opera: Strg+F5
/* Das folgende JavaScript wird für alle Benutzer geladen. */
/** Namensräume für die Seitenvorschau
**/
mw.config.set('wgContentNamespaces', [0, 100]);
//
//Hinzufügen oder Entfernen von Abschnitten zur Werkzeugkiste (toolbox) (JavaScript)//
function ModifySidebar( action, section, name, link ) {
try {
switch ( section ) {
case 'languages':
var target = 'p-lang';
break;
case 'toolbox':
var target = 'p-tb';
break;
case 'navigation':
var target = 'p-navigation';
break;
default:
var target = 'p-' + section;
break;
}
if ( action == 'add' ) {
var node = document.getElementById( target )
.getElementsByTagName( 'div' )[0]
.getElementsByTagName( 'ul' )[0];
var aNode = document.createElement( 'a' );
var liNode = document.createElement( 'li' );
aNode.appendChild( document.createTextNode( name ) );
aNode.setAttribute( 'href', link );
liNode.appendChild( aNode );
liNode.className = 'plainlinks';
node.appendChild( liNode );
}
if ( action == 'remove' ) {
var list = document.getElementById( target )
.getElementsByTagName( 'div' )[0]
.getElementsByTagName( 'ul' )[0];
var listelements = list.getElementsByTagName( 'li' );
for ( var i = 0; i < listelements.length; i++ ) {
if (
listelements[i].getElementsByTagName( 'a' )[0].innerHTML == name ||
listelements[i].getElementsByTagName( 'a' )[0].href == link
)
{
list.removeChild( listelements[i] );
}
}
}
} catch( e ) {
// Lass uns einfach ignorieren, was passiert ist
return;
}
}
function CustomizeModificationsOfSidebar() {
// fügt Textbausteine der Toolbox hinzu
ModifySidebar( 'add', 'toolbox', 'Textbausteine', 'https://cc-zeitlos.synology.me/mediawiki/index.php/Kategorie:Textbausteine' );
// fügt [[Spezial:Letzte Änderungen ]] der Toolbox hinzu
ModifySidebar( 'add', 'toolbox', 'Letzte Änderungen', 'https://cc-zeitlos.synology.me/mediawiki/index.php/Spezial:RecentChanges' );
// fügt [[Special:AllPages]] der Toolbox hinzu
ModifySidebar( 'add', 'toolbox', 'Alle Seiten', 'https://cc-zeitlos.synology.me/mediawiki/index.php/Special:AllPages' );
// fügt [[Special:Randompage]] der Toolbox hinzu
ModifySidebar( 'add', 'toolbox', 'Zufällige Seite', 'https://cc-zeitlos.synology.me/mediawiki/index.php/Special:Randompage' );
// Entfernt [[Special:Upload|Special:Upload]] aus der Toolbox
//ModifySidebar( 'remove', 'toolbox', 'Upload file', 'https://cc-zeitlos.synology.me/mediawiki/index.php/Special:Upload' );
}
jQuery( CustomizeModificationsOfSidebar );
// New since 2024-05-25
/**
** Dynamic Navigation Bars
**/
// set up the words in your language
var NavigationBarHide = 'Einklappen';
var NavigationBarShow = 'Ausklappen';
// adds show/hide-button to navigation bars
$( function() {
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
function toggleNavigationBar( indexNavigationBar )
{
var NavToggle = document.getElementById( "NavToggle" + indexNavigationBar );
var NavFrame = document.getElementById( "NavFrame" + indexNavigationBar );
if ( !NavFrame || !NavToggle ) {
return false;
}
// if shown now
if ( NavToggle.firstChild.data == NavigationBarHide ) {
for ( var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'none';
}
else if (NavChild.className == 'NavToggle') {
NavChild.firstChild.data = NavigationBarShow;
}
}
// if hidden now
} else if (NavToggle.firstChild.data == NavigationBarShow) {
for ( var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'block';
}
else if (NavChild.className == 'NavToggle') {
NavChild.firstChild.data = NavigationBarHide;
}
}
}
}
function toggleNavigationBarFunction( indexNavigationBar ) {
return function() {
toggleNavigationBar( indexNavigationBar );
return false;
};
}
// iterate over all <div>-elements
var indexNavigationBar = 0;
var divs = document.getElementsByTagName( "div" );
for ( var i = 0; i < divs.length; i++ ) {
var NavFrame = divs[i];
// if found a navigation bar
if ( NavFrame.className == "NavFrame" ) {
indexNavigationBar++;
var NavToggle = document.createElement( "a" );
NavToggle.className = 'NavToggle';
NavToggle.setAttribute( 'id', 'NavToggle' + indexNavigationBar );
NavToggle.setAttribute( 'href', '#' );
NavToggle.onclick = toggleNavigationBarFunction( indexNavigationBar );
// add NavToggle-Button as first div-element in <div class="NavFrame">
var NavToggleText = document.createTextNode( NavigationBarHide );
NavToggle.appendChild( NavToggleText );
NavFrame.insertBefore( NavToggle, NavFrame.firstChild );
NavFrame.setAttribute( 'id', 'NavFrame' + indexNavigationBar );
}
}
// Normalansicht: alle zu, Vorschau: alle auf
for ( var i = 1; i <= indexNavigationBar; i++ ) {
toggleNavigationBar( i );
}
}) ;
/**
* Tabellensortierung merken
*
* based on: http://meta.wikimedia.org/wiki/Help:Sorting#Persistent_sort_states_using_cookies
*/
/*** addOnloadHook( function() {
jQuery('.sortable').each( function() {
var id = jQuery(this).attr('id');
if ( id != undefined )
{
// Versuche, passenden Cookie zu lesen
document.shCookie = jQuery.cookie('sortheader-'+id);
// Falls kein Cookie gefunden wurde: Gehe alle Spalten durch und schau, ob Standard-Sortierung
// durch class="ppSortAsc" bzw. class="ppSortDesc" im Spaltenkopf gesetzt.
// Da nur eine Spalte möglich ist: Falls versehentlich/fehlerhaft mehrere Spalten markiert wurden,
// zählt die erste in der Tabelle gefundene.
if ( document.shCookie == undefined ) {
document.sortheaderId = 0;
jQuery('#'+id+' th').each( function() {
var sh = document.sortheaderId++;
if(jQuery(this).hasClass('ppSortAsc')) {
document.shCookie = sh;
return false; // beendet Schleife über Spalten => erstes zählt ("false" notwendig für jQuery-each)
} else if(jQuery(this).hasClass('ppSortDesc')) {
document.shCookie = sh+100;
return false; // beendet Schleife über Spalten => erstes zählt
}
});
}
// Gehe alle Spalten durch und führe auf die zu sortierende Spalte
// entweder zwei Klicks aus (aufsteigend) oder einen Klick (absteigend)
document.sortheaderId = 0;
jQuery('#'+id+' th').each( function() {
var sh = document.sortheaderId++;
if( sh+100 == document.shCookie ) {
jQuery(this).click();
jQuery(this).click();
} else if( sh == document.shCookie ) {
jQuery(this).click();
sh += 100;
}
// Zukünftige "clicks" werden in einem Cookie gespeichert.
jQuery(this).bind('click', {id: id, sh: sh}, function(e) {
jQuery.cookie('sortheader-'+e.data.id, e.data.sh, { expires: 9999 } );
e.data.sh += e.data.sh < 100 ? 100 : -100;
});
});
}
});
});
***/