var boxTimer = null;
var hideTimer = null;
var hideOverlay = null;

var iFrameWidth = 0;
var iIFrame = 0;
var iLastBundesland = -1;

var iAbsHeight = 0;

var oldClass = '';

var OP;

DHTML_init();

var browserVS = parseInt(navigator.appVersion);
var browserOS = navigator.userAgent.toLowerCase();
var CheckIE = ((browserOS.indexOf("msie") != -1) && (browserOS.indexOf("opera") == -1));
var CheckMS = ((browserOS.indexOf("win") != -1) || (browserOS.indexOf("16bit") != -1));

function datumBannerklick()
{
	iTagIndex = 0;
	iMonatIndex = document.getElementById('fast_month').selectedIndex - 1;
	iJahrIndex = document.getElementById('fast_year').selectedIndex - 1;

	if(iMonatIndex < 1)
		iMonatIndex = 0;
	if(iJahrIndex < 1)
		iJahrIndex = 0;

	objTag = document.getElementById('von_day');
	objMonat = document.getElementById('von_month');
	objJahr = document.getElementById('von_year');

	if(objTag.options[0].value < 1)
		iTagIndex++;

	if(objMonat.options[0].value < 1)
		iMonatIndex++;

	if(objJahr.options[0].value < 1)
		iJahrIndex++;

	objTag.selectedIndex = iTagIndex;
	objMonat.selectedIndex = iMonatIndex;
	objJahr.selectedIndex = iJahrIndex;

	document.getElementById('bis_day').selectedIndex = iTagIndex + 30;
	document.getElementById('bis_month').selectedIndex = iMonatIndex;
	document.getElementById('bis_year').selectedIndex = iJahrIndex;

	document.getElementById('von_day').form.submit();
}

function checkEnter(evt)
{
	if (!evt)
		evt = window.event;
	if (evt.which) 
	{
		Tastencode = evt.which;
  	} 
	else if (evt.keyCode) {
		Tastencode = evt.keyCode;
	}
	
	if(Tastencode=='13' && document.getElementById('plz'))
		document.getElementById('plz').form.submit();

}

function lOver(obj)
{
	oldClass = obj.className;
	obj.className = 'over highlight';
}

function lOut(obj)
{
	obj.className = oldClass;
}

function setArrayExt(iStart, iEnd, sPreName, bStatus)
{	
	var firstID = parseInt(iStart);
	var lastID = parseInt(iEnd);	

	if(bStatus.length == 0 || bStatus == 'auto')
	{
		if(document.getElementById(sPreName+firstID).checked == true)
			bStatus = false;
		else
			bStatus = true;
	}

	for(i = firstID; i < lastID; i++)
	{			
		document.getElementById(sPreName+i).checked = bStatus;
	}
}

function setArray(iStart, iEnd, bStatus)
{	
	var firstID = parseInt(iStart);
	var lastID = parseInt(iEnd);
	
/*	
	for(i = iStart; i < iEnd; i++)
	{	
		alert('current: '+i);
		document.getElementById('bz'+i).checked = bStatus;
	}
*/
	for(i = firstID; i < lastID; i++)
	{			
		document.getElementById('bz'+i).checked = bStatus;
	}
}

function setImg(id,fileName)
{
	document.getElementById(id).src = '/files/'+fileName;
}

function checkBezirke()
{
	iCount = document.getElementById('countbezirke').value;
	bChecked = false;
	var sBezirke = '';

	for(i=0; i<iCount; i++)
	{
		if(document.getElementById('bz'+i).checked == true)
		{	bChecked = true;
			sBezirke += document.getElementById('bz'+i).value + ',';
		}
	}

	if(bChecked)
	{	
		setVar('bezirke',sBezirke);
		document.getElementById('search').submit();		
	}
	else
		alert('Bitte wählen Sie mindestens einen Bezirk aus!');
}

function showBundesland(idBundesland)
{
	if(iLastBundesland > -1)
	{	hide('bl'+iLastBundesland);
		document.getElementById('idbl'+iLastBundesland).className = 'btngreysmall';
	}


	show('bl'+idBundesland);
	iLastBundesland = idBundesland;

	document.getElementById('idbl'+idBundesland).className = 'btngreensmall';
}

function checkObjektart()
{
	bChecked = false;

	for(i=0; i<8; i++)
	{
		if(document.getElementById('objektart_'+i).checked == true)
			bChecked = true;
	}

	if(bChecked)
		document.getElementById('search').submit();
	else
		alert('Bitte wählen Sie mindestens eine Objektart aus!');
}

