//De volgende functie wordt aangeroepen als de pagina geladen is
function bodyloaded(thisbody){
	//verander anchors met de class popup in een javascript commando
	maak_href_popup();

	//repareer tabel lay-out
	repareer_formulier_tabel();
	
	//vul de fotorand langs de pagina uit tot de complete hoogte van pagina.
	fotorand_uitvullen();
	
//	thiswindow.onBlur = "return check_form_changed()";
}

function popup_page(url) {
	window.open(url,'_blank','toolbar=0,titlebar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=450,height=350');
}

//Deze functie zorgt voor het uitvullen van de fotorand langs de pagina
function fotorand_uitvullen(){
	var main = document.getElementById("main-content");
	var fotorand = document.getElementById("fotorand");
	var foto_cnt = 1;
	var foto;
	if (main && fotorand) {
		while (main.offsetHeight > fotorand.offsetHeight) {
			foto = document.getElementById("fotorand_foto" + foto_cnt);
			if (foto == null) break;
			foto.style.display = "block";
			foto_cnt++;
		}
	}
}

//Zoek formuliertabellen op pagina en zorg in IE dat deze er als
//tabel uit gaat zien
function repareer_formulier_tabel () {
	var div_elements = document.getElementsByTagName('div');
	var tabel;
	var tabel_i = 0;
	var tabel;
	while (tabel = div_elements[tabel_i++]){
		if (tabel.className == 'tabel'){
			//Yep, we hebben een tabel gevonden
			//Eerst maar eens een lijstje samenstellen van de elementen onder de tabel
			var tabel_elements = tabel.childNodes;

			var tr_elements = new Array;
			var tr_element;
			var t_i=0;
			//Zoek nu de tabelrijen op en maak daar het lijst: 'tr_elements' van
			for (i=0;i<tabel_elements.length;i++){
				tr_element = tabel_elements[i];
				if (tr_element.className == 'tr'){
					tr_elements[t_i++] = tr_element;
				}
			}
			var td1_elements = new Array;
			var td_elements;
			t_i=0;
			//Zoek nu de eerste kolom in iedere rij op en maak het lijstje: 'td1_elements'
			for (i=0;i<tr_elements.length;i++){
				td_elements = tr_elements[i].childNodes;
				for (j=0;j<td_elements.length;j++){
					td1_element = td_elements[j];
					if (td1_element.className == 'td'){
						td1_elements[t_i++] = td1_element;
						break; //alleen eerste kolom
					}
				}
			}
			
			//Nu gaan we even kijken of ie er wel als tabel uit ziet
			//zoek de breedste kolom
			var min_col_w = 0;
			var max_col_w = 0;
			var col_w;
			for (i=0;i<td1_elements.length;i++){
				col_w = td1_elements[i].offsetWidth;
				if (col_w > max_col_w) max_col_w = col_w;
				if (min_col_w == 0)
					min_col_w = max_col_w;
				else{
					if (col_w < min_col_w) min_col_w = col_w;
				}
			}
			
			//als het nodig is maak alle elementen even breed als breedste
			if (min_col_w != max_col_w){
				for (i=0;i<td1_elements.length;i++){
					td1_elements[i].style.display = 'inline-block';
					td1_elements[i].style.width = max_col_w + 'px';
				}
			}
		}
	}
}

//Deze functie veranderd voor ieder anchor element <a> met de class: "popup" het 
//href attribuut in een javascript link naar een popupvenster
//Tevens wordt een pop-up variabele aan de gelinkte pagina toegevoegd met de
//naam: 'popup=true'
function maak_href_popup(){
	//zoek alle links op
	var a_elements = document.getElementsByTagName('a');
	
	if (a_elements) {
		for (i=0;i<a_elements.length;i++){
			a_element = a_elements[i];
			if (a_element.className == 'popup'){
				href_old = a_element.href;
				//zijn er al variabelen aan de link toegevoegd?
				if (href_old.indexOf('?') < 1)
					url_var = '?p=true';
				else
					url_var = '&p=true';
				href_new = 'javascript:popup_page(\'' + href_old + url_var + '\')';
				a_element.href = href_new;
			}
		}
	}
}

//Check de geldigheid van een emailadres
function validate_email(str) {
	var pos_at = str.indexOf('@');
	//zit er minimaal een at in het veld
	if (pos_at < 1) return false;
	//zitten er geen 2 at's in het veld
	if (str.indexOf('@',pos_at+1) != -1) return false;
	//Zoek de dot, maar dan minimaal 2 posities na at
	var pos_dot = str.indexOf('.',pos_at+2);
	//is er uberhaupt een dot na de at
	if (pos_dot == -1) return false;
//	//zijn er geen 2 dots na at
//	if (str.indexOf('.',pos_dot+1) != -1) return false;
	//zit dot niet aan het einde van de string
	if (pos_dot+1 == str.length) return false;

	return true;
}

//Check het contactformulier
function check_contact_form(form){
	if (form.onderdeel.value < 1) {
		alert('Kies een onderdeel waarover u een bericht wil sturen.');
		form.onderdeel.focus();
		return false;
	}

	if (!form.naam.value) {
		alert('Vul een naam in!');
		form.naam.focus();
		return false;
	}

	if (!form.email.value) {
		alert('Vul a.u.b. een e-mailadres in');
		form.email.focus();
		return false;
	}

	if (!form.onderwerp.value) {
		alert('Geef uw bericht een onderwerp');
		form.onderwerp.focus();
		return false;
	}
	
	if (!form.bericht.value) {
		alert('Uw heeft nog geen bericht opgesteld');
		form.bericht.focus();
		return false;
	}

	if (validate_email(form.email.value) == false) {
		alert('Het e-mail veld bevat een ongeldig e-mailadres');
		form.email.focus();
		return false;
	}
	//alle velden OK
	return true;
}

//functies voor invoerformulieren

//Deze functie vult het atlasblok in wanneer een locatie uit de lijst
//gekozen wordt
function locatie_id_changed(){
	var formulier = document.getElementById("form_waarneming");
	if (formulier){
		if (formulier.locatie_id.value > 0 && formulier.locatie_id.value.length == 6)
			formulier.atlasblok.value = formulier.locatie_id.value;
	}
}

//Deze functie kiest een locatie uit de lijst wanneer het atlasblok veld
//aangepast is
function atlasblok_changed(){
	var formulier = document.getElementById("form_waarneming");
	if (formulier){
		var atlasblok_tekst = formulier.atlasblok.value.replace(/-/g,"");
		
		if (atlasblok_tekst.length > 0){
			var i=0;
			var j=formulier.locatie_id.length;
			while (i<j) {
				var option_val = formulier.locatie_id.options[i].value;
				if (option_val == atlasblok_tekst || option_val == 0){
					formulier.locatie_id.selectedIndex = i;
					break;
				}
				i++;
			}
		}
	}
}

//Deze functie checked of een een invulformulier aangepast is
//en geeft een waarschuwing wanneer het formulier nog niet verzonden is
function check_form_changed(){
	if (document.forms){
		var i=0;
		var j=document.forms.length;
		while (i<j){
			
			i++;
		}
	}
	return false;
}