function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

addLoadEvent(getLanguageSite);
addLoadEvent(resultaten);
addLoadEvent(detail);
addLoadEvent(registreren);
addLoadEvent(gegevens_aanpassen);
addLoadEvent(mijn_zoekopdrachten);
addLoadEvent(mijn_eigendommen);
addLoadEvent(paswoord_vergeten);
addLoadEvent(informeer_een_vriend);
addLoadEvent(bezoek_aanvragen);
addLoadEvent(afspraak_aanvragen);
addLoadEvent(lastenboek_aanvragen);
addLoadEvent(plannen_aanvragen);
addLoadEvent(vraag_stellen);
addLoadEvent(kantoren);
addLoadEvent(waardebepaling);
addLoadEvent(login);
addLoadEvent(boxes);
addLoadEvent(kaart);
addLoadEvent(bewaarZoekopdracht);
addLoadEvent(verk_verh);
addLoadEvent(carousel);
addLoadEvent(verkoopsconcepten);
addLoadEvent(doPandConcepten);

var pandpos = 1;
function doPandConcepten() {
	if (document.getElementById("pandConcepten")) {
		document.getElementById("pandConcepten2").style.display = "none";
		document.getElementById("pandConcepten3").style.display = "none";
		t=setInterval("doRotation()",4000);
	}
}

function doRotation() {
	if (pandpos == 1) {
		Effect.Fade('pandConcepten1', { duration: 2.0 });
		Effect.Appear('pandConcepten2', { duration: 2.0 });
	}
	else if (pandpos == 2) {
		Effect.Fade('pandConcepten2', { duration: 2.0 });
		Effect.Appear('pandConcepten3', { duration: 2.0 });
	}
	else if (pandpos == 3) {
		Effect.Fade('pandConcepten3', { duration: 2.0 });
		Effect.Appear('pandConcepten1', { duration: 2.0 });
	}
	pandpos++;
	if (pandpos == 4) { pandpos = 1; }
}

var frmAdvancedSearch;
var frmResultaten;
var language;
var site;

//http://code.google.com/p/prototype-carousel/
var testCarousel;
function carousel() {
	if(document.getElementById('carousel-wrapper')) {
		testCarousel = new Carousel('carousel-wrapper', 
								 $$('#carousel-content .slide'), 
								 $$('a.carousel-control', 'a.carousel-jumper'),
								 {
									duration: 0.5, 
									effect: 'fade', 
									wheel: false, 
									auto: true, 
									frequency: 4, 
									circular: true, 
									afterMove: highlightNumber
								 }
		);
	}
}

function highlightNumber() {
	$$('#carousel-numbers a.active').invoke('removeClassName','active');
	$('number-'+ (testCarousel.current._index + 1)).addClassName('active');
}

function getLanguageSite() {
	language = document.getElementsByTagName("body")[0].className;
	site = document.getElementsByTagName("body")[0].id;
}

function bewaarZoekopdracht() {
	frmResultaten = document.getElementById("formResultaten");
	var btnBewaarZoekopdracht = document.getElementById("buttonBewaarZoekopdracht");
	var btnBewaarZOcancel = document.getElementById("buttonBewaarZOcancel");
	var btnBewaarZOsubmit = document.getElementById("buttonBewaarZOsubmit");
	var fsBewaarZO = document.getElementById("fieldsetBewaarZO");
	var fldZO_title = document.getElementById("zo_title");
	if(btnBewaarZoekopdracht && fsBewaarZO && btnBewaarZOcancel && btnBewaarZOsubmit) {
		btnBewaarZoekopdracht.onclick = function() {
			fsBewaarZO.style.display="block";
			btnBewaarZoekopdracht.style.display="none";
			return false;
		}
		btnBewaarZOcancel.onclick = function() {
			fldZO_title.value="";
			fsBewaarZO.style.display="none";
			btnBewaarZoekopdracht.style.display="block";
			return false;
		}
		btnBewaarZOsubmit.onclick = function() {
			var thisForm;
			if(frmAdvancedSearch) { thisForm = frmAdvancedSearch }
			if(frmResultaten) { thisForm = frmResultaten }
			if(thisForm.zo_title.value.length==0) {
				thisForm.zo_title.focus();
				alert("Gelieve een titel in te geven voor uw bewaarde zoekopdracht.");
			} else {
				thisForm.method = "post";
				thisForm.action = thisForm.action_bewaar.value;
				thisForm.oper.value = "zoekopdracht_insert";
				thisForm.submit();
			}
			return false;
		}
	}
}

function hideKaartButtons() {
	var fsBewaarZO = document.getElementById("fieldsetBewaarZO");
	if(fsBewaarZO) { fsBewaarZO.style.display = "none"; }
	var btnRefresh = document.getElementById("buttonRefresh");
	if(btnRefresh) { btnRefresh.style.display = "none"; }
	var btnToonLijst = document.getElementById("buttonToonLijst");
	if(btnToonLijst) { btnToonLijst.style.display = "none"; }
	var btnToonLijst2 = document.getElementById("buttonToonLijst2");
	if(btnToonLijst2) { btnToonLijst2.style.display = "none"; }
	var btnBewaarZoekopdracht = document.getElementById("buttonBewaarZoekopdracht");
	if(btnBewaarZoekopdracht) { btnBewaarZoekopdracht.style.display = "none"; }
}

