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

Aus Shadowhelix
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(456 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
/* Skriptimport */
customHighlightFarbe = 'lightgrey';
importScript('Benutzer:Loki/universalimpressumOverviewHighlight.js');
importScript('Benutzer:Loki/shadowtalkDisplay.js');
importScript('Benutzer:Loki/refDisplay.js');
importScript('Benutzer:Loki/vorlageUhr.js');
importScript('Benutzer:Loki/vorlageButton.js');
function testFunktionen () {
    addPortletLink('p-cactions', 'javascript:alert(document.location.href)', 'URL', 'ca-last', 'url');
    addPortletLink('p-cactions', 'javascript:alert(document.location.href.length)', 'URL-Laenge', 'ca-last', 'url laenge');
}
// addOnloadHook( testFunktionen );
// ----------------------------------------------------------
// ----------------------------------------------------------
/* Ergänzung der Editierzeile mit zusätzlichen Buttons */
/* Ergänzung der Editierzeile mit zusätzlichen Buttons */


Zeile 13: Zeile 34:
         "imageFile": "http://shadowhelix.de/images/b/b0/Button_trash.png",
         "imageFile": "http://shadowhelix.de/images/b/b0/Button_trash.png",
         "speedTip": "Löschantrag",
         "speedTip": "Löschantrag",
         "tagOpen": "{{Löschantrag|}}",
         "tagOpen": "\{\{Löschantrag||}}",
         "tagClose": "",
         "tagClose": "",
         "sampleText": ""};
         "sampleText": ""};


}
    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/3/3e/Button_STD.png",
        "speedTip": "Standardartikel",
        "tagOpen": '\{\{stub}}\n\{\{+quelle}}\n\'\'\'\'\'\'\n<ref></ref>\n<ref group=\"E\"></ref>\n<ref group=\"W\"></ref>\n\n<!-- Ende des Artikelinhalts - Metainformationen -->\n\n==Erläuterungen==\n<references group=\"E\"/>\n\n==Widersprüche==\n<references group=\"W\"/>\n\n==Quellenindex==\n\{\{IdxTab\n|\n*\{\{Qde|}} \{\{+idx}}\n|\n*\{\{Qen|}} \{\{+idx}}\n}}\n\n==Quellenangabe==\n<references/>\n\n==Weblinks==\n*[[wp:|Wikipedia: ]]\n\n{{DEFAULTSORT:}}\n\{\{KatSchema|schema=}}\n\{\{KatSort|cat=|}}\n[[Kategorie:]]',
        "tagClose": "",
        "sampleText": ""};


/* Buttons für Jahresartikel-Navigation
    mwCustomEditButtons[mwCustomEditButtons.length] = {
*
        "imageFile": "http://shadowhelix.de/images/b/ba/Button_Stub.png",
* Einschalten der opacity-Modifikation (Alternative zum Ausblenden):
        "speedTip": "Stubartikel",
*  var customJahresartikel = 'opac';
        "tagOpen": '\{\{stub}}\n\'\'\'\'\'\'\n\n<!-- Ende des Artikelinhalts - Metainformationen -->\n\n==Quellenindex==\n*\{\{Qde|}} \{\{+idx}}\n*\{\{Qen|}} \{\{+idx}}\n\n==Weblinks==\n*[[wp:|Wikipedia: ]]\n\n\{\{DEFAULTSORT:}}\n\{\{KatSchema|schema=}}\n\{\{KatSort|cat=|}}\n[[Kategorie:]]',
*/
        "tagClose": "",
        "sampleText": ""};


var customJahresartikel = '';
    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/8/84/Button_Redirect.png",
        "speedTip": "Weiterleitung",
        "tagOpen": '#WEITERLEITUNG [[',
        "tagClose": "]]",
        "sampleText": ""};


function createNavButtons() {
    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/9/9d/Button_Person.png",
        "speedTip": "Vorlage:Person",
        "tagOpen": '\{\{Person\n|GESCHLECHT=\n|METATYP=\n|MAGISCH=\n}}',
        "tagClose": "",
        "sampleText": ""};
 
    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/8/8e/Button_Stadt.png",
        "speedTip": "Vorlage:Stadt",
        "tagOpen": '\{\{Stadt\n|STAND=?\n|STATUS=\n|KOORD_DISPLAY=1\n|KOORD_LAENGE=\n|KOORD_BREITE=\n|KOORD_KBS=1\n|KOORD_ZGM=\n|POSITIONSKARTE=\n|POS_LABEL=\n}} \{\{KoordTransform|}}',
        "tagClose": "",
        "sampleText": ""};
 
    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/a/a1/Button_adhoc.png",
        "speedTip": "adhoc",
        "tagOpen": '\| align=\"center\" style=\"height:120px; background-color:white;\" \| \[\[\|80px\]\]',
        "tagClose": "",
        "sampleText": ""};


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


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


            var buttonID = new Array(11);
