function MM_findObj(n, d) { //v4.0
  var p,i,x;  
  if(!d) d=document; 
  if((p=n.indexOf("?"))>0 && parent.frames.length) {d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; 
  for (i=0; !x &&i<d.forms.length; i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); 
  return x;
}

function findObj(id) 
{
	return MM_findObj(id);
}

function showObj(id)
{
	var obj = findObj(id);
	if (obj)
		obj.style.display = "block";		
}

function hideObj(id)
{
	var obj = findObj(id);
	if (obj)
		obj.style.display = "none";		
}

function validateRequired(value)
{
	return value != "";
}

function validateEmail(value)
{
	var v_Expr = "[\\w-_\\.]+@[\\w-_\\.]+\\.[\\w-_]+";
	return validateRegExp(value, v_Expr);
}

function validateEmailOpt(value)
{
	if (value == "") return true;
	var v_Expr = "[\\w-_\\.]+@[\\w-_\\.]+\\.[\\w-_]+";
	return validateRegExp(value, v_Expr);
}

function validateZipOpt(value)
{
    if( value=="") return true;
    return validateZip(value);
}

function validateZip(value)
{
	//var v_Expr = "[0-9]{5}[0-9 \\-]{0,5}";
	//return validateRegExp(value, v_Expr);
	var  re = /^\d{5}([\- ]\d{4})?$/
	return re.test(value);     
}

function validateName(value)
{
	var v_Expr = "[A-Za-z]{1}[A-Za-z \\-\\.\\',]*";
	return validateRegExp(value, v_Expr);
}

function validateAddressOpt(value)
{
    if(value=="")
        return true;
    return validateAddress(value);    
}

function validateAddress(value)
{
	var v_Expr = "[A-Za-z0-9#]{1}[A-Za-z0-9 \\-\\.\\',#]*";
	return validateRegExp(value, v_Expr);
}

function validatePhoneRequired(value)
{
	if (value == "") return false;

	return validatePhone(value);	
}

function validatePhone(value)
{
	if (value == "") return true;

	var v_Expr = "[0-9\(]{3}[A-Za-z0-9 \(\)\\.\\-]*";
	if (validateRegExp(value, v_Expr) == false)
		return false;
        
	var stripped = value.replace(/[\(\)\.\-\ ]/g, '');
	if (stripped.length != 10)
		return false;
		
	return true;	
}

function validateNumber(value)
{
	var v_Expr = "[0-9]*";
        return validateRegExp(value, v_Expr);
}

function validateRegExp(value, expr)
{
	var v_RegExp = new RegExp(expr);
	return (v_RegExp.exec(value) == value);
}

