/*
###############################################################################################
########	Created by Vipin ##################################################################
######## 	contains Validation functions	###############
###############################################################################################
*/
function cutSpaces(s)
{
        var s1, x;
        x = s1 = "";
        l = s.length;
        for(j = 0; j < l; j++)
                if((x = s.charAt(j)) != " ")
                        s1+=x;
        return s1;
}
/*  (cutSpaces(e.value)=='') */
function isselect(field)
{
	if(field.value == 0 )
		{return false;}	
	else
		{return true; }
}	
function isphone(field)
{
	if(isNaN(field.value) )
		{	
			return false;
		}	
	else
		{
			return true; 
		}
}	

function validpassword(field)
{
	a = field.value;	
	if(a.length<6 )
		{return false;}	
	else
		{return true; }
}	


function isfilled(field)
{
	if(cutSpaces(field.value)=='' )
		{return false;}	
	else
		{return true; }
}	
function isemail(field)
{
	if( (field.value.indexOf("@") == -1 ) || (field.value.indexOf(".") == -1 )  )
		{return false;}	
	else
		{return true; }
}	


function test(f)
{
	for(var i=0; i<f.elements.length; i++)
	{
			var element=f.elements[i];

			if(element.className.indexOf("mandatorypassword") != -1)   //-1 means index found 
			{
					
					if(!validpassword(element))
					{
						alert ("Password must be atleast 6 characters long");
						element.focus();
						return false;
					}
			}
			if(element.className.indexOf("confirmpassword") != -1)   //-1 means index found 
			{
					
					if(!validpassword(element))
					{
						alert ("Confirm Password must be atleast 6 characters long");
						element.focus();
						return false;
					}
			}
			if(element.className.indexOf("mandatoryphone") != -1)   //-1 means index found 
			{
					
					if(!isphone(element))
					{
						alert ("Please enter only numbers in contact number");
						element.focus();
						return false;
					}
			}


			if(element.className.indexOf("mandatory") != -1)   //-1 means index found 
			{
					if(!isfilled(element))
					{
						alert ("Please enter your "+element.title);
						element.focus();
						return false;
					}
			}
			if(element.className.indexOf("cbo_mandatory") != -1)   //-1 means index found 
			{
					
					if(!isselect(element))
					{
						alert ("Please select "+element.title);
						element.focus();
						return false;
					}
			}

			if(element.className.indexOf("mandatorylastnamerequired")!= -1)			
			{
					if(!isemail(element))
					{
						alert ("Please enter last name");
						element.focus();
						return false;
					}
			}
			if(element.className.indexOf("mandatoryemailrequired")!= -1)			
			{
					if(!isemail(element))
					{
						alert ("Please enter valid email address");
						element.focus();
						return false;
					}
			}
			

			
			if(element.className.indexOf("confirmpass")!= -1)			
			{

				var pass = document.getElementById("user_password").value;
				var t_confirmpass = document.getElementById("user_confirm_password").value;
				if(pass != t_confirmpass )
				{
					alert ("Password does not match");
					document.getElementById("user_confirm_password").focus();
					return false;
				}
			}
			
			if(element.className.indexOf("uname")!= -1)			
			{
				var un = document.getElementById("user_name").value;
				var ValidateSpChar = /[a-zA-Z0-9]/g;
				var specialString = un.replace(ValidateSpChar, "");

				if(specialString.length > 0)
				{
					alert("username contains special (#,@,&,$ etc) characters");
					document.getElementById("user_name").value = "";
					document.getElementById("user_name").focus();
					return false;
				}				
			}
		
	}
	return true;
}





function prepareform()
{
	if(!document.getElementById("myfrm")) return ;
	var id=document.getElementById("myfrm");
	id.onsubmit=function(){
		return test(this);
	}
}

function prepareform_login()
{
	if(!document.getElementById("myfrm_login")) return ;
	var id=document.getElementById("myfrm_login");
	//id.onload = document.getElementById("username").focus();
	id.onsubmit=function(){
		return test(this);
	}
}

function email_validateform(f)
{
	for(var i=0; i<f.elements.length; i++)
	{
		var element=f.elements[i];
		if(element.className.indexOf("required_field") != -1)   //-1 means index found 
		{
			if(!isfilled(element))
			{
				alert ("Please enter your friends name");
				element.focus();
				return false;
			}
		}
		if(element.className.indexOf("required_emailfield")!= -1)			
		{
			if(!isemail(element))
			{
				alert ("Please enter valid email address");
				element.focus();
				return false;
			}
		}
		if(element.className.indexOf("sender") != -1)   //-1 means index found 
		{
			if(!isfilled(element))
			{
				alert ("Please enter your name");
				element.focus();
				return false;
			}
		}
	}
	return true;
}

function addLoadEvent(func)
{
 	var oldonload=window.onload;
	if(typeof window.onload!= 'function')
	{
		window.onload=func	;
	}
	else
	{	
		window.onload= function(){
			oldonload();
			func();
		}	
	}
}




addLoadEvent(prepareform); 
addLoadEvent(prepareform_login); 