function kaart() {
	frmAdvancedSearch = document.getElementById("formAdvancedSearch");
	if(frmAdvancedSearch) {
		frmAdvancedSearch.onsubmit = function() { return false; }
		var selectRegios = document.getElementById("a_regio");
		if(selectRegios) {
			selectRegios.onchange = function() {
				frmAdvancedSearch.change_regio.value=this.options[this.selectedIndex].value;
				frmAdvancedSearch.change_subregio.value="";
				hideKaartButtons();
				frmAdvancedSearch.submit();
			}
		}
		var selectSubRegios = document.getElementById("a_subregio");
		if(selectSubRegios) {
			selectSubRegios.onchange = function() {
				frmAdvancedSearch.change_subregio.value=this.options[this.selectedIndex].value;
				hideKaartButtons();
				frmAdvancedSearch.submit();
			}
		}
		
		lstType = document.getElementById("a_type");
		switch(site) {
			case "bedrijfsvastgoed":
				var lstIWant = document.getElementById("a_keuze");
				var lstBinnenOpp = document.getElementById("a_binnenopp");
				var lstGrondOpp = document.getElementById("a_grondopp");
				if(lstIWant && lstType) {;
					// alle types bewaren
					for (var i=0; i<lstType.options.length; i++) {
						types[i] = lstType.options[i];
					}
					makeTypes(frmAdvancedSearch, true);
					lstIWant.onchange = function() { makeTypes(frmAdvancedSearch, false); }
				}
				if(lstType && lstBinnenOpp && lstGrondOpp) {
					makeOpp(frmAdvancedSearch, true);
					lstType.onchange = function() { makeOpp(frmAdvancedSearch, false); }
				}
				break;
			case "nieuwbouw":
				if(lstType) {
					lstType.onchange = function() { kaartHideFields();	}
					
					lstSlaapkamers = document.getElementById("a_bedrooms");
					divSlaapkamers = document.getElementById("a_kamers");
					chkTerras = document.getElementById("a_terras");
					divTerras = document.getElementById("a_terrace");
					chkTuin = document.getElementById("a_tuin");
					divTuin = document.getElementById("a_garden");
					kaartHideFields();
				}
				break;
		}
		
		var listMainRegios = document.getElementById("mainRegios");
		if(listMainRegios) {
			var regios = listMainRegios.getElementsByTagName("area");
			for(var i=0; i<regios.length; i++) {
				regios[i].onclick = function() {
					var id = this.id.replace("rm","");
					if(id=="WVL" || id=="OVL") {
						frmAdvancedSearch.change_provincie.value=id;
					}else{
						frmAdvancedSearch.change_regio.value=id;
					}
					frmAdvancedSearch.action = frmAdvancedSearch.action_zoek.value;
					frmAdvancedSearch.submit();
					return false;
				}
			}
		}
		
		var listKaartRegios = document.getElementById("kaartRegios");
		if(listKaartRegios) {
			var regios = listKaartRegios.getElementsByTagName("area");
			for(var i=0; i<regios.length; i++) {
				regios[i].onclick = function() {
					frmAdvancedSearch.change_regio.value=this.id.replace("r","");
					frmAdvancedSearch.action = frmAdvancedSearch.action_zoek.value;
					frmAdvancedSearch.submit();
					return false;
				}
			}
		}
		
		var listKaartSubRegios = document.getElementById("kaartSubRegios");
		if(listKaartSubRegios) {
			var subregios = listKaartSubRegios.getElementsByTagName("area");
			for(var i=0; i<subregios.length; i++) {
				subregios[i].onclick = function() {
					frmAdvancedSearch.change_subregio.value=this.id.replace("sr","");
					frmAdvancedSearch.action = frmAdvancedSearch.action_zoek.value;
					frmAdvancedSearch.submit();
					return false;
				}
			}
		}
		
		var btnRefresh = document.getElementById("buttonRefresh");
		if(btnRefresh) {
			btnRefresh.onclick = function() {
				frmAdvancedSearch.method = "get";
				frmAdvancedSearch.action = frmAdvancedSearch.action_zoek.value;
				frmAdvancedSearch.oper.value = "";
				frmAdvancedSearch.submit();
				return false;
			}
		}
		var btnToonLijst = document.getElementById("buttonToonLijst");
		if(btnToonLijst) {
			btnToonLijst.onclick = function() {
				frmAdvancedSearch.method = "get";
				frmAdvancedSearch.action = frmAdvancedSearch.action_lijst.value;
				frmAdvancedSearch.oper.value = "list";
				frmAdvancedSearch.submit();
				return false;
			}
		}
		var btnToonLijst2 = document.getElementById("buttonToonLijst2");
		if(btnToonLijst2) {
			btnToonLijst2.onclick = function() {
				frmAdvancedSearch.method = "get";
				frmAdvancedSearch.action = frmAdvancedSearch.action_lijst.value;
				frmAdvancedSearch.oper.value = "list";
				frmAdvancedSearch.submit();
				return false;
			}
		}
	}
}

function kaartHideFields() {
	var type = lstType.options[lstType.selectedIndex].value;
	if(type=="grond" || type=="garagebox" || type=="parking" || type=="winkel" || type=="kantoor") {
		if(lstSlaapkamers) { lstSlaapkamers.selectedIndex=0; }
		if(divSlaapkamers) { divSlaapkamers.style.display = "none"; }
		if(chkTerras) { chkTerras.checked=false; }
		if(divTerras) { divTerras.style.display = "none"; }
		if(chkTuin) { chkTuin.checked=false; }
		if(divTuin) { divTuin.style.display = "none"; }
	} else {
		if(divSlaapkamers) { divSlaapkamers.style.display = "block"; }
	}
}

function makeTypes(objForm, initialise) {
	//alert(objForm.id);
	switch(objForm.id) {
		case "fastsearchForm":
			var lsType = document.getElementById("type");
			var lsIWant = document.getElementById("iWant");	
			break;
		case "formAdvancedSearch":
			var lsType = document.getElementById("a_type");
			var lsIWant = document.getElementById("a_keuze");	
			break;
		case "formZoekopdracht":
			var lsType = document.getElementById("zo_type");
			var lsIWant = document.getElementById("zo_keuze");	
			break;
	}
	
	// types leegmaken
	while (lsType.options.length > 1) {
		lsType.options[(lsType.options.length - 1)] = null;
	}
	// types terug vullen
	if(lsIWant.options[lsIWant.selectedIndex].value=="huren") {
		aantal = 4; // als huren, dan grond niet
	} else {
		aantal = 5;
	}
	for (var i=0; i<aantal; i++) {
		lsType.options[i] = types[i];
	}
	if(!initialise) {
		lsType.selectedIndex=0;
		makeOpp(objForm);
	}
}

