var err_01="is required";
var err_02="Please enter valid email id";
var err_03="Email id & confirm email id must be same";
var err_04="Please select";
var err_05="Password must be more than 6 charater long";
var err_06="should be number";
var err_08="New Password  & Re-typed New Password must be same";
var err_09="Enter Valid URL (http://)";
var err_10="must be 10 digits long";
var err_11="Please select an Account Rep";
var err_12="Please enter a First Name";
var err_13="Please enter a Last name";


var errormsg="";
var style="";
function validate(x)
{
	//alert("Call........");
    var x=x;
	for (var i=0;i<x.length;i++)
	{
		// alert( x.elements[i].alt);
		sRules = x.elements[i].title.split(' ');		
		sRules0 = sRules[0];
		sRules1 = sRules[1]; //determines if field is required or not
		sRules2 = sRules[2]; //typecheck are additional validation rules (ie.Email)
		sRules3 = sRules[3]; //confirm //checkbox, radio btn names		
		if(style!="") style.display = "none";
		if(x.elements[i].title!="" && sRules1=="required"){
			//alert(sRules0);
			errormsg=document.getElementById(sRules0);
			style = errormsg.style;
			}
        //alert(x.elements[i].type);
		if(x.elements[i].type=="text" || x.elements[i].type=="textarea" || x.elements[i].type=="password")
			{
				x.elements[i].style.borderColor='#ccc';
				if(sRules1=="required")
					{
					   //alert(x.elements[i].value);
						if(x.elements[i].value=="")
							{
								style.display = "block";
								errormsg.innerHTML="";
								errormsg.innerHTML=sRules2+"&nbsp;"+err_01;
								x.elements[i].style.borderColor='#ff0000';
								x.elements[i].focus();
								setTitleToNull();
								return false;
							}

                         

                        if(sRules2=="Re-type Password")
						   {
                               if(x.password.value!=x.retype_password.value)
							   {
									style.display = "block";
									errormsg.innerHTML="Password and Re-type password must be same";
									x.elements[i].style.borderColor='#ff0000';
									x.elements[i].focus();
									setTitleToNull();
									return false;
							   }
						   }

                         

						 if(sRules2=="Email")
							{
							   if (echeck(x.elements[i].value)==false)
									{
										style.display = "block";
										errormsg.innerHTML=err_02;
										x.elements[i].style.borderColor='#ff0000';
										x.elements[i].focus();
										setTitleToNull();
										return false;
									}
							}
							
							if(sRules2=="Phone Number"||sRules2=="Phone"||sRules2=="Phone-Number"||sRules2=="Text-Message-Numbers")
							{
							    if((IsInteger(x.elements[i].value)==false) )
									{
										errormsg.innerHTML="";
										style.display = "block";
										errormsg.innerHTML=sRules2+"&nbsp;"+err_06;
										x.elements[i].style.borderColor='#ff0000';
								        x.elements[i].focus();
										setTitleToNull();									
										return false;
									}
									
							}

							if(sRules2=="Url"||sRules2=="Website")
							{
								var url=x.elements[i].value;
								var tomatch= /http:\/\/[A-Za-z0-9\.-]{3,}\.[A-Za-z]{3}/
								if(tomatch.test(url)==false)
								{
										style.display = "block";
										errormsg.innerHTML=err_09;
										x.elements[i].style.borderColor='#ff0000';
										x.elements[i].focus();
										setTitleToNull();
										return false;
								}
							}
					}
					

			}
		 if(x.elements[i].type=="select-one")
			{
				if(sRules1=="required")
					{
						if(x.elements[i].options[x.elements[i].selectedIndex].value=="")
							{
								style.display = "block";
								if(sRules3=="err_11")
								{
								 errormsg.innerHTML=err_11;
								}
								else
								{
								errormsg.innerHTML=err_04+"&nbsp;"+sRules2;
								}
								x.elements[i].style.borderColor='#ff0000';
								x.elements[i].focus();
								setTitleToNull();
								return false;
							}
					}

			}
          if(x.elements[i].type=="select-multiple")
			{
				if(sRules1=="required")
					{
						if(x.elements[i].selectedIndex==0||x.elements[i].selectedIndex=="")
							{
								style.display = "block";
								errormsg.innerHTML="&nbsp;&nbsp;&nbsp;"+err_04+"&nbsp;"+sRules2;
								x.elements[i].style.borderColor='#ff0000';
								x.elements[i].focus();
								setTitleToNull();
								return false;
							}
					}

			} 
       if(x.elements[i].type=="file")
		   {
		      if(sRules1=="required")
					{
						
						if(x.elements[i].value=="")
							{
								style.display = "block";
								errormsg.innerHTML="Please browse file";
								x.elements[i].style.borderColor='#ff0000';
								x.elements[i].focus();
								setTitleToNull();
								return false;

							}
					}
		   }
		/* if(x.elements[i].type=="radio")
		   {
		      if(sRules1=="required")
					{	
						var btn = valButton(x.elements[i].name);
						//alert(x.elements[i].name);
						//alert(sRules3);
						if (btn == null) {
							style.display = "block";
							errormsg.innerHTML=sRules2+"&nbsp;"+err_01;
							x.elements[i].style.borderColor='#ff0000';
							x.elements[i].focus();
							setTitleToNull();
							return false;
						}
						if(valbutton(x)==true)
							{
								style.display = "block";
								errormsg.innerHTML=sRules2+"&nbsp;"+err_01;
								x.elements[i].style.borderColor='#ff0000';
								x.elements[i].focus();
								setTitleToNull();
								return false;

							}
					}
		   }*/
		if(x.elements[i].type=="checkbox")
				   {
					  if(sRules1=="required")
							{
								if(x.elements[i].checked==false)
									{
										style.display = "block";
										errormsg.innerHTML=sRules2+"&nbsp;"+err_01;
										x.elements[i].style.borderColor='#ff0000';
										x.elements[i].focus();
										setTitleToNull();
										return false;

									}
							}
				   }
		 
			}
   style.display = "none";
   return true;
}

