function chkQuote(frm){
	if ((frm.Location.value.length == 0)||(frm.Location2.value.length == 0)){
		alert("Please select moving to and from locations to proceed.");
		return false;
	}
}

function chkInquiry(frm){
	if (frm.Services.value.length == 0){
		alert("Please select a service to proceed.");
		return false;
	}
}

function chkMoveQuote(frm){
	if (chkName(frm.TransFirstName) == false)
		return false;
	else if (chkName(frm.TransLastName) == false)
		return false;
	else if (chkPhone(frm.TransWPhone_Country) == false)
		return false;
	else if (chkPhone(frm.TransWPhone_Area) == false)
		return false;
	else if (chkPhone(frm.TransWPhone_Number) == false)
		return false;
	else if (chkPhone(frm.TransHPhone_Country) == false)
		return false;
	else if (chkPhone(frm.TransHPhone_Area) == false)
		return false;
	else if (chkPhone(frm.TransHPhone_Number) == false)
		return false;
	else if (chkPhone(frm.TransMPhone_Country) == false)
		return false;
	else if (chkPhone(frm.TransMPhone_Area) == false)
		return false;
	else if (chkPhone(frm.TransMPhone_Number) == false)
		return false;
	else if ((frm.TransEmail.value.length != 0)&&(chkEmail(frm.TransEmail) == false))
		return false;
	else if ((frm.TransEmail2.value.length != 0)&&(compareEmail(frm.TransEmail,frm.TransEmail2) == false))
		return false;
	else if ((frm.TransFirstName.value.length == 0)||(frm.TransLastName.value.length == 0)||(frm.TransEmail.value.length == 0)||(frm.TransEmail2.value.length == 0)||(((frm.TransWPhone_Country.value.length == 0)||(frm.TransWPhone_Number.value.length == 0))&&((frm.TransHPhone_Country.value.length == 0)||(frm.TransHPhone_Number.value.length == 0))&&((frm.TransMPhone_Country.value.length == 0)||(frm.TransMPhone_Number.value.length == 0)))||(frm.LearnFrom.value.length == 0)||(frm.DestCity.value.length == 0)||(frm.DestCountry.value.length == 0)||(frm.TransCity.value.length == 0)||(frm.TransCountry.value.length == 0)||(frm.MovingDate.value.length == 0)||((frm.Agree[0].checked == false)&&(frm.Agree[1].checked == false)&&(frm.Agree[2].checked == false))){
		if (frm.TransFirstName.value.length == 0)
		  frm.TransFirstName.focus();
		else if (frm.TransLastName.value.length == 0)
		  frm.TransLastName.focus();
		else if (((frm.TransWPhone_Country.value.length == 0)||(frm.TransWPhone_Number.value.length == 0))&&((frm.TransHPhone_Country.value.length == 0)||(frm.TransHPhone_Number.value.length == 0))&&((frm.TransMPhone_Country.value.length == 0)||(frm.TransMPhone_Number.value.length == 0)))
          getPhone(frm.TransWPhone_Country,frm.TransHPhone_Country,frm.TransMPhone_Country,frm.TransWPhone_Number,frm.TransHPhone_Number,frm.TransMPhone_Number)
		else if (frm.TransEmail.value.length == 0)
		  frm.TransEmail.focus();
		else if (frm.TransEmail2.value.length == 0)
		  frm.TransEmail2.focus();
		else if (frm.LearnFrom.value.length == 0)
		  frm.LearnFrom.focus();
		else if (frm.TransCity.value.length == 0)
		  frm.TransCity.focus();
		else if (frm.TransCountry.value.length == 0)
		  frm.TransCountry.focus();
		else if (frm.DestCity.value.length == 0)
		  frm.DestCity.focus();
		else if (frm.DestCountry.value.length == 0)
		  frm.DestCountry.focus();
		else if (frm.MovingDate.value.length == 0)
		  frm.MovingDate.focus();
		else if (frm.temp_country.value == 'japan')
			if ((frm.Agree[0].checked == false)&&(frm.Agree[1].checked == false)&&(frm.Agree[2].checked == false))
		  		frm.Agree[0].focus();
		getRequired(frm)
		return false;
	}
	else {
		var todayDate = new Date();
		var myMovingDate = new Date(frm.MovingDate.value);
		var myDeliveryDate = new Date(frm.DeliveryDate.value);
		var diffDate = myMovingDate - todayDate;
		if (diffDate <= 518400000){
			alert("Moving date should be at least 7 days from current date. Please enter a valid date.");
			return false;
		}
		else if (myMovingDate > myDeliveryDate){
			alert("Delivery date should not be earlier than moving date. Please enter a valid date.");
			return false;
			
		}
	}
}

