var adminUrl = null;
var oldStyleBackgroundColor = null;
var adminInputElement = null;

function jumpToAdminUrl() {
	if(adminUrl != null)
		top.location.href = adminUrl;
}

function highlight(element) {
	oldStyleBackgroundColor = element.style.backgroundColor;
	element.style.backgroundColor = "#ffffff";
}

function unhighlight(element) {
	if(oldStyleBackgroundColor != null) {
		element.style.backgroundColor = oldStyleBackgroundColor;
		oldStyleBackgroundColor = null;
	}
	else {
		element.style.backgroundColor = "transparent";
	}
}

function openPopUp(element, url) {
	adminInputElement = element;
	window.open(url, 'popupFenster', 'width=640,height=480,resizable=yes,location=no,menubar=no,toolbar=no,scrollbars=yes');
}

function openPopUpSize(element, url, width, height) {
	adminInputElement = element;
	window.open(url, 'popupFenster', 'width='+width+',height='+height+',resizable=yes,location=no,menubar=no,toolbar=no,scrollbars=yes');
}

function popUpErledigt(wert) {
	window.opener.setFromPopUp(wert);
	window.close();
}

function setFromPopUp(wert) {
	adminInputElement.value=wert;
}

function setFormValue(formname, elementname, wert, label) {
	document.forms[formname].elements[elementname].value = wert;
	var labelElement = document.getElementById(elementname+"_label");
	if(labelElement != null) {
		labelElement.removeChild(labelElement.firstChild);
		var textElement = document.createTextNode(label);
		labelElement.appendChild(textElement);
	}
}

function setFormValueOptional(formname, elementname, wert, label) {
	var valueElement = document.forms[formname].elements[elementname];
	if(valueElement != null) {
		valueElement.value = wert;
	}
	var labelElement = document.getElementById(elementname+"_label");
	if(labelElement != null) {
		labelElement.removeChild(labelElement.firstChild);
		var textElement = document.createTextNode(label);
		labelElement.appendChild(textElement);
	}
}

function setPersonFirma(formname, person, personLabel, firma, firmaLabel) {
	setFormValue(formname, "person", person, personLabel);
	setFormValue(formname, "firma", firma, firmaLabel);
}

function addFormValue(formname, elementname, wert) {
	document.forms[formname].elements[elementname].value = document.forms[formname].elements[elementname].value + wert;
}

function getFormValue(formname, elementname) {
	return document.forms[formname].elements[elementname].value;
}

function toggleSaverBlock(number) {
	var saverElements = getElementsByClassNameA("tr", "saverBlock"+number);
	var saverPartHeader = document.getElementById("saverBlockHead"+number);

	if(saverElements.length > 0) {
		if(saverElements[0].style.visibility != "hidden") {
			for(i=0; i<saverElements.length; i++) {  
				saverElements[i].style.visibility = "hidden"; 
				saverElements[i].style.height = "0px";
				saverElements[i].style.display = "none";
			}
			saverPartHeader.style.backgroundImage = 'url("/KUSS/common/images/tablesorter.asc.gif")';
		}
		else {
			for(i=0; i<saverElements.length; i++) {  
				saverElements[i].style.visibility = "visible"; 
				saverElements[i].style.height = "auto";
				if(document.all) {
					saverElements[i].style.display = "block";
				}
				else
					saverElements[i].style.display = "table-row";
			}
			saverPartHeader.style.backgroundImage = 'url("/KUSS/common/images/tablesorter.desc.gif")';
		}
	}
}

function setCheckAll(className) {
	var elements = getElementsByClassNameA("input", className);
	for(var i=0; i < elements.length; i++) {
		elements[i].checked = true;
	}
}

function getElementsByClassNameA(tagname, findClass) {
	var elements = [];
	var j = 0;

	if(tagname) {
		var aElm = document.getElementsByTagName(tagname);
		for(var i=0; i < aElm.length; i++) {
			if(aElm[i].className == findClass) {
				elements[j] =  aElm[i];
				j++;
			}
		}
	}
	return elements;
}

