function updatePrice() {
	var price = 0;
	var noModules = moduleCount();
	
	switch (noModules) {
		case 0:
			price = 0;
			break;
		case 1:
			price = 99;
			break;
		case 2:
			price = 99 + 50 * (noModules - 1)
			break;
		default:
			price = 99 + 50 * (noModules - 2)
			break;
			
	}
	
	document.getElementById("price").innerHTML = "Pret final: " + price + " RON";
}

function moduleCount() {
	var count = 0;
	var modules = new Array();
		
	if (document.getElementById("cb_modul_casa").checked) {		
		count ++;
		modules.push("cash");
	}
	if (document.getElementById("cb_modul_stocuri").checked) {		
		count ++;
		modules.push("inventory");
	}
	if (document.getElementById("cb_modul_facturare").checked) {		
		count ++;
		modules.push("billing");
	}
	if (document.getElementById("cb_modul_rapoarte").checked) {		
		count ++;
		modules.push("reports");
	}
	
	document.getElementById("modules").value = modules.join("|");
	return count ;
}


function validateRegistrationForm(regForm) {
	with (regForm) {
		if (moduleCount() == 2) {
			alert("Ati selectat doua module pentru achizitionare. Al treilea il primiti gratuit. \nVa rugam selectati inca un modul.");
			return false;
		}
		
		if (!validField(company)) {
			company.focus();
			alert("Camp invalid: companie");
			return false;
		}		
		if (!validField(juridicalForm)) {
			juridicalForm.focus();
			alert("Camp invalid: forma juridica");
			return false;
		}		
		if (!validField(registrationNumber)) {
			registrationNumber.focus();
			alert("Camp invalid: nr. reg. com.");
			return false;
		}		
		if (!validField(identificationCode)) {
			identificationCode.focus();
			alert("Camp invalid: C.I.F.");
			return false;
		}		
		if (!validField(address)) {
			address.focus();
			alert("Camp invalid: adresa");
			return false;
		}		
		if (!validField(district)) {
			district.focus();
			alert("Camp invalid: judet");
			return false;
		}
		if (!validField(accountNo)) {
			accountNo.focus();
			alert("Camp invalid: cod IBAN");
			return false;
		}		
		if (!validField(accountBank)) {
			accountBank.focus();
			alert("Camp invalid: banca");
			return false;
		}
		
		
		if (!validField(contactName)) {
			contactName.focus();
			alert("Camp invalid: persoana de contact");
			return false;
		}
		if (!validField(contactPhone)) {
			contactPhone.focus();
			alert("Camp invalid: telefon");
			return false;
		}
		
		
		if (!validEmail(contactEmail.value)) {
			contactEmail.focus();
			alert("Camp invalid: email");
			return false;
		}
		
	}
	
	return true;
}

function validField(field) {
	with (field) {
		if (value == null || value.length < 3)
			return false;
		else 
			return true;
	}
}

function validEmail(emailValue){	
	var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
    return emailPattern.test(emailValue); 
}
