function ValidatePerioRefForm(theForm)
{
	if (theForm.contactDate.value != "")
	{
		return false;
	}
	var element = document.getElementById('txtDate');
	if (element.value == "")
	{
		alert('Please, enter the date.');
		element.focus();
		return false;
	}
	else if(!ValidateDate(element.value))
	{
		alert("Please, enter the correct date format (mm/dd/yyyy)");
		element.focus();
		return false;
	}
	element = document.getElementById('txtTime');
	if (element.value == "")
	{
		alert('Please, enter the time.');
		element.focus();
		return false;
	}
	else if(!ValidateTime(element.value))
	{
		alert("Please, enter the correct time format (HH:MM)");
		element.focus();
		return false;
	}
	element = document.getElementById('txtFirstName');
	if (element.value == "")
	{
		alert('Please, enter your first name.');
		element.focus();
		return false;
	}
	element = document.getElementById('txtLastName');
	if (element.value == "")
	{
		alert('Please, enter your last name.');
		element.focus();
		return false;
	}
	element = document.getElementById('txtReferredBy');
	if (element.value == "")
	{
		alert('Please, enter your the referred name.');
		element.focus();
		return false;
	}
	element = document.getElementById('txtTelephone');
	if (element.value == "")
	{
		alert('Please, enter your telephone.');
		element.focus();
		return false;
	}
	element = document.getElementById('ckbCompletePerio');
	if (element.checked)
	{
		var mark = "no";
		element = document.formPeriodontal.Evaluation;
		for (i = 0; i < element.length; i++ )
		{
			if (element[i].checked)
				mark = "";
		}
		if (mark == "no")
		{
			alert('Please, select one Complete Periodontal Evaluation option.');
			element[0].focus();
			return false;
		}
	}
	element = document.getElementById('ckbRFRImplants');
	if (!document.getElementById('ckbRFRImplants').checked &&
		!document.getElementById('ckbRFRGingivalRecession').checked &&
		!document.getElementById('ckbRFRGraft').checked &&
		!document.getElementById('ckbRFRCrown').checked &&
		!document.getElementById('ckbRFRGuided').checked &&
		!document.getElementById('ckbRFRGingivalContouring').checked &&
		!document.getElementById('ckbRFRRidge').checked &&
		!document.getElementById('ckbRFRExtraction').checked &&
		!document.getElementById('ckbRFROther').checked)
	{
		alert('Please, select at least one Reason for Referral option.');
		element.focus();
		return false;
	}
	element = document.getElementById('File1');
	if (element.value != "")
	{
		var exts = ".bmp;.jpg;.jpeg;.gif;.png;"
		var ext = Trim(element.value.substr(element.value.lastIndexOf("."), element.value.length - element.value.lastIndexOf(".")).toLowerCase());
		if(exts.indexOf(ext) < 0)
		{
			alert('The file extension is not correct. The correct file extensions are: ' + exts);
			element.focus();
			return false;
		}
	}
	
	element = document.getElementById('txtComments');
	if (element.value == "")
	{
		alert('Please, enter your comments.');
		element.focus();
		return false;
	}
	return true;
}

function ValidateOnlineRegForm(theForm)
{
	//debugger;
	if (theForm.contactDate.value != "")
	{
		return false;
	}
	var element = theForm.Email_Address;
	if (element.value == "")
	{
		alert('Please, enter the Patient Email Address.');
		element.focus();
		return false;
	}
	else
	{
		if(!ValidateEmail(element.value))
		{
			alert("Please check the emails address.");
			element.focus();
			return false;
		}
	}
	element = theForm.Patient_First_Name;
	if (element.value == "")
	{
		alert('Please, enter the Patient First Name.');
		element.focus();
		return false;
	}
	element = theForm.Patient_Last_Name;
	if (element.value == "")
	{
		alert('Please, enter the Patient Last Name.');
		element.focus();
		return false;
	}
	element = theForm.Sex;
	var mark = "no";
	for(var i = 0; i < element.length; i++)
	{
		if(element[i].checked)
		{
			mark = "";
		}
	}
	if(mark == "no")
	{
		alert('Please, select the Patient Sex.');
		element[0].focus();
		return false;
	}
	
	element = theForm.Date_of_Birth;
	if((Trim(element.value) != "") && (!ValidateDate(element.value)))
	{
		alert("Please, enter the correct date format (mm/dd/yyyy)");
		element.focus();
		return false;
	}
	
	element = theForm.Age;
	if((Trim(element.value) != "") && (!IsNumeric(element.value) || (element.value < 0)))
	{
		alert("Please, enter a correct Age.");
		element.focus();
		return false;
	}
	
	return true;
}

function ValidateDate(date)
{
	//debugger;
	if ((date.substr(2,1) == "/") && (date.substr(5,1) == "/"))
	{      
		for (i = 0; i < 10; i++)
		{	
			if (((date.substr(i,1) < "0") || (date.substr(i,1) > "9")) && (i != 2) && (i != 5))
			{
				return false;
			}  
		}
		y = date.substr(6,4);
		d = date.substr(3,2);
		m = date.substr(0,2);
		if((y < 1900) || (y > 2050) || (m < 1) || (m > 12) || (d < 1) || (d > 31))
			return false;
		else
		{
			if((y%4 != 0) && (m == 2) && (d > 28))	   
				return false; // Aņo no viciesto y es febrero y el dia es mayor a 28
			else	
			{
				if ((((m == 4) || (m == 6) || (m == 9) || (m==11)) && (d>30)) || ((m==2) && (d>29)))
					return false;	      				  	 
			}
		}
	}
	else
		return false;
		
	return true;
}

function ValidateTime(time)
{
	if (time.substr(2,1) == ":")
	{
		for(i = 0; i < 5; i++)
		{
			if (((time.substr(i,1) < "0") || (time.substr(i,1) > "9")) && (i != 2))
			{
				return false;
			}
		}
		m = time.substr(3,2);
		h = time.substr(0,2);
		if((h < 0) || (h > 23) || (m < 0) || (m > 59))
			return false;
	}
	else
		return false;
	
	return true;
}

function Trim(str)
{
	while(str.charAt(0) == (" "))
	{
		str = str.substring(1);
	}
	while(str.charAt(str.length-1) == " ")
	{
		str = str.substring(0,str.length-1);
	}
	return str;
}

function DisableRadio(checked)
{
	var element = document.formPeriodontal.Evaluation;
	for (i = 0; i < element.length; i++ )
	{
		element[i].disabled = !checked;
	}
}

function ValidateEmail(valor) 
{
  if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(valor))
     return true;
  else
     return false;
}

function IsNumeric(text)
{
	var len = text.length;
	var sw = "S";
	for (x = 0; x < len; x++)
	{
		v1 = text.substr(x,1);
		v2 = parseInt(v1);
		//Verify if it is a numerical value
		if (isNaN(v2))
			sw = "N";
	} 
	if (sw == "S")
		return true;
	else
		return false;
}

