	function verify_form(form)
	{
		// onsubmit =  "return verify_form(this)" 
		var index=0;
		var html = "";
		for(index=0;index<form.elements.length;++index)
		{
			name =form.elements[index].name;
			val = form.elements[index].value;
			alt  = form.elements[index].alt;
			compulsory = name.charAt(name.length-2);
			datatyp = name.charAt(name.length-1);
			iscollection=0;
			
			if(datatyp==']')
			{
				
				compulsory = name.charAt(name.length-4);
				datatyp = name.charAt(name.length-3);
				iscollection=1;
			}
			
			itm = form.elements[index];
			
			if(iscollection==0)
			{
				if(datatyp!='c')
				{
					if(!verify_comma(itm.value))
					{
						alert("Comma Character is not allowed in this field");	
						//correctString(itm);
						//alert(itm.value);
						itm.focus();
						return false;
					}
				}
				//first to check the cumpulsory field
				if(compulsory=='c')
				{
					if(!verify_length(val))
					{
						html= html+"Error: Please fill ";
						if(alt.length) html= html+alt;
						else
							html = html+" field focused";
						alert(html);
						itm.focus();
						return false;
					}
				}
				//for number and cumpulsory field
				if(datatyp=='n' && compulsory=='c')
				{
					if(!verify_number(val))
					{
						html= html+"Error : Please fill";
						if(alt.length) html=html+alt+ " with Numeric Data";
						else
							html = html+" field Focused 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";
							if(alt.length) html=html+alt+ " with Numeric Data";
								else
								html = html+" field Focused with Numeric Data";
										
							alert (html);
							itm.focus();
							return false;
						}
					}
				}
				//For email and cumpulsory field
				if(datatyp=='e' && compulsory=='c')
				{
					if(!verify_email(val))
					{
						html= html+"Error : Please fill";
						if(alt.length) html=html+alt+ " with valid Email address";
						else
							html = html+" field Focused with valid Email address";
										
			

						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";
							if(alt.length) html=html+alt+ " with valid Email address";
							else
							html = html+" field Focused with valid Email address";
							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";
						if(alt.length) html=html+alt+ " with Valid date in YYYYMMDD format";
						else
							html = html+" field Focused with Valid date in YYYYMMDD format";
						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";
							if(alt.length) html=html+alt+ " with Valid date in YYYYMMDD format";
							else
							html = html+" field Focused with Valid date in YYYYMMDD format";
			
							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";
						if(alt.length) html=html+alt+ " with Valid Time Format HHMMSS";
						else
							html = html+" field Focused with Valid Time Format HHMMSS";
						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";
							if(alt.length) html=html+alt+ " with Valid Time Format HHMMSS";
							else
							html = html+" field Focused with Valid Time Format HHMMSS";
							alert (html);
							itm.focus();
							return false;
						}
					}
				}
			}//iscollection end
			else
			{
				if(compulsory=='c')			
				{
				 	if(itm.options.length<1)
				 	{
				 		alert('Please Fill '+alt+' List with atleast one value');
				 		itm.focus();
				 		return false;
					}
				}
			}//else iscollection end
			
		/////////////////////////////////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;
	}
	

