// Menue Kategorien
function men(subd,f,wit) { with(document) {
	if (document.all) {
		if (wit==1) { getElementById(subd).style.width=120; }
		else { getElementById(subd).style.width=101; }
	}

	if (getElementById(subd).style.visibility=="hidden") { 
		getElementById(subd).style.visibility="visible"; 
		if (f !="") { getElementById(f).focus(); }
	} 
	else { getElementById(subd).style.visibility="hidden"; } 
    // only price box or size box can be open
	if (subd=="subd6" && getElementById(subd).style.visibility=="visible") getElementById("subd4").style.visibility="hidden";
	if (subd=="subd4" && getElementById(subd).style.visibility=="visible") getElementById("subd6").style.visibility="hidden";
}}

// AUSWAHL DER KATEGORIEN

// make ',' in 1000 
function tausend (x) {    
	if (x > 999) { 
		var tausender=Math.floor(x/1000); 
		var h=x-tausender*1000; 
		if (Math.floor(h/100) <1) h="0"+h;
		if (Math.floor(h/10) <1) h="0"+h;
		x=tausender+","+h; 
	} 
	return(x);
}

// if max < min swap them
function checksp(x,y,sp) { with(document.forms[0]) { 
	if (parseInt(y) < parseInt(x)) { var s=y; y=x; x=s; }
	switch(sp) {
		case "size": if (maxsize.value !=0 && minsize.value !=0) { minsize.value=x; maxsize.value=y; } break;
		case "consize": if (conmaxsize.value !=0 && conminsize.value !=0) { conminsize.value=x; conmaxsize.value=y; } break;
		case "price": minprice.value=x; maxprice.value=y;
	}
}}

// input in katnr field
function katno() { with(document) {
	var x= getElementById('cat').value; 
	with(forms[0]) {	if (x) { tu.value="find"; navlink.value=""; submit(); }
}}}


// decode spanish accent in wert
function accent11(x) { 
	var a=new Array('a11','e11','i11','o11','u11','a12','e12','i12','o12','u12'); 
	var accent=new Array('á','é','í','ó','ú','Á','É','Í','Ó','Ú'); var zl=0;
	while (zl < 10) {	x=x.replace(a[zl],accent[zl]); zl++;	}  
	return(x);
}