function testButton() {
            buttonID[0]  = "Unterwelt";
            buttonID[1]  = "Technologie";
            buttonID[2]  = "Sport";
            buttonID[3]  = "Politik";
            buttonID[4]  = "Metamenschen";
            buttonID[5]  = "Magie";
            buttonID[6]  = "Kriege";
            buttonID[7]  = "Konzerne";
            buttonID[8]  = "Katastrophen";
            buttonID[9]  = "Drachen";
            buttonID[10] = "Alles";


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


                Button.style.styleFloat = "left";
    for ( var i = Selection.length - 1; i >= 0 ; i-- ) {
                Button.style.cssFloat = "left";
                Button.style.fontWeight = "normal";
                Button.style.textAlign = "center";
                Button.style.width = "12em";


                if (j == (buttonID.length - 1)) {
        var input = Selection[i].id.split("_");
                    Button.style.styleFloat = "right";
        var jsFunction = input.shift();
                    Button.style.cssFloat = "right";
                }


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


                ButtonLink.style.color = Navigation[i].style.color;
        var inputString = "";
                Button.setAttribute( "id", buttonID[j] );
        for ( var j = 0; j < input.length; j++ ) {
              inputString = inputString + "'"+input[j];
              if (j != input.length - 1) {
                  inputString = inputString + "',";
              } else {
                  inputString = inputString + "'";
              }
        }


                var ButtonText = document.createTextNode( buttonID[j] );
        Button.setAttribute( "href", "javascript:"+jsFunction+"("+inputString+")" );


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


                ButtonLink.appendChild( ButtonText );
        Button.appendChild( Selection[i].childNodes[0] );


                Button.appendChild( document.createTextNode( "[" ) );
        $(Selection[i]).replaceWith( Button );
                Button.appendChild( ButtonLink );
                Button.appendChild( document.createTextNode( "]" ) );


                Navigation[i].insertBefore( Button, Navigation[i].childNodes[0] );
            }
            setToBold("magie");
        }
     }
     }
}


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


