Benutzer:Loki/monobook.js: Unterschied zwischen den Versionen

Aus Shadowhelix
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 91: Zeile 91:


                 Navigation[i].insertBefore( Button, Navigation[i].childNodes[0] );
                 Navigation[i].insertBefore( Button, Navigation[i].childNodes[0] );
                alert(((i+1) % umbruch));
                 if (((j+1) % umbruch) == 0 && j != (buttonID.length - 1)) {
                 if (((i+1) % umbruch) == 0 && i != (buttonID.length - 1)) {
                    alert('test');
                     var Brk = document.createElement( "br" );
                     var Brk = document.createElement( "br" );
                     Navigation[i].insertBefore( Brk, Navigation[i].childNodes[0] );
                     Navigation[i].insertBefore( Brk, Navigation[i].childNodes[0] );

Version vom 24. Juli 2008, 16:20 Uhr

/* Ergänzung der Editierzeile mit zusätzlichen Buttons */

if (mwCustomEditButtons) {

    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/b/b9/Button_E.png",
        "speedTip": "Artikelende",
        "tagOpen": "<!-- Ende des Artikelinhalts - Metainformationen -->",
        "tagClose": "",
        "sampleText": ""};

    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/b/b0/Button_trash.png",
        "speedTip": "Löschantrag",
        "tagOpen": "{{Löschantrag|}}",
        "tagClose": "",
        "sampleText": ""};

}

/* Buttons für Jahresartikel-Navigation 
*
*  Einschalten der opacity-Modifikation (Alternative zum Ausblenden):
*  var customJahresartikel = 'opac';
*/

var customJahresartikel = '';

function createNavButtons() {

    var Navigation = document.getElementsByTagName( "div" );

    for ( var i = 0; i < Navigation.length; i++ ) {
        if ( hasClass( Navigation[i], "jahresartikel" ) ) {

            var umbruch = 5;

            var buttonID = new Array(15);
            buttonID[0]  = "Wissenschaft";
            buttonID[1]  = "Unterwelt";
            buttonID[2]  = "Technologie";
            buttonID[3]  = "Sport";
            buttonID[4]  = "Religion";
            buttonID[5]  = "Raumfahrt";
            buttonID[6]  = "Politik";
            buttonID[7]  = "Metamenschen";
            buttonID[8]  = "Matrix";
            buttonID[9]  = "Magie";
            buttonID[10] = "Kriege";
            buttonID[11] = "Konzerne";
            buttonID[12] = "Kultur";
            buttonID[13] = "Katastrophen";
            buttonID[14] = "Drachen";
            buttonID[15] = "Alles";

            for ( var j = 0; j < buttonID.length; j++ ) {
                var Button = document.createElement( "span" );

                Button.style.styleFloat = "left";
                Button.style.cssFloat = "left";
                Button.style.fontWeight = "normal";
                Button.style.textAlign = "center";
                Button.style.width = "12em";

                if (j == (buttonID.length - 1)) {
                    Button.style.styleFloat = "right";
                    Button.style.cssFloat = "right";
                    Button.style.position = "relative";
                    Button.style.top      = "1.5em";
                }

                var ButtonLink = document.createElement( "a" );

                ButtonLink.style.color = Navigation[i].style.color;
                ButtonLink.setAttribute( "id", buttonID[j] );

                var ButtonText = document.createTextNode( buttonID[j] );

                if (j == (buttonID.length - 1) ) {
                    ButtonLink.setAttribute( "href", "javascript:displayAll()" );
                } else {
                    ButtonLink.setAttribute( "href", "javascript:displayTheme('"
                    +buttonID[j].toLowerCase()+"')" );
                }

                ButtonLink.appendChild( ButtonText );

                Button.appendChild( document.createTextNode( "[" ) );
                Button.appendChild( ButtonLink );
                Button.appendChild( document.createTextNode( "]" ) );

                Navigation[i].insertBefore( Button, Navigation[i].childNodes[0] );
                if (((j+1) % umbruch) == 0 && j != (buttonID.length - 1)) {
                    var Brk = document.createElement( "br" );
                    Navigation[i].insertBefore( Brk, Navigation[i].childNodes[0] );
                }
            }
        }
    }
}

addOnloadHook( createNavButtons );

function firstUpperCase( stringVar ) {
    stringVar = stringVar.toUpperCase().charAt(0) + stringVar.substring(1);
    return stringVar;
}

/* Ausblendfunktionen */

function displayAll() {
    var objects = document.getElementsByTagName('td');
    for (var i=0; i < objects.length; i++) {
        if (customJahresartikel == 'opac') {
            objects[i].style.opacity = '';
            objects[i].style.filter  = '';
        } else {
            objects[i].style.display = ''
        }
    }
}

function displayTheme( theme ) {
    displayAll();
    var objects = document.getElementsByTagName('td');
    for (var i=0; i < objects.length; i++) {
        var keys = String(objects[i].getAttribute('id'));
        if (keys.search(theme) != -1) {}
        else {
            if (customJahresartikel == 'opac') {
                objects[i].style.opacity = '0.3';
                objects[i].style.filter  = 'alpha(opacity=30)';
            } else {
                objects[i].style.display = 'none'
            }
        }
    }
}

/* Test if an element has a certain class
 *
 * Copied from Wikipedia
 */
 
var hasClass = (function () {
    var reCache = {};
    return function (element, className) {
        return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
    };
})();