function string2field(formname,fieldname){
	var passstr="document."+formname+"."+fieldname;
	return eval(passstr);
	}
	

function checkbox_check(formname, fieldname, errstr)
{
	if(eval("document."+formname+"."+fieldname+".checked")==false)
	{
		alert(errstr);
		string2field(formname,fieldname).focus();
		return 0;
	}	
}

function blankcheck(formname,fieldname, errstr)
{
	if(string2field(formname,fieldname).value=="")
		{
			alert(errstr);
			string2field(formname,fieldname).focus();
			return 0;
		}	
}

function emailcheck(formname,fieldname)
{
	if(string2field(formname,fieldname).value=="")
	{
		alert("Please enter your Email address");
		string2field(formname,fieldname).focus();
		return 0;
	}
	else
	{
		var txt;
		var stringarray;
		var cnt;
		var invalid;
		var alpbet;

		alpbet=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"];

		var txt=(string2field(formname,fieldname).value);
		var inv;
		if (txt.length >0)
		{
			stringarray=txt.split("");
			invalid = false;
			inv=false;
			for (var j=0; j< alpbet.length; j++)
			{
				 if (stringarray[0].toUpperCase() == alpbet[j] || stringarray[0]==alpbet[j] )
				 {
					invalid = false;
					break;
				 }
				 else
					invalid = true;
			}

			if (invalid == true)
			{
			  alert("Please enter valid E-mail starting with an alphabet");
			  string2field(formname,fieldname).focus();
			  return 0;
			}
		}

		// Checks that no other character should be entered except the alphanumeric characters, @ and a dot 

		for (var i=0; i<txt.length; i++)
		{
			for (var j=0; j<alpbet.length; j++)
			{
				if (stringarray[i].toUpperCase() == alpbet[j])
				{
					 inv = false;
					 break;
				}
				else
				{
					if ((stringarray[i] == "1")||(stringarray[i] == "2")||(stringarray[i] == "3")||(stringarray[i] == "4")||(stringarray[i] == "5") || (stringarray[i] == "6")||(stringarray[i] == "7")||(stringarray[i] == "8")||(stringarray[i] == "9")||(stringarray[i] == "0"))
					{
						inv = false;
						break;
					}
					if (stringarray[i] == "@")
					{
						inv = false;
						break;
					}
					if (stringarray[i] == ".")
					{
					   inv = false;
					   break;
					}
					if (stringarray[i] == "_")
					{
					   inv = false;
					   break;
					}
					if (stringarray[i] == "-")
					{
						 inv = false;
						 break;
					}
		  
					inv=true;
		   		}
			}
			if (inv == true)
			break;
		}

		if (inv == true)
		{
		 alert("Please enter valid E-mail id, only @ and . are allowed");
		 string2field(formname,fieldname).focus();
		 return 0;
		}
		
		
		// Dot cannot be the last character of the id
		
		
		if (txt.length == (txt.lastIndexOf(".")+1))
		{
		alert("Please enter valid E-mail id, dot cannot be the last character");
		string2field(formname,fieldname).focus();
		return 0;
		}
		
		
		
		// .and @ cannot appear in the consecutive positions
		  
		  
		var index1=0;
		var checkStr = (string2field(formname,fieldname).value);
		
		for (var i=0; i<checkStr.length; i++)
		{
			if(checkStr.charAt(i)=='.')
			{
				index1=i;
				if(checkStr.charAt(i-1)=='.' || checkStr.charAt(i-1)=='@' || checkStr.charAt(i+1)=='.' || checkStr.charAt(i+1)=='@')
				{
					alert("Please enter valid E-mail");
					string2field(formname,fieldname).focus();
					return 0;
				}
			}

		}
		// Checks for the missing @
		
		if (txt.indexOf("@") == -1)
		{
			alert("Please enter valid E-mail, @ missing");
			string2field(formname,fieldname).focus();
			return 0;
		}
  
		
		
		// Checks for the missing dot
		
		if (txt.indexOf(".") == -1)
		{
			alert("Please enter valid E-mail, dot missing");
			string2field(formname,fieldname).focus();
			return 0;
		}

		
		
		
		//Checks that there should be atleast 3 characters before @
		
		if (txt.indexOf("@")<3)
		{
			alert("Please enter valid E-mail, @ not at correct position");
			string2field(formname,fieldname).focus();
			return 0;
		}

		
		// Checks for more than one occurences of @
		
		cnt=0;
		for (var i=0; i<stringarray.length; i++)
		{
			if (stringarray[i] == "@")
			{
				cnt= cnt + 1;
			}
		}

		if (cnt > 1)
		{
			alert("Please enter valid E-mail, more than 1 @ not allowed");
			string2field(formname,fieldname).focus();
			return 0;
		}
		
		
		
		var checkOK =
		"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789@._-";
		var allValid = true;
		
		for (i = 0;  i < checkStr.length;  i++)
		{
			ch = checkStr.charAt(i);
			for (j = 0;  j < checkOK.length;  j++)
				if (ch == checkOK.charAt(j))
					break;
			if (j == checkOK.length)
			{
				allValid = false;
				break;
			}
		}

		if (!allValid)
		{
			//alert("Please enter only letter, digit and \"@._-\" characters in the email");
			alert("Please enter valid E-mail id");
			string2field(formname,fieldname).focus();
			return 0;
		}
	
	}
}
function numbercheck(formname,fieldname, errstr1, errstr2)
{
	if(blankcheck(formname,fieldname, errstr1)==0||blankcheck(formname,fieldname, errstr1)==false)
		return 0;
	else
	{ 
		
		// only allow numbers to be entered
		var checkOK = "0123456789-";
		var checkStr = string2field(formname,fieldname).value;
		var allValid = true;
		var allNum = "";
		for (i = 0;  i < checkStr.length;  i++)
		{
			ch = checkStr.charAt(i);
			for (j = 0;  j < checkOK.length;  j++)
				if (ch == checkOK.charAt(j))
					break;
			if (j == checkOK.length)
			{
				allValid = false;
				break;
			}
			if (ch != ",")
				allNum += ch;
		}
		if (!allValid)
		{
			alert(errstr2);
			string2field(formname,fieldname).focus();
			return 0;
		}	

	}
}

