// algehele formcheck nieuw account
function formcheck_account_nieuw() {
	var check = '';
	check += formcheck_normaal('voornaam', 1);
	check += formcheck_normaal('achternaam', 2);
	check += formcheck_normaal('adres', 2);
	check += formcheck_normaal('huisnummer', 1);
	check += formcheck_normaal('postcode', 4);
	check += formcheck_normaal('plaats', 2);
	//check += formcheck_normaal('telefoonnummer', 8)
	check += formcheck_email('email');
	check += formcheck_email_bevestiging('email_check');
	check += formcheck_normaal('wachtwoord', 'Wachtwoord', 4);
	check += formcheck_wachtwoord_bevestiging('wachtwoord_check');
	
	// check of afwijkend afleveradres is ingevuld -> meenemen in formCheck
	if (document.getElementById('radio_afleveradres')) {
		var afwijkend_afleveradres = document.getElementById('radio_afleveradres');
		if (afwijkend_afleveradres.checked) {
			check += formcheck_normaal('verzend_voornaam', 2);
			check += formcheck_normaal('verzend_achternaam', 2);
			check += formcheck_normaal('verzend_adres', 2);
			check += formcheck_normaal('verzend_huisnummer', 1);
			check += formcheck_normaal('verzend_postcode', 6);
			check += formcheck_normaal('verzend_plaats', 2);
		}
	}
	
	// afwerking
	if (check != '') {
		melding_form_check();
		return false;
	} else {
		return true;
	}
}

// algehele formcheck wijzigen account
function formcheck_account_wijzig() {
	var check = '';
	check += formcheck_normaal('voornaam', 1);
	check += formcheck_normaal('achternaam', 2);
	check += formcheck_normaal('adres', 2);
	check += formcheck_normaal('huisnummer', 1);
	check += formcheck_normaal('postcode', 6);
	check += formcheck_normaal('plaats', 2);
	//check += formcheck_normaal('telefoonnummer', 8)
	check += formcheck_email('email');
	check += formcheck_email_bevestiging('email_check');
	
	// check of afwijkend afleveradres is ingevuld -> meenemen in formCheck
	if (document.getElementById('radio_afleveradres')) {
		var afwijkend_afleveradres = document.getElementById('radio_afleveradres');
		if (afwijkend_afleveradres.checked) {
			check += formcheck_normaal('verzend_voornaam', 2);
			check += formcheck_normaal('verzend_achternaam', 2);
			check += formcheck_normaal('verzend_adres', 2);
			check += formcheck_normaal('verzend_huisnummer', 1);
			check += formcheck_normaal('verzend_postcode', 6);
			check += formcheck_normaal('verzend_plaats', 2);
		}
	}
	
	// afwerking
	if (check != '') {
		melding_form_check();
		return false;
	} else {
		return true;
	}
}

// wijzig wachtwoordcheck na submit
function formcheck_submit_wachtwoord() {
	var check = '';
	check += formcheck_normaal('huidig_wachtwoord', 4);
	check += formcheck_normaal('wachtwoord', 4);
	check += formcheck_wachtwoord_bevestiging('wachtwoord_check');

	// afwerking
	if (check != '') {
		melding_form_check();
		return false;
	} else {
		return true;
	}
}

// wijzig kadobon na submit
function formcheck_submit_kadobon() {
	var check = '';

	// extra check voor bedrag selectbox of zelf een bedrag invullen
	var bedrag_select = $('#bedrag_select option:selected').val();
	if (bedrag_select == 'ander_bedrag') {
		check += formcheck_normaal('bedrag_manueel', 2);		
	} else {
		check += formcheck_select('bedrag_select');
	}
	
	check += formcheck_normaal('voornaam', 1);
	check += formcheck_normaal('achternaam', 2);
	check += formcheck_email('email');
	check += formcheck_email_bevestiging('email_check');
	check += formcheck_checkbox('voorwaarden');

	// afwerking
	if (check != '') {
		melding_form_check();
		return false;
	} else {
		return true;
	}
}




// ######### velden checks vanaf hier ############## //

