MediaWiki:Vector.js

Aus Primepedia
Zur Navigation springen Zur Suche springen

Hinweis: Leere nach dem Speichern den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Internet Explorer: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Gehe zu Menü → Einstellungen (Opera → Einstellungen auf dem Mac) und dann auf Datenschutz & Sicherheit → Browserdaten löschen → Gespeicherte Bilder und Dateien.
// ============================================================
 // BEGIN Enable multiple onload functions
 
 // setup onload functions this way:
 // onloadFuncts[onloadFuncts.length] = function_name; // without brackets!
 
 
 // END Enable multiple onload functions
 // ============================================================
 
 
 // ============================================================
 // BEGIN Dynamic Navigation Bars
 // NEEDS Enable multiple onload functions 
 
 // set up the words in your language
 var NavigationBarHide = 'Einklappen';
 var NavigationBarShow = 'Ausklappen';
 var NavigationBarShowAll = 'Alle ausklappen';
 var NavigationBarHideAll = 'Alle einklappen';
 
 // set up max count of Navigation Bars on page,
 // if there are more, all will be hidden
 // NavigationBarShowDefault = 0; // all bars will be hidden
 // NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden
 if (typeof NavigationBarShowDefault == 'undefined' ) {
     var NavigationBarShowDefault = 0; 
 }
 
 // shows and hides content and picture (if available) of navigation bars
 // Parameters:
 //     indexNavigationBar: the index of navigation bar to be toggled
 //     show: true/false force show/hide instead of toggle
 function toggleNavigationBar(indexNavigationBar,show)
 {
    var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
    var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
 
    if (!NavFrame || !NavToggle) {
        return false;
    }
 
    // if shown now
    if ((NavToggle.firstChild.data == NavigationBarHide && show == null) || show == false) {
        for (
                var NavChild = NavFrame.firstChild;
                NavChild != null;
                NavChild = NavChild.nextSibling
            ) {
            if (NavChild.className == 'NavPic') {
                NavChild.style.display = 'none';
            }
            if (NavChild.className == 'NavContent') {
                NavChild.style.display = 'none';
            }
            if (NavChild.className == 'NavToggle') {
                NavChild.firstChild.data = NavigationBarShow;
            }
        }
 
    // if hidden now
    } else if (NavToggle.firstChild.data == NavigationBarShow || show == true) {
        for (
                var NavChild = NavFrame.firstChild;
                NavChild != null;
                NavChild = NavChild.nextSibling
            ) {
            if (NavChild.className == 'NavPic') {
                NavChild.style.display = 'block';
            }
            if (NavChild.className == 'NavContent') {
                NavChild.style.display = 'block';
            }
            if (NavChild.className == 'NavToggle') {
                NavChild.firstChild.data = NavigationBarHide;
            }
        }
    }
 }
 
 // Shows/hides several navigation bars at once
 // Parameters: Each navigationbar index as a seperate parameter
 function toggleNavigationBars()
 {
    var showNow = null;
    // iterate over all < div >-elements, to toggle the linktext
    for(
            var i=0; 
            NavFrameToggleAll = document.getElementsByTagName("div")[i]; 
            i++
        ) {
        if (NavFrameToggleAll.className == "NavFrameToggleAll") {
            NavToggle = NavFrameToggleAll.firstChild.firstChild

            
            if (NavToggle.data == NavigationBarShowAll) {
               // currently hidden, show now
               NavToggle.data = NavigationBarHideAll;
               showNow = true;
            } else if (NavToggle.data == NavigationBarHideAll) {
               // currently shown, hide now
               NavToggle.data = NavigationBarShowAll;
               showNow = false;
            }
        }
    }
        // toggle the navigation bars
        var args = toggleNavigationBars.arguments;
 	for (var i=0;i<args.length;i++) {
 		toggleNavigationBar(args[i],showNow);
 	}
 }
 
 // adds show/hide-button to navigation bars
 function createNavigationBarToggleButton()
 {
    var indexNavigationBar = 0;
    // iterate over all < div >-elements
    for(
            var i=0; 
            NavFrame = document.getElementsByTagName("div")[i]; 
            i++
        ) {
        // if found a navigation bar
        if (NavFrame.className == "NavFrame") {
 
            indexNavigationBar++;
            var NavToggle = document.createElement("a");
            NavToggle.className = 'NavToggle';
            NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
            NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
 
            var NavToggleText = document.createTextNode(NavigationBarHide);
            NavToggle.appendChild(NavToggleText);
 
            // add NavToggle-Button as first div-element 
            // in < div class="NavFrame" >
            NavFrame.insertBefore(
                NavToggle,
                NavFrame.firstChild
            );
            NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
        }
    }
 
    // iterate over all < div >-elements
    for(
            var i=0; 
            NavFrameToggleAll = document.getElementsByTagName("div")[i]; 
            i++
        ) {
        if (NavFrameToggleAll.className == "NavFrameToggleAll") {
  
            var NavToggle = document.createElement("a");
            NavToggle.className = 'NavToggleAll';
            var indexList = "";
            var sep = "";
            for (var j=1;j<=indexNavigationBar;j++) {
                  indexList += sep+j;
                  sep = ",";
            }
            NavToggle.setAttribute('href', 'javascript:toggleNavigationBars(' + indexList + ');');
 
            var NavToggleText = document.createTextNode(NavigationBarShowAll);
            NavToggle.appendChild(NavToggleText);
 
            // add NavToggle-Button as first div-element 
            // in < div class="NavFrameToggleAll" >
            NavFrameToggleAll.insertBefore(
                NavToggle,
                NavFrameToggleAll.firstChild
            );
        }
    }
 
 
    // if more Navigation Bars found than Default: hide all
    if (NavigationBarShowDefault < indexNavigationBar) {
        for(
                var i=1; 
                i<=indexNavigationBar; 
                i++
        ) {
           var NavFrame = document.getElementById("NavFrame" + i);
           if (NavFrame.title == "" ||
               window.location.hash != "#"+encodeURI(NavFrame.title.replace(/ /g, "_")).replace(/%/g, ".")) {
              toggleNavigationBar(i);
           }
        }
    }
 
 }
 
 onloadFuncts[onloadFuncts.length] = createNavigationBarToggleButton;
 
 // END Dynamic Navigation Bars
 // ============================================================
 
 /* tooltips and access keys */
 ta = new Object();
 ta['pt-userpage'] = new Array('.','Meine persönliche Seite');
 ta['pt-anonuserpage'] = new Array('.','Benutzerseite der IP-Adresse von der aus Sie Änderungen durchführen');
 ta['pt-mytalk'] = new Array('n','Meine Diskussionsseite');
 ta['pt-anontalk'] = new Array('n','Diskussion über Änderungen von dieser IP-Adresse');
 ta['pt-preferences'] = new Array('','Meine Einstellungen');
 ta['pt-watchlist'] = new Array('l','Liste von Seiten die Sie auf Änderungen überwachen.');
 ta['pt-mycontris'] = new Array('y','Liste meiner Beiträge');
 ta['pt-login'] = new Array('o','Hier kann sich wer mächte anmelden, es ist aber keine Pflicht.');
 ta['pt-anonlogin'] = new Array('o','Hier kann sich wer möchte anmelden, es ist aber keine Pflicht.');
 ta['pt-logout'] = new Array('o','Abmelden');
 ta['ca-talk'] = new Array('t','Diskussion(en) zum Artikel');
 ta['ca-edit'] = new Array('e','Artikel bearbeiten. Bitte nutzen Sie vor dem Speichern die Vorschaufunktion.');
 ta['ca-addsection'] = new Array('+','Einen Kommentar zu dieser Diskussion hinzufügen.');
 ta['ca-viewsource'] = new Array('e','Diese Seite ist geschützt. Sie können sich den Quelltext ansehen.');
 ta['ca-history'] = new Array('h','Vorherige Versionen dieser Seite');
 ta['ca-protect'] = new Array('=','Diese Seite schützen');
 ta['ca-delete'] = new Array('d','Diese Seite löschen');
 ta['ca-undelete'] = new Array('d','Einträge wiederherstellen, bevor diese Seite gelöscht wurde');
 ta['ca-move'] = new Array('m','Diese Seite verschieben');
 ta['ca-watch'] = new Array('w','Diese Seite zu Ihrer Beobachtungsliste hinzufügen');
 ta['ca-unwatch'] = new Array('w','Diese Seite von Ihrer Beobachtungsliste entfernen');
 ta['search'] = new Array('f','In Stargate Wiki suchen');
 ta['p-logo'] = new Array('','Hauptseite');
 ta['n-mainpage'] = new Array('z','Hauptseite anzeigen');
 ta['n-portal'] = new Array('','Überblick über StargateWiki, was sie machen könne, wo man etwas findet');
 ta['n-currentevents'] = new Array('','Hintergrundinformationen zur aktuellen Season');
 ta['n-recentchanges'] = new Array('r','Liste der letzten Änderungen in Stargate Wiki.');
 ta['n-randompage'] = new Array('x','Zufälligen Artikel anzeigen');
 ta['n-help'] = new Array('','Hilfe zu Stargate Wiki.');
 ta['n-sitesupport'] = new Array('','Wie kann man Stargate Wiki unterstüzungen?');
 ta['t-whatlinkshere'] = new Array('j','Liste aller Seiten die auf diesen Artikel verweisen');
 ta['t-recentchangeslinked'] = new Array('k','Letzte Änderungen an Seiten, die von hier verlinkt sind');
 ta['feed-rss'] = new Array('','RSS-Feed für diese Seite');
 ta['feed-atom'] = new Array('','Atom-Feed für diese Seite');
 ta['t-contributions'] = new Array('','Liste der Beiträge dieses Benutzers ansehen');
 ta['t-emailuser'] = new Array('','Eine Mail an den Benutzer senden');
 ta['t-upload'] = new Array('u','Bild- oder Media-File hochladen');
 ta['t-specialpages'] = new Array('q','Liste aller Spezialseiten');
 ta['ca-nstab-main'] = new Array('c','Artikel anzeigen');
 ta['ca-nstab-user'] = new Array('c','Benutzerseite anzeigen');
 ta['ca-nstab-media'] = new Array('c','Mediendateienseite anzeigen');
 ta['ca-nstab-special'] = new Array('','Dies ist eine Spezialseite. Sie können diese nicht ändern.');
 ta['ca-nstab-wp'] = new Array('a','Projektseite anzeigen');
 ta['ca-nstab-image'] = new Array('c','Bilderseite anzeigen');
 ta['ca-nstab-mediawiki'] = new Array('c','Systemmeldungen anzeigen');
 ta['ca-nstab-template'] = new Array('c','Vorlage anzeigen');
 ta['ca-nstab-help'] = new Array('c','Hilfeseite anzeigen');
 ta['ca-nstab-category'] = new Array('c','Kategorieseite anzeigen');

 function jqstart(){
   $("tr[class*='blauzebra']:nth-child(even)").addClass("zebrablau");
   $("tr[class*='grünzebra']:nth-child(even)").addClass("zebragrün");
   $("tr[class*='zeigen']").hover(function(){$(this).toggleClass("zeileaktiv");},function(){$(this).toggleClass("zeileaktiv");});
 }

 onloadFuncts[onloadFuncts.length] = jqstart;

onloadFuncts[onloadFuncts.length] = function() {
  if ($('.references li').size() < 6)
    $('.references').parent().css({ 'column-count': '1', '-moz-column-count': '1', '-webkit-column-count': '1' });
}

addOnloadHook(function()
{
  if ($(".spoiler").size()>0)
  {
    var w = document.getElementById("ca-watch");
    if (!w) w = document.getElementById("ca-unwatch");
    var node = addPortletLink("p-views", "#", "Spoiler aufdecken", "ca-spoiler", "Vorhandene Spoiler auf- und zudecken", "s", w);
    if (node)
    {
      node.onclick = function()
      {
        $(".spoiler").css("display",function(i,d){return d==="inline"?"none":"inline";});
        $("#ca-spoiler").toggleClass("selected");
        return false;
      };
      var img = document.createElement("img");
      img.width = "24";
      img.height = "24";
      img.alt = "Spoiler aufdecken";
      img.src = "http://upload.wikimedia.org/wikipedia/commons/thumb/1/17/System-search.svg/24px-System-search.svg.png";
      img.style.position = "relative";
      img.style.top = "-5px";
      node.firstChild.firstChild.replaceChild(img, node.firstChild.firstChild.firstChild);
    }
  }
});