function checkLand()
{
	bChecked = false;

	var current = document.getElementsByName('idland');

	for(var i=0; current[i]; i++)
	{
		if(current[i].checked == true)
			bChecked = true;
	}

	if(bChecked)
		document.getElementById('search').submit();
	else
		alert('Bitte wählen Sie ein Land aus!');
}

function makeVisible(id)
{
	document.getElementById(id).style.visibility = "visible";	
}

function makeInvisible(id)
{
	document.getElementById(id).style.visibility = "collapse";
	
}

function setBeziehbarTyp(selectField)
{
	hide('beziehbar_0');
	hide('beziehbar_1');
	hide('beziehbar_2');
	hide('beziehbar_3');
	hide('beziehbar_4');

	if(selectField.value == 1)
		showTableRow('beziehbar_0');
	else if(selectField.value == 2)
	{
		showTableRow('beziehbar_2');
		showTableRow('beziehbar_4');
	}	
	else if(selectField.value == 3)
	{
		showTableRow('beziehbar_3');
		showTableRow('beziehbar_4');
	}
	else if(selectField.value == 4 || selectField.value == 5)
		showTableRow('beziehbar_1');	

}

function getAbsHeight()
{
	innerSize = 0;

	if(window.innerHeight)
		innerSize = window.innerHeight;
	else if(document.documentElement.clientHeight)
		innerSize = document.documentElement.clientHeight;
	else if(document.body.clientHeight)
		innerSize = document.body.clientHeight;

	iAbsHeight = innerSize;
}


function scaleFileFrame(iHeight, iWidth)
{
	setHeight('fileframe',iHeight);
	setWidth('fileframe',iWidth);

	iHeightFrame = getHeight('fileframe');
	iHeightBody = getHeight('idbody');

	if(iHeightFrame > iHeightBody)
	{	setHeight('overlay_img',iHeightFrame+10);
	//	alert('overlay: '+iHeightFrame+' > '+iHeightBody);
	}
	
	else if(iAbsHeight > iHeightBody)
		setHeight('overlay_img',iAbsHeight-20);
	
	else
	{	setHeight('overlay_img',iHeightBody);
	//	alert('body: '+iHeightBody+' > '+iHeightFrame);
	}
}

function showSchnellzugriff(id)
{
	clearTimeout(hideTimer);
	clearTimeout(hideOverlay);
	
	if(document.getElementById(id).style.display != "inline")
		show(id);
		
	if(document.getElementById('overlay').style.display != "inline")
	{	
		show('overlay');

		iHeightBody = getHeight('idbody');
		
		if(iHeightBody > iAbsHeight)
			setHeight('overlay_img',iHeightBody);
		else
			setHeight('overlay_img',iAbsHeight-20);
	}
}

function hideSchnellzugriff(id)
{
	idHide = id;
	hideTimer = window.setTimeout("hide(idHide);",100);
	
	if(iIFrame == 0)
		hideOverlay = window.setTimeout("hide('overlay');",100);
}

function setHeight(id, height)
{
	if(height == undefined)
		return;
		
	if(document.getElementById(id))
		document.getElementById(id).setAttribute("height",height+20);
}

function getHeight(id)
{
	if(document.getElementById(id).offsetHeight > 0)
		return document.getElementById(id).offsetHeight;
	else
		return document.getElementById(id).innerHeight;		
}

function setWidth(id, width)
{
	if(width == undefined)
		return;

	if(iFrameWidth == 0)
		iFrameWidth = width+60;	
		
	if(document.getElementById(id))
		document.getElementById(id).setAttribute("width",iFrameWidth);		
}

function getWidth(id)
{

	if(document.getElementById(id).offsetWidth > 0)
		return document.getElementById(id).offsetWidth;
	else
		return document.getElementById(id).innerWidth;		
}

function setImage(id,path)
{
	document.getElementById(id).src = path;	
}

function setBg(id,path)
{
	document.getElementById(id).style.background = 'url('+path+') center center no-repeat';	
}

function setUpImage(id, path)
{
	document.getElementById('img_'+id).src = path;		
}

function hideWithTimer(id)
{
	idHide = id;

	hideTimer = window.setTimeout("hide(idHide);",100);	
}

function showWithTimer(id)
{
	clearTimeout(hideTimer);
	
	if(document.getElementById(id).style.display != "inline")
		show(id);	
}

