
function lTrim(xyz)
{
	while((''+xyz).charAt(0)==' ')
		xyz=xyz.substring(1,xyz.length);
	return xyz;
}

// Function for RighTrim MOdified
function rTrim(xyz)
{
	while((''+xyz).charAt(xyz.length-1)==' ')
	xyz=xyz.substring(0,xyz.length-1);
	return xyz;
}
function emailValidate(str)
{
	str = rTrim(lTrim(str));
	retVal = true;
	
	if(someValInOneNotInTwo(str,"abcdefghijklmnopqrstuvwxyz_-ABCDEFGHIJKLMNOPQRSTUVWXYZ@12345.67890"))
	{
		retVal = true;	
	}
	else
	{
	retVal=false;
	}
	at = str.indexOf('@');
	dot= str.indexOf('.');
	substr2 = str.substr(at+1,str.length); //extract substring after @
	secondAt = substr2.indexOf('@');
	dotAfterFirstAt = substr2.indexOf('.');
	sublen = substr2.length;

	if((at==-1)||(dot==-1))
	{
		//alert("Please enter a valid email id");
	 	retVal = false; //if either dot or @ are absent
	}
	else if(at < 1)
	{
		//alert("Please enter a valid email id");
		retVal = false; //if the last character is a dot
	}
	else if(substr2.charAt(sublen-1)=='.')
	{
		//alert("Please enter a valid email id");
		retVal = false; //if the last character is a dot
	}
	else if(secondAt!=-1) 
	{
		//alert("Please enter a valid email id");
		retVal = false; //if a second @ is present
	}
	else if((dotAfterFirstAt==0)||(dotAfterFirstAt==-1)) 
	{
		//alert("Please enter a valid email id");
		retVal = false; //if dot is present immediately after first @ or absent after first @
	}

	if(retVal==false)alert("Please enter a valid email id");
	return retVal;
}

function someValInOneNotInTwo(strg,val)
{
	retVal = true;
	for (i=0;i<strg.length;i++)
	{
		var s = strg.charAt(i);
		if (val.indexOf(s)==-1) 
			retVal = false;
	}

	return retVal;
}