|
|
(14 dazwischenliegende Versionen von einem Benutzer werden nicht angezeigt) |
Zeile 1: |
Zeile 1: |
− | /* Platz für Benutzerskripte */ | + | /* 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;
| + | |
− | }
| + | |
− | | + | |
− | 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() {
| + | |
− |
| + | |
− | op = document.createElement('div')
| + | |
− | op.setAttribute('class','portal')
| + | |
− | op.setAttribute('role','navigation')
| + | |
− | op.setAttribute('id','p-othproj')
| + | |
− | op.innerHTML = '<h3>Andere Projekte</h3><div class="body"><ul></ul></div>'
| + | |
− |
| + | |
− | document.getElementById('p-tb').parentNode.appendChild(op)
| + | |
− | // adds [[Special:CategoryTree|Special:CategoryTree]] to toolbox
| + | |
− | ModifySidebar( 'add', 'p-othproj', 'Test', 'http://en.wikipedia.org/wiki/Test' );
| + | |
− | }
| + | |
− | | + | |
− | jQuery( CustomizeModificationsOfSidebar );
| + | |