    var rules=new Array();
    rules[0]='fname:First Name|required'; 
    rules[1]='lname:Last Name|required';
    rules[2]='email|required';
    rules[3]='addr1:your Address|required';
    rules[4]='email|email';
    rules[5]='terms|required|Please confirm that you accept the Terms and Conditions';
    rules[6]='zip:Zip Code|required';
    rules[7]='phone1:Phone|required';
    rules[8]='phone2:Phone|required';
    rules[9]='phone3:Phone|required';
    rules[10]='zip|numeric';
    rules[11]='phone1:Phone|numeric';
    rules[12]='phone2:Phone|numeric';
    rules[13]='phone3:Phone|numeric';
    rules[14]='phone1|minlength|3|Area Code must be 3 characters long';
    rules[15]='phone2|minlength|3|Phone (part 1) must be 3 characters long';
    rules[16]='phone3|minlength|4|Phone (part 1) must be 4 characters long';
    rules[17]='zip|minlength|5|Zip Code must be 5 characters long';

function updZip(o) {
	var myConn = new XHConn();
	if (!myConn) alert("XMLHTTP not available. Try a newer/better browser.");
	var fnWhenDone = function (oXML) {
		var res = oXML.responseText;
//		alert(res);
//      document.forms["formC4Gco"].email.value+="["+o.value+"]["+oXML+"]["+oXML.status+"]["+oXML.statusText+"]["+oXML.responseText+"]["+oXML.responseXML+"]["+oXML.readyState+"]["+oXML.getAllResponseHeaders()+"]";
		if(res=="") return;
		document.getElementById("spanZip").style.display = "none";
		document.getElementById("spanCityState").innerHTML = res;
		document.getElementById("spanCityState").style.display = "";
		var temp = new Array();
		temp = res.split(',');
		var frm = document.forms["formC4Gco"];
		frm.city.value = temp[0];
		frm.state.value = temp[1];
//	 alert(oXML.responseText); 
	 
	 };
	myConn.connect("/remote/zipdecode.php", "POST", "zip=" + o.value, fnWhenDone);
}

function chgZip() {
	document.getElementById("spanCityState").style.display = "none";
	document.getElementById("spanZip").style.display = "";
}

var curZip;

function showCity(o) {
   if(curZip!=o.value || o.value=="" || document.getElementById("spanCityState").innerHTML=="") return;
	document.forms["formC4Gco"].termstext.value+="["+document.getElementById("spanCityState").innerHTML+"]";
	document.getElementById("spanCityState").style.display = "";
	document.getElementById("spanZip").style.display = "none";

}


function saltaZip(o) {
   if(o.value.length > 5)
      o.value = o.value.substr(0, 5);
   if(o.value.length >= 5) {
	   document.forms["formC4Gco"].phone1.focus();
		}
}

function saltaPhone1(o) {
   if(o.value.length > 3)
      o.value = o.value.substr(0, 3);
   if(o.value.length >= 3) {
	   document.forms["formC4Gco"].phone2.focus();
		}
}

function saltaPhone2(o) {
   if(o.value.length > 3)
      o.value = o.value.substr(0, 3);
   if(o.value.length >= 3) {
	   document.forms["formC4Gco"].phone3.focus();
		}
}

function saltaPhone3(o) {
   if(o.value.length > 4)
      o.value = o.value.substr(0, 4);
   if(o.value.length == 4) {
	   document.forms["formC4Gco"].terms.focus();
		}
}

function showDebugStr(s) {
	var o = document.getElementById("statis-form");
	o.innerHTML = o.innerHTML + "<small>[" + s + "]</small>";
}

function acomodaErrDiv() {
	var divFrm = document.getElementById("divFrmLead");     
	var divErr = document.getElementById("errorsDiv");   
	var divTopForm = document.getElementById("topform");
    
	divErr.style.display = "none";
	divTopForm.style.position = "relative";
	divErr.style.position = "absolute";
    divErr.style.zIndex = 100;  
    divErr.style.left = "-220px";
    posTop = divFrm.offsetHeight - 160;
    divErr.style.top = posTop + "px";
    divErr.style.width = "220px";
    divErr.style.fontSize = "14pt";
    divErr.style.fontWeight = "bold";
    divErr.style.color = "crimson";
    divErr.style.borderWidth = "2px";
    divErr.style.borderStyle = "solid";
    divErr.style.borderColor = "crimson";
    divErr.style.paddingBottom = "10px";
    
/*
    var divFrmPos = ElementUtil.getElementPosition(divFrm);
    var posLeft = (divFrmPos.left - divErr.offsetWidth - 20);
    var posTop = (divFrmPos.top + divFrm.offsetHeight - 100);
    showDebugStr(f_clientWidth());
    showDebugStr(divFrmPos.left);
    if(posLeft<=0) {
        posLeft = divFrm.offsetWidth;
        posTop = divFrmPos.top + divFrm.offsetHeight - 10;
    }
    showDebugStr(posLeft);
    showDebugStr(divErr.style.position);
    divErr.style.left = posLeft + "px";
    divErr.style.top = posTop + "px";
    divErr.style.left = "0px";
    */
}