var types = new Array;
var binnenoppB = new Array("('','',true,true)","('0-250 m²','<250')","('250-500 m²','250-500')","('500-1000 m²','500-1000')","('1000-2000 m²','1000-2000')","('2000-3000 m²','2000-3000')","('3000-5000 m²','3000-5000')","('>5000 m²','>5000')");
var binnenoppK = new Array("('','',true,true)","('0-100 m²','<100')","('100-250 m²','100-250')","('250-500 m²','250-500')","('500-1000 m²','500-1000')","('>1000 m²','>1000')");
var binnenoppW = new Array("('','',true,true)","('0-100 m²','<100')","('100-250 m²','100-250')","('250-500 m²','250-500')","('500-1000 m²','500-1000')","('>1000 m²','>1000')");
var grondoppB = new Array("('','',true,true)","('0-500 m²','<500')","('500-5000 m²','500-5000')","('>5000 m²','>5000')");
var grondoppG = new Array("('','',true,true)","('0-500 m²','<500')","('500-1000 m²','500-1000')","('1000-2000 m²','1000-2000')","('2000-3000 m²','2000-3000')","('3000-5000 m²','3000-5000')","('5000 m² - 1 ha','5000-10000')","('1 ha - 2 ha','10000-20000')","('>2 ha ','>20000')");
var grondoppW = new Array("('','',true,true)","('0-500 m²','<500')","('500-1000 m²','500-1000')","('1000-2000 m²','1000-2000')","('2000-3000 m²','2000-3000')","('3000-5000 m²','3000-5000')","('>5000 m²','>5000')");

function fillDropdown(dropdown,array) {
	emptyDropdown(dropdown);
	for (var i=0; i < array.length; i++) {
		eval("dropdown.options[i]=" + "new Option" + array[i]);
	}
}
function emptyDropdown(dropdown) {
	while (dropdown.options.length > 1) {
		dropdown.options[(dropdown.options.length - 1)] = null;
	}
	/*dropdown.options[0]= new Option("", "0", true, true);*/
}

function URLDecode (encodedString) {
  var output = encodedString;
  var binVal, thisString;
  var myregexp = /(%[^%]{2})/;
  while ((match = myregexp.exec(output)) != null
             && match.length > 1
             && match[1] != '') {
    binVal = parseInt(match[1].substr(1),16);
    thisString = String.fromCharCode(binVal);
    output = output.replace(match[1], thisString);
  }
  return output;
}

function getQueryVariable(variable) { 
	var query = window.location.search.substring(1); 
	var vars = query.split("&"); 
	if(vars.length==1) { 
		var vars = query.split(","); 
	}
	for (var i=0;i<vars.length;i++) { 
		var pair = vars[i].split("="); 
		if (pair[0] == variable) { 
			return URLDecode(pair[1]); 
		} 
	} 
	return "";
} 

function makeOpp(objForm, initialise) {
	switch(objForm.id) {
		case "fastsearchForm":
			var lsType = document.getElementById("type");
			var lsBinnenOpp = document.getElementById("binnenopp");
			var lsGrondOpp = document.getElementById("grondopp");
			var dvBinnenOpp = document.getElementById("divBinnenOpp");
			var dvGrondOpp = document.getElementById("divGrondOpp");
			var s_grondopp = getQueryVariable("s_grondopp");
			var s_binnenopp = getQueryVariable("s_binnenopp");
			break;
		case "formAdvancedSearch":
			var lsType = document.getElementById("a_type");
			var lsBinnenOpp = document.getElementById("a_binnenopp");
			var lsGrondOpp = document.getElementById("a_grondopp");
			var dvBinnenOpp = document.getElementById("a_divBinnenOpp");
			var dvGrondOpp = document.getElementById("a_divGrondOpp");
			var s_grondopp = getQueryVariable("s_grondopp");
			var s_binnenopp = getQueryVariable("s_binnenopp");
			break;
		case "formZoekopdracht":
			var lsType = document.getElementById("zo_type");
			var lsBinnenOpp = document.getElementById("zo_binnenopp");
			var lsGrondOpp = document.getElementById("zo_grondopp");
			var dvBinnenOpp = document.getElementById("zo_divBinnenOpp");
			var dvGrondOpp = document.getElementById("zo_divGrondOpp");
			var s_grondopp = objForm.temp_grondopp.value;
			var s_binnenopp = objForm.temp_binnenopp.value;
			break;
	}
	var type = lsType.options[lsType.selectedIndex].value;
	
	switch(type) {
		case "bedrijfsgebouw":
			fillDropdown(lsBinnenOpp,binnenoppB);
			fillDropdown(lsGrondOpp,grondoppB);
			dvBinnenOpp.style.display = "block";
			dvGrondOpp.style.display = "block";
			break;
		case "kantoor":
			fillDropdown(lsBinnenOpp,binnenoppK);
			emptyDropdown(lsGrondOpp);
			dvBinnenOpp.style.display = "block";
			dvGrondOpp.style.display = "none";
			break;
		case "winkelpand":
			fillDropdown(lsBinnenOpp,binnenoppW);
			fillDropdown(lsGrondOpp,grondoppW);
			dvBinnenOpp.style.display = "block";
			dvGrondOpp.style.display = "block";
			break;
		case "grond":
			emptyDropdown(lsBinnenOpp);
			fillDropdown(lsGrondOpp,grondoppG);
			dvBinnenOpp.style.display = "none";
			dvGrondOpp.style.display = "block";
			break;
		default:
			emptyDropdown(lsBinnenOpp);
			emptyDropdown(lsGrondOpp);
			dvBinnenOpp.style.display = "none";
			dvGrondOpp.style.display = "none";
			break;
	}
	if(initialise) {
		if(s_grondopp!="") {
			for(var i=0; i<lsGrondOpp.length; i++) {
				if(lsGrondOpp[i].value==s_grondopp) {
					lsGrondOpp.selectedIndex = i;
				}
			}
		}
		if(s_binnenopp!="") {
			for(var i=0; i<lsBinnenOpp.length; i++) {
				if(lsBinnenOpp[i].value==s_binnenopp) {
					lsBinnenOpp.selectedIndex = i;
				}
			}
		}
	}
}

