﻿//This JavaScript is linked to page Explorer.aspx\

var xmlObj;
var xmlHttp;
var xmlDoc; //XML document that will hold the data
var loaded;
var response;

function sendHTTPRequest(action,url)
{ 		
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	
	response="-1";		
    xmlHttp.onreadystatechange=LoadResults;
		
	//alert(url);	
	xmlHttp.open("GET",url,false);
	xmlHttp.send(null); 			
}
//=====================================================

function getHTTPResponse()
{
    return response;   
}
//=====================================================


function LoadResults()
{
	//alert("state: " + xmlHttp.readyState);
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		response = xmlHttp.responseText;
	} 	
}
//=====================================================


//function returns XMLhttp object
function GetXmlHttpObject()
{ 
	var objXMLHttp=null;
	if (window.XMLHttpRequest)
	{
		objXMLHttp=new XMLHttpRequest();
		
	}
	else if (window.ActiveXObject)
	{
	
		objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	return objXMLHttp;
}
//=====================================================


		
//function gets the HTML of a page. In our case the page is in XML format
//so this function reads the XML and saves it in XML object
function ajaxRead(file){

  xmlObj = null;
  if(window.XMLHttpRequest){
      xmlObj = new XMLHttpRequest();
  } else if(window.ActiveXObject){
      xmlObj = new ActiveXObject("Microsoft.XMLHTTP");
  } else {
      return;
  }
  
    xmlObj.open ('GET', file, false);
    //xmlObj.SetRequestHeader ("Content-Type","text/xml");
    xmlObj.send ('');  
    
	//xmlObj.onreadystatechange = function(){
    if(xmlObj.readyState == 4)
    {
		if (window.ActiveXObject)//IE
		{
			xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); 
			xmlDoc.async = false;
			loaded = xmlDoc.loadXML(xmlObj.responseText);
			if (loaded==false) alert ("cant get XML doc");
		}
		else//Mozilla,FireFox,Opera...
		{
		  var parser=new DOMParser();
		  var str=xmlObj.responseText;
		  xmlDoc=parser.parseFromString(str,"text/xml");
		  loaded=true;
		}
     }
     //}
  } 
//=====================================================

//function reads XML returned from AJAX response and enable/disbale commands accordingly
 function LoadValues(xmlValues,cntrlId)
 {
 		var xmlDc;
		var loaded;
		var i;
		//create XML object to load the xml response passed as input parameter
		if (window.ActiveXObject)//IE
		{
			xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); 				
			xmlDoc.async = false;
			//alert(xmlValues);
			loaded = xmlDoc.loadXML(xmlValues);
			if (loaded==false) alert ("cant get XML doc");
		}
		else//Mozilla,FireFox,Opera...
		{
			var parser=new DOMParser();
			xmlDoc=parser.parseFromString(xmlValues,"text/xml");
			loaded=true;
		}		
		var root = xmlDoc.getElementsByTagName("values");
		root=root[0];
		var items = root.getElementsByTagName("value");
//alert(cntrlId);
		clearList(cntrlId);	
			//alert(cntrlId);
        if(items.length>0)
        {
		    AddListItem(cntrlId,0,"<-Select->","-1");
		    for(i=0;i<items.length;i++)
		    {		    
		        AddListItem(cntrlId,i+1,items[i].getAttribute("name"),items[i].getAttribute("id"));
		    } 
	    }
 }
 //function Clear a list Box or combo box from its content
function clearList(cntrlId)
{
    var cntrl;
      
    cntrl=document.getElementById(cntrlId);    
    while(cntrl.options.length>0)
    {      
       cntrl.options[cntrl.options.length - 1] = null;

    }    
}