// JavaScript Document

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
	document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);


function ChangeStyle(obj, new_style) { 
	obj.className = new_style; 
}


function submitForm(theForm) {
	var theQuery = document.getElementById(theForm).query.value;
	if(theQuery == '') {
		document.location.href='index.php?module=shop&action=searchMore';		
	} else {
		document.getElementById(theForm).submit();
	}
}


function defineWidth() {

	var docWidth = document.body.clientWidth;
	var newWidth = 1200;

	if(docWidth>=newWidth) {
		document.getElementById('mainTable').width = newWidth;
	} else { 
		document.getElementById('mainTable').width = docWidth;
	}
}


function order(article, price) {
	document.location.href='add2cart.php?action=add&article='+article+'&price='+price;
}

function selectPayment() {
	document.location.href='index.php?module=shop&action=selectPayment';
}

function checkOut() {
	document.location.href='index.php?module=shop&action=checkOut';
}

function sendOrder() {
	var name = document.getElementById('name').value;
	var address = document.getElementById('address').value;
	var postalcode = document.getElementById('postalcode').value;
	var city = document.getElementById('city').value;
	
	var check = document.getElementById('check').value;
	
	if(check=='') {
		alert('U moet akkoord gaan met de Algemene Voorwaarden voordat u uw bestelling kunt plaatsen.');
		return false;
	} else {
		if(name!='' || address!='' || postalcode!='' || city!='') {
			document.location.href='add_delivery.php?name='+name+'&address='+address+'&postalcode='+postalcode+'&city='+city;
		} else {
			document.location.href='index.php?module=shop&action=sendOrder';
		}
		return true;
	}
}


function deleteItem(article) {
	if(confirm('Weet u zeker dat u dit item wilt verwijderen?')) {
		document.location.href='add2cart.php?action=remove&article='+article;
	} 
	return false;
}


function logOut() {
	if(confirm('Weet u zeker dat u uit wilt loggen?')) {
		document.location.href='logout.php';
	} 
	return false;	
}


function showImage(code, id, w, h) {
	window.open('showimage.php?code='+code+'&id='+id+'','image', 'height='+h+', width='+w);
}

function showExtraImage(image, w, h) {
	window.open('showextraimage.php?image='+image+'', 'image', 'height='+h+', width='+w);
}

function showBlock(id) {
	document.getElementById(id).style.display = "block";
}


function checkRegistrationForm(form) {
	var error = '';
	clearPredefinedVars(form); 
	var filter = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
	
	if(document.getElementById(form).firstname.value == '') {
		error += '- Voornaam is verplicht\n';
	}
	if(document.getElementById(form).lastname.value == '') {
		error += '- Achternaam is verplicht\n';
	}
	if(document.getElementById(form).address_street.value == '') {
		error += '- Straatnaam is verplicht\n';
	}
	if(document.getElementById(form).address_number.value == '') {
		error += '- Huisnummer is verplicht\n';
	}
	if(document.getElementById(form).postalcode.value == '') {
		error += '- Postcode is verplicht\n';
	}
	if(document.getElementById(form).city.value == '') {
		error += '- Woonplaats is verplicht\n';
	}
	
	if(document.getElementById(form).emailaddress.value == '') {
		error += '- Emailadres is verplicht\n';
	}
	if(document.getElementById(form).emailaddress.value != '' && !filter.test(document.getElementById(form).emailaddress.value)) {
		error += '- Het opgegeven emailadres is ongeldig\n';
	}
	if(document.getElementById(form).password.value != '' && document.getElementById(form).password2.value != '') {
		if(document.getElementById(form).password.value != document.getElementById(form).password2.value) {
			error += '- Het tweede wachtwoord komt niet overeen met het eerst ingegeven wachtwoord\n';
		}
	} else {
		error += '- Wachtwoord is verplicht\n';
	}
	
	if(error != '') {
		alert('FOUTMELDING:\n\n'+error+'\n\nVult u a.u.b. de ontbrekende velden in voordat u het formulier verzend.');
		return false;
	} else {
		document.getElementById(form).submit();
		return true;
	}
}

