
var xmlUrl = "";
var xslUrl = "";

var xmlRequest = null;
var xslRequest = null;

var xmlDoc = null;
var xslDoc = null;


function loadJobsTable(){
	
	document.getElementById("jobsTable").innerHTML = "Loading Jobs...";

	loadXml();
	loadXsl();

}

function loadXml(){
	
	xmlRequest = NewRequest();
  	xmlRequest.onreadystatechange = xmlLoaded;
	xmlRequest.open("GET", xmlUrl);
	xmlRequest.send(null);	
}

function loadXsl(){
		
	xslRequest = NewRequest();
  	xslRequest.onreadystatechange = xmlLoaded;
	xslRequest.open("GET", xslUrl);
	xslRequest.send(null);	

}

function transform(){


	if (xmlDoc != null && xslDoc != null){

		var transformedDoc = transformDomDoc(xmlDoc, xslDoc);
		setDiv(transformedDoc, "jobsTable");

  	}
  	
}


function xmlLoaded(){


	if (requestReady(xmlRequest) && requestReady(xslRequest)){

		xmlDoc = xmlRequest.responseXML;
		xslDoc = xslRequest.responseXML;
		
		transform();

  	}
  	
}

function sortTable(sortBy, isNumber){

	var selectTag = null;
	
	selectTag = xslDoc.getElementsByTagName("sort")[0];
	
	if (selectTag == null){
		selectTag = xslDoc.getElementsByTagName("xsl:sort")[0];
	}

   	selectTag.setAttribute("select", sortBy);

	if (isNumber){
		selectTag.setAttribute("data-type", "number")
	}else{
		selectTag.setAttribute("data-type", "text");
	}
    
          
	if (selectTag.getAttribute("order") == "ascending"){
		selectTag.setAttribute("order", "descending");
	}else{
		selectTag.setAttribute("order", "ascending");
	}
        
	transform();
  	
}