function GetFileName(FromElement, ToElement, FormName)
{
	if(document.forms[FormName].elements[ToElement].value.length > 0)
		return;
	var sPath = document.forms[FormName].elements[FromElement].value;
	if(sPath.length == 0)
		alert('Bitte wählen Sie zuerst eine Datei aus');
	if(sPath.lastIndexOf('\\') > 0)
	{	
		var sTitelExt = sPath.substr(sPath.lastIndexOf('\\')+1);
		var sTitel = sTitelExt.slice(0,sTitelExt.lastIndexOf('.'));
		document.forms[FormName].elements[ToElement].value = sTitel;
	}
}

function unSetIFrame()
{
	iIFrame = 0;
	hide('overlay');
	hide('fileframetable');
	document.getElementById('fileframe').src = '/bittewarten.html';
}

function setIFrameExt(sDll, sMode, sObject)
{
	iIFrame = 1;	

	show('overlay');

	var iframe = document.getElementById('fileframe');

	show('fileframetable');

	window.scrollBy(0, -10000);

	if(sObject.indexOf('=') == -1)
		sObject = 'object='+sObject;
	

//	iframe.src = '/dll/'+sDll+'.dll?mode='+sMode+'&iframe=on&object='+sObject;
	iframe.src = '/dll/'+sDll+'.dll?mode='+sMode+'&iframe=on&'+sObject;

}

function setIFrame(mode,submode, elemName, elemCount, idObjekt)
{
	iIFrame = 1;	

	show('overlay');

	var iframe = document.getElementById('fileframe');

	show('fileframetable');

	window.scrollBy(0, -10000);

	iframe.src = '/dll/objects.dll?iframe=on&mode='+mode+'&submode='+submode+'&elemname='+elemName+'&elemcount='+elemCount+'&idobjekt='+idObjekt;
	
}

function setText(id,text)
{
	if(document.all)
		document.getElementById(id).innerText = text;	
	else
		document.getElementById(id).textContent = text;


/*	if(document.getElementById(id).textContent)
		document.getElementById(id).textContent = text;
	else
		document.getElementById(id).innerText = text;	
*/
}

function setVar(id,sValue)
{
	document.getElementById(id).value = sValue;
}

function getValue(id)
{
	return document.getElementById(id).value;
}

function setChecked(formName,elemName)
{
	document.forms[formName].elements[elemName].checked = !document.forms[formName].elements[elemName].checked;
}

function showArray(sName,id)
{
	var current = document.getElementById(sName+'0');

	var i=0;


	while(current != null)
	{
		if(document.getElementById(id).checked == true)
		{	
			current.style.display = "table-row";
		//	current.style.display = "block";
		//	current.style.visibility = "visible";
		}
		else
		{
			current.style.display = "none";	
		//	current.style.visibility = "collapse";	
		}

		i++;
		current = document.getElementById(sName+i);
	}
}

function showMore(id,bShow)
{
	if(bShow)
	{	
		document.getElementById(id+'_link').style.display = 'none';
		document.getElementById(id+'_text').style.display = 'inline';
	}
	else
	{	
		document.getElementById(id+'_link').style.display = 'inline';
		document.getElementById(id+'_text').style.display = 'none';
	}
}

function show(id)
{
	if(!document.getElementById(id))
		alert('ID '+id+' nicht gefunden');
	else
		document.getElementById(id).style.display = "inline";		
}

function showTableRow(id)
{	
	document.getElementById(id).style.display = "table-row";
}

function hide(id)
{	
	document.getElementById(id).style.display = "none";
}

function showBox(id)
{
	if(id == "start_box1")
	{	
		hide('start_box2');
		hide('start_box3');
	}	
	else if(id == "start_box2")
	{	
		hide('start_box1');
		hide('start_box3');
	}
	else if(id == "start_box3")
	{	
		hide('start_box2');
		hide('start_box1');
	}

	if(document.getElementById(id).style.display != "inline")
		show(id);	
}

function hideBox()
{
	boxTimer = window.setTimeout("hide('start_box1');hide('start_box2');hide('start_box3');",500);	
}

function checkAuswahl(id)
{
	var sValues = '';

	for(var i=0; document.getElementById(id+i); i++)
	{	
		if(document.getElementById(id+i).checked == true)
			sValues += document.getElementById(id+i).value+',';
			

	}
	setVar(id,sValues);
}