function checkRegistrationFormAndPaymentMethod(form, p_bCheckContract) {
	var error = '';
	
	// Remove stuff
	clearPredefinedVars(form);
	
	
	var filter = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$");
	var postcodecheck = new RegExp('^[0-9]{4}[a-zA-Z]{2}$');
	
	if(document.getElementById(form).firstname.value == '') {
		error += '- Voornaam is verplicht\n';
	}
	if(document.getElementById(form).lastname.value == '') {
		error += '- Achternaam is verplicht\n';
	}
	if(document.getElementById(form).address_street.value == '') {
		error += '- Straatnaam is verplicht\n';
	}
	if(document.getElementById(form).address_number.value == '') {
		error += '- Huisnummer is verplicht\n';
	}
	
	if (document.getElementById(form).country.value == 'Nederland' || document.getElementById(form).country.value == 'nl') {
		if(!postcodecheck.test(document.getElementById(form).postalcode.value)) {
			error += '- Postcode is incorrect, geen spaties gebruiken a.u.b.\n';
		}
	}
	
	if (document.getElementById(form).delivery_postalcode.value != '' && document.getElementById(form).delivery_country.value == 'Nederland')
	{
		if(!postcodecheck.test(document.getElementById(form).delivery_postalcode.value)) {
			error += '- Postcode van afleveradres is incorrect\n';
		}
	}
	
	if(document.getElementById(form).city.value == '') {
		error += '- Plaats is verplicht\n';
	}
	
	if(document.getElementById(form).telephone.value == '')
	{
		error += '- Telefoonnummer is verplicht\n';
	}
	//	
	if (document.getElementById(form).country.value != 'Nederland' && document.getElementById(form).payment_method.value == 9)
	{
		error += '- Rembours buiten Nederland is niet mogelijk.\n';
	}
	
	if(document.getElementById(form).emailaddress.value == '') {
		error += '- Emailadres is verplicht\n';
	}
	
	if(document.getElementById(form).emailaddress.value != '' && !filter.test(document.getElementById(form).emailaddress.value)) {
		error += '- Het opgegeven emailadres is ongeldig\n';
	}
	/**
	if (!document.getElementById(form).terms.checked)
	{
		error += '- U bent niet akkoord gegaan met onze Algemene Voorwaarden';
	}
	 */
	if (p_bCheckContract)
	{
		if (document.getElementById(form).initials.value == '')
		{ error += '- Voorletters zijn verplicht\n'; }
		if (document.getElementById(form).identification_number.value == '')
		{ error += '- Nummer van het identiteitsbewijs is verplicht\n'; }
		if (document.getElementById(form).birth_place.value == '')
		{ error += '- Geboorteplaats is verplicht\n'}
		if (document.getElementById(form).number_transfer.checked && document.getElementById(form).tranfser_number.value!= '') {
			error += '- Indien nummerbehoud is aangevinkt dan moet het te behouden telefoonnummer worden ingevlud\n';
		}
	} 
	if(!getRadioValue(document.getElementById(form).payment_method)) {
		error += '- Betaalmethode is verplicht\n';
	}
	if(error != '') {
		alert('FOUTMELDING:\n\n'+error+'\n\nVult u a.u.b. de ontbrekende velden in voordat u het formulier verzend.');
		return false;
	} else {
		document.paymentmethod.submit();
		return true;
	}
	
	
}

function getRadioValue(obj)
{
	var rad_val = 0;
	if (obj.length)
	{
		for (var i=0; i < obj.length; i++)
		{
		  if (obj[i].checked)
		  {
			rad_val = obj[i].value;
		  }
	   }
	}
	else
	{
		rad_val = obj.value;	
	}
   return rad_val;
}


function showObject(div_name) {
	var dS = document.getElementById(div_name);    
	if (dS.style.display != "none") {
		dS.style.display = 'inline';
	} else {
		dS.style.display = 'none';
	}
}

