// JavaScript Document

function validateForm(form)

{
String.prototype.trim = function() 
	{
		return this.replace(/^\s+|\s+$/g,"");
	}
	if(form.fname.value=="")
	{

		alert("Please Enter The First Name ");

		form.fname.value = "";

		form.fname.focus();

		return false;

	}

	if(!isNaN(form.fname.value))

	{

		alert('Please Enter Valid First Name');

		form.fname.value = "";

		form.fname.focus();

		return false;

	}

	if(form.lname.value=="")

	{

		alert("Please Enter The Last Name ");  

		form.lname.value = "";

		form.lname.focus();

		return false;

	}

	if(!isNaN(form.lname.value))

	{

		alert('Please Enter Valid Last Name');

		form.lname.value = "";

		form.lname.focus();

		return false;

	}

	if(checkGender1()==true)

	{

		alert("Please Select A Gender");

		return false;

	}

	

    if(form.dob.value=="")

	{

	    alert("Please Enter Date Of Birth");

		form.dob.value = "";

		form.dob.focus();

		return false;

	}

	if(!dobcheck(form.dob.value,form))

	{

		return false;

	}	

	if(form.nationality.value !="")

	{

		if(!isNaN(form.nationality.value))

		{

			alert('Please Enter Valid nationality');

			form.nationality.value = "";

			form.nationality.focus();

			return false;

		}	

	}

	if(checkStatus1()==true)

	{

		alert("Please Select A Marital Status");

		return false;

	}	

	if(form.phone.value.trim() =="")

	{

		alert("Please Enter Telephone Number ");

		form.phone.value='';

		form.phone.focus();

		return false;

	}

	if(isNaN(form.phone.value))

	{

		alert("Please Enter Numeric Telephone Number ");

		form.phone.value='';

		form.phone.focus();

		return false;

	}

	if(form.mobile.value.trim() =="")

	{

		alert("Please Enter Mobile Number ");

		form.mobile.value='';

		form.mobile.focus();

		return false;

	}

	if(isNaN(form.mobile.value))

	{

		alert("Please Enter Numeric Mobile Number ");

		form.mobile.value='';

		form.mobile.focus();

		return false;

	}		



	if(form.email.value.trim()=="")

	{

		alert("Please Enter Email ID ");

		form.email.value = "";

		form.email.focus();

		return false;

	}



	if(!emailCheck(form.email.value.trim()))

	{

		alert("Please Check Email Address");

		form.email.value ='';

		form.email.focus();

		return false;

	}



	if(form.address.value=="")

	{

		alert("Please Enter The Address ");  

		form.address.focus();

		return false;

	}

	if(form.doctor.value=="")

	{

		alert("Please Select The Doctor ");

		form.doctor.value = "";

		form.doctor.focus();

		return false;

	}
if(form.date1.value!='' && form.date2.value!='')
		{
			text1=	document.getElementById('date1').value;	
			text2= document.getElementById('date2').value;
			text01 = text1.split("-");
			text02 = text2.split("-");
		if(text02[2] == text01[2] && text02[1] == text01[1] && text02[0] == text01[0]) 
			{
				alert("The Preferred Dates should not be same.");
				form.date1.value='';
				form.date1.focus();
				return false;
			}
		else
			{
			    if(text02[2] < text01[2]) 
				{
					alert("The Preferred Date 2 should not less than Preferred Date 1.");
					form.date2.value='';
					form.date2.focus();
					return false;
				}
				else 
				 {
					if(text02[2] == text01[2] && text02[1] < text01[1])
					{
					alert("The Preferred Date 2 should not less than Preferred Date 1.");
					form.date2.value='';
					form.date2.focus();
					return false;
					}
					else
			  		{
					 	if(text02[2] == text01[2] && text02[1] == text01[1] && text02[0] < text01[0])
						{
						   alert("The Preferred Date 2 should not less than Preferred Date 1.");
						   form.date2.value='';
						   form.date2.focus();
						   return false; 
						}	
					}
				}		
			}
		}
	


    if(form.date1.value=="")

	{

	    alert("Please Enter Preferred Date 1");

		form.date1.value = "";

		form.date1.focus();

		return false;

	}
	if(!date1check(form.date1.value,form))

	{

		return false;

	}

	else

	{

		var PrefferedDate1;

		PrefferedDate1= document.getElementById('date1').value;

		temp = PrefferedDate1.split('-');

		var Pref1=new Date();

		Pref1.setDate(temp[0]);

		Pref1.setMonth(temp[1]-1);

		Pref1.setFullYear(temp[2]); 

		if( Pref1.getDay() == '4' || Pref1.getDay() == '5')

		{

			alert("Please Select Preferred Date 1 Other Than Thursday and Friday");

			form.date1.value = "";

			form.date1.focus();

			return false;

		}
	}

	if(form.date2.value=="")

	{

	   alert("Please Enter Preferred Date 2");

				form.date2.value = "";

				form.date2.focus();

				return false;

	}

	if(!date2check(form.date2.value,form))

	{	

	return false;

	}

	else

	{

		var PrefferedDate2;

		 PrefferedDate2= document.getElementById('date2').value;

    	 temp = PrefferedDate2.split('-');

		 var Pref2=new Date();

   	  	Pref2.setDate(temp[0]);

	Pref2.setMonth(temp[1]-1);

	Pref2.setFullYear(temp[2]); 

    if( Pref2.getDay() == '4' || Pref2.getDay() == '5')

	{

	alert("Please Select Preferred Date 2 Other Than Thursday and Friday");

	form.date2.value='';

	form.date2.focus();

	return false;

	}
}



    if(form.time1.value=="")

	{

	    alert("Please Enter Preferred Time 1");

	

		form.time1.focus();

		return false;

	}

    if(form.time2.value=="")

	{

	    alert("Please Enter Preferred Time 2");

	

		form.time2.focus();

		return false;

	}

	if(form.insurance.value=="")

	{

	alert("Please select Insurance field");

	form.insurance.focus();

	return false;

	}

	if(form.insurance.value=="1")

	{

		if(form.insurancename.value=="")

		{

		    alert("Please Enter Insurance Name");

			form.insurancename.focus();

			return false;

		}			

	}

	

/*	if(true)

	{

		showdetails(form);

		return false;

	}

*/

}