// FELD
function feld(k,wert,sub,katitemover,katitems) { 
	with(document) {

		// bed & bath 
		var rooms=""; var bedrooms=""; var bathrooms="";
		if (k=="bednr1" || k=="bathnr1") getElementById(k).value=wert; 
		var bednr=getElementById("bednr1").value; var bathnr=getElementById("bathnr1").value; 
		switch (bednr) {
			case "1": bedrooms=" with 1 or 2 bedrooms"; break; 
			case "2": bedrooms=" with 2 or 3 bedrooms"; break;
			case "3": bedrooms=" with 4 or more bedrooms"; break;
			default: break;
		}

		if (bathnr) var bathrooms=" with "+bathnr+" or more bathrooms"; 
		if (bedrooms && bathrooms) bathrooms=" and"+bathrooms; 
		var rooms=bedrooms+bathrooms;
		
		if (k=="size") { 
			var minsize=getElementById('inpminsize').value; 
			var maxsize=getElementById('inpmaxsize').value; 
			var conminsize=getElementById('inpconminsize').value; 
			var conmaxsize=getElementById('inpconmaxsize').value; 
			minsize=minsize.replace(/[\,a-zA-Z]/g,''); if (minsize=="") minsize=0;
			maxsize=maxsize.replace(/[\,a-zA-Z]/g,''); if (maxsize=="") maxsize=0;
			conminsize=conminsize.replace(/[\,a-zA-Z]/g,''); if (conminsize=="") conminsize=0;
			conmaxsize=conmaxsize.replace(/[\,a-zA-Z]/g,''); if (conmaxsize=="") conmaxsize=0;
			forms[0].minsize.value=minsize; forms[0].maxsize.value=maxsize;
			forms[0].conminsize.value=conminsize; forms[0].conmaxsize.value=conmaxsize;
			checksp(minsize,maxsize,'size'); checksp(conminsize,conmaxsize,'consize')
		} 
		else if (k=="price") { 
			var minprice=getElementById('inpminprice').value; 
			var maxprice=getElementById('inpmaxprice').value; 
			minprice=minprice.replace(/[\,a-zA-Z]/g,''); if (minprice=="") minprice=0;
			maxprice=maxprice.replace(/[\,a-zA-Z]/g,''); if (maxprice=="") maxprice=0;
			forms[0].minprice.value=minprice;
			forms[0].maxprice.value=maxprice;
			checksp(minprice,maxprice,'price');
		} 

		// fill in field environment
		else if (k=="environment") { var env=getElementById(k).value;
			if (wert)	{ 
				var wt=wert.toLowerCase();  var envw=env.toLowerCase(); var wertu=wert.replace(" ","_");
				var found = envw.search(wt); 
				if (found >-1)	{	// delete already selected items	
					document.getElementById("id"+wertu).style.color="#"+katitems; 
					var aenv=env.split("°"); var x=0; var env="";
					while (aenv[x]) { if (aenv[x] !=wert) {	if (x >0 && env) env=env+"°"; env=env+aenv[x]; } x++; }
				} else {				// else add item to field environment
					document.getElementById("id"+wertu).style.color="#"+katitemover;
					if (env && wt !="beach property") env=env+"°";
					if (env && wt=="beach property") { env=wert+"°"+env; } else { env=env+wert; }
				}
			
			} else { env=""; }
			getElementById(k).value=env; 
		
		} else { getElementById(k).value=wert; }	 // if not environment

		with(forms[0]) {
			feld.value=''; var p=0;
			prop=accent11(property.value); if (prop) p++;
			var loc=accent11(location.value); if (loc) p++;
			var env=accent11(environment.value); if (env) p++;
			var rent=rentorbuy.value; if (rent) p++;
			var size=""; var consize=""; var price=""; 

			// remove underscores
			prop=prop.replace("_"," ");	loc=loc.replace("_"," ");	env=env.replace("_"," ");

			//  Property
			if (prop=="") prop="propertie"; 	 
			if (prop=="Commercial" || prop=="Industrial") { prop=prop+" propertie"; }

			var lastone = prop.substring(prop.length-1,prop.length);
			if (lastone !="s")	{ prop=prop+"s"; }
			prop="List all "+prop;
			
			// location
			if (loc == "Osa Peninsula") { loc="on the "+loc; }
			else if (loc != "") { loc="in "+loc; }
			
			// environment
			var aenv=env.split("°"); var x=0; env=""; var prenv="with "; 

			while (aenv[x]) { var e=aenv[x].toLowerCase(); e=e.replace(/_/g," ");
				// Beach Property
				if (e=='beach property') { aenv[x]="at the beach"; 
					if (prop=="List all properties" && loc=="") { 
					if (aenv[x]=="at the beach") { prop="List all beach properties"; aenv[x]=""; }
				}
				// others
				} else { 
					aaenv=aenv[x].split(" "); if (aaenv[0]=="in" || aaenv[0]=="near") prenv=""; // if "with" does not apply
					if (e=='infrastructure') aenv[x]="good Infrastructure"; 
					if (aenv[x]) { aenv[x]=prenv+aenv[x]; prenv="and "; }
				}
				if (aenv[x] !="List all beach properties") env=env+" "; env=env+aenv[x];	// put together string env
				x++;
			}

			// mass
			var mass=ftm2.value; var mass1=""; if(!mass) mass="m²";
			if (mass=="ha") { mass1="m²"; }	else if (mass=="ac.")	{ mass1="ft²"; } else { mass1=mass; }
			
			// size
			if (maxsize.value !="") { 
				var minsize1=minsize.value; var maxsize1=maxsize.value;
				minsize1=tausend(minsize1); maxsize1=tausend(maxsize1);		
				if (minsize.value==0) { size=" up to "+maxsize1; 
				} else if (maxsize.value==0) { size=" bigger than "+minsize1; 
				} else { size=' between '+ minsize1 + ' ' + mass + ' and '+maxsize1; }
			}
			size=size+" "+mass+" of property size";
			if (minsize.value==0 && maxsize.value==0) size="";
			if (size) p++;
			
			// consize
			if (conmaxsize.value !="") { 
				var conminsize1=conminsize.value; var conmaxsize1=conmaxsize.value;
				conminsize1=tausend(conminsize1); conmaxsize1=tausend(conmaxsize1);
				if (conminsize.value==0) { consize=" up to "+conmaxsize1; 
				} else if (conmaxsize.value==0) { consize=" bigger than "+conminsize1; 
				} else { consize=' between '+ conminsize1 + ' ' + mass1 + ' and '+conmaxsize1; }
			}
			consize=consize+" "+mass1+" of construction size"; 
			if (size) consize=" and"+consize;
			if (conminsize.value==0 && conmaxsize.value==0) consize="";
			if (consize) p++;

			// rent or buy
			if (rent !="") { rent=" available "+rent; }

			// price 
			if (maxprice.value !="") { 
				var minp=minprice.value; var maxp=maxprice.value;
				minp=tausend(minp); maxp=tausend(maxp);
				var minp="US$ "+minp+",000"; var maxp="US$ "+maxp+",000"; 

				if (minprice.value==0) { price=" for a price up to "+maxp;  
				} else { price=' for a price between '+ minp +' and '+maxp; 
				}

				if (minprice.value==0 && maxprice.value==0) price="";
				if (price) p++; 
			}
			
			// feldwert einsetzen
			if (loc+env+size+consize !="" && loc) prop=prop+" ";
			var fe=feld.value+'"'+prop+loc+rooms+env+size+consize+rent+price; 
			fe=fe.replace(/xnrx/g,""); fe=fe.replace(/_/g," "); fe=fe.replace(/bstr/g,"-");
			feld.value=fe;

			if (p > 1) { p='."'; } else { p='"'; }
			feld.value=feld.value+p; auswahlfsize();

			// make tab invisible again
			if (sub !="subd3" || wert=="") getElementById(sub).style.visibility="hidden";	
		}
}}

