// STYLES



function switchImage(dir) {
	if ((dir != -1 && dir != 1) || (dir == -1 && document.currImage <= 0) || (dir == 1 && document.currImage >= document.totalImages - 1)) { return; }
	document.getElementById("image" + document.currImage).style.display = "none";
	document.currImage += dir;
	document.getElementById("image" + document.currImage).style.display = "block";
	document.getElementById("prev").style.display = document.currImage > 0 ? "block" : "none";
	document.getElementById("next").style.display = document.currImage < document.totalImages - 1 ? "block" : "none";
}

function initForm(formName) {
	document.write('<style type="text/css"><!-- .csc-mailform-field label, .csc-mailform-field-noformat label {	float: left;	width: 80px;} .csc-mailform-field label {	float: none;	width: auto;	position: absolute;	left: 5px;	top: 2px;} .csc-mailform-select {	background: #6E6E6E url(fileadmin/templates/img/dropdown.gif);	background-position: right center;	background-repeat: no-repeat;	margin-bottom: 7px;	padding: 0 0 1px 0;}--></style> ');
	document.openScrollbar = "";
	var tmpForm = document.getElementById(formName);
	if (!tmpForm) { return; }
	var tmpFormRows = tmpForm.getElementsByTagName('DIV');
//alert(tmpFormRows.length);
	if (!tmpFormRows) { return; }
	for (var i = 0; i < tmpFormRows.length; i++) {
		if (tmpFormRows[i].className != 'csc-mailform-field') { continue; }
		tmpFormRows[i].style.zIndex = tmpFormRows.length - i;		
		
		// check ob label vorhanden
		if(!(tmpFormRows[i] && tmpFormRows[i].getElementsByTagName('LABEL') && tmpFormRows[i].getElementsByTagName('LABEL')[0] && tmpFormRows[i].getElementsByTagName('LABEL')[0].innerHTML))  { continue; }

		var tmpLabel = tmpFormRows[i].getElementsByTagName('LABEL')[0].innerHTML;		
		var tmpTagName = tmpFormRows[i].getElementsByTagName('LABEL')[0].tagName;
		if (!tmpLabel || tmpTagName != 'LABEL') { continue; }
		
		// wenn INPUT oder TEXTAREA
		var tmpType = "";
		if(tmpFormRows[i] && tmpFormRows[i].getElementsByTagName('INPUT') && tmpFormRows[i].getElementsByTagName('INPUT')[0] && tmpFormRows[i].getElementsByTagName('INPUT')[0].tagName)  {tmpType = 'INPUT';}
		if(tmpFormRows[i] && tmpFormRows[i].getElementsByTagName('TEXTAREA') && tmpFormRows[i].getElementsByTagName('TEXTAREA')[0] && tmpFormRows[i].getElementsByTagName('TEXTAREA')[0].tagName)  {tmpType = 'TEXTAREA';}

		if (tmpType) {
			var tmpFormRow = tmpFormRows[i];
			tmpFormRow.getElementsByTagName('LABEL')[0].innerHTML = tmpLabel;
			tmpFormRow.getElementsByTagName(tmpType)[0].onfocus = function() { gotFocus(this.parentNode.getElementsByTagName('LABEL')[0]); }
			// unterscheidung zw. input und textarea
			if (tmpType == 'INPUT') { tmpFormRow.getElementsByTagName(tmpType)[0].onblur = function() { lostFocus(this.parentNode.getElementsByTagName('LABEL')[0], 'INPUT'); }	}
			else if (tmpType == 'TEXTAREA') { tmpFormRow.getElementsByTagName(tmpType)[0].onblur = function() { lostFocus(this.parentNode.getElementsByTagName('LABEL')[0], 'TEXTAREA'); } }
			
			if (tmpFormRow.getElementsByTagName(tmpType)[0].value != "") { lostFocus(tmpFormRow.getElementsByTagName(tmpType)[0]); }
			
		// wenn SELECT	
		} else if(tmpFormRows[i] && tmpFormRows[i].getElementsByTagName('SELECT') && tmpFormRows[i].getElementsByTagName('SELECT')[0] && tmpFormRows[i].getElementsByTagName('SELECT')[0].tagName)  {
			// Sonderfall Select: Ausblenden und stattdessen einen Link mit Text und Layer-Dropdown einblenden
			var tmpField = tmpFormRows[i].getElementsByTagName('SELECT')[0];
			// select box ausblenden
			tmpFormRows[i].getElementsByTagName('SELECT')[0].parentNode.getElementsByTagName('LABEL')[0].style.display = "none";
			tmpField.style.display = "none";
			// Zuerst ein A-Tag zum Toggeln des Dropdowns und der anzeige des aktuellen Wertes erzeugen
			var tmpA = document.createElement("a");
			tmpA.appendChild(document.createTextNode(tmpLabel));
			tmpA.setAttribute('id', tmpField.id + '_a');
			// ausklappen
			tmpA.setAttribute('href', 'javascript:toggleDropdown("' + tmpField.id + '_a")');
			tmpFormRows[i].appendChild(tmpA);
			tmpA.className = 'csc-mailform-select-a';
			// Nun ein DIV als Dropdown
			var tmpDiv = document.createElement("div");
			tmpDiv.setAttribute('id', tmpField.id + '_div');
			tmpFormRows[i].appendChild(tmpDiv);
			tmpDiv.className = 'csc-mailform-select-div';
			// Nun die Optionen als A-Tags erzeugen
			for (var j = 0; j < tmpField.options.length; j++) {
				// nur wenn wert vorhanden
				if (tmpField.options[j].text != "") {
					var tmpOption = document.createElement("a");
					tmpOption.appendChild(document.createTextNode(tmpField.options[j].text));
					tmpOption.setAttribute('href', 'javascript:document.'+tmpForm.name+'.'+tmpField.id+'.options['+j+'].selected=true;	document.getElementById("'+tmpField.id + '_a").childNodes[0].nodeValue="'+tmpField.options[j].text+'";	toggleDropdown("' + tmpField.id + '_a")');
					tmpDiv.appendChild(tmpOption);
					tmpOption.className = 'csc-mailform-select-option';
				}
			}
			tmpA.relatedLabel = tmpLabel;
			tmpA.relatedField = tmpField;
			tmpA.relatedDiv = tmpDiv;
		}
	}
	initFileUploads(tmpForm);
}

