/* Checks memo field length */
function chkMemoLength(strValue,strMsg)
{
	if (strValue.length	> 65535)
	{
		alert(strMsg);
		return false;
	}
	return true;
}
function chkMemoLength1(strValue,strMsg)
{
	if (strValue.length	> 60000)
	{
		alert("Descriptio Can not be greater then the 60,000 character ");
		return false;
	}
	return true;
}

function validstconcity(strValue, strMsg)
{
	var i, strnum;
	for(i=0; i<=strValue.length-1; i++)
	{
		strnum = strValue.charCodeAt(i);
		
		if ((strnum >= 48 && strnum <=57) || (strnum >= 65 && strnum <=90) || (strnum >= 97 && strnum <=122) ||  strnum == 45 || strnum == 39 || strnum == 32)
		{
		}
		else
		{
			alert(strMsg);
			return false;
		}
	}
	return true;
}

function checkvaluerate(strValue,strMsg)
{ 	var strsub
	strsub=strValue.indexOf(".")
	if(strsub>=0)
	{	
		if (strValue.substring(0,strValue.indexOf("."))>99999)
			{
			alert(strMsg);
			return false;
			}
	}
	else
	{ 	
		if (strValue>99999)
			{
			alert(strMsg);
			return false;
			}
	}
	return true;
}

function chkExtension(strVal,strMsg)
{
	var dotpos;
	var strExtension = new String;
	var arrExtension = new Array();
	arrExtension[0] = ".jpg";
	arrExtension[1] = "jpeg";
	arrExtension[2] = ".bmp";
	arrExtension[3] = ".tif";
	arrExtension[4] = ".tiff";
	arrExtension[5] = ".gif";
	dotpos = strVal.indexOf(".");
	strExtension = strVal.substring(dotpos);
	for (i=0;i<=arrExtension.length-1;i++)
	{
		 
		if (arrExtension[i] == strExtension)
		{		
				return true;
		}
	}
	alert(strMsg);
	return false;
}
function checkDecimal(strValue, strMsg, noofdecimal)
{ 
	if (strValue.indexOf(".") >= 0 )
	{
		if (strValue.indexOf(".") != strValue.lastIndexOf("."))
		{
			alert("Only one decimal point is allowed");
			return false;
		}
		else
		{
			var strDecimal;
			strDecimal = strValue.substring(strValue.indexOf("."), strValue.length)
			if (strDecimal.length > noofdecimal )
			{
				tmpno = noofdecimal-1 ;
				alert("Only 2 digits allowed after decimal points");
				//ctrlName.value = strVal.substring(0,strVal.length -1);
				return false
			}
			else
			{
				if (strValue.length == 1)
				{
					alert("Only decimal point not allowed");
					return false;
				}
				else
					return true;
			}
		}
	}
	else
	{
		return true;
	}
}

function chkEmail(strValue,strMsg)
{
	var atsign;
	var dotsign;
	atsign = strValue.indexOf("@") 
	dotsign = strValue.indexOf(".") 
	if (atsign > 0 && dotsign > 0 && dotsign > atsign)
	{
		return true;
	}
	else
	{
		alert(strMsg);
		return false;
	}
}//end of chkmail

function checkspace(strValue, strMsg)
{
		if(strValue.split(" ").join("").length==0)
		{
				alert(strMsg);
				return false;
		}
		return true;
}

function validatechar(strValue, strMsg)
{
	var i, strnum;
	for(i=0; i<=strValue.length-1; i++)
	{
		strnum = strValue.charCodeAt(i);
		if ((strnum >= 48 && strnum <=57) || (strnum >= 65 && strnum <=90) || (strnum >= 97 && strnum <=122) || strnum == 39 || strnum == 32 || strnum == 45)
		{
		}
		else
		{
			alert(strMsg);
			return false;
		}
	}
	return true;
}
function validatechar1(strValue, strMsg)
{
	var i, strnum;
	for(i=0; i<=strValue.length-1; i++)
	{
		strnum = strValue.charCodeAt(i);
		if ((strnum >= 48 && strnum <=57) || (strnum >= 65 && strnum <=90) || (strnum >= 97 && strnum <=122) || strnum == 39 || strnum == 32 || strnum == 45 || strnum == 44)
		{
		}
		else
		{
			alert(strMsg);
			return false;
		}
	}
	return true;
}