function boxes() {

	var formFastSearch = document.getElementById("fastsearchForm");
	if(formFastSearch) {
		if(site=="bedrijfsvastgoed") {
			var lstIWant = document.getElementById("iWant");
			var lstType = document.getElementById("type");
			var lstBinnenOpp = document.getElementById("binnenopp");
			var lstGrondOpp = document.getElementById("grondopp");
			if(lstIWant && lstType) {
				// alle types bewaren
				for (var i=0; i<lstType.options.length; i++) {
					types[i] = lstType.options[i];
				}
				makeTypes(formFastSearch, true);
				lstIWant.onchange = function() { makeTypes(formFastSearch, false); }
			}
			if(lstType && lstBinnenOpp && lstGrondOpp) {
				makeOpp(formFastSearch, true);
				lstType.onchange = function() { makeOpp(formFastSearch, false); }
			}
		}
	}
	var frmSearchRef = document.getElementById("refsearchForm");
	if(frmSearchRef) {
		frmSearchRef.onsubmit = function() {
			return validateSearchRef(this);
		}
	}
	var frmSearchFree = document.getElementById("freesearchForm");
	if(frmSearchFree) {
		frmSearchFree.onsubmit = function() {
			return validateSearchFree(this);
		}
	}
	var frmZoekProject = document.getElementById("zoekProjectForm");
	if(frmZoekProject) {
		frmZoekProject.onsubmit = function() {
			return validateSearchProject(this);
		}
	}
	
	var lnkOpenZoek = document.getElementById("linkOpenZoek");
	var bxZoek = document.getElementById("boxZoek");
	var lnkCloseZoek = document.getElementById("linkCloseZoek");
	if(lnkOpenZoek && bxZoek) {
		lnkOpenZoek.onclick = function() {
			new Effect.SlideDown(document.getElementById('boxZoek'), {duration:0.5});
			return false;
		}
	}
	if(lnkCloseZoek && bxZoek) {
		lnkCloseZoek.onclick = function() {
			new Effect.SlideUp(document.getElementById('boxZoek'), {duration:0.5});
			return false;
		}
	}
	
	var lnkOpenMijndewaele = document.getElementById("linkOpenMijndewaele");
	var bxMijndewaele = document.getElementById("boxMijndewaele");
	var lnkCloseMijndewaele = document.getElementById("linkCloseMijndewaele");
	if(lnkOpenMijndewaele && bxMijndewaele) {
		lnkOpenMijndewaele.onclick = function() {
			new Effect.SlideDown(document.getElementById('boxMijndewaele'), {duration:0.5});
			return false;
		}
	}
	if(lnkCloseMijndewaele && bxMijndewaele) {
		lnkCloseMijndewaele.onclick = function() {
			new Effect.SlideUp(document.getElementById('boxMijndewaele'), {duration:0.5});
			return false;
		}
	}
}

function validateSearchProject(theForm) {
	if(theForm.s_project.selectedIndex==0) {
		alert("Gelieve een project te selecteren.");
		return false;
	}	
	return true;
}

function vraag_stellen() {
	var frmVraagStellen = document.getElementById("formVraagStellen");
	if(frmVraagStellen) {
		frmVraagStellen.onsubmit = function() {
			return validateVraagStellen(this);
		}
	}
}
function validateVraagStellen(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.vraag.value.length==0) {
		error++;
		msg+="\n- uw vraag";
	}
	if(theForm.naam.value.length==0) {
		error++;
		msg+="\n- naam";
	}
	if(theForm.telefoon.value.length==0) {
		error++;
		msg+="\n- telefoon";
	}
	if(theForm.email.value.length==0) {
		error++;
		msg+="\n- e-mail";
	}
	if(theForm.captcha.value.length==0) {
		error++;
		msg+="\n- code";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	if(!validateEmail(theForm.email.value)) {
		alert("Gelieve een geldig e-mailadres in te vullen.");
		return false;
	}
	return true;
}

function login() {
	var frmLogin = document.getElementById("formLogin");
	if(frmLogin) {
		frmLogin.onsubmit = function() {
			return validateLogin(this);
		}
	}
}
function validateLogin(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.username.value.length==0) {
		error++;
		msg+="\n- gebruikersnaam";
	}
	if(theForm.password.value.length==0) {
		error++;
		msg+="\n- paswoord";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	return true;
}

function waardebepaling() {
	var frmWaardebepaling = document.getElementById("formWaardebepaling");
	if(frmWaardebepaling) {
		frmWaardebepaling.onsubmit = function() {
			return validateWaardebepaling(this);
		}
	}
}
function validateWaardebepaling(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.adres1.value.length==0) {
		error++;
		msg+="\n- adres";
	}
	if(theForm.postcode.value.length==0) {
		error++;
		msg+="\n- postcode";
	}
	if(theForm.gemeente.value.length==0) {
		error++;
		msg+="\n- gemeente";
	}
	if(theForm.wtype.selectedIndex==0) {
		error++;
		msg+="\n- type";
	}
	if(theForm.naam.value.length==0) {
		error++;
		msg+="\n- naam";
	}
	if(theForm.gsm.value.length==0 && theForm.telefoon.value.length==0 && theForm.telefoon_werk.value.length==0) {
		error++;
		msg+="\n- gsm, telefoon of telefoon werk";
	}
	if(theForm.email.value.length==0) {
		error++;
		msg+="\n- e-mail";
	}
	if(theForm.captcha.value.length==0) {
		error++;
		msg+="\n- code";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	return true;
}

