/********************************
JavaScript fuer Header-Gimmick:
1. Funktion getStyleObject:
   - finden der Style-Objekte
2. Funktion changeHeader:
   - aufklappen
   - zuklappen
   - images oben vertauschen
********************************/


// msie
var is_msie = (document.all) ? true : false;

/* naechsten Sachen werden von PHP uebergeben:
// um Bilder auszutauschen:
var img_plus = new Image();
img_plus.src = "upload/zimages/icon_plus.gif";
var img_minus = new Image();
img_minus.src = "upload/zimages/icon_minus.gif";
*/


function getStyleObject(objectId)
{
	if (document.getElementById && document.getElementById(objectId)) 
	{
		// W3C DOM
		return document.getElementById(objectId).style;
	} 
	else if (document.all && document.all(objectId)) 
	{
		// MSIE 4 DOM
		return document.all(objectId).style;
	} 
	else if (document.layers && document.layers[objectId]) 
	{
		// NN 4 DOM.. note: this won\'t find nested layers
		return document.layers[objectId];
	} 
	else  
	{
		return false;
	}
} // getStyleObject


var stateHeader;

// nachschauen, ob Cookie schon existiert:
function readCookie(cname) 
{
	var cookies = document.cookie;
	// Declare variable to set the name value.
	var start = cookies.indexOf(cname + "=");
	// Get the index if the cookie name is found.
	if (start != -1){
		;
	}
	// Get the first character of the cookie.
	start = cookies.indexOf("=", start) + 1;
	// Read to the end of the cookie.
	var end = cookies.indexOf(";", start);
	if (end == -1){
		end = cookies.length;
	}
	// Get the cookie value, reversing the escaped format by
	// using the unescape method.
	var value = unescape(cookies.substring(start, end));
	if (value == null)
		return false;
	else
		return value;
}

stateHeader = readCookie("stateHeader");
if (stateHeader != "open" && stateHeader != "closed")
	stateHeader = "open";
	


function changeHeader()
{
	// die beiden Layer-Header:
	var img_default = getStyleObject("img_default");
	var img_default_hidden = getStyleObject("img_default_hidden");
	var img_header = getStyleObject("img_header");
	var img_header_hidden = getStyleObject("img_header_hidden");
	// fuer msie overlays:
	var img_header_overlay_white = getStyleObject("img_header_overlay_white");
	var img_header_overlay_grey = getStyleObject("img_header_overlay_grey");
	// die layer die verschoben werden muessen:
	var container = getStyleObject("container");
	if (stateHeader == "open")
	{
		img_default.visibility = "hidden";
		img_default_hidden.visibility = "visible";
		img_header.visibility = "hidden";
		img_header_hidden.visibility = "visible";
		img_header_overlay_white.visibility = "visible";
		img_header_overlay_grey.visibility = "visible";
		if (is_msie)
			container.top = 60;
		else
			container.top = 60 + "px";
		document.getElementById('gimmick_img').src = img_plus.src;
		stateHeader = "closed";
	}
	else
	{
		img_default.visibility = "visible";
		img_default_hidden.visibility = "hidden";
		img_header.visibility = "visible";
		img_header_hidden.visibility = "hidden";
		img_header_overlay_white.visibility = "hidden";
		img_header_overlay_grey.visibility = "hidden";
		if (is_msie)
			container.top = 250;
		else
			container.top = 250 + "px";
		document.getElementById('gimmick_img').src = img_minus.src;
		stateHeader = "open";
	}
	var date = new Date();
	date.setTime(date.getTime() + (20 * 24 * 60 * 60 * 1000));
	if (!is_msie)
		var expires = "; expires=" + date.toGMTString();
	else
		var expires = "; expires=" + date.toUTCString();
	document.cookie = "stateHeader=" + stateHeader + expires + "; path=/";
	// alert(date.toGMTString());
}



// added 2007-09-26, confirm extern link layer handling
function showLayerConfirmLinkExtern (sIdLink, sText, sHref, sTextOk, sTextCancel) {
	aPos = findPos(document.getElementById(sIdLink));
	
	iHeightLayer = 120;
	
	iCorrectVert = 0;
	
	// get Scroll Top:
	win = window;
	if(!win) win = window;
    var aPosScroll = {left:0, top:0};

    if (typeof win.pageXOffset != 'undefined') {
         // Mozilla/Netscape
         aPosScroll.left = win.pageXOffset;
         aPosScroll.top = win.pageYOffset;
    } else {
         var obj = (win.document.compatMode && win.document.compatMode == "CSS1Compat") ?
         win.document.documentElement : win.document.body || null;
         aPosScroll.left = obj.scrollLeft;
         aPosScroll.top = obj.scrollTop;
    }
	
	iRelativeBottom = document.body.clientHeight - (aPos[1] - aPosScroll.top);
	// sText += ", " + iRelativeBottom;
	if (iRelativeBottom < iHeightLayer) {
		iCorrectVert = -iHeightLayer + 20;
	}
	
	oLayerConfirm = document.getElementById('layer_extern_link_confirm');
	if (is_msie) {
		oLayerConfirm.style.left = 300;
		oLayerConfirm.style.top = (aPos[1] + iCorrectVert);
	} else {
		oLayerConfirm.style.left = 300 + "px";
		oLayerConfirm.style.top = (aPos[1] + iCorrectVert) + "px";
	}
	sContent = sText + "<br /><div class='table_row'><div class='table_td'>";
	sContent += "<a href='" + sHref + "' onclick=\"window.open('" + sHref + "'); hideConfirmLayer(); return false;\" class='button_black' target='_blank'>" + sTextOk + "</a></div>";
	sContent += "<div class='table_td'>"; 
	sContent += "<a href='#' onclick='hideConfirmLayer(); return false;' class='button_black'>"  + sTextCancel + "</a></div>";
	sContent += "<div class='space_line'></div></div>";
	oLayerConfirm.innerHTML = sContent;
	oLayerConfirm.style.visibility = 'visible';
}


function hideConfirmLayer () {
	oLayerConfirm = document.getElementById('layer_extern_link_confirm');
	oLayerConfirm.style.visibility = 'hidden';
}


function findPos (obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}
