//var contentWidth = document.getElementById("mainbox").style.width;
var contentWidth = 983;
var minWinWidth = 990;
var subnavHeightConst = 21; // hoehe eines subnavigations-elements

var page = 1;
var tConst = 3; // anzahl der teaser pro seite

var myImages = new Array();


function openPwin(theUrl,w,h) {
        var pwin = window.open(theUrl, 'popwindow', 'width='+w+',height='+h+',top=50, left=100, scrollbars=yes,resizable=yes');
        try { pwin.focus(); } catch(e) {}
}

function textareaPop(newSrc) {
        var links = document.getElementsByTagName('a');
        for(var i = 0; tag = links[i]; ++i) {
                if(tag.className == 'poplink') {
                        tag.target = 'popwindow';
                        tag.onclick = openPwin;
                  }
                  else if(tag.className == 'querverweis') {
                        tagData = tag.firstChild.data;

                          if(tag.innerHTML) {
                                tag.innerHTML = '<img src="' + newSrc + '">' + tagData;
                          }
                          else {
                                theLink = tag.firstChild;
                                theArrow = document.createElement('img');
                                arrowSrc = document.createAttribute('src');
                                arrowSrc.nodeValue = newSrc;
                                theArrow.setAttributeNode(arrowSrc);
                                tag.insertBefore(theArrow,theLink);
                          }
                  }
        }
}


function calculateLeftmargin() {
    if(window.innerWidth) {
        width = window.innerWidth;
    }
    else if(document.body) {
        width = document.body.offsetWidth;
    }

    if(width < minWinWidth) {
        width = minWinWidth;
    }
    leftmargin = (width-contentWidth)/2;
    //leftmargin -= 10; //scrollbar
    return(leftmargin);
}

function setLeftmargin() {
    leftMargin = calculateLeftmargin();

    theMainbox = document.getElementById("mainbox");
    theMainbox.style.left = leftMargin + "px";
        
    theMainbox.style.display = "";

    mainboxHeight();

    if(document.getElementById("outerfooter")) {
    	document.getElementById("outerfooter").style.marginLeft = (leftMargin + 1) + "px";
		document.getElementById("footer").style.display = "block";
		document.getElementById("outerfooter").style.zIndex = 99;
    }
}

var myImages = new Array();
function preloadImages() {
    for (i=0;i<preloadImages.arguments.length;i++) {
        myImages[i] = new Image();
        myImages[i].src = preloadImages.arguments[i];
    }
}


function openWindow(inhalt,w,h) {
    popup = window.open(inhalt,"popupWin","width="+w+",height="+h+",top=50,left=100,scrollbars=yes");
    popup.focus();
}


///////////////// NAVI /////////////////

function nav1over(index) {
        imgElement = document.getElementById("n1div"+index);

        if(index == l1cat) {
                newBg = "navi_op_bold_" + index + ".png";
        }
        else {
                newBg = "navi_op_norm_" + index + ".png";
        }

        imgElement.style.backgroundImage = "url(/img/navi/"+newBg+")";

        var count = 0;
        var divs = document.getElementsByTagName('div');
        for(var i = 0; tag = divs[i]; ++i) {
                if(tag.className == 'navi2block') {
                        if(count == index) {
                                divs[i].style.display = "";
                        }
                        count++;
                  }
        }
}

function nav1out(index) {
        imgElement = document.getElementById("n1div"+index);

        if(index == l1cat) {
                newBg = "navi_cl_bold_" + index + ".png";
        }
        else {
                newBg = "navi_cl_norm_" + index + ".png";
        }

        imgElement.style.backgroundImage = "url(/img/navi/"+newBg+")";

        var count = 0;
        var divs = document.getElementsByTagName('div');
        for(var i = 0; tag = divs[i]; ++i) {
                if(tag.className == 'navi2block') {
                        if(count == index) {
                                divs[i].style.display = "none";
                        }
                        count++;
                  }
        }
}