function bezoek_aanvragen() {
	var frmBezoekAanvragen = document.getElementById("formBezoekAanvragen");
	if(frmBezoekAanvragen) {
		frmBezoekAanvragen.onsubmit = function() {
			return validateBezoekAanvragen(this);
		}
		var As = frmBezoekAanvragen.getElementsByTagName("a");
		for (var i=0; i<As.length; i++) {
			if(As[i].className=="kalender") {
				As[i].onclick = function() {
					popup(this.href, 154, 154, "kalender");
					return false;
				}
			}
		}
	}
}
function validateBezoekAanvragen(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.dag1.value.length==0 || theForm.maand1.value.length==0 || theForm.jaar1.value.length==0) {
		error++;
		msg+="\n- 1e keuze";
	}
	if(theForm.naam.value.length==0) {
		error++;
		msg+="\n- naam";
	}
	if(theForm.telefoon.value.length==0) {
		error++;
		msg+="\n- telefoon";
	}
	if(theForm.email.value.length==0) {
		error++;
		msg+="\n- e-mail";
	}
	if(theForm.captcha.value.length==0) {
		error++;
		msg+="\n- code";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	if(!validateEmail(theForm.email.value)) {
		alert("Gelieve een geldig e-mailadres in te vullen.");
		return false;
	}
	return true;
}

function afspraak_aanvragen() {
	var frmAfspraakAanvragen = document.getElementById("formAfspraakAanvragen");
	if(frmAfspraakAanvragen) {
		frmAfspraakAanvragen.onsubmit = function() {
			return validateAfspraakAanvragen(this);
		}
		var As = frmAfspraakAanvragen.getElementsByTagName("a");
		for (var i=0; i<As.length; i++) {
			if(As[i].className=="kalender") {
				As[i].onclick = function() {
					popup(this.href, 154, 154, "kalender");
					return false;
				}
			}
		}
	}
}
function validateAfspraakAanvragen(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.dag1.value.length==0 || theForm.maand1.value.length==0 || theForm.jaar1.value.length==0) {
		error++;
		msg+="\n- 1e keuze";
	}
	if(theForm.naam.value.length==0) {
		error++;
		msg+="\n- naam";
	}
	if(theForm.telefoon.value.length==0) {
		error++;
		msg+="\n- telefoon";
	}
	if(theForm.email.value.length==0) {
		error++;
		msg+="\n- e-mail";
	}
	if(theForm.captcha.value.length==0) {
		error++;
		msg+="\n- code";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	if(!validateEmail(theForm.email.value)) {
		alert("Gelieve een geldig e-mailadres in te vullen.");
		return false;
	}
	return true;
}

function lastenboek_aanvragen() {
	var frmLastenboekAanvragen = document.getElementById("formLastenboekAanvragen");
	if(frmLastenboekAanvragen) {
		frmLastenboekAanvragen.onsubmit = function() {
			return validateLastenboekAanvragen(this);
		}
	}
}
function validateLastenboekAanvragen(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.naam.value.length==0) {
		error++;
		msg+="\n- naam";
	}
	if(theForm.telefoon.value.length==0 && theForm.email.value.length==0) {
		error++;
		msg+="\n- telefoon of e-mail";
	}
	if(theForm.captcha.value.length==0) {
		error++;
		msg+="\n- code";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	if(theForm.email.value.length>0 && !validateEmail(theForm.email.value)) {
		alert("Gelieve een geldig e-mailadres in te vullen.");
		return false;
	}
	return true;
}

function plannen_aanvragen() {
	var frmPlannenAanvragen = document.getElementById("formPlannenAanvragen");
	if(frmPlannenAanvragen) {
		frmPlannenAanvragen.onsubmit = function() {
			return validatePlannenAanvragen(this);
		}
	}
}
function validatePlannenAanvragen(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.naam.value.length==0) {
		error++;
		msg+="\n- naam";
	}
	if(theForm.telefoon.value.length==0 && theForm.email.value.length==0) {
		error++;
		msg+="\n- telefoon of e-mail";
	}
	if(theForm.captcha.value.length==0) {
		error++;
		msg+="\n- code";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	if(theForm.email.value.length>0 && !validateEmail(theForm.email.value)) {
		alert("Gelieve een geldig e-mailadres in te vullen.");
		return false;
	}
	return true;
}

function setDate(nr, jaar, maand, dag, theFormID) {
	var theForm = document.getElementById(theFormID);
	if(theForm) {
		var fld_dag = document.getElementById("dag"+nr);
		if(fld_dag) { fld_dag.value = dag; }
		var fld_maand = document.getElementById("maand"+nr);
		if(fld_maand) { fld_maand.value = maand; }
		var fld_jaar = document.getElementById("jaar"+nr);
		if(fld_jaar) { fld_jaar.value = jaar; }
	}
}

function informeer_een_vriend() {
	var frmInformeer = document.getElementById("formInformeer");
	if(frmInformeer) {
		frmInformeer.onsubmit = function() {
			return validateInformeerEenVriend(this);
		}
	}
}
function validateInformeerEenVriend(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.naam.value.length==0) {
		error++;
		msg+="\n- uw gegevens > naam";
	}
	if(theForm.email.value.length==0) {
		error++;
		msg+="\n- uw gegevens > e-mail";
	}
	if(theForm.vriend_naam.value.length==0) {
		error++;
		msg+="\n- uw vriend(in) > naam";
	}
	if(theForm.vriend_email.value.length==0) {
		error++;
		msg+="\n- uw vriend(in) > e-mail";
	}
	if(theForm.captcha.value.length==0) {
		error++;
		msg+="\n- code";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	return true;
}