function dateUS (formname, fieldname)
{
	if(string2field(formname,fieldname).value=="")
	{
		alert("Please enter the Date");
		string2field(formname,fieldname).focus();
		return 0;
	}
	else
	{
		var feberr;
		var bits = string2field(formname,fieldname).value.split("/");
		isitok = (bits.length == 3);
		if (isitok) 
        { 
			var day = parseInt(bits[1],10);
			var month = parseInt(bits[0],10);
			var year = parseInt(bits[2]);
			
			isitok = !isNaN(month) && (month > 0) && (month < 13) && !isNaN(day) && (day > 0) && (day < 32) && !isNaN(year) && (bits[2].length == 4); 
			
			if ((month == 2 || month == 02) && year%4 == 0)
			{
				if (day >= 30)
					feberr = true;
				else
					feberr = false;
			}
			else if ((month == 2 || month == 02) && year%4 != 0)
			{
				if (day >= 29)
					feberr = true;
				else
					feberr = false;
			}
		}
		if (!isitok)
		{
			alert("Please enter valid Date (mm/dd/yyyy)");
			string2field(formname,fieldname).focus();
			return 0;
		}
		if (isitok && feberr)
		{
			alert("Please enter valid date of february");
			string2field(formname,fieldname).focus();
			return 0;
		}
	}
}
function submitdis(formname,fieldname)
{
	string2field(formname,fieldname).disabled = true;
}

function ischecked(formname, fieldname, errstr)
{
	if (!(string2field(formname, fieldname).checked))
	{
		alert(errstr);
		return 0;
	}
}

function deci_numbercheck(formname,fieldname, errstr1, errstr2)
{
	if(blankcheck(formname,fieldname, errstr1)==0||blankcheck(formname,fieldname, errstr1)==false)
		return 0;
	else
	{ 
		
		// only allow numbers to be entered
		var checkOK = "0123456789.";
		var checkStr = string2field(formname,fieldname).value;
		var allValid = true;
		var allNum = "";
		for (i = 0;  i < checkStr.length;  i++)
		{
			ch = checkStr.charAt(i);
			for (j = 0;  j < checkOK.length;  j++)
				if (ch == checkOK.charAt(j))
					break;
			if (j == checkOK.length)
			{
				allValid = false;
				break;
			}
			if (ch != ",")
				allNum += ch;
		}
		if (!allValid)
		{
			alert(errstr2);
			string2field(formname,fieldname).focus();
			return 0;
		}	

	}
}

function string_length(formname, fieldname, number, errstr)
{
	if((string2field(formname,fieldname).value).length < number)
	{
		alert(errstr);
		string2field(formname,fieldname).focus();
		return 0;
	}
}