function displayBrowser(formularName, fieldNameValue, displayBelowThisObject, browserTyp) {
	var x = displayBelowThisObject.offsetLeft;
	var y = displayBelowThisObject.offsetTop + displayBelowThisObject.offsetHeight ;

	var parent = displayBelowThisObject;
	while (parent.offsetParent) {
		parent = parent.offsetParent;
		x += parent.offsetLeft;
		y += parent.offsetTop;
	}

	drawBrowser(formularName, fieldNameValue, x, y, browserTyp);
}

function drawBrowser(formularName, fieldNameValue, x, y, browserTyp) {
	var browserDiv = document.getElementById("browserDIV"+browserTyp);

	if(!browserDiv) {
		browserDiv = document.createElement("div");
		browserDiv.setAttribute("id", "browserDIV"+browserTyp);
		browserDiv.setAttribute("class", "browserDIV");
		browserDiv.setAttribute("style", "visibility: hidden;");
		document.body.appendChild(browserDiv);

		/*var newEmptyLink = document.createElement("a");
		newEmptyLink.setAttribute("href", "javascript:setFormValue('"+formularName+"', '"+fieldNameValue+"', '', ' - ')");
		var newEmptyLinkText = document.createTextNode("leeren");
		newEmptyLink.appendChild(newEmptyLinkText);
		browserDiv.appendChild(newEmptyLink);

		var newTrenner = document.createTextNode(" | ");
		browserDiv.appendChild(newTrenner);

		var newCloseLink = document.createElement("a");
		newCloseLink.setAttribute("href", "javascript:drawBrowser('"+formularName+"', '"+fieldNameValue+"', "+x+", "+y+", '"+browserTyp+"')");
		var newCloseLinkText = document.createTextNode("schließen");
		newCloseLink.appendChild(newCloseLinkText);
		browserDiv.appendChild(newCloseLink);
		
		var newBreak = document.createElement("br");
		browserDiv.appendChild(newBreak);*/
		
	    var newFrameNode = document.createElement("iFrame");
	    newFrameNode.setAttribute("id", "browserFrameID");
	    newFrameNode.setAttribute("src", "/KUSS/common/browser/"+browserTyp+".php?browserFormName="+formularName+"&browserReturnField="+fieldNameValue);
	    if(browserTyp == "firma" || browserTyp == "raum" || browserTyp == "person" || browserTyp == "seminar") {
	    	newFrameNode.setAttribute("width", "620");
	    	newFrameNode.setAttribute("height", "550");
	    	newFrameNode.setAttribute("border", "0");
	    	newFrameNode.setAttribute("margin", "0");
	    	newFrameNode.setAttribute("padding", "0");
	    }
	    //newFrameNode.setAttribute("scrolling", "yes");
	    //newFrameNode.setAttribute("scrolling", "auto");
	    newFrameNode.setAttribute("style", "overflow:auto;overflow-x:auto;");
	    newFrameNode.setAttribute("frameborder", "0");
	    browserDiv.appendChild(newFrameNode);
	}

	//Nochmal laden
	browserDiv = document.getElementById("browserDIV"+browserTyp);
	browserDiv.style.position = "absolute";
	browserDiv.style.left = x + "px";
	browserDiv.style.top = y + "px";
	browserDiv.style.visibility = (browserDiv.style.visibility == "visible" ? "hidden" : "visible");
	browserDiv.style.display = (browserDiv.style.display == "block" ? "none" : "block");
	browserDiv.style.zIndex = 10000;
}

function closeBrowser(browserTyp) {
	var browserDiv = document.getElementById("browserDIV"+browserTyp);
	browserDiv.style.visibility = "hidden";
	browserDiv.style.display = "none";
}

function setEingabeFocus(elementId) {
	var element = document.getElementById(elementId);
	if(element) {
		element.focus();
	}
}


