function validatecontactform()
{
	// define vars
	// remember to change form name after 'document'
	var valid = true; 
	var errMsg = 'The following items need your attention:\n\n';
	var nameFull = document.contactus.FULL_NAME.value;
	var dayPhone = document.contactus.DAY_PHONE.value;
	var evePhone = document.contactus.EVENING_PHONE.value;
	var Temp     = document.contactus.EMAIL
	
	var AtSym    = Temp.value.indexOf('@')
	var Period   = Temp.value.lastIndexOf('.')
	var Space    = Temp.value.indexOf(' ')
	var Length   = Temp.value.length - 1   // Array is from 0 to length-1
	
	//check values
	
	if (nameFull == "")
		{
			valid = false;
			errMsg += 'Please provide your full name.\n';
		}

	if ((AtSym < 1) ||                     // '@' cannot be in first position
		(Period <= AtSym+1) ||             // Must be atleast one valid char btwn '@' and '.'
		(Period == Length ) ||             // Must be atleast one valid char after '.'
		(Space  != -1))                    // No empty spaces permitted
		{  
			valid = false;
			errMsg += 'Please enter a valid e-mail address.\n';
		}
	
	if (dayPhone == "")
		{
			valid = false;
			errMsg += 'Please provide your day phone number with area code.\n';
		}
	
	if (evePhone == "")
		{
			valid = false;
			errMsg += 'Please provide your evening phone number with area code.\n';
		}

	// errors?, show them to user and stop processing form		
	if(!valid) 
		alert(errMsg); 
	return valid;
}




function validatequoteform()
{
	// define vars
	// remember to change form name after 'document'
	var valid = true; 
	var errMsg = 'The following items need your attention:\n\n';
	var nameFull = document.requestaquote.LASTNAME.value;
	var Dest     = document.requestaquote.DESTINATION.value;
	var Depart   = document.requestaquote.DEPARTURE_DATE.value;
	var Temp     = document.requestaquote.EMAIL
    var strEmail = document.requestaquote.EMAIL.value;
	
	var AtSym    = Temp.value.indexOf('@')
	var Period   = Temp.value.lastIndexOf('.')
	var Space    = Temp.value.indexOf(' ')
	var Length   = Temp.value.length - 1   // Array is from 0 to length-1
	
    if(strEmail == "sample@email.tst"){
            valid = false;
            errMsg += 'Invalid email address!.\n';                
    } 
        
	//check values
	
	if (nameFull == "")
		{
			valid = false;
			errMsg += 'Please provide your last name.\n';
		}

	if ((AtSym < 1) ||                     // '@' cannot be in first position
		(Period <= AtSym+1) ||             // Must be atleast one valid char btwn '@' and '.'
		(Period == Length ) ||             // Must be atleast one valid char after '.'
		(Space  != -1))                    // No empty spaces permitted
		{  
			valid = false;
			errMsg += 'Please enter a valid e-mail address.\n';
		}
	
	if (Dest == "")
		{
			valid = false;
			errMsg += 'Please choose a destination.\n';
		}
	
	if (Depart == "")
		{
			valid = false;
			errMsg += 'Please provide travel dates.\n';
		}

	// errors?, show them to user and stop processing form		
	if(!valid) 
		alert(errMsg); 
	return valid;
}



function validateCruiseTourQuoteform()
{
	// define vars
	// remember to change form name after 'document'
	var valid = true; 
	var errMsg = 'The following items need your attention:\n\n';
	var nameFull = document.requestaquote.LASTNAME.value;
	var Dest     = document.requestaquote.DESTINATION.value;
	var Depart   = document.requestaquote.DEPARTURE_DATE.value;
	var Temp     = document.requestaquote.EMAIL
	var StateRoom = document.requestaquote.STATEROOM;
	var NumAdults = document.requestaquote.NUM_ADULTS;
	var NumSeniors = document.requestaquote.NUM_SENIORS;
	var NumKids = document.requestaquote.NUM_KIDS;
	
	
	var AtSym    = Temp.value.indexOf('@')
	var Period   = Temp.value.lastIndexOf('.')
	var Space    = Temp.value.indexOf(' ')
	var Length   = Temp.value.length - 1   // Array is from 0 to length-1
	
	var cnt = -1;
	
	 
	
	
	//check values
	
	if (nameFull == "")
		{
			valid = false;
			errMsg += 'Please provide your last name.\n';
		}

	if ((AtSym < 1) ||                     // '@' cannot be in first position
		(Period <= AtSym+1) ||             // Must be atleast one valid char btwn '@' and '.'
		(Period == Length ) ||             // Must be atleast one valid char after '.'
		(Space  != -1))                    // No empty spaces permitted
		{  
			valid = false;
			errMsg += 'Please enter a valid e-mail address.\n';
		}
	
	if (Dest == "")
		{
			valid = false;
			errMsg += 'Please choose a destination.\n';
		}
	
	if (Depart == "")
		{
			valid = false;
			errMsg += 'Please provide travel dates.\n';
		}




if ((NumAdults.selectedIndex + NumSeniors.selectedIndex + NumKids.selectedIndex) == 0)
		{
			valid = false;
			errMsg += 'Please provide number of guests.\n';
		}



 for (var iii=StateRoom.length-1; iii > -1; iii--) {
        if (StateRoom[iii].checked) {cnt = iii; iii = -1;
        	}
      }  	
	
	 if (cnt == -1) {
	 		valid = false;
			errMsg += 'Please select a room type.\n';
	 	}

	// errors?, show them to user and stop processing form		
	if(!valid) 
		alert(errMsg); 
	return valid;
}



