Aktionen

MediaWiki

Common.js: Unterschied zwischen den Versionen

Aus U-Boot-Archiv Wiki

(Die Seite wurde neu angelegt: „→‎Das folgende JavaScript wird für alle Benutzer geladen.: function ModifySidebar(action, section, name, link) { try { switch (section) { ...“)
 
 
(18 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
/* Das folgende JavaScript wird für alle Benutzer geladen. */
+
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;
 +
}
  
function ModifySidebar(action, section, name, link) {
+
if ( action == 'add' ) {
    try {
+
var node = document.getElementById( target )
        switch (section) {
+
  .getElementsByTagName( 'div' )[0]
          case "languages":
+
  .getElementsByTagName( 'ul' )[0];
            var target = "p-lang";
+
 
            break;
+
var aNode = document.createElement( 'a' );
          case "toolbox":
+
var liNode = document.createElement( 'li' );
            var target = "p-tb";
+
 
            break;
+
aNode.appendChild( document.createTextNode( name ) );
          case "navigation":
+
aNode.setAttribute( 'href', link );
            var target = "p-navigation";
+
liNode.appendChild( aNode );
            break;
+
liNode.className = 'plainlinks';
          default:
+
node.appendChild( liNode );
            var target = "p-" + section;
+
}
            break;
+
 
        }
+
if ( action == 'remove' ) {
+
var list = document.getElementById( target )
        if (action == "add") {
+
  .getElementsByTagName( 'div' )[0]
            var node = document.getElementById(target)
+
  .getElementsByTagName( 'ul' )[0];
                              .getElementsByTagName('div')[0]
+
 
                              .getElementsByTagName('ul')[0];
+
var listelements = list.getElementsByTagName( 'li' );
+
 
            var aNode = document.createElement('a');
+
for ( var i = 0; i < listelements.length; i++ ) {
            var liNode = document.createElement('li');
+
if (
+
listelements[i].getElementsByTagName( 'a' )[0].innerHTML == name ||
            aNode.appendChild(document.createTextNode(name));
+
listelements[i].getElementsByTagName( 'a' )[0].href == link
            aNode.setAttribute('href', link);
+
)
            liNode.appendChild(aNode);
+
{
            liNode.className='plainlinks';
+
list.removeChild( listelements[i] );
            node.appendChild(liNode);
+
}
        }
+
}
+
}
        if (action == "remove") {
+
 
            var list = document.getElementById(target)
+
 
                              .getElementsByTagName('div')[0]
+
} catch( e ) {
                              .getElementsByTagName('ul')[0];
+
// let's just ignore what's happened
+
return;
            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) {
 
      // lets just ignore what's happened
 
      return;
 
    }
 
 
}
 
}
+
 
 
function CustomizeModificationsOfSidebar() {
 
function CustomizeModificationsOfSidebar() {
    //adds [[Special:CategoryTree]] to toolbox
+
// adds [[Special:CategoryTree|Special:CategoryTree]] to toolbox
    ModifySidebar("add", "toolbox", "CategoryTree", "http://en.wikipedia.org/wiki/Special:CategoryTree");
+
ModifySidebar( 'add', 'toolbox', 'CategoryTree', 'https://en.wikipedia.org/wiki/Special:CategoryTree' );
    //removes [[Special:Upload]] from toolbox
+
// removes [[Special:Upload|Special:Upload]] from toolbox
    ModifySidebar("remove", "toolbox", "Upload file", "http://en.wikipedia.org/wiki/Special:Upload");
+
ModifySidebar( 'remove', 'toolbox', 'UPLOAD' );
 +
        ModifySidebar( 'remove', 'toolbox', 'http://www.uboot-archiv.de/ubootwiki/index.php/Spezial:Spezialseiten' );
 
}
 
}
+
 
addOnloadHook(CustomizeModificationsOfSidebar);
+
jQuery( CustomizeModificationsOfSidebar );

Aktuelle Version vom 31. Dezember 2020, 17:19 Uhr

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 ) {
		// let's just ignore what's happened
		return;
	}
}

function CustomizeModificationsOfSidebar() {
	// adds [[Special:CategoryTree|Special:CategoryTree]] to toolbox
	ModifySidebar( 'add', 'toolbox', 'CategoryTree', 'https://en.wikipedia.org/wiki/Special:CategoryTree' );
	// removes [[Special:Upload|Special:Upload]] from toolbox
	ModifySidebar( 'remove', 'toolbox', 'UPLOAD' );
        ModifySidebar( 'remove', 'toolbox', 'http://www.uboot-archiv.de/ubootwiki/index.php/Spezial:Spezialseiten' );
}

jQuery( CustomizeModificationsOfSidebar );