// JavaScript Document
function submitForm() {
	error=0;
	hideFields();

	if (document.getElementById("country").value == "") {
		document.getElementById("emptyCountry").style.display="inline";		
		error=1;
		document.getElementById("country").focus();
	}
	
	if (document.getElementById("city").value == "") {
		document.getElementById("emptyCity").style.display="inline";		
		error=1;
		document.getElementById("city").focus();
	}
	
	if (document.getElementById("zipcode").value == "") {
		document.getElementById("emptyZip").style.display="inline";
		error=1;
		document.getElementById("zipcode").focus();
	}
	
	if (document.getElementById("address").value == "") {			
		document.getElementById("emptyAddress").style.display="inline";		
		error=1;
		document.getElementById("address").focus();
	}
	
	if (document.getElementById("phone").value == "") {
		document.getElementById("emptyPhone").style.display="inline";
		error=1;
		document.getElementById("phone").focus();
	} else if (!(validatePhone(document.getElementById("phone").value))) {
		document.getElementById("invalidPhone").style.display="inline";
		error=1;
		document.getElementById("phone").focus();
	}
	
	if (document.getElementById("email").value == "") {
		document.getElementById("emptyEmail").style.display="inline";
		error=1;
		document.getElementById("email").focus();
	} else if (!(validateEmail(document.getElementById("email").value))) {
		document.getElementById("invalidEmail").style.display="inline";
		error=1;
		document.getElementById("email").focus();
	}
	
	if (document.getElementById("name").value == "") {
		document.getElementById("emptyName").style.display="inline";
		error=1;
		document.getElementById("name").focus();
	} else if (!(validateName(document.getElementById("name").value))) {
		document.getElementById("invalidName").style.display="inline";
		error=1;
		document.getElementById("name").focus();
	}
	
	
	if (error == 1) {
		return false;
	}
	else {
		alert("The form was successfully submitted.");
		alert("You have submitted the following values:\n"+
		"Full name: "+document.getElementById("name").value+"\n"+
		"Email: "+document.getElementById("email").value+"\n"+
		"Phone number: "+document.getElementById("phone").value+"\n"+
		"Address: "+document.getElementById("address").value+"\n"+
		"Zip code: "+document.getElementById("zipcode").value+"\n"+
		"City: "+document.getElementById("city").value+"\n"+
		"Country: "+document.getElementById("country").value+"\n"+
		"\n"+
		"Project features :"+getSelectedFeatures()+"\n"+
		"\n"+
		"Extras :"+getSelectedExtras()+"\n"+
		"\n"+
		"Time frame: "+document.getElementById("time").options[document.getElementById("time").selectedIndex].value+"\n"+
		"\n"+
		"Receive project updates: "+getReceiveUpdatesValue()+"\n"+
		"\n"+
		"Comments: "+document.getElementById("comments").value+"\n");
	}
	//to be set to true when there is a real server side script
	return false;

}



function validateName(str) {
	if (str.indexOf(" ") != -1) {
		return true;
	} else return false;
}

function validateEmail(str) {
	return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
}


function validatePhone(str) {
	var validChars = "0123456789";
	var isNumber=true;
	var char;

	for (i = 0; i < str.length && isNumber == true; i++)
	{
		char = str.charAt(i);
		if (validChars.indexOf(char) == -1)
		{
			isNumber = false;
		}
	}
	return isNumber;

}






function hideUnhide(elem) {

 if (elem.style.display == "none")
 {
   elem.style.display = "block";
 }
 else
 {
   elem.style.display = "none";
 }

}

function hideFields() {
	document.getElementById("emptyName").style.display="none";
	document.getElementById("invalidName").style.display="none";
	document.getElementById("emptyEmail").style.display="none";
	document.getElementById("invalidEmail").style.display="none";
	document.getElementById("emptyPhone").style.display="none";
	document.getElementById("invalidPhone").style.display="none";
	document.getElementById("emptyAddress").style.display="none";
	document.getElementById("emptyZip").style.display="none";
	document.getElementById("emptyCity").style.display="none";
	document.getElementById("emptyCountry").style.display="none";



}


function getSelectedFeatures() {
	featuresSelected="";
	
	for (var i=0; i < document.projectform.features.length; i++)
	{
   		if (document.projectform.features[i].checked)
   		{
      		featuresSelected += document.projectform.features[i].value+" ";
   		}
	}
   	return featuresSelected;
}

function getSelectedExtras() {
	extrasSelected="";
	
	for (var i=0; i < document.projectform.extras.length; i++)
	{
   		if (document.projectform.extras[i].checked)
   		{
      		extrasSelected += document.projectform.extras[i].value+" ";
   		}
	}
   	return extrasSelected;
}

function getReceiveUpdatesValue() {
	for (var i=0; i < document.projectform.update.length; i++)
	{
   		if (document.projectform.update[i].checked)
   		{
      		radioValue = document.projectform.update[i].value;
   		}
	}
   	return radioValue;
}