function checkGender1() 

{

	var b;

	b = document.form1;

	for (var c=0,d=0,e; e=b[d]; d++)

	{

		if (e.type=='radio' && e.name.match(/^gender\[\]$/) && e.checked) {  c++; }

	}

	if (c==0)

	{ 

		return true; 

	}

	

	return false;

}



function checkGender()

{

	var i;

	var counter=0;



	for(var i=0; i < document.form1.gender.length; i++)

	{

		if(document.form1.gender[i].checked==true)

		{

			counter++;

		}

	}

	if(counter==0)

	{

		return true;

	}

	return false;

}



function checkStatus1() 

{

	var b;

	b = document.form1;

	for (var c=0,d=0,e; e=b[d]; d++)

	{

		if (e.type=='radio' && e.name.match(/^status\[\]$/) && e.checked) {  c++; }

	}

	if (c==0)

	{ 

		return true; 

	}

	

	return false;

}



function checkStatus()

{

	var i;

	var counter=0;



	for(var i=0; i < document.form1.status.length; i++)

	{

		if(document.form1.status[i].checked==true)

		{

			counter++;

		}

	}

	if(counter==0)

	{

		return true;

	}

	return false;

}



function dobcheck(theinput,form)

{

	var currentTime = new Date()

	var text01 = Array();

	text01[0] = currentTime.getDate();

	text01[1] = (currentTime.getMonth()+1);

	text01[2] = currentTime.getFullYear();

	text02 = theinput.split("-");

	

	if(theinput!='')

	{

		if(text02[2] == text01[2] && text02[1] == text01[1] && text02[0] == text01[0]) 

		{

		alert("The Date of Birth should not allow selection of Current date.");

		form.dob.value='';

		form.dob.focus();

		return false;

		}

		else

		{

		    if(text02[2] > text01[2]) 

			{

			alert("The Date of Birth should not allow selection of future Year.");

			form.dob.value='';

			form.dob.focus();

			return false;

			}

			else 

				{

					if(text02[2] == text01[2] && text02[1] > text01[1])

					{

					alert("The Date of Birth should not allow selection of future Month.");

					form.dob.value='';

					form.dob.focus();

					return false;

					}

					else

					{

					 if(text02[2] == text01[2] && text02[1] == text01[1] && text02[0] >= text01[0])

						{

						   alert("The Date of Birth should not allow selection of future date.");

						   form.dob.value='';

						   form.dob.focus();

						   return false; 

						}	

					}

				}		

		}

}

	return true;	

}



function date1check(theinput,form)

