var dtCh= "/";

var minYear=1900;

var Digital=new Date()

var tday=Digital.getDate()

var tmonth=Digital.getMonth()+1

var maxYear=Digital.getYear();

//function Start

function isInteger(s){

	var i;

    for (i = 0; i < s.length; i++){

        // Check that current character is number.

        var c = s.charAt(i);

        if (((c < "0") || (c > "9"))) return false;

    }

    // All characters are numbers.

    return true;

}

function stripCharsInBag(s, bag){

	var i;

    var returnString = "";

    // Search through string's characters one by one.

    // If character is not in bag, append to returnString.

    for (i = 0; i < s.length; i++){

        var c = s.charAt(i);

        if (bag.indexOf(c) == -1) returnString += c;

    }

    return returnString;

}



function daysInFebruary (year){

	// February has 29 days in any year evenly divisible by four,

    // EXCEPT for centurial years which are not also divisible by 400.

    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );

}

function DaysArray(n) 

{

	for (var i = 1; i <= n; i++) 

	{

		this[i] = 31;

		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}

		if (i==2) {this[i] = 29}

   }

   return this

}

function isDate(dtStr)

{

	if (dtStr=="")

		{

		alert("Please enter value for Date")

		return false

		}

	var daysInMonth = DaysArray(12)

	var pos1=dtStr.indexOf(dtCh)

	var pos2=dtStr.indexOf(dtCh,pos1+1)

	var strDay=dtStr.substring(0,pos1)

	var strMonth=dtStr.substring(pos1+1,pos2)

	var strYear=dtStr.substring(pos2+1)

	strYr=strYear

	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)

	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)

	for (var i = 1; i <= 3; i++) {

		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)

	}

	month=parseInt(strMonth)

	day=parseInt(strDay)

	year=parseInt(strYr)

	if (pos1==-1 || pos2==-1){

		alert("The date format should be : dd/mm/yyyy")

		return false;

	}

	if (strMonth.length<1 || month<1 || month>12){

		alert("Please enter a valid date. (dd/mm/yyyy Format)")

		return false;

	}

	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){

		alert("Please enter a valid date. (dd/mm/yyyy Format)")

		return false;

	}

	if (strYear.length <4 || year==0|| strYear.length>4)

	{

		alert("Please enter a valid 4 Digit Year and between "+ minYear+" to "+ maxYear)

		return false;

	}

//	if(strYear.length == 4 && parseInt(strYear) < parseInt(minYear))

//	{

//	    alert("Please enter Year between "+ minYear+" and "+ maxYear);

//		return false;

//	}

//	if(strYear.length == 4 && parseInt(strYear) > parseInt(maxYear))

//	{

//	    alert("Please enter Year between "+ minYear+" and "+ maxYear);

//	    return false;

//	}

	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){

		alert("Please enter a valid date. (dd/mm/yyyy Format)")

		return false;

	}

	

	/*if((day>tday && month>tmonth && year>maxYear)||((day>=tday ||day<tday) && month>tmonth && year>=maxYear)||(year>maxYear)||((day>tday) &&(month>=tmonth) &&(year>=maxYear)))

		{

		alert("Date Can't Be Greater Than Current Date")

		return false

		}*/

return true

}





function echeck(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("Please check e-mail address entered.")

		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)

		{

    // this is an IP address

		for (var i=1;i<=4;i++)

			{

			if (IPArray[i]>255)

				{

				alert("Destination IP address is invalid.")

				return false

				}

			}

		return true

		}

	// Domain is symbolic name

	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

		}

	// Make sure there's a host name preceding the domain.

	if (len<2)

		{

		var errStr="This address is missing a hostname."

		alert(errStr)

		return false

		}

	// If we've gotten this far, everything's valid!

	return true;





}





function chfile(filePath)

{

   var fname=filePath.toLowerCase();

   var flag=0;

   if(fname.lastIndexOf(".")>0)

   {

    var ext=fname.substring(fname.lastIndexOf(".")+1);

    var extarr=['txt', 'doc'];

    for(i=0;i<extarr.length;i++)

    {

     if(ext==extarr[i])

     {

       flag=1;

       break;

      }

    }

    if(flag!=1)

    {

     alert("Please enter the file of any given extension: '.txt', '.doc'");

     return false;

    }

   }

   else

   {

   alert("Please enter the file of any given extension: '.txt', '.doc'");

   return false;

   }

   return true;

}