function chkCorpServices(frm){
	if (chkName(frm.TransFirstName) == false)
		return false;
	else if (chkName(frm.TransLastName) == false)
		return false;
	else if (chkPhone(frm.TransWPhone_Country) == false)
		return false;
	else if (chkPhone(frm.TransWPhone_Area) == false)
		return false;
	else if (chkPhone(frm.TransWPhone_Number) == false)
		return false;
	else if (chkPhone(frm.TransHPhone_Country) == false)
		return false;
	else if (chkPhone(frm.TransHPhone_Area) == false)
		return false;
	else if (chkPhone(frm.TransHPhone_Number) == false)
		return false;
	else if (chkPhone(frm.TransMPhone_Country) == false)
		return false;
	else if (chkPhone(frm.TransMPhone_Area) == false)
		return false;
	else if (chkPhone(frm.TransMPhone_Number) == false)
		return false;
	else if ((frm.TransEmail.value.length != 0)&&(chkEmail(frm.TransEmail) == false))
		return false;
	else if ((frm.TransEmail2.value.length != 0)&&(compareEmail(frm.TransEmail,frm.TransEmail2) == false))
		return false;
	else if ((frm.TransFirstName.value.length == 0)||(frm.TransLastName.value.length == 0)||(frm.TransEmail.value.length == 0)||(frm.TransEmail2.value.length == 0)||(((frm.TransWPhone_Country.value.length == 0)||(frm.TransWPhone_Number.value.length == 0))&&((frm.TransHPhone_Country.value.length == 0)||(frm.TransHPhone_Number.value.length == 0))&&((frm.TransMPhone_Country.value.length == 0)||(frm.TransMPhone_Number.value.length == 0)))||(frm.LearnFrom.value.length == 0)||(frm.TransCity.value.length == 0)||(frm.TransCountry.value.length == 0)||(frm.Agree.checked == false)){
		if (frm.TransFirstName.value.length == 0)
		  frm.TransFirstName.focus();
		else if (frm.TransLastName.value.length == 0)
		  frm.TransLastName.focus();
		else if (frm.CompanyName.value.length == 0)
		  frm.CompanyName.focus();
		else if (((frm.TransWPhone_Country.value.length == 0)||(frm.TransWPhone_Number.value.length == 0))&&((frm.TransHPhone_Country.value.length == 0)||(frm.TransHPhone_Number.value.length == 0))&&((frm.TransMPhone_Country.value.length == 0)||(frm.TransMPhone_Number.value.length == 0)))
          getPhone(frm.TransWPhone_Country,frm.TransHPhone_Country,frm.TransMPhone_Country,frm.TransWPhone_Number,frm.TransHPhone_Number,frm.TransMPhone_Number)
		else if (frm.TransEmail.value.length == 0)
		  frm.TransEmail.focus();
		else if (frm.TransEmail2.value.length == 0)
		  frm.TransEmail2.focus();
		else if (frm.LearnFrom.value.length == 0)
		  frm.LearnFrom.focus();
		else if (frm.TransCity.value.length == 0)
		  frm.TransCity.focus();
		else if (frm.TransCountry.value.length == 0)
		  frm.TransCountry.focus();
		else if (frm.temp_country.value == 'japan')
			if (frm.Agree.checked == false)
		  		frm.Agree.focus();
		getRequired(frm)
		return false;
	}
}