// reguliere check select (id, naam)
function formcheck_select(id) {
	var checkTotaal = 1;
	var waarde = $('#'+id+' option:selected').val();
	if (waarde == '') {
		$('#'+id+'_melding').html('<img src="img/icons/fout.png" /> Verplicht veld!');
	} else if (waarde == 'ander_bedrag') {
		$('#'+id+'_melding').html('');
	} else {
		$('#'+id+'_melding').html('<img src="img/icons/goed.png" />');
		checkTotaal = '';
	}
	return checkTotaal;
}

// reguliere check checkbox (id, naam)
function formcheck_checkbox(id) {
	var checkTotaal = 1;
	var waarde = $('#'+id).attr('checked');
	if (!waarde) {
		$('#'+id+'_melding').html('<img src="img/icons/fout.png" /> Verplicht veld!');
	} else {
		$('#'+id+'_melding').html('<img src="img/icons/goed.png" />');
		checkTotaal = '';
	}
	return checkTotaal;
}

// reguliere check (id aantal karakters)
function formcheck_normaal(id, aantal) {
	var checkTotaal = 1;
	var veld = document.getElementById(id);
	if (veld.value == '') {
		$('#'+id+'_melding').html('<img src="img/icons/fout.png" /> Verplicht veld!');
	} else if (veld.value.length < aantal) {
		$('#'+id+'_melding').html('<img src="img/icons/fout.png" /> Inhoud te kort');
	} else {
		$('#'+id+'_melding').html('<img src="img/icons/goed.png" />');
		checkTotaal = '';
	}
	return checkTotaal;
}

// valideer emailadres (id)
function formcheck_email(id) {
	function trim(s) {
		return s.replace(/^\s+|\s+$/, '');
	}
	var checkTotaal = 1;
	var veld = trim(document.getElementById(id).value);
	var emailFilter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	var illegaleKarakters= /[\(\)\#\&\%\^\*\<\>\,\;\:\\\"\[\]]/;
	
	if (veld == '') {
		$('#'+id+'_melding').html('<img src="img/icons/fout.png" /> Verplicht veld!');
	} else if (emailFilter.test(veld) == false) {
		$('#'+id+'_melding').html('<img src="img/icons/fout.png" /> Ongeldig e-mailadres');
	} else if (veld.match(illegaleKarakters)) {
		$('#'+id+'_melding').html('<img src="img/icons/fout.png" /> Ongeldige karakters');
	} else {
		$('#'+id+'_melding').html('<img src="img/icons/goed.png" />');
		checkTotaal = '';
	}
	return checkTotaal;
}

// valideer emailadres bevestiging
function formcheck_email_bevestiging(id) {
	var checkTotaal = 1;
	var veld = document.getElementById(id);
	var email = document.getElementById('email');
	if (veld.value == '') {
		$('#'+id+'_melding').html('<img src="img/icons/fout.png" /> Verplicht veld!');	
	} else if (veld.value != email.value) {
		$('#'+id+'_melding').html('<img src="img/icons/fout.png" /> Niet gelijk!');
	} else {
		$('#'+id+'_melding').html('<img src="img/icons/goed.png" />');
		checkTotaal = '';
	}
	return checkTotaal;
}

// valideer wachtwoord bevestiging
function formcheck_wachtwoord_bevestiging(id) {
	var checkTotaal = 1;
	var veld = document.getElementById(id);
	var wachtwoord = document.getElementById('wachtwoord');
	if (veld.value == '') {
		$('#'+id+'_melding').html('<img src="img/icons/fout.png" /> Verplicht veld!');	
	} else if (veld.value != wachtwoord.value) {
		$('#'+id+'_melding').html('<img src="img/icons/fout.png" /> Niet gelijk!');
	} else {
		$('#'+id+'_melding').html('<img src="img/icons/goed.png" />');
		checkTotaal = '';
	}
	return checkTotaal;
}


// #####################################
// extra checks
var r = {
  'cijfers':/[^\d]/g,
  'letter':/[^A-Za-z]/g,
  'tel':/[^\d&\-&\+]/g
}

function check_velden(o,typea,typeb){
  o.value = o.value.replace(r[typea],'');
  if(typeb) {
	  o.value = o.value.replace(r[typeb],'');
  }
}
function convert(o,type){
  if(type=='upper') {
	  o.value = o.value.toUpperCase();
  }
  if(type=='lower') {
	  o.value = o.value.toLowerCase();
  }
}