
/** Forms **/

	
// Year Calc
var thisYear = getTrueYear();
var secYear = (thisYear + 1);
var thirdYear = (thisYear + 2);



function validate()
	{
		
        var data = document.enqForm;
        var txtReturn = "";
        
        var MainInfoFlag = true;
		var PeriodFlag1 = true;
		var PeriodFlag2 = true;
		var EmailCheckFlag = true;
		

		
			if (data.Divers.value == "")
		{
			txtReturn = txtReturn + "\t - Please enter the Number of Divers. \n";  
		}
		
         if (data.NonDivers.value == "")
		{
			txtReturn = txtReturn + "\t - Please enter the Number of Non-Diving Partners. \n";  
		}
		
		 //Accommodation
			           
			if (data.Accomm.value == "")
		{
			txtReturn = txtReturn + "\t - Please enter if Accommodation is Required. \n";  
		}
		
            
         //Period of stay                  
              
                 
        if (data.Day1.value == "unselected" || data.Month1.value == "unselected" || data.Year1.value == "unselected")
		{
			txtReturn = txtReturn + "\t - Please complete your Arrival date. \n";  
            PeriodFlag1 = false;  
		}  
        if (data.Day2.value == "unselected" || data.Month2.value == "unselected" || data.Year2.value == "unselected")
		{
			txtReturn = txtReturn + "\t - Please complete your Departure date. \n";  
            PeriodFlag2 = false;  
		}  
		
		if (PeriodFlag1 == true && PeriodFlag2 == true)
		{
			
            Day1 = data.Day1.value
            Month1 = data.Month1.value
            Year1 = data.Year1.value
            myString1 = Day1 + " " + Month1 + " " + Year1;
            
            Day2 = data.Day2.value
            Month2 = data.Month2.value
            Year2 = data.Year2.value
            myString2 = Day2 + " " + Month2 + " " + Year2;
            
            Date1 = new Date(myString1);
            Date2 = new Date(myString2);
            
            DatePastFlag = true;
            diffYear = Date2.getFullYear() - Date1.getFullYear();
            diffMonth = Date2.getMonth() - Date1.getMonth();
            diffDay = Date2.getDate() - Date1.getDate();
            if (diffYear < 0)
            {
            DatePastFlag = false;
            }
            else if (diffYear == 0 && diffMonth < 0)
            {
            DatePastFlag = false;
            }
            else if (diffYear >= 0 && diffMonth == 0 && diffDay < 0)
            {
            DatePastFlag = false;
            }
            if (DatePastFlag == false)
            {txtReturn = txtReturn + "\t - Your Departure Date is before your Arrival Date, please correct. \n"; }
            }
  
        
				
        if (data.PackReq.value == "")
		{
			txtReturn = txtReturn + "\t - Please enter what you would like to see. \n";  
		}		
		

					
        if (data.Name.value == "")
		{
			txtReturn = txtReturn + "\t - Please enter your Full Name. \n";  
		}
		
                       
        // Contact details start  
    

        	if (data.Email.value == "")
		{
			txtReturn = txtReturn + "\t - Please enter your Email Address. \n";  
		} 


    
	if( (data.Email.value != "") )
	{
	if(data.Email.value.indexOf ("@", 0) == -1 || data.Email.value.indexOf ("." , 0) == -1)
	{
        txtReturn = txtReturn + "\t - Please enter a valid Email Address. \n";
        EmailCheckFlag = false;
	}
    }

              
        if (data.Tel.value == "")
		{
			txtReturn = txtReturn + "\t - Please enter your Telephone or Mobile Phone Number. \n";  
		    MainInfoFlag = false;
        }   
		
        
        //Contact Details end   
              
        
        
        //Focus or Submission
		
		if (txtReturn == "")
		{
			data.submit();
		}
		else
        {
        alert ("The information could not be submitted: \r\n\n" + txtReturn);
			
        if (data.Divers.value == "" || data.Divers.value == " ")
		{
			data.Divers.focus(); 
            data.Divers.select();
			return;
		}
        else if (data.NonDivers.value == "" || data.NonDivers.value == " ")
		{
			data.NonDivers.focus(); 
            data.NonDivers.select();
			return;
		}        
        else if (data.Accomm.value == "" && MainInfoFlag == false)
		{
			data.Accomm.focus(); 
            data.Accomm.select();
			return;
		}
		else if (PeriodFlag1 == false)
		{
			data.Day1.focus(); 
            return;
		}
		else if (PeriodFlag2 == false)
		{
			data.Day2.focus(); 
            return;
		}
		else if (data.PackReq.value == "" || data.PackReq.value == " ")
		{
			data.DietReq.focus(); 
            data.DietReq.select();
			return;
		}		
		else if (data.Name.value == "" || data.Name.value == " ")
		{
			data.Name.focus(); 
            data.Name.select();
			return;
		}
       else if (data.Email.value == "" || EmailCheckFlag == false)
		{
			data.Email.focus(); 
            data.Email.select(); 
            return;
		}

        else if (data.Tel.value == "" || data.Tel.value == " ")
		{
			data.Tel.focus(); 
            data.Tel.select(); 
            return;
		}	

    
        
        
}
		}
    




