/** AJAX HANDLER **/
function ajaxHandler(request)
{
  var funcArray = new Array();
  var msgArray  = new Array();

  issues = request.responseXML.getElementsByTagName('issue');
  if(issues && issues[0]) {
  	for(i = document.summary08.issues.length - 1; i >= 0; i--)
  	{
  		document.summary08.issues.remove(i);
  	}
  	
  	for(i = 0; i < issues.length; i++)
  	{
  		if(issues[i]) {
  			opt	= document.createElement('option');
  			opt.text = issues[i].getAttribute('month');
  			opt.value = issues[i].getAttribute('pdf');
			if(document.addEventListener) { document.summary08.issues.add(opt, null); }
            else { document.summary08.issues.add(opt, -1); }
  		}
  	}
  }
  
  eNodes = request.responseXML.getElementsByTagName("error");
  if(eNodes && eNodes[0]) {
    alert(eNodes[0].firstChild.data);
    return false;
  }

  
  //alert(request.responseText);
  rNodes = request.responseXML.getElementsByTagName("result");
  for(node = 0; node < rNodes.length; node++)
  {
    if( (aNodes = rNodes[node].getElementsByTagName("action"))) {
      for(i = 0; i < aNodes.length; i++)
      {
        funcArray.push(aNodes[i].firstChild.data);
      }
    }
    if( (sNodes = rNodes[node].getElementsByTagName("string"))) {
      for(i = 0; i < sNodes.length; i++)
      {
        msgArray.push(sNodes[i].firstChild.data);
      }
    }
    if( (uNodes = rNodes[node].getElementsByTagName("update"))) {
    	if(uNodes[0]) {
	    	id = uNodes[0].getAttribute("id");
   		 	document.getElementById('text' + id).innerHTML = '"' +  uNodes[0].firstChild.data + '"';
   		 	document.getElementById('text' + id).style.display = 'inline';
   	 		document.getElementById('tarea' + id).style.display = 'none';
   	 		document.getElementById('btnHolder' + id).innerHTML = '';	
    	}
    }
    if( (rem = rNodes[node].getElementsByTagName("delete"))) {
    	if(rem[0]) {
	    	id = rem[0].getAttribute("id");
    		if( (el = document.getElementById('comment' + id))) { el.parentNode.removeChild(el); }
    	}
    }
  }


  /** Display all the text... **/
  for(i = 0; i < msgArray.length; i++)
  {
    alert(msgArray[i]);
  }

  /** Now do all the functions... **/
  for(i = 0; i < funcArray.length; i++)
  {
    switch(funcArray[i])
    {
      case "reloadpage": window.location.reload(); break;
      default: break;
    }
  }
}

/** XML POST **/
function xmlPost(postURI, postData, postReturnHandler) {
  var postObj = false;
  if (window.XMLHttpRequest) {
    postObj = new XMLHttpRequest();
    if (postObj.overrideMimeType) { postObj.overrideMimeType('text/xml'); }
  } else if (window.ActiveXObject) {
    postObj = new ActiveXObject('Microsoft.XMLHTTP');
  }
  postObj.open('POST', postURI, true);
  postObj.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  postObj.onreadystatechange = function() {
    if (postObj.readyState == 4) {
      eval(postReturnHandler + '(postObj);');
    }
  }
  postObj.send(postData);
}