function paswoord_vergeten() {
	var frmPaswoordVergeten = document.getElementById("formPaswoordVergeten");
	if(frmPaswoordVergeten) {
		frmPaswoordVergeten.onsubmit = function() {
			return validatePaswoordVergeten(this);
		}
	}
}
function validatePaswoordVergeten(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.email.value.length==0) {
		error++;
		msg+="\n- e-mail";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	return true;
}

function mijn_eigendommen() {
	var listMijnEigendommen = document.getElementById("resultList");
	if(listMijnEigendommen) {
		var As = listMijnEigendommen.getElementsByTagName("a");
		for(var i=0; i<As.length; i++) {
			if(As[i].className=="delete") {
				As[i].onclick = function() { 
					return confirm("Dit eigendom verwijderen uit 'mijn dewaele.com'?"); 
				}
			}
		}
	}
}

function getSubregios(regio, lstSubRegio) {
	xmlHttp3=GetXmlHttpObject();
	if (xmlHttp3==null){
		alert ("Your browser does not support AJAX!");
		return;
	} 	
	if (xmlHttp3.readyState == 4 || xmlHttp3.readyState == 0) {
		xmlHttp3.onreadystatechange = function() { populateSubregios(lstSubRegio); } 
		var url = "/inc/ajax_subregios.dhtml?regio="+regio+",language="+language;
		xmlHttp3.open("GET", url, true);
		xmlHttp3.send(null);
	}		
}
function populateSubregios(lstSubRegio) {
	if (xmlHttp3.readyState == 4) {
		emptyDropdown(lstSubRegio);
		var lines = xmlHttp3.responseText.split("\n");
		for(i=0; i < lines.length-1; i++) {
			splitter = lines[i].split("|");
			lstSubRegio.options[i+1]= new Option(splitter[1], splitter[0], false, false);
		}
	}
}
function emptyDropdown(dropdown) {
	while (dropdown.options.length > 1) {
		dropdown.options[(dropdown.options.length - 1)] = null;
	}
	dropdown.options[0]= new Option("", "", true, true);
}

function mijn_zoekopdrachten() {
	var frmZoekopdracht = document.getElementById("formZoekopdracht");
	if(frmZoekopdracht) {
		frmZoekopdracht.onsubmit = function() {
			return validateZoekopdracht(this);
		}
		var lstRegio = document.getElementById("zo_regio");
		var lstSubRegio = document.getElementById("zo_subregio");
		if(lstRegio && lstSubRegio) {
			lstRegio.onchange = function() {
				var regio;
				if(this.selectedIndex > 0){
					regio = this.options[this.selectedIndex].value;
					getSubregios(regio, lstSubRegio);
				}else{
					emptyDropdown(lstSubRegio);
				}
			}
		}
		
		if(site=="bedrijfsvastgoed") {
			var lstIWant = document.getElementById("zo_keuze");
			var lstType = document.getElementById("zo_type");
			var lstBinnenOpp = document.getElementById("zo_binnenopp");
			var lstGrondOpp = document.getElementById("zo_grondopp");
			if(lstIWant && lstType) {;
				// alle types bewaren
				for (var i=0; i<lstType.options.length; i++) {
					types[i] = lstType.options[i];
				}
				makeTypes(frmZoekopdracht, true);
				lstIWant.onchange = function() { makeTypes(frmZoekopdracht, false); }
			}
			if(lstType && lstBinnenOpp && lstGrondOpp) {
				makeOpp(frmZoekopdracht, true);
				lstType.onchange = function() { makeOpp(frmZoekopdracht, false); }
			}
		}
	}
	var tableMijnZoekopdrachten = document.getElementById("mijnZoekopdrachten");
	if(tableMijnZoekopdrachten) {
		var As = tableMijnZoekopdrachten.getElementsByTagName("a");
		for(var i=0; i<As.length; i++) {
			if(As[i].className=="delete") {
				As[i].onclick = function() { 
					return confirm("Deze zoekopdracht verwijderen?"); 
				}
			}
		}
	}
}
function validateZoekopdracht(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.titel.value.length==0) {
		error++;
		msg+="\n- titel";
	}
	if(theForm.keuze.selectedIndex==0) {
		error++;
		msg+="\n- ik zoek";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	return true;
}

function registreren() {
	var frmRegistreren = document.getElementById("formRegistreren");
	if(frmRegistreren) {
		frmRegistreren.onsubmit = function() {
			return validateRegistreren(this);
		}
	}
}
function validateRegistreren(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.aanspreektitel.value.length==0) {
		error++;
		msg+="\n- titel";
	}
	if(theForm.naam.value.length==0) {
		error++;
		msg+="\n- naam";
	}
	if(theForm.email.value.length==0) {
		error++;
		msg+="\n- e-mail";
	}
	if(theForm.gemeente.value.length==0) {
		error++;
		msg+="\n- gemeente";
	}
	if(theForm.gebruikersnaam.value.length==0) {
		error++;
		msg+="\n- gebruikersnaam";
	}
	if(theForm.paswoord.value.length==0) {
		error++;
		msg+="\n- paswoord";
	}
	if(theForm.herhaal_paswoord.value.length==0) {
		error++;
		msg+="\n- herhaal paswoord";
	}
	if(theForm.captcha.value.length==0) {
		error++;
		msg+="\n- code";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	if(theForm.paswoord.value != theForm.herhaal_paswoord.value) {
		alert("Gelieve 2x hetzelfde paswoord in te vullen.");
		return false;
	}
	return true;
}