function subOver(theElement) {
        theElement.style.backgroundColor = "#ffffff";
}

function subOut(theElement) {
        if(theElement.firstChild.href != window.location.href) {
                theElement.style.backgroundColor = "";
        }
}


// allen ul.navi2 die gleiche h&#710;he zuweisen
// daf&#184;r muss man alle durchlaufen nach className und z&#8240;hlen, wie viele elemente sie haben
// anschlie&#64258;end anzahl elemente mit konstante multiplizieren und als h&#710;he zuweisen

function Numsort (a, b) {
  return a - b;
}

function ulHeight() {
        childLinksArray = new Array();
        var uls = document.getElementsByTagName('ul');
        for(var i = 0; tag = uls[i]; ++i) {
                var childLinks = 0;
                if(tag.className == 'navi2 trans') {
                        for(m=0; m<uls[i].childNodes.length; m++) {                // child links zaehlen
                                if(uls[i].childNodes[m].innerHTML) {
                                        childLinks++;
                                }
                        }
                }
                childLinksArray[i] = childLinks;
        }

        childLinksArray.sort(Numsort);
        childLinksArray.reverse();
        subHeight = childLinksArray[0] * subnavHeightConst;                        // maximale anzahl child links * einzelne hoehe

        for(var i = 0; tag = uls[i]; ++i) {

                if(tag.className == 'navi2 trans') {
                        uls[i].style.height = subHeight + 'px';
                }
        }
}


function nav1active() {
        document.getElementById("n1div"+l1cat).style.backgroundImage = "url(/img/navi/navi_cl_bold_" + l1cat + ".png)";

        var lis = document.getElementsByTagName('li');
        for(var i = 0; tag = lis[i]; ++i) {
                if(tag.className == 'navi2element') {
                        if(lis[i].firstChild && lis[i].firstChild.href && lis[i].firstChild.href == window.location.href) {
                                lis[i].firstChild.style.color = "#b70618";
                                lis[i].style.backgroundColor = "#fff";
                        }
                  }
        }

        ulHeight();
}

// workaround fuer hintergrundbild mainbox hoehe:
function mainboxHeight() {
        rightboxHeight = document.getElementById("startrightbox").offsetHeight;
        maincontentHeight = document.getElementById("startmaincontent").offsetHeight;
	

        if(l1cat == "none") {
                subtract = 280;                // startseite
                add = 300;
        }
        else {
                subtract = 160;                //content
                add = 300;
        }

        rightTargetHeight = rightboxHeight - subtract;
        mainTargetHeight = maincontentHeight + 25;
		
	//document.getElementById("mainbox").style.height = document.body.offsetHeight;
        if(rightTargetHeight > mainTargetHeight) {
                document.getElementById("startmaincontent").style.height = rightTargetHeight+"px";
        }
        else {
		//alert(document.documentElement.clientHeight);
		document.getElementById("startmaincontent").style.height = mainTargetHeight+"px";
        }
}


///////////////// GOOGLE TALK /////////////////

function openGtalk(url) {
        gTalk = window.open(url, "talkWin", "width=300,height=400,left=100,top=200,resizable=yes");
        gTalk.focus();
}


///////////////// DOWNLOADS /////////////////

function openClose(theElement) {
        if(theElement.parentNode.style.height == "18px") {
                theElement.parentNode.style.height = "auto";
                theElement.childNodes[0].src="/img/buttons/minus.gif"
        }
        else {
                theElement.parentNode.style.height = "18px";
                theElement.childNodes[0].src="/img/buttons/plus.gif"
        }
}

function mouseX(evt) {
        if (evt.pageX) return evt.pageX;
        else if (evt.clientX)
           return evt.clientX + (document.documentElement.scrollLeft ?
           document.documentElement.scrollLeft :
           document.body.scrollLeft);
        else return null;
}

function mouseY(evt) {
        if (evt.pageY) return evt.pageY;
        else if (evt.clientY)
           return evt.clientY + (document.documentElement.scrollTop ?
           document.documentElement.scrollTop :
           document.body.scrollTop);
        else return null;
}