function gotFocus(element) {
	element.style.visibility = "hidden";
}

function lostFocus(element, input) {
	if (element.parentNode.getElementsByTagName(input)[0].value != "") { return; }
	element.style.visibility = "visible";
}

function toggleDropdown(elementString) {
	element = document.getElementById(elementString);
	if (element.relatedDiv.style.display == "" || element.relatedDiv.style.display == "none") {
		element.relatedDiv.style.display = "block";
		// zum schliessen definieren
		document.openScrollbar = elementString.replace('_a', '');	
	} else {
		element.relatedDiv.style.display = "none";
		document.openScrollbar = null;	
	}
	
}

function hideDropdown(e) {
	if (navigator.appName.indexOf("Explorer") != -1)
	{
		e = event;
	}	
	var eve = e.target ? e.target : e.srcElement;
	if(document.getElementById(document.openScrollbar+'_div') != null  && (eve.parentNode == null || (eve.parentNode.id != document.openScrollbar+'_div' && eve.id != document.openScrollbar+'_a'))) {
		//alert(document.openScrollbar+'_div');
		document.getElementById(document.openScrollbar+'_div').style.display = 'none';
	}
} 

function positionLogo() {
	var content = document.getElementById("content");
	var logo = document.getElementById("cmlogo");
	var mainnav = document.getElementById("mainnav");
	
	if (!content || !logo || !mainnav) {
		return;
	}
	logo.style.top = content.offsetHeight / 2 - logo.offsetHeight / 2 + mainnav.offsetHeight + "px";
}

function initFileUploads(formElement) {
	var W3CDOM = (document.createElement && document.getElementsByTagName);
	if (!W3CDOM) return;
	var fakeFileUpload = document.createElement('div');
	fakeFileUpload.className = 'fakefile';
	var textField = document.createElement('div');
	textField.className = 'fakefile-textfield';
	fakeFileUpload.appendChild(textField);
	var button = document.createElement('input');
	button.type = 'button';
	button.className = 'mailform-button';
	button.value = 'Datei wählen';
	fakeFileUpload.appendChild(button);
	var x = formElement.getElementsByTagName('input');
	for (var i=0;i<x.length;i++) {
		if (x[i].type != 'file') continue;
		if (x[i].parentNode.className != 'fileinputs') continue;
		x[i].className = 'file';
		var clone = fakeFileUpload.cloneNode(true);
		x[i].parentNode.appendChild(clone);
		x[i].relatedElement = clone.getElementsByTagName('div')[0];
		x[i].onchange = x[i].onmouseout = function () {
			this.relatedElement.innerHTML = this.value;
		}
	}
}