function gegevens_aanpassen() {
	var frmGegevensAanpassen = document.getElementById("formGegevensAanpassen");
	if(frmGegevensAanpassen) {
		frmGegevensAanpassen.onsubmit = function() {
			return validateGegevensAanpassen(this);
		}
	}
}
function validateGegevensAanpassen(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.aanspreektitel.value.length==0) {
		error++;
		msg+="\n- titel";
	}
	if(theForm.voornaam.value.length==0) {
		error++;
		msg+="\n- voornaam";
	}
	if(theForm.naam.value.length==0) {
		error++;
		msg+="\n- naam";
	}
	if(theForm.email.value.length==0) {
		error++;
		msg+="\n- e-mail";
	}
	if(theForm.gemeente.value.length==0) {
		error++;
		msg+="\n- gemeente";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	return true;
}

function resultaten() {
	var frmSortResults = document.getElementById("sortResultsForm");
	if(frmSortResults) {
		var dpdSort = document.getElementById("change_sort");
		if(dpdSort) {
			dpdSort.onchange = function() { frmSortResults.submit(); }
		}
	}
}

function validateSearchRef(theForm) {
	if(theForm.s_referentie.value.length==0) {
		alert("Gelieve een referentie in te geven.");
		return false;
	}
	if(theForm.s_referentie.value.length < 4) {
		alert("Gelieve minstens 4 tekens van de referentie in te geven.");
		return false;
	}
}
function validateSearchFree(theForm) {
	if(theForm.s_trefwoord.value.length==0) {
		alert("Gelieve een trefwoord in te geven.");
		return false;
	}
}

function detail() {
	var linkStartSlideshow = document.getElementById('startSlideshow');
	var linkFirstThumbnail = document.getElementById('firstThumbnail');
	if(linkStartSlideshow && linkFirstThumbnail) {
		linkStartSlideshow.onclick = function() {
			fireEvent(linkFirstThumbnail,'click');
			return false;
		}
	}
	
	var lnkWerffotos = document.getElementById('linkWerffotos');
	var lnkFirstWerffoto = document.getElementById('linkFirstWerffoto');
	if(lnkWerffotos && lnkFirstWerffoto) {
		lnkWerffotos.onclick = function() {
			fireEvent(lnkFirstWerffoto,'click');
			return false;
		}
	}
	
	var imgBig = document.getElementById("bigPic");
	var listThumbs = document.getElementById("thumbnails");
	if(imgBig && listThumbs) {
		var thumbs = listThumbs.getElementsByTagName("a");
		for(var i=0; i<thumbs.length; i++){
			thumbs[i].onmouseover = function() {
				keepRotating = 0;
				imgBig.src = this.getElementsByTagName("img")[0].src.replace("thumb_","detail_").replace("_thumb","_detail");
				var LIs = listThumbs.getElementsByTagName("li");
				return false;
			}
		}
	}
	var lnkDelFromMyDewaele = document.getElementById("delFromMyDewaele");
	if(lnkDelFromMyDewaele) { lnkDelFromMyDewaele.getElementsByTagName("a")[0].onclick = function() { return confirm("Dit eigendom verwijderen uit 'mijn dewaele.com'?"); } }
}
function changeOnclick(target) {
	fireEvent(target,'click');
	return false;
}
function popup(url, width, height, name) {
	if(name==null) { name = "Popup"; }
	theWidth = width;
	theHeight = height;
	theTop = Math.ceil((screen.height-theHeight*1.5)/2);
	theLeft = Math.ceil((screen.width-theWidth)/2);
	winopts = "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=no,resizable=no,copyhistory=0,width="+theWidth+",height="+theHeight+",top="+theTop+",left="+theLeft;
	smallwindow=window.open(url,name,winopts);
	smallwindow.focus();
}

function kantoren() {
	var ULkantoren = document.getElementById("officeList");
	if(ULkantoren) {
		kantoren = ULkantoren.getElementsByTagName("a");
		for(var j=0; j<kantoren.length; j++) {
			kantoren[j].onmouseover = function() {
				shift(this.id.replace('a_',''));
			}
		}
	}
	var map=document.getElementsByTagName('area');
	if(map) {
		for(var i=0;i<map.length;i++) {
			//add onmouseover and onmouseout event functions
			map[i].onmouseover=function(){shift(this.id);};
			map[i].onmouseout=function(){shift(this.id);};
		}
	}
}

function shift(id) {
	var mapbg = document.getElementById('mapimg');
	if(mapbg) {
		//if the className and the id match reset the class to the default state -or- shift the background image to the correct position by using the new class value
		if(id == mapbg.className) {
			mapbg.className='mapbase'; 
		} else {
			mapbg.className=id;
		}
	}
}

function fireEvent(obj,evt){
	var fireOnThis = obj;
	if( document.createEvent ) {
		var evObj = document.createEvent('MouseEvents');
		evObj.initEvent( evt, true, true );
		fireOnThis.dispatchEvent(evObj);
	} else if( document.createEventObject ) {
		fireOnThis.fireEvent('on'+evt);
	}
}

function validateEmail(email) {
	
	if (email != null && email != "") {
		a = email.lastIndexOf("@");
		b = email.lastIndexOf(".");
		c = email.indexOf(":");
		d = email.indexOf("/");
		e = email.substring(0,a);
		f = e.indexOf("@");
		g = email.substring(a+1,email.length);
		h = g.indexOf("[");
		i = g.indexOf("]");
		j = g.indexOf("<");
		k = g.indexOf(">");
		l = email.substring(a+1,b);
		m = email.substring(b+1,email.length);
		n = email.substring(0,a);
		p = email.indexOf("'");
		q = email.indexOf("\"");
		o = 0;
		if (a > b) {o++};
		if (c != -1) {o++};
		if (d != -1) {o++};
		if (f != -1) {o++};
		if (h != -1) {o++};
		if (i != -1) {o++};
		if (j != -1) {o++};
		if (k != -1) {o++};
		if (l.length < 2) {o++};
		if (m.length < 2) {o++};
		if (n.length < 1) {o++};
		if (p != -1) {o++};
		if (q != -1) {o++};
		if (o != 0) {
			return false;
		}
	}
	return true;
}