function chkSubscribe(frm){
	if ((frm.FirstName.value.length == 0)||(frm.LastName.value.length == 0)||(frm.Email.value.length == 0)||(frm.eadd2.value.length == 0)){
		alert("First Name, Last Name and E-mail are required fields. Please complete before submitting.");
		return false;
	}
	else {
		if (frm.Email.value.indexOf("@") == -1){
			alert("Please enter a valid e-mail address.");
			frm.Email.focus();
			return false;
		}
		
		else if (document.getElementById("Email").value != document.getElementById("eadd2").value){
			alert("Your e-mail addresses did not match. Please re-enter values.");
			frm.Email.focus();
			return false;
		}
	}
}

function chkReport(frm){
	if ((frm.Name.value.length == 0)||(frm.Email.value.length == 0)){
		alert("Name and E-mail required. Please complete before submitting.");
		return false;
	}
	else {
		if (frm.Email.value.indexOf("@") == -1){
			alert("Please enter a valid e-mail address.");
			frm.Email.focus();
			return false;
		}
		
		else if (document.getElementById("Email").value != document.getElementById("eadd2").value){
			alert("Your e-mail addresses did not match. Please re-enter values.");
			frm.Email.focus();
			return false;
		}
	}
}


function chkMailFriend(frm){
	if (frm.tomail.value.length == 0){
		alert("Recipient e-mail required. Please complete before submitting.");
		return false;
	}
	else {
		if (frm.tomail.value.indexOf("@") == -1){
			alert("Please enter a valid e-mail address.");
			frm.tomail.focus();
			return false;
		}
	}
}

function chkContact(frm){
	if ((frm.ContactName.value.length == 0)||(frm.Location.value.length == 0)||(frm.Email.value.length == 0)||(frm.PhoneNo.value.length == 0)){
		alert("Name, Country, E-mail and Telephone are required fields. Please complete before submitting.");
		return false;
	}

	if (frm.Email.value.indexOf("@") == -1){
		alert("Please enter a valid e-mail address.");
		frm.Email.focus();
		return false;
	}
}

function showTextBox(Option) {
	if ((Option.value == "Attended event/exhibition")||(Option.value == "Saw advertisement in print media")||(Option.value == "Saw online advertisement")||(Option.value == "Read an article about Crown")||(Option.value == "Read a Crown publication")||(Option.value == "Yellow pages/business directory in print media")||(Option.value == "Yellow pages/business directory online")||(Option.value == "Other")){
		document.getElementById("Other").style.display = "block";
	}
	else {
		document.getElementById("Other").style.display = "none";
	}
}

function chkEmail(inputstr){
	var x=0;
	invalidChars = " ;,:[]()<>";
	invalidChars2 = " ;,:[]()<>!#$%&'*+/=?^_`{|}~\"\\";
	if (inputstr.value == "")	
		x=1;
	for (i=0; i< invalidChars.length; i++)
	{
		badChar = invalidChars.charAt(i)
		if (inputstr.value.indexOf(badChar,0) > -1)
			x=1;
	}
	atPos = inputstr.value.indexOf("@",1)
	// there must be one "@" symbol
	if (atPos == -1)
		x=1;
	
	if (inputstr.value.indexOf("@", atPos+1) != -1)
	// and only one "@" symbol
		x=1;

	//alphanumeric characters only, after "@" sign
	for (i=0; i< invalidChars2.length; i++)
	{
		badChar = invalidChars2.charAt(i)
		if (inputstr.value.indexOf(badChar,atPos) > -1)
			x=1;
	}
	
	periodPos = inputstr.value.indexOf(".",atPos)
	if(periodPos == -1)
	// and at least one "." after the "@"
		x=1;

	if ( atPos +2 > periodPos)
	// and at least one character between "@" and "."
		x=1;

	if ( periodPos +3 > inputstr.value.length)
		x=1;

	if (x==1){
		alert("Please enter a valid e-mail address.");
		inputstr.focus();
		return false;
	}
}

