	function verify_form(form)
	{
		// onsubmit =  "return verify_form(this)" 
		var index=0;
		var html = "";
		for(index=0;index<form.length;++index)
		{
			name =form.elements[index].name;
			val = form.elements[index].value;
			chkforname = name.charAt(name.length-3);
			compulsory = name.charAt(name.length-2);
			datatyp = name.charAt(name.length-1);
			itm = form.elements[index];
			if(!verify_comma(form.elements[index].value)){
				//alert("Comma Character is not allowed Check field"+form.elements[index].name);	
				correctString(itm);
				//alert(itm.value);
				//return false;
			}
				
				//first to check the cumpulsory field
				if(compulsory=='c')
				{
					if(!verify_length(val))
					{
						html= html+"Error: Please fill field Focused ";
						//html= html+write_string_removing_underscore(name.substring(0,name.length-2));
						//html= html+name;
						//html= html+"'";
						alert(html);
						itm.focus();
						return false;
					}
				}
				
				//first to check the valid name
				if(chkforname=='n' && compulsory=='c' && datatyp=='s')
				{
				    message= "Error: Please fill valid name in the field Focused ";
				    if(!val.match(/^[a-zA-Z'.`-Â´\s]{1,40}$/))
					{
					    alert(message);
					    itm.focus();
                        return false;
                    }
				}
				
				//for number and cumpulsory field
				if(datatyp=='n' && compulsory=='c')
				{
					if(!verify_number(val))
					{
						html= html+"Error: Please fill focused field with numeric data";
						//html= html+write_string_removing_underscore(name.substring(0,name.length-2));
						//html= html+"With Numeric data..";
						alert (html);
						itm.focus();
						return false;
					}
				}
				//For Number and optional field
				if(datatyp=='n' && compulsory=='o')
				{
					if(verify_length(val))
					{
						if(!verify_number(val))
						{
							html= html+"Error: Please fill focused field with numeric data";
							//html= html+write_string_removing_underscore(name.substring(0,name.length-2));
							//html= html+"With Numeric data..\n";
							alert (html);
							itm.focus();
							return false;
						}
					}
				}
				
				//first to check the Dropdown Index Value
				if(chkforname=='s' && compulsory=='c' && datatyp=='s')
				{
				    message= "Error: Please select the Contact Reason.";
				    if(val == "0")
					{
					    alert(message);
					    itm.focus();
                        return false;
                    }
				}
				
				//For email and cumpulsory field
				if(datatyp=='e' && compulsory=='c')
				{
					if(!verify_email(val))
					{
						html= html+"Error: Please fill focused field with valid email address";
						//html= html+write_string_removing_underscore(name.substring(0,name.length-2));
						//html= html+"With Valid email format..\n";
						alert (html);
						itm.focus();
						return false;
					}
				}
				
				//For email and cumpulsory field
				if(datatyp=='e' && compulsory=='o')
				{
					if(verify_length(val))
					{
						if(!verify_email(val))
						{
							html= html+"Error: Please fill focused field with valid email address";
							//html= html+write_string_removing_underscore(name.substring(0,name.length-2));
							//html= html+"With Valid email format..\n";
							alert (html);
							itm.focus();
							return false;
						}
					}
			
				}
		
				//For date and cumpulsory field
				if(datatyp=='d' && compulsory=='c')
				{
				
					if(!verify_date(val))
					{
						html= html+"Error : Please fill field Focused with Valid date in YYYYMMDD format";
						//html= html+write_string_removing_underscore(name.substring(0,name.length-2));
						//html= html+"With Valid date format..\n";
						alert (html);
						itm.focus();
						return false;
					}
				
				}
				//For date and cumpulsory field
				if(datatyp=='d' && compulsory=='o')
				{
					if(verify_length(val))
					{
						if(!verify_date(val))
						{
							html= html+"Error : Please fill field Focused with Valid date in YYYYMMDD format";
							//html= html+write_string_removing_underscore(name.substring(0,name.length-2));
							//html= html+"With Valid Date format..\n";
							alert (html);
							itm.focus();
							return false;
						}
					}
				
				}
				//For time and cumpulsory field
				if(datatyp=='t' && compulsory=='c')
				{
					if(!verify_time(val))
					{
						html= html+"Error : Please fill field Focused with Valid Time Format HHMMSS";
						//html= html+write_string_removing_underscore(name.substring(0,name.length-2));
						//html= html+"With Valid time format..\n";
						alert (html);
						itm.focus();
						return false;
					}
					
				}
				//For time and cumpulsory field
				if(datatyp=='t' && compulsory=='o')
				{
					if(verify_length(val))
					{
						if(!verify_time(val))
						{
							html= html+"Error : Please fill field Focused with Valid Time Format HHMMSS";
							//html= html+write_string_removing_underscore(name.substring(0,name.length-2));
							//html= html+"With Valid time format..\n";
							alert (html);
							itm.focus();
							return false;
						}
					}
				}
				
				//For check the uploaded file extension (DOC or PDF)
				if(compulsory=='f' && datatyp=='u')
				{
				    if (val.length>0)
				    {
				        message= "Error: Please select only DOC or PDF File ";
				        if(!val.match(/[a-zA-Z0_9].*\b(.doc|.DOC|.pdf|.PDF)\b/))
					    {
					        alert(message);
					        itm.focus();
                            return false;
                        }
                    }
                    //var oFso = new ActiveXObject("Scripting.FileSystemObject");
                    //if ()
				    //{
				        //alert("Error: selected file does not exist");
				        //itm.focus();
                        //return false;
                    //}
				}
				
		/////////////////////////////////end of checks //////////////////////////
		}
		return true;
	}
	function verify_length(vals)
	{
		var val=vals.length;
		if(val==0||val==null)
			return false;
		return true;
	}
	function verify_number(val)
	{
		var str = val;
		var dotflag=false;
		for(var i=0;i<str.length;++i)
		{
			ch=str.charAt(i);
			if(dotflag && ch=='.')
			{return false;}
			if(ch=='.')
			{  dotflag=true;continue;}
			else
			if(!(ch=='0' || ch=='1' || ch=='2' || ch=='3' || ch=='4' || ch=='5' || ch=='6' || ch=='7' || ch=='8' || ch=='9' )) 
			{return false;}
		}
		return true;
	}
	function write_string_removing_underscore(str)
	{
		var stringtemp = "";
		for(var i=0;i<str.length;++i)
		{
			ch=str.charAt(i);
				if(ch!='_')
				{stringtemp = stringtemp+ch;}
				else
				stringtemp = stringtemp+" ";
		}
		return stringtemp;
	}
	
	function verify_comma(str)
	{
		if(str.indexOf("'")==-1)return true;
		return false;		
	}
	
	function verify_email(email)
	{
		var firstchar=email.charAt(0);	
		if((firstchar>='A' && firstchar<='Z')||(firstchar>='a' && firstchar<='z'))
		{
			if( (email.indexOf('@')!=-1) && (email.indexOf('.')!=-1) )
				return true;
			else
				return false;
		}
		else
			return false;
	}	
				
	function verify_date(date)
	{
		if(date.length==8)
		{
			if(!isNaN(date))
			{	
				var year=date.substring(0,4);
				var month=date.substring(4,6);
				var day=date.substring(6,8);
				if( (year>=1900 && year<=3050)  && (month>=1 && month<=12) )
				{			
					if(month==2)
					{
						if(year%4==0 && day==29)
						{
							return true;
						}
						else if(day>=1 && day<=28 && year%4!=0)
						{
						
							return true;								
							
						}
					}
	
					if(month==4||month==6||month==9||month==11)
					{
						if(day>=1 && day<=30)
						{
							return true;
						}
						else
						{
							return false;
						}
					}

					if(day>=1 && day<=31)
					{
						return true;
					}
				}	
			
			}
			return false;
		}
		return false;
	}	


	function verify_time(time)
	{
	
		if(time.length==6)
		{
			if(!isNaN(time))
			{
				var hour=time.substring(0,2);
				var minute=time.substring(2,4);
				var second=time.substring(4,6);
			
				if( (hour>=0 && hour<=23) && (minute>=0 && minute<=59) && (second>=0 && second<=59) )
				{
					return true;
				}			
			}
		}
		return false;	
	}
	
	function correctString(itm)
	{
		var valtemp=itm.value;
		var stringtemp = "";
		for(var i=0;i<valtemp.length;++i)
		{
			ch=valtemp.charAt(i);
			tstr = ch+"";
			if(tstr!="'")
			{stringtemp = stringtemp+ch;}
			else
			stringtemp = stringtemp+"''";
			
		}
		itm.value=stringtemp;
	}
	
	function ismaxlength(obj)
		{
            var mlength=300
            if (obj.value.length>mlength)
            obj.value=obj.value.substring(0,mlength)
        }
    function ismaxstroylength(obj)
		{
            var mlength=1000
            if (obj.value.length>mlength)
            obj.value=obj.value.substring(0,mlength)
        }