function num(strValue, strMsg)
{
	var i, strnum;
	for(i=0; i<=strValue.length-1; i++)
	{
		strnum = strValue.charCodeAt(i);
		if (strnum >= 48 && strnum <=57)
		{
		}
		else
		{
			alert(strMsg);
			return false;
		}
	}
	return true;
}

function alphanum(strValue, strMsg)
{
	var i, strnum;
	for(i=0; i<=strValue.length-1; i++)
	{
		strnum = strValue.charCodeAt(i);
		if ((strnum >= 48 && strnum <=57) || (strnum >= 65 && strnum <=90) || (strnum >= 97 && strnum <=122))
		{
		}
		else
		{
			alert(strMsg);
			return false;
		}
	}
	return true;
}
function validatecard(strcardnum,cardtype)
{
	if (cardtype == 1)
	{
		if (strcardnum.substr(0,1) == "4" && strcardnum.split(" ").join().length == 16)
			return true;
		else
		{
			alert("Not a valid VISA card number");
			return false;
		}
	}
	else
	{
		if (cardtype == 2)
		{
			if (strcardnum.substr(0,1) == "5" && strcardnum.split(" ").join().length == 16)
				return true;
			else
			{
				alert("Not a valid MASTER card number");
				return false;
			}
		}
		else		
		{
			if (strcardnum.substr(0,1) == "3" && strcardnum.split(" ").join().length == 14)
				return true;
			else
			{
				alert("Not a valid AMERICAN EXPRESS card number");
				return false;
			}
		}
	}
}
function validpno(strValue, strMsg)
{
	var i, strnum;
	for(i=0; i<=strValue.length-1; i++)
	{
		strnum = strValue.charCodeAt(i);		
	
		if ((strnum >= 48 && strnum <=57) || strnum == 32 || strnum == 45 || strnum == 40 || strnum == 41)
		{
				//alert(strnum);
		}
		else
		{
			alert(strMsg);
			return false;
		}
	}
	return true;
}

function numdot(strValue, strMsg)
{
	var i, strnum;
	for(i=0; i<=strValue.length-1; i++)
	{ 
		strnum = strValue.charCodeAt(i);
		if ((strnum >= 48 && strnum <=57) || (strnum==46))
		{ 
		}
		else
		{
			alert(strMsg);
			return false;
		}
	}
	return true;
}

//New function added on 14-jun-06 
function chkEmailid(emailStr)
{
	var emailPat=/^(.+)@(.+)$/
	var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
	var validChars="\[^\\s" + specialChars + "\]"
	var quotedUser="(\"[^\"]*\")"
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
	var atom=validChars + '+'
	var word="(" + atom + "|" + quotedUser + ")"
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
	var matchArray=emailStr.match(emailPat)
	if (matchArray==null) {
		alert("Email address seems incorrect (check @ and .'s)")
		return false
	}
	var user=matchArray[1]
	var domain=matchArray[2]
	if (user.match(userPat)==null) {
		alert('Not a valid email address! Please click \"request login\" again')
		return false
	}
	var IPArray=domain.match(ipDomainPat)
	if (IPArray!=null) {
		  for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
				alert("Destination IP address is invalid!")
			return false
			}
		}
		return true
	}
	var domainArray=domain.match(domainPat)
	if (domainArray==null) {
		alert("The domain name doesn't seem to be valid.")
		return false
	}
	var atomPat=new RegExp(atom,"g")
	var domArr=domain.match(atomPat)
	var len=domArr.length
	if (domArr[domArr.length-1].length<2 || 
		domArr[domArr.length-1].length>3) {
	   alert("The address must end in a three-letter domain, or two letter country.")
	   return false
	}
	if (len<2) {
	   var errStr="This address is missing a hostname!"
	   alert(errStr)
	   return false
	}
	return true;
}//end of chkmail
function isEmail(str) 
{
	// are regular expressions supported?
	var supported = 0;
	if (window.RegExp)
	{
		var tempStr = "a";
		var tempReg = new RegExp(tempStr);
		if (tempReg.test(tempStr)) supported = 1;
	}

	if (!supported) 
	{ return (str.indexOf(".") > 2) && (str.indexOf("@") > 0); }
	var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
	var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
	return (!r1.test(str) && r2.test(str));
}