function showTooltip(index,evt) {
        x = 5 + mouseX(evt);
        y = mouseY(evt) - 2;

        document.getElementById("tooltip"+index).style.top = y+"px";
        document.getElementById("tooltip"+index).style.left = x+"px";
        document.getElementById("tooltip"+index).style.display = "";
}

if (window.Node && Node.prototype && !Node.prototype.contains) {
        Node.prototype.contains = function (arg) {
                return !!(this.compareDocumentPosition(arg) & 16);
        };
}

function hideTooltip(index,event) {
        event = event || window.event;
        var toElement = event.relatedTarget || event.toElement || false;
                if (!document.getElementById("tooltip"+index).contains(toElement)) {
                document.getElementById("tooltip"+index).style.display = "none";
        }
}

function hideTooltipLink(index,event) {
        event = event || window.event;
        var targetObj = event.relatedTarget || event.toElement || false;
        if ((targetObj.id != "tooltip"+index) && (targetObj.id != "tooltiptopimg"+index)) {
                document.getElementById("tooltip"+index).style.display = "none";
        }
}


///////////////// TEASER BLAETTERN /////////////////

function teaserDown() {
        offset = (page * tConst) +1;        // offset des ersten elements auf der neuen seite (nach blaettern)

        if(document.getElementById("tdiv"+offset)) {
                for(i=offset; i<(offset+tConst); i++) {                                        // neue einblenden
                        if(document.getElementById("thr"+i) && (i>offset)) {
                                document.getElementById("thr"+i).style.display = "";
                        }
                        if(document.getElementById("tdiv"+i)) {
                                document.getElementById("tdiv"+i).style.display = "";
                        }
                }

                for(i=(offset-tConst); i<offset; i++) {                                // alte ausblenden
                        if(document.getElementById("thr"+i)) {
                                document.getElementById("thr"+i).style.display = "none";
                        }
                        if(document.getElementById("tdiv"+i)) {
                                document.getElementById("tdiv"+i).style.display = "none";
                        }
                }

                document.getElementById("upButton").src = "/img/layout/boxes/teaser_up.png";        // up-button aktivieren
                document.getElementById("upButton").style.cursor = "pointer";                        // mouseover pointer einschalten

                if(!document.getElementById("tdiv"+(offset+tConst))) {                // wenn es keine weitere seite gibt
                        document.getElementById("downButton").src = "/img/layout/boxes/ak_basics_boxes01_15.png";                // unten keinen bl&#8240;tterbutton mehr anzeigen
                        document.getElementById("downButton").style.cursor = "auto";        // kein mouseover pointer mehr
                }

                page++;
        }
}

function teaserUp() {
        offset = ((page-2) * tConst) +1;

        if(offset > 0) {
                for(i=offset; i<=(offset+tConst); i++) {
                        if(document.getElementById("thr"+i) && (i>offset)) {
                                document.getElementById("thr"+i).style.display = "";
                        }
                        if(document.getElementById("tdiv"+i)) {
                                document.getElementById("tdiv"+i).style.display = "";
                        }
                }

                for(i=(offset+tConst); i<(offset+(2*tConst)); i++) {
                        if(document.getElementById("thr"+i)) {
                                document.getElementById("thr"+i).style.display = "none";
                        }
                        if(document.getElementById("tdiv"+i)) {
                                document.getElementById("tdiv"+i).style.display = "none";
                        }
                }

                page--;
                if(page == 1) {
                        document.getElementById("upButton").src = "/img/layout/boxes/ak_basics_boxes01_07.png";
                        document.getElementById("upButton").style.cursor = "auto";
                        document.getElementById("downButton").src = "/img/layout/boxes/teaser_dn.png";                // unten keinen bl&#8240;tterbutton widerherstellen, falls er ausgeblendet war
                        document.getElementById("downButton").style.cursor = "pointer";        // pointer wiederherstellen
                }
        }
}