function hideObject(div_name) {    
	var dS = document.getElementById(div_name);    
	dS.style.display = 'none';
}

function setFinalPrice(payment_id) {
	
}

function switchPaymentStyle(payment) {
	payment.style.background='CCCCCC';
	payment.style.color='777777';
}

function checkCountry(type){
	if(type == 'delivery') {
		c = document.forms.paymentmethod.delivery_country.selectedIndex;
		country = document.forms.paymentmethod.delivery_country.options[c].value;
	} else {
		c = document.forms.paymentmethod.country.selectedIndex;
		country = document.forms.paymentmethod.country.options[c].value;
	}
	if(country == 'BE') {
		//var paymentChoice = document.getElementById('payment_method'); 
		//if(document.getElementById('payment_method')[0].checked) {
		document.getElementById('payment_method')[0].checked=false;
		document.getElementById('payment_method')[1].checked=false;
		document.getElementById('payment_method')[2].checked=false;
		//	}
		/*for(var k=0; k < paymentChoice.length; k++) {
			if(paymentChoice[k].checked) {
				paymentChoice[k].checked=false;
			}
		}*/
		var payment = document.getElementById('paymentChoice1');    
		payment.style.display = 'none';
		
	}
	if(country == 'NL') {
		var payment = document.getElementById('paymentChoice1');    
		payment.style.display = 'inline';
	}
}

function checkEditCustomerForm() {
	var error = '';
	var filter = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$");
	var form = 'editcustomer';
	
	if(document.getElementById(form).first_name.value == '') {
		error += '- Voornaam is verplicht\n';
	}
	if(document.getElementById(form).last_name.value == '') {
		error += '- Achternaam is verplicht\n';
	}
	if(document.getElementById(form).streetname.value == '') {
		error += '- Straatnaam is verplicht\n';
	}
	if(document.getElementById(form).streetnumber.value == '') {
		error += '- Huisnummer is verplicht\n';
	}
	if(document.getElementById(form).postalcode.value == '') {
		error += '- Postcode is verplicht\n';
	}
	if(document.getElementById(form).city.value == '') {
		error += '- Woonplaats is verplicht\n';
	}
	
	if(document.getElementById(form).email.value == '') {
		error += '- Emailadres is verplicht\n';
	}
	if(document.getElementById(form).email.value != '' && !filter.test(document.getElementById(form).email.value)) {
		error += '- Het opgegeven emailadres is ongeldig\n';
	}
	if(document.getElementById(form).password.value != '' && document.getElementById(form).password2.value != '') {
		if(document.getElementById(form).password.value != document.getElementById(form).password2.value) {
			error += '- Het tweede wachtwoord komt niet overeen met het eerst ingegeven wachtwoord\n';
		}
	}
	
	if(error != '') 
	{
		alert('FOUTMELDING:\n\n'+error+'\n\nVult u a.u.b. de ontbrekende velden in voordat u het formulier verzend.');
		return false;
	} else {
		document.paymentmethod.submit();
		return false;
	}
}


function clearPredefinedVars(form) {
	var oForm = document.getElementById(form)	;
	if (oForm.firstname.value == "Voornaam") {
		oForm.firstname.value = "";
	}
	if (oForm.lastname.value == "Achternaam") {
		oForm.lastname.value = "";
	}
	if (oForm.midname.value == "Tussenvoegsel(s)") {
		oForm.midname.value = "";
	}
	
	if (oForm.address_street.value == "Straat") {
		oForm.address_street.value = "";
	}
	if (oForm.address_number.value == "Nummer") {
		oForm.address_number.value = "";
	}
	
	if (oForm.delivery_name1.value == "Voornaam") {
		oForm.delivery_name1.value = "";
	}
	if (oForm.delivery_name2.value == "Achternaam") {
		oForm.delivery_name2.value = "";
	}
	if (oForm.delivery_address_street.value == "Straat") {
		oForm.delivery_address_street.value = "";
	}
	if (oForm.delivery_address_number.value == "Nummer") {
		oForm.delivery_address_number.value = "";
	}
}