function GetXmlHttpObject() {
	var xmlHttp=null;
	try {
	  // Firefox, Opera 8.0+, Safari
	  xmlHttp=new XMLHttpRequest();
	}
	catch (e) {
	  // Internet Explorer
	  try {
		xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
	  }
	  catch (e) {
		xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
	  }
	}
	return xmlHttp;
}

function verk_verh() {
	var frmVerkVerh = document.getElementById("formVerkVerh");
	if(frmVerkVerh) {
		frmVerkVerh.onsubmit = function() {
			return validateVerkVerh(this);
		}
	}
}
function validateVerkVerh(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.vkvh_naam.value.length==0) {
		error++;
		msg+="\n- naam";
	}
	if(theForm.vkvh_postcode.value.length==0) {
		error++;
		msg+="\n- postcode";
	}
	if(theForm.vkvh_telefoon.value.length==0) {
		error++;
		msg+="\n- telefoon";
	}
	if(theForm.vkvh_email.value.length==0) {
		error++;
		msg+="\n- e-mail";
	}
	if(theForm.captcha.value.length==0) {
		error++;
		msg+="\n- code";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	if(!validateEmail(theForm.email.value)) {
		alert("Gelieve een geldig e-mailadres in te vullen.");
		return false;
	}
	return true;
}

function verkoopsconcepten() {
	var frmConceptStap1 = document.getElementById("formConceptStap1");
	var frmConceptStap2 = document.getElementById("formConceptStap2");
	var frmConceptStap3 = document.getElementById("formConceptStap3");
	var frmConceptStap4 = document.getElementById("formConceptStap4");
	var frmConceptStap5 = document.getElementById("formConceptStap5");
	var frmConceptStap6 = document.getElementById("formConceptStap6");
	var frmConceptStap7 = document.getElementById("formConceptStap7");
	var frmConceptEmail = document.getElementById("formConceptEmail");
	var frmConceptGegevens = document.getElementById("formConceptGegevens");
	if(frmConceptStap1) { frmConceptStap1.onsubmit = function() { return validateVerkoopsconceptenStap(this, 4); } }
	if(frmConceptStap2) { frmConceptStap2.onsubmit = function() { return validateVerkoopsconceptenStap(this, 3); } }
	if(frmConceptStap3) { frmConceptStap3.onsubmit = function() { return validateVerkoopsconceptenStap(this, 4); } }
	if(frmConceptStap4) { frmConceptStap4.onsubmit = function() { return validateVerkoopsconceptenStap(this, 2); } }
	if(frmConceptStap5) { frmConceptStap5.onsubmit = function() { return validateVerkoopsconceptenStap5(this); } }
	if(frmConceptStap6) { frmConceptStap6.onsubmit = function() { return validateVerkoopsconceptenStap(this, 4); } }
	if(frmConceptStap7) { frmConceptStap7.onsubmit = function() { return validateVerkoopsconceptenStap(this, 2); } }
	if(frmConceptEmail) { frmConceptEmail.onsubmit = function() { return validateVerkoopsconceptenEmail(this); } }
	if(frmConceptGegevens) { frmConceptGegevens.onsubmit = function() { return validateVerkoopsconceptenGegevens(this); } }
}
function validateVerkoopsconceptenStap(theForm, aantal) {
	var checked = false;
	for (i=0; i<aantal; i++) {	
		if (theForm.antwoord[i].checked) {
			checked=true;
		}
	}
	if(!checked) {
		alert("Gelieve een antwoord aan te vinken.");
		return false;
	}
	return true;
}
function validateVerkoopsconceptenStap5(theForm) {
	if(theForm.antwoord.value.length==0) {
		alert("Gelieve een prijs in te vullen.");
		return false;
	}
	return true;
}
function validateVerkoopsconceptenEmail(theForm) {
	if(theForm.email.value.length==0) {
		alert("Gelieve uw e-mailadres in te vullen.");
		return false;
	}
	if(!validateEmail(theForm.email.value)) {
		alert("Gelieve een geldig e-mailadres in te vullen.");
		return false;
	}	
	return true;
}
function validateVerkoopsconceptenGegevens(theForm) {
	var error=0;
	var msg="";
	
	if(theForm.voornaam.value.length==0) {
		error++;
		msg+="\n- voornaam";
	}
	if(theForm.naam.value.length==0) {
		error++;
		msg+="\n- naam";
	}
	if(theForm.straat.value.length==0) {
		error++;
		msg+="\n- straat";
	}
	if(theForm.nummer.value.length==0) {
		error++;
		msg+="\n- nummer";
	}
	if(theForm.postcode.value.length==0) {
		error++;
		msg+="\n- postcode";
	}
	if(theForm.gemeente.value.length==0) {
		error++;
		msg+="\n- gemeente";
	}
	if(theForm.telefoon.value.length==0) {
		error++;
		msg+="\n- telefoon";
	}
	if(theForm.eigendom_straat.value.length==0) {
		error++;
		msg+="\n- uw eigendom: straat";
	}
	if(theForm.eigendom_nummer.value.length==0) {
		error++;
		msg+="\n- uw eigendom: nummer";
	}
	if(theForm.eigendom_postcode.value.length==0) {
		error++;
		msg+="\n- uw eigendom: postcode";
	}
	if(theForm.eigendom_gemeente.value.length==0) {
		error++;
		msg+="\n- uw eigendom: gemeente";
	}
	if(error) {
		alert("Gelieve volgende velden in te vullen: "+msg);
		return false;
	}
	return true;
}