function churl(url)

{

 var flag=0;

 var ptc=url.substring(0,7);

 if(ptc.toLowerCase()!="http://")

 {

  flag=1;

 }

 if(url.lastIndexOf(".")>0)

 {

  if(url.substring(url.lastIndexOf(".")).length<2)

  {

   flag=1;

  }

  if(flag==1)

  {

   alert("Please enter proper URL. Should start with 'http://' and end with at least two chars after dot.");

   return false;

  }

 }

 else

 {

  alert("Please enter proper URL. Should start with 'http://' and end with at least two chars after dot.");

  return false;

 }

 return true;

}







function trim(inputString)

{

   if (typeof inputString != "string") { return inputString; }

   var retValue = inputString;

   var ch = retValue.substring(0, 1);

   while (ch == " ") {

      retValue = retValue.substring(1, retValue.length);

      ch = retValue.substring(0, 1);

   }

   ch = retValue.substring(retValue.length-1, retValue.length);

   while (ch == " ") {

      retValue = retValue.substring(0, retValue.length-1);

      ch = retValue.substring(retValue.length-1, retValue.length);

   }

   while (retValue.indexOf("  ") != -1) {

      retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length);

   }

   return retValue;

}



function RemoveSpecialChar(strRep)

{

    var str=strRep.replace(/[^a-zA-Z\ \_]+/g,"");

    return str;

}



function RemoveSpecialCharCom(strRep)

