function onlyNumbers(target,alertOnError)
{
	if (target.value.length == 0 || target.value == ""){
		return true;
	}
	re = /^\d+\.?\d*$/
	var str=target.value;
	if(!re.test(str))
	{
		if(alertOnError != null && alertOnError)
			alert("You must enter a number. Please try again.");
		len=str.length;
		str1=str.substr(0,len-1);
		target.value=str1;
		target.focus();
		return false;   
	}
	return true;
}

function onlyInteger(target,alertOnError)
{
	if (target.value.length == 0 || target.value == ""){
		return true;
	}
	re =/^(-|\+)?\d+$/  ;
	var str=target.value;
	if(!re.test(str))
	{
		if(alertOnError != null && alertOnError)
			alert("You must enter a whole  number. Please try again.");
		len=str.length;
		str1=str.substr(0,len-1);
		target.value=str1;
		target.focus();
		return false;   
	}
	return true;
}


function ensureMoney(obj,nullable){
	if (obj.length == 0 || obj == ""){
		return nullable;
	}else{
		var val = obj.value;
		if (parseFloat(val)){
			//obj.value = parseFloat(val);
			var idx = val.indexOf(".");
			if (idx<0){
				obj.value = val + ".00";
			}else if (idx == 0){
				val = "0" + val + "00";
				obj.value = val.substring(0,4)
			}else{
				val += "00";
				obj.value = val.substring(0,idx+3);
			}
		}else{
			obj.value = "";
		}
	}
}


function round(digit,How) 
{ 
	var ret = Math.round (digit*Math.pow(10,How))/Math.pow(10,How); 
	return ret; 
} 

function roundMoney(digit) 
{ 
	return round(digit,2); 
} 


function jumpPhone(currentName,nextName,length)
{
	var len = length==null?3:length;

	var cur = document.all[currentName];
	if(!onlyNumbers(cur))
		return ;
	if(cur.value.length>=len)
	{
		document.all[nextName].focus();
	}
}


function formatPhone(phoneStr,format)
{
	var num = phoneStr.replace(/[^\d]/g,'');
	if(num.length != 10){
		alert('Please enter a valid phone number including area code'); 
		return "";
	}else{
		if(format==null || format=='0')
			return "(" + num.substring(0,3) + ") " + num.substring(3, 6) + " - " + num.substring(6);
		else if(format=='1')
			return num.substring(0,3) + "-" + num.substring(3, 6) + "-" + num.substring(6);
		else
			return num;
	}
}


function verify(str,pat)
{
	var patterns = new Object();

    // ip address
    patterns.ip = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])(\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])){3}$/;
    //email:
    patterns.email = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;

	thePat = patterns[pat];
	if(thePat.test(str))
	{
		return true;
	}
	else
	{
		return false;
	}
}
