// put function append child into showstateinfo to undo xml functions
function getStateInfo(arg) {	
	//alert ("arg is "+arg);
  var url = "stateinfo.php";
  request.open("POST", url, true);
  request.onreadystatechange = showStateInfo;
  request.setRequestHeader("Content-Type",
                           "application/x-www-form-urlencoded");
  request.send("state=" + escape(arg));
  
  /*url = url + "?state=" + arg +"&dummy=" + new Date().getTime();
  request.open("GET", url, true);
  request.onreadystatechange = showStateInfo;
  request.send(null);*/
}

function showStateInfo() {
  if (request.readyState == 4) {
    if (request.status == 200) {
      var linesDiv = document.getElementById("lines");
	  var repsDiv = document.getElementById("reps");
      // remove existing displayed results	  
	  removeChildren("lines");
	  removeChildren("reps");

      //display results
	  var xmlDoc = request.responseXML;
	  var ctr = xmlDoc.getElementsByTagName("name").length;
	  
	  
	  for (i = 0; i<ctr; i++) {
		  //alert (""+i);
		  var xml_lname = xmlDoc.getElementsByTagName("name")[i];
		  var lname = xml_lname.firstChild.nodeValue;
		  
		  var xml_lweb = xmlDoc.getElementsByTagName("website")[i];
		  var lweb = xml_lweb.firstChild.nodeValue;
		  
		  var xml_ldesc = xmlDoc.getElementsByTagName("desc")[i];
		  var ldesc = xml_ldesc.firstChild.nodeValue;
		  
		  
		  ldesc = " :: "+ ldesc;
		  
		  if(lweb != "None") {
			  var link = document.createElement('a');
			  link.setAttribute('href', lweb);
			  addtext(lname,link);
			  linesDiv.appendChild(link);
		  }
		  else {
			addtext(lname, linesDiv); 
			//addChild(linesDiv, lname,"line_name");
		  }
		  //addtext(ldesc,linesDiv);
		  addChild(linesDiv, ldesc,"line_desc");
		  addBR(linesDiv);
	  } // end for
	  //alert(ctr);
	  
	  var ctr1 = xmlDoc.getElementsByTagName("first").length;
	  for (i = 0; i<ctr1; i++) {
		  //alert (""+i);
		  var xml_first = xmlDoc.getElementsByTagName("first")[i];
		  var first = xml_first.firstChild.nodeValue;
		  
		  var xml_last = xmlDoc.getElementsByTagName("last")[i];
		  var last = xml_last.firstChild.nodeValue;
		  
		  var xml_email = xmlDoc.getElementsByTagName("email")[i];
		  var email = xml_email.firstChild.nodeValue;
		  
		  var xml_phone = xmlDoc.getElementsByTagName("phone")[i];
		  var phone = xml_phone.firstChild.nodeValue;
		  
		  var xml_fax = xmlDoc.getElementsByTagName("fax")[i];
		  var fax = xml_fax.firstChild.nodeValue;
		  
		  var xml_cell = xmlDoc.getElementsByTagName("cell")[i];
		  var cell = xml_cell.firstChild.nodeValue;
		  
		  var xml_cell2 = xmlDoc.getElementsByTagName("cell2")[i];
		  var cell2 = xml_cell2.firstChild.nodeValue;
		  
		  name = last + ", " + first;
		  //addtext(name, repsDiv);
		  addChild(repsDiv, name,"rep_name");
		  addBR(repsDiv);
		  if(email != "None") {
			  var link = document.createElement('a');
			  link.setAttribute('href', 'contact.php?towhom='+email);
			  link.setAttribute('class', 'email');
			  addtext('[email]',link);
			  repsDiv.appendChild(link);
		  }
		  addBR(repsDiv);
		  
		  /*addChild(repsDiv, first + ", " + last,"rep_name");
		  addChild(repsDiv," "+ email,"rep_email");*/
		  if (phone.length > 4) {
			  //addtext("Office: "+phone,repsDiv);
			  addChild(repsDiv, "Office: "+phone,"office_num");
			  addBR(repsDiv);
		  }
		  if (fax.length > 4) {
			  //addtext("Fax: "+fax,repsDiv);
			  addChild(repsDiv, "Fax: "+fax,"fax");
			  addBR(repsDiv);
			  //addChild(repsDiv," Fax: "+ fax,"rep_fax_num");
		  }
		  if (cell.length > 4) {
			  //addtext("Cell: "+cell,repsDiv);
			  addChild(repsDiv, "Cell: "+cell,"cell");
			  addBR(repsDiv);
			  //addChild(repsDiv," Cell: "+ cell,"rep_cell_num");
		  }
		  if (cell2.length > 4) {
			  //addtext("Cell2: "+cell2,repsDiv);
			  addChild(repsDiv, "Cell2: "+cell2,"cell2");
			  addBR(repsDiv);
			  //addChild(repsDiv," Cell2: "+ cell2,"rep_cell2_num");
		  }
		  
		  //addChild(repsDiv, "boris is my name","my_name");
	  } // end for  
    } else {
      var message = request.getResponseHeader("Status");
      if ((message == null) || (message.length <= 0)) {
        alert("Error! Request status is " + request.status);
      } else {
        alert(message);
      }
    }
  }
}

function removeChildren(arg) {
	var parent = document.getElementById(arg);
	while(parent.hasChildNodes()) {
		var firstChild = parent.firstChild;
		parent.removeChild(firstChild);
	}
}
function addChild(parent, child_content,classN) {
	spanElement = document.createElement("span");
	spanElement.className = classN;
	textNode = document.createTextNode(child_content);
	spanElement.appendChild(textNode);
	parent.appendChild(spanElement);
}
function addtext(what, where){
	if (document.createTextNode){
		var mytext=document.createTextNode(what);
		where.appendChild(mytext);
	}
} 
function addBR(parent) {
	brElement = document.createElement('br');
	parent.appendChild(brElement);
}
				