{

	strRep=strRep.replace(/\\|\<|\>|\|\$\||\|\~\||\"/g,"");

	return strRep;

}

function RemoveSpecialCharCom_un(strRep)

{

	strRep=strRep.replace(/\\|\<|\>|\,|\*|\ |\|\$\||\|\~\||\"/g,"");

	return strRep;

}



function RemoveDigits(strRep)

{

	strRep = strRep.replace(1|2|3|4|5|6|7|8|9|0,"");

	return strRep;

}



function SpecialChar_un(formstr)

{



   var strSpacial="\,\*\<\>\"\ ";

  // alert(strSpacial);

   var  str=formstr;

	ln=str.length;

	var FinVal="";

	var newStr="";

	for (i=0;i<ln;i++)

	{

		var strtemp,index,al;



		strtemp=str.charAt(i);

		index=strSpacial.indexOf(strtemp);

		if (index>0)

		{

		    return true;

		}

	}

	return SpecialChar(formstr);

}



function SpecialChar(formstr)

{



   var strSpacial="\<\>\"";

   var str=formstr;

	ln=str.length;

	var FinVal="";

	var newStr="";

	for (i=0;i<ln;i++)

	{

		var strtemp,index,al;



		strtemp=str.charAt(i);

		if(strtemp=="\\")

		{

		    return true;

		}

		else

		{

		    if(strtemp=="\'")

		    {

		       // return true;

		    }

		    else

		    {

			    index=strSpacial.indexOf(strtemp);

			 }

	    }

		if (index>0)

		{

		    return true;

		}

		else

		{

			newStr=strtemp;

		}

	    FinVal=FinVal+newStr;

	}

	var ch=FinVal.indexOf("\|\$\|");

	if(ch>0)

	{

		return true;

	}

	var ch=FinVal.indexOf("\|\~\|");

	if(ch>-1)

	{

	    return true;

	}

    return false;

}



function SpecialCharCom(formstr)

{

//alert(formstr)

var strSpacial="\~\'\!\'\#\$\%\^\&\*\+\;\<\>\""

//var strSpacial="/\~|\<\>\""

//var strSpacial="\'\!\#\%\^\&\*\+\;\<\>\"\,";

    //var strSpacial="\'\<\>\"";

    str=formstr;

	ln=str.length;

	var FinVal="";

	var newStr="";

	for (i=0;i<ln;i++)

	{

		var strtemp,index,al;



		strtemp=str.charAt(i);

		//index=strSpacial.indexOf(strtemp);

		if(strtemp=="\\")

		{

		    return true;

		}

		else

		{

		    index=strSpacial.indexOf(strtemp);

	    }

		if (index>0)

		{

		    return true;

		}

		else

		{

			newStr=strtemp;

		}

	    FinVal=FinVal+newStr;

	}

	var ch=FinVal.indexOf("\|\$\|");

	if(ch>0)

	{

		return true;

	}

	var ch=FinVal.indexOf("\|\~\|");

	if(ch>-1)

	{

	    return true;

	}

    return false;

}







function remdigit(strRep)

{

//alert(strRep);

/*var strarr=new Array('1','2','3','4','5','6','7','8','9','0');

var x="";

var newvar="";

	for(x in strarr)

	{

	newvar=strRep.replace(strarr[x],"")

	//alert(newvar);

	}

return newvar;*/

strRep = strRep.replace(/\1|\2|\3|\4|\5|\6|\7|\8|\9|\0/,"");

return strRep;

}





function digitcheck(formstr)

{

//alert(formstr)

var strSpacial="0123456789";

//var strSpacial="1\2\3\4\5\6\7\8\9\0";

	str=formstr;

	ln=str.length;

	var FinVal="";

	var newStr="";

	for (i=0;i<ln;i++)

	{

		var strtemp,index,al;

		//alert(strSpacial);

		strtemp=str.charAt(i);

		index=strSpacial.indexOf(strtemp);

		if (index>=0)

		{

		//alert(index);



			//al=RemoveDigits(strtemp);

			strtemp="";

			al=strtemp

			//alert(al);

			newStr=al;



		}

		else

		{

			newStr=strtemp;

		}

	FinVal=FinVal+newStr;



	}

//alert(FinVal);

return FinVal;

}



function formchkcount1(formname,formstr,count)

	{

	    

	    var cnt = eval("document."+formname+"."+count);

	   

	    var i=0;

	    var cntval = cnt.value;

	 //   alert(cntval);

	  //  alert("here");

	  //  var cntval = 2;

	 

	    arr=formstr.split("|~|");

	    

	    var fields=arr[0];

	 

	    for(i=1;i<=cntval;i++)

	    {

	  

	        str1= "";

	        feildSplit=fields.split("|$|");

	        

	        for(val in feildSplit)

		    {

		        if(str1 == "")

		        {

		           str1 =  feildSplit[val]+i;

		        }

		         else

		         {

		         str1 = str1+"|$|"+feildSplit[val]+i;

		         

		         }    

		       	      		

		    }

		    strmain = str1+"|~|"+arr[1]+"|~|"+arr[2];

		   

		    if(formchk(formname,strmain)==false)

		    {

		        return false;

		    }

		    

	    }

	    return true;

	

	}

	



  function formchkcount(formname,formstr,count)

	{

	    var cnt = eval("document."+formname+"."+count);

	    

	    var cntval = cnt.value;

	 //   alert(cntval);

	  //  alert("here");

	  //  var cntval = 2;

	    arr=formstr.split("|~|");

	    var fields=arr[0];

	    

	    for(i=0;i<cntval;i++)

	    {

	        str1= "";

	        feildSplit=fields.split("|$|");

	        for(val in feildSplit)

		    {

		        if(str1 == "")

		        {

		           str1 =  feildSplit[val]+i;

		        }

		         else

		         {

		         str1 = str1+"|$|"+feildSplit[val]+i;

		         

		         }       

		      		

		    }

		    strmain = str1+"|~|"+arr[1]+"|~|"+arr[2];

		   

		    if(formchk(formname,strmain)==false)

		    {

		        return false;

		    }

		    

	    }

	    return true;

	

	}

	

	

	function formchkid(formname,formstr,count)

	{//alert("hi");

	    var cnt = eval("document."+formname+"."+count);

	   // alert(cnt.value);

	    var cntval = cnt.value;

	     idarr=cntval.split(",");

	 

	    arr=formstr.split("|~|");

	    var fields=arr[0];

	    

	    for(ii in idarr)

	    {

	        str1= "";

	       // alert(ii);

	     //   alert(idarr[ii]);

	        feildSplit=fields.split("|$|");

	        for(val in feildSplit)

		    {

		        if(str1 == "")

		        {

		           str1 =  feildSplit[val]+idarr[ii];

		        }

		         else

		         {

		         str1 = str1+"|$|"+feildSplit[val]+idarr[ii];

		         

		         }       

		      		

		    }

		    strmain = str1+"|~|"+arr[1]+"|~|"+arr[2];

		//   alert(strmain);

		    if(formchk(formname,strmain)==false)

		    {

		        return false;

		    }

		    

	    }

	    return true;

    }



function formchk(formname,formstr)
{
//s for string with or without numbers
//ss for string without numbers
//snull  for string with/without numbers null allowed
//ssnull
//sc for string with  comma(S type string)

	var val=0;
	var nxtarr;
	var val1;
	arr=formstr.split("|~|");
	var fields=arr[0];
	var datatype=arr[1];
	var length=arr[2];
	var fieldname=arr[3];


	feildSplit=fields.split("|$|");

	datatypeSplit=datatype.split("|$|");

	lengthSplit=length.split("|$|");

	fieldnamesplit=fieldname.split("|$|");

	for(val in feildSplit)
	{
		if(datatypeSplit[val].toLowerCase()=="s" || datatypeSplit[val].toLowerCase()=="snull" )
		{
		//alert("hello");
			formfeild=eval("document."+formname+"."+feildSplit[val]);
			
			if(trim(formfeild.value)=="" && ( datatypeSplit[val].toLowerCase()=="s"  || datatypeSplit[val].toLowerCase()=="sc" ) )

			{

				alert("Please enter " + fieldnamesplit[val] )
				formfeild.focus();
				formfeild.select();
				return false;

			}


			if(formfeild.value.length>lengthSplit[val] && !(formfeild.value)=="")

			{

				alert("Data exceeds the limit of   "+lengthSplit[val]+ "  Sign")
				formfeild.focus();
				formfeild.select();
				return false;

			}

			if(trim(formfeild.value).search(/http/i) != -1)
			
			{
				alert("Some fields appear to contain illegal characters. Please remove and resubmit.");
				formfeild.focus();
				formfeild.select();
				return false;
				
			}
			

			spcheck=SpecialChar(formfeild.value);

			if(spcheck==true)

			{

				var cf=confirm("The value entered at ["+fieldnamesplit[val]+"] appears to contain some illegal characters e.g. <,>,|,&,?,”,~ etc. Please remove these and resubmit.");

				if(cf==true)

				{

					newStr=RemoveSpecialCharCom(formfeild.value);

				}

				else

				{

					return false;

				}

			 }

			 else

			 {

				newStr=formfeild.value;

			 }

			//newStr=SpecialCharCom(formfeild.value);

			formfeild.value=newStr;

		}



		if(datatypeSplit[val].toLowerCase()=="un" || datatypeSplit[val].toLowerCase()=="unnull" )

		{	



		//alert("hello");

			formfeild=eval("document."+formname+"."+feildSplit[val]);



			if(trim(formfeild.value)=="")

				{

				alert("Please enter " + fieldnamesplit[val] )

				formfeild.focus();

				formfeild.select();

				return false;

				}





				if(formfeild.value.length>lengthSplit[val] && !(formfeild.value)=="")

				{

				alert("Data exceeds the limit of   "+lengthSplit[val]+ "  sign")

				formfeild.focus();

				formfeild.select();

				return false;

				}

				

				spcheck=SpecialChar_un(formfeild.value);

			if(spcheck==true)

			{

				var cf=confirm("The value entered at ["+fieldnamesplit[val]+"] appears to contain some illegal characters e.g. <,>,|,&,?,”,~ etc. Please remove these and resubmit.");

				if(cf==true)

				{

					newStr=RemoveSpecialCharCom_un(formfeild.value);

				}

				else

				{

					return false;

				}

			 }

			 else

			 {

				newStr=formfeild.value;

			 }

			//newStr=SpecialCharCom(formfeild.value);

			formfeild.value=newStr;

		}





		if(datatypeSplit[val].toLowerCase()=="ss" || datatypeSplit[val].toLowerCase()=="ssnull")

		{

			formfeild1=eval("document."+formname+"."+feildSplit[val]);

			//alert(formfeild.value);

			if(trim(formfeild1.value)=="" && datatypeSplit[val].toLowerCase()=="ss")

				{

				alert("Please enter " + fieldnamesplit[val] )

				formfeild1.focus();

				formfeild1.select();

				return false;

				}



			if(isNaN(formfeild1.value)==false && !(formfeild1.value)=="")

				{

				alert("Please enter correct values")

				formfeild1.focus();

				formfeild1.select();

				return false;

				}



			if(formfeild1.value.length>lengthSplit[val] && !(formfeild1.value)=="")

			{

					alert("Data exceeds the limit of  "+lengthSplit[val]+ "  Sign")
						   
				formfeild1.focus();

				formfeild1.select();

				return false;

			}

			if (/^ *[A-Za-z\ \_]+ *$/.test(formfeild1.value))

			{

				newStr=formfeild1.value;

			}

			else

			{

			   

			   var cf=confirm("The value entered at ["+fieldnamesplit[val]+"] appears to contain some illegal characters e.g. <,>,|,&,?,”,~ etc. Please remove these and resubmit.");

				if(cf==true)

				{

					newStr=RemoveSpecialChar(formfeild1.value);

					//newStr=RemoveDigits(newStr);

				}

				else

				{

					return false;

				}

			}

			//newStr=RemoveSpecialChar(formfeild1.value);

			formfeild1.value=newStr;

			newstr1=digitcheck(formfeild1.value);

			formfeild1.value=newstr1;

		}

		if(datatypeSplit[val].toLowerCase()=="di" || datatypeSplit[val].toLowerCase()=="sdrp" || datatypeSplit[val].toLowerCase()=="drp" || datatypeSplit[val].toLowerCase()=="ds")

		{

				dropfield=eval("document."+formname+"."+feildSplit[val]);

				if(dropfield.value<0)

				{

				alert("Please choose ["+fieldnamesplit[val]+"] value")

				dropfield.focus();

				return false;

				}

				else if(dropfield.value==null)

				{

				alert("Please choose ["+fieldnamesplit[val]+"] value")

				dropfield.focus();

				return false;

				}

		}

		if(datatypeSplit[val].toLowerCase()=="dinull" || datatypeSplit[val].toLowerCase()=="dsnull" || datatypeSplit[val].toLowerCase()=="sdrpnull" || datatypeSplit[val].toLowerCase()=="drpnull" || datatypeSplit[val].toLowerCase()=="linull" )

		{

			

		}

		

		if(datatypeSplit[val].toLowerCase()=="li")

		{

				dropfield=eval("document."+formname+"."+feildSplit[val]);

				if(dropfield.value<=0)

				{

				alert("Please choose values")

				dropfield.focus();

				return false;

				}

									

		}

		if(datatypeSplit[val].toLowerCase()=="da")

		{

			dropfield=eval("document."+formname+"."+feildSplit[val]);

				if(trim(dropfield.value)=="")

				{

				alert("Please choose values")

				dropfield.focus();

				return false;

				}



		}



		if(datatypeSplit[val].toLowerCase()=="i" || datatypeSplit[val].toLowerCase()=="inull" )

		{

			intfield=eval("document."+formname+"."+feildSplit[val]);

			if(trim(intfield.value)=="" && datatypeSplit[val].toLowerCase()=="i" )

			{

				alert("Please enter " + fieldnamesplit[val] )
	
				intfield.focus();
	
				return false;

			}

			if(isNaN(intfield.value)==true && !(intfield.value)=="")

			{

				//alert("Please enter Numeric values")
				alert(fieldnamesplit[val]+" is a numeric field. \n Please enter only numbers in this field: " + fieldnamesplit[val])
	
	
				intfield.focus();
	
				return false;

			}

			if(intfield.value%1!=0 && !(intfield.value)=="")

			{

				//alert("Please enter Integer values")
				alert(fieldnamesplit[val]+" is a numeric field. \n Please enter only numbers in this field: " + fieldnamesplit[val])
	
				intfield.focus();
	
				return false;

			}

			

			if(intfield.value.length>lengthSplit[val] && !(intfield.value)=="")

			{

				alert("Data exceeds the limit of  "+lengthSplit[val]+ "  sign")
	
				intfield.select();
	
				intfield.focus();
	
				return false

			}


			if(trim(intfield.value).search(/http/i) != -1)
			
			{
				alert("Some fields appear to contain illegal characters. Please remove and resubmit.");
				intfield.focus();
				intfield.select();
				return false;
				
			}



		}

		if(datatypeSplit[val].toLowerCase()=="dc" || datatypeSplit[val].toLowerCase()=="dcnull" )

		{

				intfield=eval("document."+formname+"."+feildSplit[val]);

				if(trim(intfield.value)=="" && datatypeSplit[val].toLowerCase()=="dc" )

				{
											
				alert("Please enter " + fieldnamesplit[val] )

				intfield.focus();

				return false;

				}



				if(isNaN(intfield.value)==true && !(intfield.value)=="")

				{

				alert("Please enter numeric values")

				intfield.focus();

				return false;

				}

				var cklen=lengthSplit[val].split(',');

				if(!(intfield.value)==""   && intfield.value.indexOf(".")>-1)

				{

					var ckval=intfield.value.split('.');

					if(ckval[0].length>cklen[0])

					{

						alert("Data before decimal(.), exceeds the limit of "+cklen[0]+ " digits")

						intfield.select();

						intfield.focus();

						return false

					}

					if(ckval[1].length>cklen[1])

					{

						alert("Data after decimal(.), exceeds the limit of "+cklen[1]+ " digits")

						intfield.select();

						intfield.focus();

						return false

					}

				}   

				else

				{

					if(!(intfield.value)==""   &&  intfield.value.length>cklen[0])

					{

					alert("Data exceeds the limit of "+lengthSplit[val]+ " digits")

					intfield.select();

					intfield.focus();

					return false

					}

				}

		}

		if(datatypeSplit[val].toLowerCase()=="d" || datatypeSplit[val].toLowerCase()=="dnull")

		{

			var DateArr=new Array();

			datefield=eval("document."+formname+"."+feildSplit[val]);

			if(trim(datefield.value)=="" && datatypeSplit[val].toLowerCase()=="d")

			{

				alert("Please enter Date")

				datefield.focus();

				return false;

			}

			if(datatypeSplit[val].toLowerCase()=="d" || (trim(datefield.value)!="" && datatypeSplit[val].toLowerCase()=="dnull"))

			{

				DateSplit=datefield.value;

				DateSplit=DateSplit.split(",");

				var x,DateReturn,Num;

				for(x in DateSplit)

				{

					DateReturn=isDate(DateSplit[x]);

					DateArr=DateSplit[x];

					if(DateReturn==false)

					{

						datefield.focus();

						datefield.select();

						return false

					}

				}

			}

		}





		if(datatypeSplit[val].toLowerCase()=="f")

		// f for file

		// null is sent when file selection is not compulsory

		// nnull or anything would make this box mandatory

		{



			filefield=eval("document."+formname+"."+feildSplit[val]);

			//alert(lengthSplit[val]);

			if(trim(lengthSplit[val])=="null")

			{

				//alert("hello");

				if(trim(filefield.value)!="")

				{

					if(chfile(filefield.value)=="")

					{

						filefield.focus();

						filefield.select();

						return false;

					}

				}

			}

			if(trim(lengthSplit[val])=="nnull")

			{

				//	alert("hello1");

				if(trim(filefield.value)=="")

				{

					alert("Please enter File");

					filefield.focus();

					filefield.select();

					return false;

				}

		

				if(chfile(filefield.value)=="")

				{

					filefield.focus();

					filefield.select();

					return false;

				}

			}

		}

		if(datatypeSplit[val].toLowerCase()=="u")

		// u for url

		{

			urlfield=eval("document."+formname+"."+feildSplit[val]);

			if(churl(urlfield.value)=="")

			{

				alert("Please enter URL")

				urlfield.focus();

				urlfield.select();

				return false;

			}

			if(urlfield.value.length>lengthSplit[val])

			{

				alert("Data exceeds the limit of  "+lengthSplit[val]+ "  sign")

				urlfield.focus();

				urlfield.select();

				return false;

			}

		}

		if(datatypeSplit[val].toLowerCase()=="e")

		// e for email

		{

			emailfield=eval("document."+formname+"."+feildSplit[val]);

			if(emailfield.value=="")

			{

			   alert("Please enter " + fieldnamesplit[val] )

				emailfield.focus();

				emailfield.select();

				return false;

			}

			if(echeck(emailfield.value)=="")

			{

				emailfield.focus();

				emailfield.select();

				return false;

			}
			

			if(trim(emailfield.value).search(/http/i) != -1)
			
			{
				alert("Some fields appear to contain illegal characters. Please remove and resubmit.");
				emailfield.focus();
				emailfield.select();
				return false;
				
			}

			if(emailfield.value.length>lengthSplit[val])

			{

				alert("Data exceeds the limit of "+lengthSplit[val]+ "  sign")

				emailfield.focus();

				emailfield.select();

				return false;

			}

		}

		 if(datatypeSplit[val].toLowerCase()=="enull")

		{

			emailfield=eval("document."+formname+"."+feildSplit[val]);

		  if(emailfield.value!="")

			{

			if(echeck(emailfield.value)==false)

			{

				emailfield.focus();

				emailfield.select();

				return false;

			}

			if(emailfield.value.length>lengthSplit[val])

			{

				alert("Data exceeds the limit of  "+lengthSplit[val]+ " sign")

				emailfield.focus();

				emailfield.select();

				return false;

			}

		  }

		}



		if(datatypeSplit[val].toLowerCase()=="o" || datatypeSplit[val].toLowerCase()=="os")

		// o paramter can have both checkboxes and radio

		// this check would only validate for value



		{

			var x=0;

			otherfield=eval("document."+formname+"."+feildSplit[val]);





			for(i=0;i<=otherfield.length-1;i++)

			{

				if(otherfield[i].checked==true)

				{

				x=1

				}

			}



			if(x==0)

			{

			alert("Please select at least one value to proceed");

			return false;

			}

		}



		if(datatypeSplit[val].toLowerCase()=="ao")

		{

			var x=0;

			otherfield=eval("document."+formname+"."+feildSplit[val]);





			for(i=0;i<=otherfield.length-1;i++)

			{

				if(otherfield[i].checked==true)

				{

				x=1

				}

			}





			if(x==0)

			{

			alert("Please select at least one value to proceed");

			return false;

			}

		}

		/////////////

		if(datatypeSplit[val].toLowerCase()=="dg_ao_all")

		{

			str='_'+feildSplit[val];

			for(i=0;i<document.all.length;i++)

			{

			   var x = document.all.item(i);

			   if(x!=null && x.id !=null &&  x.id.indexOf(str)!=-1)

			   {

				   if(x.checked==false)

				   {

						alert("Please select all checks to proceed");

						return false;

				   }

			   }           

			}

	   }

		

		/////////////

		if(datatypeSplit[val].toLowerCase()=="dg_ao")

		{

			str='_'+feildSplit[val];

			for(i=0;i<document.all.length;i++)

			{

			   var x = document.all.item(i);

			   if(x!=null && x.id !=null &&  x.id.indexOf(str)!=-1)

			   {

				   if(x.checked==true)

				   {

				   //     alert("hello");

						return true;

				   }

			   }           

			}

			alert("Please select at least one value to proceed");

			return false;

		}

		if(datatypeSplit[val].toLowerCase()=="dg_ao_enable")

		{

			str='_'+feildSplit[val];

			for(i=0;i<document.all.length;i++)

			{

			   var x = document.all.item(i);

			   if(x!=null && x.id !=null &&  x.id.indexOf(str)!=-1)

			   {

				   if(x.checked==true && x.disabled==false)

				   {

				   //     alert("hello");

						return true;

				   }

			   }           

			}

			alert("Please select at least one value to proceed");

			return false;

		}

		if(datatypeSplit[val].toLowerCase()=="dg_ao_enable1")

		{

			str='_'+feildSplit[val];

			for(i=0;i<document.all.length;i++)

			{

			   var x = document.all.item(i);

			   if(x!=null && x.id !=null &&  x.id.indexOf(str)!=-1)

			   {

				   if(x.checked==true && x.disabled==false)

				   {

				   //     alert("hello");

						return "1";

				   }

			   }           

			}

			//alert("Please Select atleast one value to proceed");

			return "0";

		}

		if(datatypeSplit[val].toLowerCase()=="dg_i" || datatypeSplit[val].toLowerCase()=="dg_inull")

		{

			str='_'+feildSplit[val];

			for(i=0;i<document.all.length;i++)

			{

			   var x = document.all.item(i);

			   if(x!=null && x.id !=null &&  x.id.indexOf(str)!=-1)

			   {

				   

				   if(x.value=="" && datatypeSplit[val].toLowerCase()=="dg_i" )

				   {

						alert("Please enter numeric values in this field");

						x.select();

						x.focus();

						return false;

				   }

				   if(x.value!="" && isNaN(x.value)==true )

				   {

						alert("Please enter numeric values")

						x.focus();

						x.select();

						return false;

				   }

				   if(x.value!="" && x.value%1!=0)

				   {

						alert("Please enter integer values")

						x.focus();

						x.select();

						return false;

				   }

				

				   if( x.value!="" && x.value.length>lengthSplit[val])

				   {

						alert("Data exceeds the limit of "+lengthSplit[val]+ " digits")

						x.select();

						x.focus();

						return false

				   }

			   }           

			}

		}

		

		

		

		

		

		

		if(datatypeSplit[val].toLowerCase()=="dg_dc" || datatypeSplit[val].toLowerCase()=="dg_dcnull")

		{

			str='_'+feildSplit[val];

			for(i=0;i<document.all.length;i++)

			{

			   var x = document.all.item(i);

			   if(x!=null && x.id !=null &&  x.id.indexOf(str)!=-1)

			   {

					if(trim(x.value)=="" && datatypeSplit[val].toLowerCase()=="dg_dc" )

					{

					   alert("Please enter " + fieldnamesplit[val] )

						x.select();

						x.focus();

						return false;

					}



					if(isNaN(x.value)==true && !(x.value)=="")

					{

						alert("Please enter numeric values")

						x.select();

						x.focus();

						return false;

					}

					var cklen=lengthSplit[val].split(',');

					if(!(x.value)==""   && x.value.indexOf(".")>-1)

					{

						var ckval=x.value.split('.');

						if(ckval[0].length>cklen[0])

						{

							alert("Data before decimal(.), exceeds the limit of "+cklen[0]+ " digits")

							x.select();

							x.focus();

							return false

						}

						if(ckval[1].length>cklen[1])

						{

							alert("Data after decimal(.), exceeds the limit of "+cklen[1]+ " digits")

							x.select();

							x.focus();

							return false

						}

					}   

					else

					{

						if(!(x.value)==""   &&  x.value.length>cklen[0])

						{

							alert("Data exceeds the limit of "+lengthSplit[val]+ " digits")

							x.select();

							x.focus();

							return false

						}

					}

			   }           

			}

		}

	}

	return true;

}


function formChkForHttp(formname, field1, field2, field3, field4, field5) {

	/*formfield1=eval("document."+formname+"."+field1);
		alert('formfield1 = '+formfield1);
		
	formfield2=eval("document."+formname+"."+field2);
		alert('formfield2 = '+formfield2);
		
	formfield3=eval("document."+formname+"."+field3);
		alert('formfield3 = '+formfield3);
		
	formfield4=eval("document."+formname+"."+field4);
		alert('formfield4 = '+formfield4);
		
	formfield5=eval("document."+formname+"."+field5);
		alert('formfield5 = '+formfield5);


	formfield1=trim(formfield1.value);
		alert('formfield1 = '+formfield1);
		
	formfield2=trim(formfield2.value);
		alert('formfield2 = '+formfield2);
		
	formfield3=trim(formfield3.value);
		alert('formfield3 = '+formfield3);
		
	formfield4=trim(formfield4.value);
		alert('formfield4 = '+formfield4);
		
	formfield5=trim(formfield5.value);
		alert('formfield5 = '+formfield5);*/
		
	name = trim(document.form1.name.value);
		alert('name = '+name);
	email = trim(document.form1.email.value);
		alert('email = '+email);
	telephone = trim(document.form1.telephone.value);
		alert('telephone = '+telephone);
	subject = trim(document.form1.subject.value);
		alert('subject = '+subject);
	comments = trim(document.form1.comments.value);
		alert('comments = '+comments);
	
	if(name.search(/http/i) || email.search(/http/i) || telephone.search(/http/i) || subject.search(/http/i) || comments.search(/http/i))
	{
		alet("Some fields appear to contain illegal characters");
		return false;
	}
	else
	{
		return true;
	}
	
}