function setAuswahlRadio(id) 
{	

	if(!document.getElementById(id+'_body'))
		return;

	//filter ausblenden - ergebnis anzeigen
	if(document.getElementById(id+'_body').style.display == "block")
	{
		document.getElementById(id+'_body').style.display = "none";
		document.getElementById(id+'_auswahl').style.display = "block";
		document.getElementById(id+'_img').src = '/images/arrow_green_right.png';
		
		document.getElementById('idobjekt').value = '';
		
		// wenn AUT bei Länderauswahl dann zurück zur suche
		objRadio = document.getElementsByName(id);
		if(id == 'idland' && getValue('idland') != 1)
		{
			for(i=0; i<objRadio.length; i++)
			{
				if(objRadio[i].checked && objRadio[i].value == '1')
				{	document.location.href = '?mode=search&schritt=2&idland=1&objektarten='+getValue('objektarten');				
					return;
				}
			}
		}

		document.getElementsByName(id)[0].form.submit();		
	}
	else
	{	
		document.getElementById(id+'_body').style.display = "block";
		document.getElementById(id+'_auswahl').style.display = "none";
		document.getElementById(id+'_img').src = '/images/arrow_green_down.png';
	}
	
}

function setAuswahl(id,doSubmit) 
{	

	if(!document.getElementById(id+'_body'))
		return;

	//filter ausblenden - ergebnis anzeigen
	if(document.getElementById(id+'_body').style.display == "block" || doSubmit == 'false')
	{
		var sValues = '';

		for(var i=0; document.getElementById(id+i); i++)
		{	
			if(document.getElementById(id+i).checked == true)
			{
		//		var sText = document.getElementById('a'+id+i).firstChild.nodeValue;
		//		var newDiv = document.createElement("div");
		//		var newDIVText = document.createTextNode(sText);
		//		document.getElementById(id+'_auswahl').appendChild(newDiv);
		//		document.getElementById(id+'_auswahl').lastChild.appendChild(newDIVText);

				sValues += document.getElementById(id+i).value+',';
			}

		}
		
		if(sValues.length == 0)
			alert('Bitte treffen Sie mindestens eine Auswahl!');
		else
		{
			document.getElementById(id+'_body').style.display = "none";
			document.getElementById(id+'_auswahl').style.display = "block";
			document.getElementById(id+'_img').src = '/images/arrow_green_right.png';

			setVar(id,sValues);

			if(doSubmit == 'true')
			{	
				document.getElementById('idobjekt').value = '';
				document.getElementById(id).form.submit();
			}
		}
	}
	else
	{	
	//	var countChilds = document.getElementById(id+'_auswahl').childNodes.length;
	//	for(var i=0; i<countChilds; i++)
	//	{	
	//		currentChild = document.getElementById(id+'_auswahl').firstChild;
	//		document.getElementById(id+'_auswahl').removeChild(currentChild);
	//	}
		
		document.getElementById(id+'_body').style.display = "block";
		document.getElementById(id+'_auswahl').style.display = "none";
		document.getElementById(id+'_img').src = '/images/arrow_green_down.png';
	}
	
}

function setFilter(id)
{	
	//filter ausblenden - ergebnis anzeigen
	if(document.getElementById(id+'_body').style.display == "block")
	{
		document.getElementById(id+'_body').style.display = "none";
		document.getElementById(id+'_auswahl').style.display = "block";
		document.getElementById(id+'_img').src = '/images/arrow_green_right.png';

	
	//	alert(getValue('filter0_von'));	
		document.getElementById('idobjekt').value = '';
		document.getElementById('mode').form.submit();
	}
	else
	{	
		document.getElementById(id+'_body').style.display = "block";
		document.getElementById(id+'_auswahl').style.display = "none";
		document.getElementById(id+'_img').src = '/images/arrow_green_down.png';
	}
	
}

function showObject(id)
{
	setVar('idobjekt',id);
	document.getElementById('idobjekt').form.submit();
}

function addwhishlist(id)
{
	setVar('add2whishlist',id);
	document.getElementById('add2whishlist').form.submit();
}

function submitForm(id)
{
	document.getElementById(id).form.submit();
}

function setCheckednSubmit(idToSet,value)
{
	document.getElementById(idToSet).checked = !document.getElementById(idToSet).checked;
	document.getElementById(idToSet).form.submit();
}

function setnSubmit(idToSet,value)
{
	setVar(idToSet,value);
	document.getElementById(idToSet).form.submit();
}

function addwarenkorb(id)
{
	setVar('add2warenkorb',id);
	document.getElementById('add2warenkorb').form.submit();
}

function showSearchLink(id) 
{
	if(document.getElementById(id+'_body').style.display == "block")
	{
		document.getElementById(id+'_body').style.display = "none";
		document.getElementById(id+'_img').src = '/images/arrow_grey_right.png';
		setVar(id,'');

	}
	else
	{		
		document.getElementById(id+'_body').style.display = "block";		
		document.getElementById(id+'_img').src = '/images/arrow_grey_down.png';
		setVar(id,'on');
	}
	
}