function compareEmail(Email1, Email2){
	if (Email1.value != Email2.value){
		alert("Your e-mail addresses did not match. Please re-enter values.");
		Email1.focus();
		return false;
	}
}

function getRequired(frm){
	var msg = 'Please complete required fields before submitting.';
	if (frm.TransFirstName.value.length == 0)
		msg = msg + '\n- First Name';
	if (frm.TransLastName.value.length == 0)
		msg = msg + '\n- Last Name';
	if (frm.temp.value == 1)
		if (frm.CompanyName.value.length == 0)
			msg = msg + '\n- Company Name';
	if (((frm.TransWPhone_Country.value.length == 0)||(frm.TransWPhone_Number.value.length == 0))&&((frm.TransHPhone_Country.value.length == 0)||(frm.TransHPhone_Number.value.length == 0))&&((frm.TransMPhone_Country.value.length == 0)||(frm.TransMPhone_Number.value.length == 0)))
		msg = msg + '\n- Day Telephone (Country Code, Phone Number)';
	if (frm.TransEmail.value.length == 0)
		msg = msg + '\n- E-mail';
	if (frm.TransEmail2.value.length == 0)
		if (frm.TransEmail.value.length == 0)
			msg = msg + '/E-mail Confirmation';
		else		
			msg = msg + '\n- E-mail Confirmation';
	if (frm.LearnFrom.value.length == 0)
		msg = msg + '\n- How did you hear about Crown?';
	if ((frm.TransCity.value.length == 0)||(frm.TransCountry.value.length == 0))
		msg = msg + '\n- Moving From (City, State for North America/Australia, Country)';
	if (frm.temp.value == 0)
		if ((frm.DestCity.value.length == 0)||(frm.DestCountry.value.length == 0))
			msg = msg + '\n- Moving To (City, State for North America/Australia, Country)';
	if (frm.temp.value == 0)
		if (frm.MovingDate.value.length == 0)
			msg = msg + '\n- Approximate Moving Date';
	if ((frm.temp_country.value == 'japan')&&(frm.temp.value == 0)){
		if ((frm.Agree[0].checked == false)&&(frm.Agree[1].checked == false)&&(frm.Agree[2].checked == false))
			msg = msg + '\n- Privacy Policy Agreement';
	}
	else if ((frm.temp_country.value == 'japan')&&(frm.temp.value == 1)){
		if (frm.Agree.checked == false)
			msg = msg + '\n- Privacy Policy Agreement';
	}
	alert(msg);
}

function getState(country,state){
	var State_Array = new Array ("");
	var US_State_Array = new Array ("Alaska", "Alabama", "Arkansas", "Arizona", "California", "Colorado", "Connecticut", "District of Columbia", "Delaware", "Florida", "Georgia", "Hawaii", "Iowa", "Idaho", "Illinois", "Indiana", "Kansas", "Kentucky", "Louisiana", "Massachusetts", "Maryland", "Maine", "Michigan", "Minnesota", "Missouri", "Mississippi", "Montana", "North Carolina", "North Dakota", "Nebraska", "New Hampshire", "New Jersey", "New Mexico", "Nevada", "New York", "Ohio", "Oklahoma", "Oregon", "Pennsylvania", "Rhode Island", "South Carolina", "South Dakota", "Tennessee", "Texas", "Utah", "Virginia", "Vermont", "Washington", "Wisconsin", "West Virginia", "Wyoming");
	var AU_State_Array = new Array ("Australian Capital Territory", "New South Wales", "Northern Territory", "Queensland", "South Australia", "Tasmania", "Victoria", "Western Australia");
	var CA_State_Array = new Array ("Alberta", "British Columbia", "Manitoba", "New Brunswick", "Newfoundland", "Nova Scotia", "Northwest Territories", "Ontario", "Prince Edward Island", "Quebec", "Saskatchewan", "Yukon");
	if (country=='United States'){
 		updateStateOptions(state, US_State_Array);
		state.disabled=false;
	}
	else if (country=='Australia'){
 		updateStateOptions(state, AU_State_Array);
		state.disabled=false;
	}
	else if (country=='Canada'){
 		updateStateOptions(state, CA_State_Array);
		state.disabled=false;
	}
	else{
 		updateStateOptions(state, State_Array);
		state.disabled=true;
	}
}

