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

Aus Shadowhelix
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 26: Zeile 26:
         if ( hasClass( Navigation[i], "jahresartikel" ) ) {
         if ( hasClass( Navigation[i], "jahresartikel" ) ) {


            \* Variablen *\
             var ButtonID = "Drachen";
             var ButtonID = "Drachen";



Version vom 22. Juli 2008, 17:15 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": ""};

}

function createNavButtons() {

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

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

            var ButtonID = "Drachen";

            var Button     = document.createElement( "span" );

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

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

            ButtonLink.style.color = Navigation[i].style.color;

            var ButtonText = document.createTextNode( ButtonID );

            ButtonLink.setAttribute( "id", ButtonID );
            ButtonLink.setAttribute( "href", "javascript:obj_toggle_theme('"+ButtonID.toLowerCase()+"')" );

            ButtonLink.appendChild( CopyButtonText );

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

            Navigation[i].insertBefore( Button, Navigation[i].childNodes[0] );


        }
    }
 
}

addOnloadHook( createNavButtons() );

/* Ausblendfunktionen */

function obj_toggle() {
    var objects = document.getElementsByTagName('td');
    for (var i=0; i < objects.length; i++) {
        objects[i].style.display = ''
    }
}

function obj_toggle_theme( theme ) {
    obj_toggle();
    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 {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);
    };
})();