function InsertNamedURL(formname,fieldname)
{
	var sTitle;
	var sURL;
	sTitle = prompt('Bitte geben Sie den Titel der Internetadresse ein:', 'Titel');
	if(sTitle.length == 0)
		return;
	sURL = prompt('Bitte geben Sie die Internetadresse ein:', 'http://');
	if(sURL.length == 0)
		return;
	insertAtCaret('[url='+sURL+']'+sTitle+'[/url]',formname,fieldname);
};

function storeCaret(FormName,BlogName)
{
	if(document.forms[FormName].elements[BlogName].createTextRange)
		document.forms[FormName].elements[BlogName].caretPos = document.selection.createRange().duplicate();	
}

function insertAtCaret(text,FormName,BlogName)
{
	if(document.forms[FormName].elements[BlogName].createTextRange && document.forms[FormName].elements[BlogName].caretPos)
	{	var caretPos = document.forms[FormName].elements[BlogName].caretPos;
		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text;
	}
	else
	{
		if(document.forms[FormName].elements[BlogName].selectionEnd && (document.forms[FormName].elements[BlogName].selectionEnd - document.forms[FormName].elements[BlogName].selectionStart > 0))
		{	var df = document.forms[FormName].elements[BlogName]; 
			var selectionLength = df.textLength;
			var selectionStart = df.selectionStart;
			var selectionEnd = df.selectionEnd;
			var LeftText = df.value.substring(0,selectionStart);
			var RightText = df.value.substring(selectionEnd, selectionLength);
			df.value = LeftText + text + RightText;
		}
		else 
			document.forms[FormName].elements[BlogName].value = document.forms[FormName].elements[BlogName].value + text;
	}
	
	document.forms[FormName].elements[BlogName].focus();
	storeCaret(FormName,BlogName);
}

function getSelection(FormName,BlogName)
{
	if ((browserVS >= 4) && CheckIE && CheckMS)
	{
		return document.selection.createRange().text;
	}
	else
	{
		txtarea = document.forms[FormName].elements[BlogName];
		var selLength = txtarea.textLength;
		var selStart = txtarea.selectionStart;
		var selEnd = txtarea.selectionEnd;
		if (selEnd == 1 || selEnd == 2)
			selEnd = selLength;
		var s2 = (txtarea.value).substring(selStart, selEnd);
		
		return s2;
	}

	return;
}

function getElem(EleID)
{ 
	var Elem;
	if(DOM)
	{ 
		if(typeof document.getElementById(EleID) == "object")
			Elem = document.getElementById(EleID);
		else
			Elem = void(0);
		return(Elem);
	}
	else if(MS)
	{ 
		if (typeof document.all[EleID] == "object")
			Elem = document.all[EleID];
		else
			Elem = void(0);
		return(Elem);
	}
	else if(NS)
	{
		if (typeof document[EleID] == "object")
			Elem = document[EleID];
		else
			Elem = void(0);
		return(Elem);
	}
}

function DHTML_init() 
{
	if (window.opera) {
		OP = 1;
	}
	if(document.getElementById) {
		DHTML = 1;
		DOM = 1;
	}
	if(document.all && !OP) {
		DHTML = 1;
		MS = 1;
	}
	if(window.netscape && window.screen && !DOM && !OP) {
		DHTML = 1;
		NS = 1;
	}
}

function SuchkriterienUebernehmen() {
	document.getElementById('idobjekt').value = '';
	document.getElementById('mode').form.submit();
}

function setAboFilter()
{
	iMonatIndex = document.getElementById('nutzer_month').selectedIndex - 1;
	iJahrIndex = document.getElementById('nutzer_year').selectedIndex - 1;

	if(iMonatIndex < 1)
		iMonatIndex = 0;
	if(iJahrIndex < 1)
		iJahrIndex = 0;

	objMonat = document.getElementById('nutzer_month');
	objJahr = document.getElementById('nutzer_year');

	if(objMonat.options[0].value < 1)
		iMonatIndex++;

	if(objJahr.options[0].value < 1)
		iJahrIndex++;

	objMonat.selectedIndex = iMonatIndex;
	objJahr.selectedIndex = iJahrIndex;
	
	//alert("Monat Index: "+iMonatIndex+"\r\nJahr Index: "+iJahrIndex);

	document.getElementById('nutzer_month').form.submit();
}