// Umrechnen ft : m² : ac. : ha
function ftumr(neumass) { with(document) { 
	var oldmass=forms[0].ftm2.value; 
	var minsize=getElementById('inpminsize').value; 
	var maxsize=getElementById('inpmaxsize').value; 
	var conminsize=getElementById('inpconminsize').value; 
	var conmaxsize=getElementById('inpconmaxsize').value; 
	var faktor=1; var faktor1=1;

	if (oldmass !=neumass)	{

			if (oldmass=="m²")  {
				switch(neumass) { 
					case "ha":	faktor=0.0001; break; 
					case "ft²":	faktor=10.7639104; faktor1=faktor; break;
					case "ac.":	faktor=0.0002471577; faktor1=10.7639104; break; 
					default:		faktor=1;
				}
			}

			if (oldmass=="ha")  {
				switch(neumass) { 
					case "m²":	faktor=10000; break;
					case "ft²":	faktor=107639.104; faktor1=10.7639104; break;
					case "ac.":	faktor=2.471577; faktor1=10.7639104; break;
					default:		faktor=1;
				}
			}

			if (oldmass=="ft²")  {
				switch(neumass) { 
					case "m²":	faktor=0.09290304; faktor1=faktor; break;
					case "ha":	faktor=0.000009290304; faktor1=0.09290304; break;
					case "ac.":	faktor=0.000022957; break;
					default:		faktor=1;
				}
			}

			if (oldmass=="ac.")  {  
				switch(neumass) { 
					case "m²":	faktor=4046; faktor1=0.09290304; break;
					case "ft²":	faktor=43560; break;
					case "ha":	faktor=0.40468; faktor1=0.09290304; break;
					default:		faktor=1;
				}
			}

			minsize=minsize*faktor; maxsize=maxsize*faktor; 
			conminsize=conminsize*faktor1; conmaxsize=conmaxsize*faktor1;
			if (neumass=="ha" || neumass=="ac.") { minsize=minsize*10; maxsize=maxsize*10; }
			minsize=Math.floor(minsize); maxsize=Math.floor(maxsize); 
			conminsize=Math.floor(conminsize); conmaxsize=Math.floor(conmaxsize);
			if (neumass=="ha" || neumass=="ac.") { minsize=minsize/10; maxsize=maxsize/10; }

			forms[0].ftm2.value=neumass; var neumass1=""; 
			if (neumass=="ha") { neumass1="m²"; }
			else if (neumass=="ac.") { neumass1="ft²"; } else { neumass1=neumass; }
			
			getElementById('ftma').value=neumass; getElementById('ftmb').value=neumass;
			getElementById('ftmc').value=neumass1; getElementById('ftmd').value=neumass1;
			if (minsize || maxsize) { getElementById('inpminsize').value=minsize; getElementById('inpmaxsize').value=maxsize; }
			if (conminsize || conmaxsize) { getElementById('inpconminsize').value=conminsize; getElementById('inpconmaxsize').value=conmaxsize; }
			getElementById('inpminsize').focus();
	}

}}

// if string in auswahl too long reduce font size
function auswahlfsize() { with(document) {
	var ausw=getElementById('auswahl').value; var len=ausw.length; var fsize="12pt";
	if (len >240 && len <265) { fsize="11pt"; } else if (len >264) { fsize="10pt"; } 
	getElementById('auswahl').style.fontSize=fsize;
}}