{

	var currentTime = new Date()

	var text01 = Array();

	text01[0] = currentTime.getDate();

	text01[1] = (currentTime.getMonth()+1);

	text01[2] = currentTime.getFullYear();

	text02 = theinput.split("-");

	if(theinput!='')

	{

		if(text02[2] == text01[2] && text02[1] == text01[1] && text02[0] == text01[0]) 

		{

		alert("The Preferred Date should not allow selection of Current date.");

		form.date1.value='';

		form.date1.focus();

		return false;

		}

		else

		{

		    if(text02[2] < text01[2]) 

			{

			alert("The Preferred Date should not allow selection of Past Year.");

			form.date1.value='';

			form.date1.focus();

			return false;

			}

			else 

			 {

				if(text02[2] == text01[2] && text02[1] < text01[1])

				{

				alert("The Preferred Date should not allow selection of Past Month.");

				form.date1.value='';

				form.date1.focus();

				return false;

				}

				else

			  	{

				 if(text02[2] == text01[2] && text02[1] == text01[1] && text02[0] <= text01[0])

					{

					   alert("The Preferred Date should not allow selection of Past date.");

					   form.date1.value='';

					   form.date1.focus();

					   return false; 

					}	

				}

			}		

		}

	}
	
	return true;

}



function date2check(theinput,form)

{

	var currentTime = new Date()

	var text01 = Array();

	text01[0] = currentTime.getDate();

	text01[1] = (currentTime.getMonth()+1);

	text01[2] = currentTime.getFullYear();

	text02 = theinput.split("-");	

	if(theinput!='')

	{

		if(text02[2] == text01[2] && text02[1] == text01[1] && text02[0] == text01[0]) 

		{

		alert("The Preferred Date should not allow selection of Current date.");

		form.date2.value='';

		form.date2.focus();

		return false;

		}

		else

		{

		    if(text02[2] < text01[2]) 

			{

			alert("The Preferred Date should not allow selection of Past Year.");

			form.date2.value='';

			form.date2.focus();

			return false;

			}

			else 

				{

					if(text02[2] == text01[2] && text02[1] < text01[1])

					{

					alert("The Preferred Date should not allow selection of Past Month.");

					form.date2.value='';

					form.date2.focus();

					return false;

					}

					else

					{

					 if(text02[2] == text01[2] && text02[1] == text01[1] && text02[0] <= text01[0])

						{

						   alert("The Preferred Date should not allow selection of Past date.");

						   form.date2.value='';

						   form.date2.focus();

						   return false; 

						}	

					}

				}		

		}

}


	return true;

}

function emailCheck (emailStr)

{

    var emailPat=/^(.+)@(.+)$/

    var specialChars="\\(\\)<>@,'%#&$;:\\\\\\\"\\.\\[\\]"

    var validChars="\[^\\s" + specialChars + "\]"

    var quotedUser="(\"[^\"]*\")"

    var ipDomainPat=/^\[(\d)\.(\d)\.(\d)\.(\d)\]$/

    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].length<2 || domArr[domArr.length-1].length>3)

    {

     // the address must end in a two letter or three letter word.

     //   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!"

     return false

   }



 return true;

} 





function HideInsurance(selectedvalue)

{

//alert(selectedvalue);

//alert(document.getElementById('insurance').options[selectedvalue].value);

    if(document.getElementById('insurance').options[selectedvalue].value == "1")

    {

      document.getElementById('trInsurance').style.display="";

    }

    else

    {

      document.getElementById('trInsurance').style.display="none";

    }

}

function datecheck()
{
	text01=	document.getElementById('date1').value;	
	text02= document.getElementById('date2').value;
	text01 = input1.split("-");
	text02 = input2.split("-");
	if(input1!='' || input2!='')
	{
		if(text02[2] == text01[2] && text02[1] == text01[1] && text02[0] == text01[0]) 
		{
		alert("The Preferred Dates should not be same.");
		form.date1.value='';
		form.date1.focus();
		return false;
		}
		else
		{
		    if(text02[2] < text01[2]) 
			{
			alert("The Preferred Date 2 should not less than Preferred Date 1.");
			form.date2.value='';
			form.date2.focus();
			return false;
			}
			else 
			 {
				if(text02[2] == text01[2] && text02[1] < text01[1])
				{
				alert("The Preferred Date 2 should not less than Preferred Date 1.");
				form.date2.value='';
				form.date2.focus();
				return false;
				}
				else
			  	{
				 if(text02[2] == text01[2] && text02[1] == text01[1] && text02[0] < text01[0])
					{
					   alert("The Preferred Date 2 should not less than Preferred Date 1.");
					   form.date2.value='';
					   form.date2.focus();
					   return false; 
					}	
				}
			}		
		}
	}
	return true;
}

/******************************************************************************************/
function showdetails(docum)
{
alert("asghdghas");
	//window.open("appointmentdetails.php","Appointmen Details","width=500,height=450,toolbar=0,scrollbars=1,screenX=200,screenY=200,left=200,top=200,resizable='no'"); 
	window.open("appointmentdetails.php","Appointment_Details","width=500,height=450,left=200,top=200",scrollbars=1);

//window.open("apmt.html","Appointment_Details","width=500,height=450,left=200,top=200");

} 
/*******************************************************************************************/