function updateStateOptions(optionsState, arrayState){
	if (optionsState.options.length > arrayState.length){
		for (var i = optionsState.options.length - 1; i > arrayState.length -1; i--)
			optionsState.options[i] = null;		
		for (var i = 0; i < arrayState.length; i++)
			optionsState.options[i].text = arrayState[i];
	}	
	else{
		for (var i = 0; i < optionsState.options.length; i++){
			optionsState.options[i].text = arrayState[i];
			optionsState.options[i].value = arrayState[i];
		}
		for (var i = optionsState.options.length; i < arrayState.length; i++)
			optionsState.options[i] = new Option(arrayState[i]);
	}
}

function getPhone(Country1, Country2, Country3, Phone1, Phone2, Phone3){
	if ((Country1.value.length == 0)&&(Country2.value.length == 0)&&(Country3.value.length == 0)&&(Phone1.value.length == 0)&&(Phone2.value.length == 0)&&(Phone3.value.length == 0))
		Country1.focus();
	else if ((((Country1.value.length == 0)&&(Phone1.value.length != 0))||((Country1.value.length != 0)&&(Phone1.value.length == 0)))&&((((Country2.value.length == 0)&&(Phone2.value.length != 0))||((Country2.value.length != 0)&&(Phone2.value.length == 0))||((Country2.value.length == 0)&&(Phone2.value.length == 0)))&&(((Country3.value.length == 0)&&(Phone3.value.length != 0))||((Country3.value.length != 0)&&(Phone3.value.length == 0))||((Country3.value.length == 0)&&(Phone3.value.length == 0))))){
		if (Country1.value.length == 0)
			Country1.focus();
		else
			Phone1.focus();
	}
	else if ((((Country2.value.length == 0)&&(Phone2.value.length != 0))||((Country2.value.length != 0)&&(Phone2.value.length == 0)))&&(((Country1.value.length == 0)||(Phone1.value.length == 0))&&(((Country3.value.length == 0)&&(Phone3.value.length != 0))||((Country3.value.length != 0)&&(Phone3.value.length == 0))||((Country3.value.length == 0)&&(Phone3.value.length == 0))))){
		if (Country2.value.length == 0)
			Country2.focus();
		else
			Phone2.focus();
	}
	else if ((((Country3.value.length == 0)&&(Phone3.value.length != 0))||((Country3.value.length != 0)&&(Phone3.value.length == 0)))&&(Country1.value.length == 0)&&(Phone1.value.length == 0)&&(Country2.value.length == 0)&&(Phone2.value.length == 0)){
		if (Country3.value.length == 0)
			Country3.focus();
		else
			Phone3.focus();
	}
	return false;
}

function chkPhone(Phone){
	if ((isNaN(Phone.value))&&(Phone.value.length > 0)){
		alert("Please enter numeric phone values only. No spaces allowed.");
		Phone.focus();
		return false;
	}
}

function chkName(Name){
	if ((/\d/.test(Name.value))){
		alert("Please check that your name does not contain numbers.");
		Name.focus();
		return false;
	}
}

function chkRegistration(frm){
	if ((frm.ContactName.value.length == 0)||(frm.CompanyName.value.length == 0)||(frm.City.value.length == 0)||(frm.Email.value.length == 0)){
		alert("Name, Company, City and E-mail are required fields.\nPlease complete before submitting.");
		return false;
	}
	else {
		if (frm.Email.value.indexOf("@") == -1){
			alert("Please enter a valid e-mail address.");
			frm.Email.focus();
			return false;
		}
	}
}