/* Änderung des Button fontWeight */
function toggleVisibility( targetClass, targetID ) {


function setToBold( buttonID ) {
     var objects = document.getElementsByClassName( targetClass );
    buttonID = firstUpperCase( buttonID );
     var objects = document.getElementsById( buttonID );
    objects[0].style.fontWeight = "bold";
    objects[0].style.color = "#FF00FF";
}


/* Ausblendfunktionen */
    for ( var i = 0; i < objects.length; i++ ) {   


function displayAll() {
         if (objects[i].id != targetID) {
    var objects = document.getElementsByTagName('td');
                objects[i].style.display = 'none';
    for (var i=0; i < objects.length; i++) {
         if (customJahresartikel == 'opac') {
            objects[i].style.opacity = '';
            objects[i].style.filter  = '';
         } else {
         } else {
            objects[i].style.display = ''
                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
// addOnloadHook( testButton );
*
* 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);
    };
})();

Aktuelle Version vom 19. April 2017, 19:55 Uhr

/* Skriptimport */

customHighlightFarbe = 'lightgrey';

importScript('Benutzer:Loki/universalimpressumOverviewHighlight.js');
importScript('Benutzer:Loki/shadowtalkDisplay.js');
importScript('Benutzer:Loki/refDisplay.js');
importScript('Benutzer:Loki/vorlageUhr.js');
importScript('Benutzer:Loki/vorlageButton.js');

function testFunktionen () {
    addPortletLink('p-cactions', 'javascript:alert(document.location.href)', 'URL', 'ca-last', 'url');
    addPortletLink('p-cactions', 'javascript:alert(document.location.href.length)', 'URL-Laenge', 'ca-last', 'url laenge');
}

// addOnloadHook( testFunktionen );

// ----------------------------------------------------------

// ----------------------------------------------------------

/* 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": ""};

    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/3/3e/Button_STD.png",
        "speedTip": "Standardartikel",
        "tagOpen": '\{\{stub}}\n\{\{+quelle}}\n\'\'\'\'\'\'\n<ref></ref>\n<ref group=\"E\"></ref>\n<ref group=\"W\"></ref>\n\n<!-- Ende des Artikelinhalts - Metainformationen -->\n\n==Erläuterungen==\n<references group=\"E\"/>\n\n==Widersprüche==\n<references group=\"W\"/>\n\n==Quellenindex==\n\{\{IdxTab\n|\n*\{\{Qde|}} \{\{+idx}}\n|\n*\{\{Qen|}} \{\{+idx}}\n}}\n\n==Quellenangabe==\n<references/>\n\n==Weblinks==\n*[[wp:|Wikipedia: ]]\n\n{{DEFAULTSORT:}}\n\{\{KatSchema|schema=}}\n\{\{KatSort|cat=|}}\n[[Kategorie:]]',
        "tagClose": "",
        "sampleText": ""};

    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/b/ba/Button_Stub.png",
        "speedTip": "Stubartikel",
        "tagOpen": '\{\{stub}}\n\'\'\'\'\'\'\n\n<!-- Ende des Artikelinhalts - Metainformationen -->\n\n==Quellenindex==\n*\{\{Qde|}} \{\{+idx}}\n*\{\{Qen|}} \{\{+idx}}\n\n==Weblinks==\n*[[wp:|Wikipedia: ]]\n\n\{\{DEFAULTSORT:}}\n\{\{KatSchema|schema=}}\n\{\{KatSort|cat=|}}\n[[Kategorie:]]',
        "tagClose": "",
        "sampleText": ""};

    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/8/84/Button_Redirect.png",
        "speedTip": "Weiterleitung",
        "tagOpen": '#WEITERLEITUNG [[',
        "tagClose": "]]",
        "sampleText": ""};

    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/9/9d/Button_Person.png",
        "speedTip": "Vorlage:Person",
        "tagOpen": '\{\{Person\n|GESCHLECHT=\n|METATYP=\n|MAGISCH=\n}}',
        "tagClose": "",
        "sampleText": ""};

    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/8/8e/Button_Stadt.png",
        "speedTip": "Vorlage:Stadt",
        "tagOpen": '\{\{Stadt\n|STAND=?\n|STATUS=\n|KOORD_DISPLAY=1\n|KOORD_LAENGE=\n|KOORD_BREITE=\n|KOORD_KBS=1\n|KOORD_ZGM=\n|POSITIONSKARTE=\n|POS_LABEL=\n}} \{\{KoordTransform|}}',
        "tagClose": "",
        "sampleText": ""};

    mwCustomEditButtons[mwCustomEditButtons.length] = {
        "imageFile": "http://shadowhelix.de/images/a/a1/Button_adhoc.png",
        "speedTip": "adhoc",
        "tagOpen": '\| align=\"center\" style=\"height:120px; background-color:white;\" \| \[\[\|80px\]\]',
        "tagClose": "",
        "sampleText": ""};

}

/***********************************************************************/

function testButton() {

    var Selection = document.getElementsByClassName( "jsFunctionButton" );

    for ( var i = Selection.length - 1; i >= 0 ; i-- ) {

         var input = Selection[i].id.split("_");
         var jsFunction = input.shift();

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

         var inputString = "";
         for ( var j = 0; j < input.length; j++ ) {
              inputString = inputString + "'"+input[j];
              if (j != input.length - 1) {
                   inputString = inputString + "',";
              } else {
                   inputString = inputString + "'";
              }
         }

         Button.setAttribute( "href", "javascript:"+jsFunction+"("+inputString+")" );

//       Button.style.color = Selection[i].style.color;
//       Button.style.fontSize = Selection[i].style.fontSize;

         Button.appendChild( Selection[i].childNodes[0] );

         $(Selection[i]).replaceWith( Button );

    }

}

function toggleVisibility( targetClass, targetID ) {

    var objects = document.getElementsByClassName( targetClass );

    for ( var i = 0; i < objects.length; i++ ) {     

        if (objects[i].id != targetID) {
                objects[i].style.display = 'none';
        } else {
                objects[i].style.display = '';
        }
    }
}

// addOnloadHook( testButton );