function validatefb(fname)
{
	totLength = fname.elements.length;
	for(i=1;i<=totLength;i++)
	{
		elemName = fname.elements[i-1].name;
		elemNameDisplay = getElementName(elemName);
		elemValue = fname.elements[i-1].value;

		if(!eval("fname."+elemName+".disabled"))
		if(getMandatoryPattern(elemName))
		{
			returnValue = checkNull(elemValue);
			if(!returnValue)
			{
				alert("Please Provide "+elemNameDisplay);
				eval("fname."+elemName+".focus()");
				return false;
			}
			else
			{
				elemType = getTypePattern(elemName);
				switch(elemType)
				{
					case "text" :
						if(!checkText(elemValue))
						{
							alert("Please Enter Only Alphabets For "+elemNameDisplay);
							eval("fname."+elemName+".focus()")	;
							return false;
						}
						else
						{
							//LEADING AND TRAILING SPACES ARE TRIMMED
							eval("fname."+elemName+".value='"+trimSpaces(elemValue)+"'")
						}
						break;

					case "numb" :
						if(!checkNumber(elemValue))
						{
							alert("Please Enter Only Numbers For "+elemNameDisplay);
							eval("fname."+elemName+".focus()")	;
							return false;
						}
						break;

					case "mony" :
						if(!checkCurrency(elemValue))
						{
							alert("Please Enter "+elemNameDisplay+" With Format [1234.55]");
							eval("fname."+elemName+".focus()")	;
							return false;
						}
						break;

					case "mail" :
						if(!checkEmail(elemValue))
						{
							alert("Please Provide Valid "+elemNameDisplay+" [Eg : emailaddress@email.com]");
							eval("fname."+elemName+".focus()");				
							return false;
						}
						break;

					case "pass" :
						txtTempElement = ''
						txtTempElement = elemName
						if(eval("fname."+elemName+".value.length")<6)
						{
							alert("Your Password Must be Minimum 6 Characters In Length");
							eval("fname."+elemName+".focus()");
							//STORING PASSWORD ELEMENT NAME FOR USE IN CONFIRMATION
							return false;
						}		
						break;

					case "cpas" :
						if(eval("fname."+elemName+".value.length")<6)
						{
							alert("Your Password Confirmation Must be Minimum 6 Characters In Length");
							eval("fname."+elemName+".focus()");
							return false;
						}
						else
						{
							/*
							PASSWORD AND CONFIRM PASSWORD MUST BE EQUAL
							A TEMPORARY VARIABLE IS USED TO HOLD THE NAME
							OF PASSWORD FIELD.
							*/
							txtPassword = eval("fname."+txtTempElement+".value")
							if(elemValue!=txtPassword)
							{
								alert("Password And Confirmation Does Not Match, Please Verify")
								eval("fname."+txtTempElement+".value=''");
								eval("fname."+elemName+".value=''");
								eval("fname."+txtTempElement+".focus()");
								//eval("fname."+txtTempElement+".select()");								
								return false;
							}
						}
						break;
						
				}//END OF SWITCH
			}//IF CONDITION FOR RETURN VALUE
		}//IF CONDITION FOR MANDATORY ELEMENTS
	}//FOR LOOP
	return true;
}//FUNCTION END

function getElementName(strValue)
{
	//GETTING UPTO intPos-2 POSITION FOR GETTING FILENAME
	var intPos = strValue.indexOf("YY")
	if(intPos==-1)
		retVal = strValue
	else
		var retVal = strValue.substr(0,(intPos-1))
	return retVal
}

function getMandatoryPattern(strValue)
{
	//var regex =/^[\(Y\)]$/;
	var regex = /YY/i;
	if(strValue.match(regex)==null)
		return false
	else
		return true
}

function getTypePattern(strValue)
{
	var intPos = strValue.indexOf("ZZ")
	if(intPos==-1)
		retVal = ''
	else	
		var retVal = strValue.substr((intPos+2),4)
		
	return retVal
}
	
function checkEmail(src) 
{
	//EMail Validation
	var regex =/^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/;
	return regex.test(src);
}

function checkNull(elemValue)
{
	if(elemValue=='')
		return false
	else
		return true
	
//	if(eval("fname."+felem+".value")=="")
//	{
//		return false
//	}
//	else
//		return true
}

function checkCurrency(str)
{
	//validation for currency				
	var regexp = /^([(\d+)]+\.)+[(\d+)]{2}$/;
	return regexp.test(str);
}

function checkNumber(parValue)
{
	//validation for Number
	var regexp = /^(\d+)$/;
	return regexp.test(parValue);
}

function checkText(parValue)
{
	/*
	VALIDATION FOR ENTERING ALPHABETS ALONE.
	MINIMUM ONE ALPHABET
	*/
	var regex =/^([a-zA-Z\s]+)$/;	
	return regex.test(parValue);
}

function trimSpaces(val) 
{
	ltrim(val);
	return result;		
}
function ltrim(lval)
{
	if(lval=="" || lval.charAt(0)!=' ')  
 		return rtrim(lval);
	else
		ltrim(lval.substring(1,lval.length));
}
function rtrim(rval) 
{
	if(rval=="" || rval.charAt(rval.length-1)!=' ')  	 
		{result =rval; return rval;}
	else
		rtrim(rval.substring(0,(rval.length-1)));
}


function checkText1(parValue)
{
	/*
	VALIDATION FOR ENTERING ALPHABETS ALONE.
	MINIMUM ONE ALPHABET
	*/
	var regex =/^[a-zA-Z]{5,}$/;
	return regex.test(parValue);
}
	