function echeck(str) 
{

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		 return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		   return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		   return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		   return false
		 }

 		 return true					
}

// Radio Button Validation

function valButton(btn) {
    alert(btn.length);
      //if (cnt > -1) return btn[cnt].value;
    //else return null;
}
                  
function IsInteger(s) {
   	for (var i = 0; i < s.length; i++) 
	{
		var c = s.charAt(i);
		if(c==" ") return false;		
		else if(!((c >= 0) && (c <= 9) || c=='-') )
		{
			return false;
		}
	}	  
	return true;
}


function validateForgotPass(x,y)
{
	
  //alert("validate");
     y.style.backgroundColor="#FFAEAE"; 
     y.style.borderColor="#FFFFFF";
    if(y=="" || y==undefined)
    { 
		var errormsg=document.getElementsByTagName('errormsg');
		var style = errormsg.style;
	
	}
	else
	{
        var errormsg=y;
		var style =y.style;
	}
	var x=x;
	for (var i=0;i<x.length;i++)
	{
		sRules = x.elements[i].title.split(' ');
		sRules1 = sRules[1]; //determines if field is required or not
		sRules2 = sRules[2]; //typecheck are additional validation rules (ie.Email)
		if(x.elements[i].type=="text" )
			{
				if(sRules1=="required")
					{
						if(x.elements[i].value=="")
							{
								style.display = "block";
								errormsg.innerHTML="";
								errormsg.innerHTML=sRules2+"&nbsp;"+err_01;
								x.elements[i].focus();
								return false;
							}
						if(sRules2=="Email")
							{
							   if (echeck(x.elements[i].value)==false)
									{
										style.display = "block";
										errormsg.innerHTML=err_02;
										x.elements[i].focus();
										return false;
									}
								
							}
							
					 }

			}
		
	}
   style.display = "none";
   return true;
}

function word_count(text,doc,total)
{
     text = text.replace(/^\s*|\s*$/g,''); //removes whitespace from front and end
     var count_array = text.split(" ");
	 var len=count_array.length;
	 var remain=total-len;
	 document.getElementById(doc).style.display = "block";
	 document.getElementById(doc).innerHTML=remain+" words remain";
}

function character_count(text,doc,total)
{
     var text = text.replace(/^\s*|\s*$/g,''); //removes whitespace from front and end
     var len=text.length;
	 if(navigator.appName == "Microsoft Internet Explorer")
       {
	 var taObj=event.srcElement;	
	 if (taObj.value.length>taObj.maxLength*1) taObj.value=taObj.value.substring(0,taObj.maxLength*1);
	   }
	 var remain=total-len;
     document.getElementById(doc).style.display = "block";
	 //alert(remain);
	 if(remain >1)
	 {
	  document.getElementById(doc).innerHTML="("+remain+" Characters left)";
	 }
	 else
	 {
       document.getElementById(doc).innerHTML="<font color='red'>Exceeding total characters</font>";
	 }
}

function characterLen(text)
{
	var text = text.replace(/^\s*|\s*$/g,''); //removes whitespace from front and end
    var len=text.length;
	return len;
}

function taLimit() {
        var taObj=event.srcElement;
        if (taObj.value.length==taObj.maxLength*1) return false;
}

function taCount(visCnt) {
        var taObj=event.srcElement;
        if (taObj.value.length>taObj.maxLength*1) taObj.value=taObj.value.substring(0,taObj.maxLength*1);
        if (visCnt) visCnt.innerText=taObj.maxLength-taObj.value.length;
}

