MediaWiki:Common.js: Unterschied zwischen den Versionen

Aus Planet 3DNow! Distributed Computing Wiki
Zur Navigation springen Zur Suche springen
meine Änderungen rückgängig gemacht
Keine Bearbeitungszusammenfassung
 
(52 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
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. */


  // ============================================================
  /*var userAgent = navigator.userAgent.toLowerCase();
// BEGIN Event Hooking
  var ua_webtv = (userAgent.indexOf('webtv') != -1);
function HookEvent(hookName, hookFunction)
  var ua_safari = ((userAgent.indexOf('applewebkit') != -1) || (navigator.vendor == 'Apple Computer, Inc.'));
{
  var ua_opera = ((userAgent.indexOf('opera') != -1) || (typeof(window.opera) != 'undefined'));
  if(window.addEventListener) {
  var ua_iexplorer = ((userAgent.indexOf('msie') != -1) && (!ua_opera) && (!ua_safari) && (!ua_webtv));
    window.addEventListener(hookName, hookFunction, false);
  var ua_iexplorer7 = ((ua_iexplorer) && (userAgent.indexOf('msie 7.') != -1));*/
  } else if(window.attachEvent) {
    window.attachEvent("on" + hookName, hookFunction);
  }
}
// END Event Hooking
// ============================================================
 
 
// ============================================================
// BEGIN Dynamic Navigation Bars
  var strNavigationBarHide = "Einklappen";
  var strNavigationBarShow = "Ausklappen";
var navigationBarShowDefault = 0;
// shows and hides content and picture (if available) of navigation bars
// Parameters:
//    indexNavigationBar: the index of navigation bar to be toggled
function ToggleNavigationBar(indexNavigationBar)
{
    var naviToggle = document.getElementById("dcw_navitoggle" + indexNavigationBar);
    var naviFrame = document.getElementById("dcw_naviframe" + indexNavigationBar);
    if(!naviFrame || !naviToggle) {
        return false;
    }
   
    // if shown now
    if(naviToggle.firstChild.data == strNavigationBarHide) {
        for(var naviChild = naviFrame.firstChild; naviChild != null; naviChild = naviChild.nextSibling) {
            if(naviChild.className == "dcw_navipicture") {
                naviChild.style.display = "none";
            }
            if(naviChild.className == "dcw_navicontent") {
                naviChild.style.display = "none";
            }
            if(naviChild.className == "dcw_navitoggle") {
                naviChild.firstChild.data = strNavigationBarShow;
            }
        }
    // if hidden now
    } else if(naviToggle.firstChild.data == strNavigationBarShow) {
        for(var naviChild = naviFrame.firstChild; naviChild != null; naviChild = naviChild.nextSibling) {
            if(naviChild.className == "dcw_navipicture") {
                naviChild.style.display = "block";
            }
            if(naviChild.className == "dcw_navicontent") {
                naviChild.style.display = "block";
            }
            if(naviChild.className == "dcw_navitoggle") {
                naviChild.firstChild.data = strNavigationBarHide;
            }
        }
    }
}
// adds show/hide-button to navigation bars
function CreateNavigationBarToggleButton()
{
    var indexNavigationBar = 0;
    // iterate over all < div >-elements
    for(var i = 0; naviFrame = document.getElementsByTagName("div")[i]; ++i) {
        // if found a navigation bar
        if(naviFrame.className == "dcw_naviframe") {
            ++indexNavigationBar;
            var naviToggle = document.createElement("a");
            naviToggle.className = "dcw_navitoggle";
            naviToggle.setAttribute("id", "dcw_navitoggle" + indexNavigationBar);
            naviToggle.setAttribute("href", "javascript:ToggleNavigationBar(" + indexNavigationBar + ");");
   
            var naviToggleText = document.createTextNode(strNavigationBarHide);
            naviToggle.appendChild(naviToggleText);
            // add naviToggle-Button as first div-element
            // in < div class="dcw_naviframe" >
            naviFrame.insertBefore(naviToggle, naviFrame.firstChild);
            naviFrame.setAttribute("id", "dcw_naviframe" + indexNavigationBar);
        }
    }
    // if more navigation bars found than default: hide all
    if(navigationBarShowDefault < indexNavigationBar) {
        for(var i = 1; i <= indexNavigationBar; ++i) {
            ToggleNavigationBar(i);
        }
    }
}
HookEvent("load", CreateNavigationBarToggleButton);
// END Dynamic Navigation Bars
// ============================================================
 
 
// ============================================================
// BEGIN AJAX Teamstatistiken
var dcw_TeamStatsLoader = null;
function TeamStatsLoader(statsSpan, project)
{
    this.statsSpan = statsSpan;
    this.project = project;
    this.xml_sender = null;
    this.teamPosition = '';
   
    var me = this;
    this.OnLoadReadyStateChange = function()
    {
        //alert("in OnLoadReadyStateChange()");
        if(me.xml_sender.handler.readyState == 4 && me.xml_sender.handler.status == 200) {
            alert(me.xml_sender.handler.responseXML);
            if(me.xml_sender.handler.responseXML) {
                me.teamPosition = me.xml_sender.fetch_data(fetch_tags(me.xml_sender.handler.responseXML, 'teamposition'));
            }
   
            if(is_ie) {
                me.xml_sender.handler.abort();
            }
            var textNode = document.createTextNode(me.teamPosition);
            me.statsSpan.appendChild(textNode);
        }
    }
    // TODO: implement a replacement for vB_AJAX_Handler
    this.xml_sender = new vB_AJAX_Handler(true);
    this.xml_sender.onreadystatechange(this.OnLoadReadyStateChange);
    // TODO: change ajax.php
    this.xml_sender.send('ajax.php?do=getteamposition&project=' + me.project, 'do=getteamposition&project=' + me.project);
}
function LoadTeamStats()
{
    // iterate over all < span >-elements
    for(var i = 0; statsSpan = document.getElementsByTagName("span")[i]; ++i) {
        if(statsSpan.className == "dcw_span_teamstats") {
          var friendlyProjectName = statsSpan.id.replace(/.40/g, "@");
          dcw_TeamStatsLoader = new TeamStatsLoader(statsSpan, friendlyProjectName);
        }
    }
}
HookEvent("load", LoadTeamStats);
// END AJAX Teamstatistiken
// ============================================================

Aktuelle Version vom 27. September 2014, 20:53 Uhr

/* Jedes JavaScript hier wird für alle Benutzer für jede Seite geladen. */

 /*var userAgent = navigator.userAgent.toLowerCase();
 var ua_webtv  = (userAgent.indexOf('webtv') != -1);
 var ua_safari = ((userAgent.indexOf('applewebkit') != -1) || (navigator.vendor == 'Apple Computer, Inc.'));
 var ua_opera = ((userAgent.indexOf('opera') != -1) || (typeof(window.opera) != 'undefined'));
 var ua_iexplorer = ((userAgent.indexOf('msie') != -1) && (!ua_opera) && (!ua_safari) && (!ua_webtv));
 var ua_iexplorer7 = ((ua_iexplorer) && (userAgent.indexOf('msie 7.') != -1));*/