function validategroupform()
{
	// define vars
	// remember to change form name after 'document'
	var valid = true; 
	var errMsg = 'The following items need your attention:\n\n';
	var nameFull = document.requestaquote.LASTNAME.value;
	var phoneDay = document.requestaquote.DAY_PHONE.value;
	var phoneEve = document.requestaquote.EVENING_PHONE.value;
	var State    = document.requestaquote.STATE.value;
	var grpName  = document.requestaquote.GROUP_NAME.value;
	var grpType  = document.requestaquote.GROUP_TYPE.value;
	var grpPast  = document.requestaquote.GROUP_PAST.value;
	var Dest     = document.requestaquote.DESTINATION.value;
	var Depart   = document.requestaquote.DEPARTURE_DATE.value;
	var Temp     = document.requestaquote.EMAIL
	
	var AtSym    = Temp.value.indexOf('@')
	var Period   = Temp.value.lastIndexOf('.')
	var Space    = Temp.value.indexOf(' ')
	var Length   = Temp.value.length - 1   // Array is from 0 to length-1
	
	//check values
	
	if (nameFull == "")
		{
			valid = false;
			errMsg += 'Please provide your last name.\n';
		}

	if ((AtSym < 1) ||                     // '@' cannot be in first position
		(Period <= AtSym+1) ||             // Must be atleast one valid char btwn '@' and '.'
		(Period == Length ) ||             // Must be atleast one valid char after '.'
		(Space  != -1))                    // No empty spaces permitted
		{  
			valid = false;
			errMsg += 'Please enter a valid e-mail address.\n';
		}
		
	if (phoneDay == "")
		{
			valid = false;
			errMsg += 'Please provide a daytime phone number.\n';
		}
		
	if (phoneEve == "")
		{
			valid = false;
			errMsg += 'Please provide an evening phone number.\n';
		}
	
	/*if (State == "")
		{
			valid = false;
			errMsg += 'Please provide your state of residence.\n';
		}*/
	
	if (grpName == "")
		{
			valid = false;
			errMsg += 'Please provide a name for your group.\n';
		}
	
	if (grpType == "")
		{
			valid = false;
			errMsg += 'Please choose what type of group yours is.\n';
		}
	
	if (grpPast == "")
		{
			valid = false;
			errMsg += 'Please enter any previous group cruises.\n';
		}
	
	if (Dest == "")
		{
			valid = false;
			errMsg += 'Please choose a destination.\n';
		}
	
	if (Depart == "")
		{
			valid = false;
			errMsg += 'Please provide travel dates.\n';
		}

	// errors?, show them to user and stop processing form		
	if(!valid) 
		alert(errMsg); 
	return valid;
}




