Zum Inhalt springen
Zur Navigation springen
Zur Suche springen
MediaWiki:Common.js
Hinweis: Leere nach dem Veröffentlichen 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
- Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
/* Jedes JavaScript hier wird für alle Benutzer für jede Seite geladen. */
// ============================================================
// BEGIN Event Hooking
function HookEvent(hookName, hookFunction)
{
if(window.addEventListener) {
window.addEventListener(hookName, hookFunction, false);
} 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 naviToggleImg = document.getElementById("dcw_navitoggleimg" + indexNavigationBar);
var naviFrame = document.getElementById("dcw_naviframe" + indexNavigationBar);
if(!naviFrame || !naviToggleImg) {
return false;
}
// if shown now
if(naviToggleImg.getAttribute("alt") == 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_navitoggleimg") {
naviChild.setAttribute("alt", strNavigationBarShow);
naviChild.setAttribute("src", "http://www.planet3dnow.de/vbulletin/images/buttons/collapse_tcat_collapsed.gif");
}
}
// if hidden now
} else if(naviToggleImg.getAttribute("alt") == 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_navitoggleimg") {
naviChild.setAttribute("alt", strNavigationBarHide);
naviChild.setAttribute("src", "http://www.planet3dnow.de/vbulletin/images/buttons/collapse_tcat.gif");
}
}
}
}
// 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 naviToogleImg = document.createElement("img");
naviToogleImg.className = "dcw_navitoggleimg";
naviToogleImg.setAttribute("id", "dcw_navitoggleimg" + indexNavigationBar);
naviToogleImg.setAttribute("border", "0");
naviToogleImg.setAttribute("alt", strNavigationBarHide);
naviToggleImg.setAttribute("src", "http://www.planet3dnow.de/vbulletin/images/buttons/collapse_tcat.gif");
naviToggle.appendChild(naviToggleImg);
// 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
// ============================================================