/*
This function checks the Make a Booking form on /bookingsandrewards/make_a_booking page.
*/
function validate_bookingform(form)
{
	var warning = "";
	var isValid = true;
	if("" == form.Ship.options[form.Ship.selectedIndex].value)
	{
		isValid = false;
		warning += "* Please select a ship.\n"; 
	}
	if("Orion" == form.Ship.options[form.Ship.selectedIndex].value)
	{
		if("" == form.RoomCategory1.options[form.RoomCategory1.selectedIndex].value)
		{
			isValid = false;
			warning += "* Please select your preferred accommodation on the ship.\n";
		}
	}
	if("Orion II" == form.Ship.options[form.Ship.selectedIndex].value)
	{
		if("" == form.RoomCategory2.options[form.RoomCategory2.selectedIndex].value)
		{
			isValid = false;
			warning += "* Please select your preferred accommodation on the ship.\n";
		}
	}
	if(!validate_email(form.Email.value))
	{
		isValid = false;
		warning += "* Please enter a valid email address.\n";
	}
	
	if(!isValid)
	{
		alert(warning);
	}

	return isValid;
}


function validate_email(address) 
{
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   if(reg.test(address) == false) 
   {
      return false;
   }
   return true;s
}

//
// This function checks if an email address if valid and returns true if it is
//


function validateEmail(email_address)
{
	email_address = email_address.value;

	var email_error = 'no';

	var at="@"
	var dot="."
	var lat=email_address.indexOf(at)
	var lemail_address=email_address.length
	var ldot=email_address.indexOf(dot)

	if (email_address.indexOf(at)==-1){
		email_error = 'yes';
		return false;
	}
	else if (email_address.indexOf(at)==-1 || email_address.indexOf(at)==0 || email_address.indexOf(at)==lemail_address){
		email_error = 'yes';
		return false;
	}
	else if (email_address.indexOf(dot)==-1 || email_address.indexOf(dot)==0 || email_address.indexOf(dot)==lemail_address){
		email_error = 'yes';
		return false;
	}
	else if (email_address.indexOf(at,(lat+1))!=-1){
		email_error = 'yes';
		return false;
	}
	else if (email_address.substring(lat-1,lat)==dot || email_address.substring(lat+1,lat+2)==dot){
		email_error = 'yes';
		return false;
	}
	else if (email_address.indexOf(dot,(lat+2))==-1){
		email_error = 'yes';
		return false;
	}
	else if (email_address.indexOf(" ")!=-1){
		email_error = 'yes';
		return false;
	}
	else {
		// email must be ok
		return true;
	}
}