function validateemailform()
{
	// define vars
	var valid = true; 
	var errMsg = 'Please complete the following fields:\n\n';
	var friendName = document.referafriend.FriendsName.value;
	var friendEmail = document.referafriend.FriendsEmail.value;
	var yourName = document.referafriend.YourName.value;
	var yourEmail = document.referafriend.YourEmail.value;
	
	var Temp     = document.referafriend.FriendsEmail
	
	var AtSym    = Temp.value.indexOf('@')
	var Period   = Temp.value.lastIndexOf('.')
	var Space    = Temp.value.indexOf(' ')
	var Length   = Temp.value.length - 1   // Array is from 0 to length-1
	
	var Temp2     = document.referafriend.YourEmail
	
	var AtSym2    = Temp2.value.indexOf('@')
	var Period2   = Temp2.value.lastIndexOf('.')
	var Space2    = Temp2.value.indexOf(' ')
	var Length2   = Temp2.value.length - 1   // Array is from 0 to length-1
	
	//check values
	if (yourName == "")
		{
			valid = false;
			errMsg += 'Your Name\n';
		}

	if ((AtSym2 < 1) ||                     // '@' cannot be in first position
		(Period2 <= AtSym2+1) ||            // Must be atleast one valid char btwn '@' and '.'
		(Period2 == Length2 ) ||            // Must be atleast one valid char after '.'
		(Space2  != -1))                    // No empty spaces permitted
		{  
			valid = false;
			errMsg += 'Please enter a valid e-mail address for yourself.\n';
		}
	
	if (friendName == "")
		{
			valid = false;
			errMsg += 'Name of your Friend\n';
		}

	if ((AtSym < 1) ||                     // '@' cannot be in first position
		(Period <= AtSym+1) ||             // Must be atleast one valid char btwn '@' and '.'
		(Period == Length ) ||             // Must be atleast one valid char after '.'
		(Space  != -1))                    // No empty spaces permitted
		{  
			valid = false;
			errMsg += 'Please enter a valid e-mail address for your friend.\n';
		}
	
	// errors?, show them to user and stop processing form		
	if(!valid) 
		alert(errMsg); 
	return valid;
}


function validatenewsletter()
{
	// define vars
	// remember to change form name after 'document'
	var valid = true; 
	var errMsg = 'The following items need your attention:\n\n';
	var Temp     = document.newsletter.EMAIL
	
	var AtSym    = Temp.value.indexOf('@')
	var Period   = Temp.value.lastIndexOf('.')
	var Space    = Temp.value.indexOf(' ')
	var Length   = Temp.value.length - 1   // Array is from 0 to length-1
	
	//check values

	if ((AtSym < 1) ||                     // '@' cannot be in first position
		(Period <= AtSym+1) ||             // Must be atleast one valid char btwn '@' and '.'
		(Period == Length ) ||             // Must be atleast one valid char after '.'
		(Space  != -1))                    // No empty spaces permitted
		{  
			valid = false;
			errMsg += 'Please enter a valid e-mail address.\n';
		}

	// errors?, show them to user and stop processing form		
	if(!valid) 
		alert(errMsg); 
	return valid;
}





// FOR DESTINATION OCEANS
function emailCheck (emailStr) {
var emailPat=/^(.+)@(.+)$/;
var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]";
var validChars="\[^\\s" + specialChars + "\]";
var quotedUser="(\"[^\"]*\")";
var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
var atom=validChars + '+';
var word="(" + atom + "|" + quotedUser + ")";
var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
var matchArray=emailStr.match(emailPat);
if (matchArray==null) {
	alert("Email address seems incorrect (check @ and .'s)");
	return false;
}
var user=matchArray[1];
var domain=matchArray[2];
if (user.match(userPat)==null) {
    alert("The username doesn't seem to be valid.");
    return false;
}
var IPArray=domain.match(ipDomainPat);
if (IPArray!=null) {
	  for (var i=1;i<=4;i++) {
	    if (IPArray[i]>255) {
	        alert("Destination IP address is invalid!");
		return false;
	    }
    }
    return true;
}
var domainArray=domain.match(domainPat);
if (domainArray==null) {
	alert("The domain name doesn't seem to be valid.");
    return false;
}
var atomPat=new RegExp(atom,"g");
var domArr=domain.match(atomPat);
var len=domArr.length;
if ((domArr[domArr.length-1] != "info") &&
	(domArr[domArr.length-1] != "name") &&
	(domArr[domArr.length-1] != "arpa") &&
	(domArr[domArr.length-1] != "coop")) {
		if (domArr[domArr.length-1].length<2 || 
	    	domArr[domArr.length-1].length>3) {
		   		alert("The address must end in a three-letter domain, or two letter country.");
		   		return false;
		}
}
if (len<2) {
   var errStr="This address is missing a hostname!";
   alert(errStr);
   return false;
}
return true;
}
function UPTvalidateform(thisform)
{
	if (thisform.val_31647.value==""){	
alert("Please enter a value for Full Name");
return(true);}if (thisform.val_6.selectedIndex==0) { 
alert("Please select a value for State/Province");
 return(true);}
	if (emailCheck(thisform.email.value))
	{	
		
		return false;
	}
	else
	{
		return true;
	}
}





