Änderungen

2.799 Bytes hinzugefügt ,  20:06, 16. Dez. 2008
keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:  
/* Jedes JavaScript hier wird für alle Benutzer für jede Seite geladen. */
 
/* Jedes JavaScript hier wird für alle Benutzer für jede Seite geladen. */
 +
 +
 +
/**
 +
* star logo for featured articles in other languages,
 +
* see Template:Link_FA and MediaWiki:Common.css
 +
*/
 +
addOnloadHook(function() {
 +
    // early exit when disabled
 +
    if (!linkFA_enabled) return;
 +
 +
    // skins need to be treated differently
 +
    if (skin == "monobook" || skin == "simple") {
 +
        newer();
 +
    }
 +
    else if (skin == "cologneblue" || skin == "nostalgia" || skin == "standard") {
 +
        older();
 +
    }
 +
 +
    /** skin == "monobook" || skin == "simple" */
 +
    function newer() {
 +
        // links are to replaced in p-lang only
 +
        var pLang = document.getElementById("p-lang");
 +
        if (!pLang) return;
 +
        var lis = pLang.getElementsByTagName("li");
 +
        for (var i = 0; i < lis.length; i++) {
 +
            var li = lis[i];
 +
            // only links with a corresponding Link_FA template are interesting
 +
            if (!document.getElementById(li.className + "-fa"))  continue;
 +
            // additional class so the template can be hidden with CSS
 +
            li.className += " FA";
 +
            // change title
 +
            li.title = linkFA_description;
 +
        }
 +
    }
 +
 +
    /** skin == "cologneblue" || skin == "nostalgia" || skin == "standard" */
 +
    function older() {
 +
        // these root elements can contain FA-links
 +
        var rootIds = new Array("topbar", "footer");
 +
        for (var i=0; i<rootIds.length; i++) {
 +
            var rootId  = rootIds[i];
 +
            var root    = document.getElementById(rootId);
 +
            if (!root)  continue;
 +
 +
            // if the root exists, try to decorate all the links within
 +
            var links  = root.getElementsByTagName("a");
 +
            for (var j=0; j<links.length; j++) {
 +
                var link    = links[j];
 +
                decorate(link);
 +
            }
 +
        }
 +
    }
 +
 +
    /** id necessary, modify a link to show the FA-star (older) */
 +
    function decorate(link) {
 +
        // exit if not a FA-link
 +
        var lang    = link.title.split(":")[0]; // not precise enough
 +
        var fa      = document.getElementById("interwiki-" + lang + "-fa");
 +
        if (!fa)    return;
 +
        // possible problem owing the standard skin: "Link FA" template is transcluded with a non-interwiki parameter, for example "Special"
 +
        // result: links to special pages in the topbar and/or footer might also be marked as a Featured Article
 +
 +
        // build an image-node for the FA-star
 +
        var img = document.createElement("img");
 +
        img.setAttribute("src",    linkFA_bullet);
 +
        img.setAttribute("alt",    linkFA_description);
 +
        img.setAttribute("style",  linkFA_style);
 +
 +
        // decorate the link with the image
 +
        link.appendChild(img);
 +
        link.appendChild(link.removeChild(link.firstChild));
 +
        link.setAttribute("title", linkFA_description);
 +
    }
 +
});
 +
    
// Verwendung von OpenStreetMap in Wikipedia.
 
// Verwendung von OpenStreetMap in Wikipedia.