//----trim spaces function---->
function trimspace(str)
{
  var len= str.length;
  if (len != 0)
  {
    for(var i=0;i<len;i++)
    {
      if(str.indexOf(" ")==0)
        str=str.substring(1,len);
    }
    strtrim=str;
  }
  else
  {
    strtrim=str;
  }
  return strtrim;
}

//-----main function----->
function validate(form)
{
  
   var els = form.elements;
	 var elen = els.length;
	 for(var i = 0; i < elen; i++)
	 {
	    var av = els[i].getAttribute('required');
			var bh = els[i].getAttribute('behaviour');
			var msg = els[i].getAttribute('message');
			if(msg == "" || msg == null){
			  msg = av;
			}
			if(msg == "" || msg == null){
				  msg = els[i].name;
			}
			
			
			
		  if(av != null && (els[i].type == "text" ||  els[i].type == "select-one" || els[i].type == "password" || els[i].type == "textarea") && !trimspace(els[i].value))
		  {
		   	alert(msg + " field can't be left blank!");
				els[i].value = '';
				els[i].focus();
				return false;
		 }
		 //vinay test
		 if(els[i].type == "file" && av == "req"){
			
					if(els[i].value=="")
					{
						alert("Please upload valid  txt or doc file.");
						els[i].focus();
						return false;	
					}
					else if(Validexcelsheet(els[i])==false)
					{
						return false;		
					}
					else
					{
						return true;
					}			 
			 
			 }
		 //
		 if(els[i].type == "password" && els[i-1].type == "password" && (els[i].value != els[i-1].value))
		 {
			  alert(msg + " does not match with Password!");
				els[i].focus();
				return false;
		 }
		 if(bh != null && bh == "numeric" && isNaN(els[i].value))
		 {
		    alert(msg + " field accept only numeric value!");
				els[i].value = '';
				els[i].focus();
				return false;
		 }
		 if(bh != null && bh == "alphanumeric" && els[i].value != "" && !isNaN(els[i].value))
		 {
		    alert(msg + " field accept alphanumeric value!");
				els[i].value = '';
				els[i].focus();
				return false;
		 }
		 
		 
		 if(bh != null && bh == "email")
		 {
		    var str=els[i].value;
				var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
				if (! filter.test(str))
				{
				 alert(msg +" field accept only valid email address!");
				 els[i].focus();
				  return false;
				}
		 }
	}
	//eval(form).submit();
}


//---validate csv extension-->
function Validexcelsheet(objsheet, isRequired)
{
	 if(objsheet.value.length!=0)
	 {
		 var iPos = objsheet.value.lastIndexOf(".")
		 var sExt = objsheet.value.substring(iPos);
		
			if(sExt==".txt" || sExt==".doc" || sExt==".TXT" || sExt==".DOC")
			{
				return true;
			}
			else
			{
				alert("Please upload valid  txt or doc file.");
				objsheet.focus();
				objsheet.select();
				return false;
			}
		}
  return true;
}
