//function to load sitetree XML file
function loadXMLDoc(pubname){	
	try{ //Internet Explorer
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
	}
	catch(e){
		try{ //Firefox, Mozilla, Opera, etc.  
			xmlDoc=document.implementation.createDocument("","",null);
		}
		catch(e){
			alert(e.message)
		}
	}
	try{
		xmlDoc.async=false;		
		xmlDoc.load('../../modules/customsitemap/'+pubname+'/customsitemap.csp');
		
		return(xmlDoc);
	}
	catch(e){
		alert(e.message)
	}
	return(null);
}

//helper function for character array sorting with ignore case 
function charOrdA(a, b){
	a=a.toLowerCase(); 
	b=b.toLowerCase();
	
	a=a.charCodeAt(0); //needed for ie 6 only
	b=b.charCodeAt(0); //needed for ie 6 only
	
	if (a>b) 
		return 1;
	if (a <b) 
		return -1;
	return 0;
}

//function to change the contents of table td dynamically
function changeContent(newString){
    var x=document.getElementById('myTable').rows
    var y=x[0].cells
    y[0].innerHTML=y[0].innerHTML+"<br />"+newString;
}

//function to print the node labels dynamically
function printNodes(pubname){
	var nodeLabelArray = new Array();
	var nodeHash=new Object();
	var xmlDoc=loadXMLDoc(pubname);
	//alert(xmlDoc);
	var noOfSites=xmlDoc.getElementsByTagName("site").length;
	var noOfNodes=xmlDoc.getElementsByTagName("site")[0].getElementsByTagName("node").length;
	//alert("total nodes:"+noOfNodes+":::::"+"total sites:"+noOfSites);
	var allNodes=xmlDoc.getElementsByTagName("site")[0].getElementsByTagName("node");
	//alert(allNodes[0].getAttribute("id"));
	//alert(allNodes[i].getElementsByTagName("label")[0].childNodes[0].nodeValue.toString());
	for(var i=0;i<noOfNodes;i++){
		var tmpNodeID=allNodes[i].getAttribute("id").toString();
		var tmpLabel=allNodes[i].getElementsByTagName("label")[0].childNodes[0].nodeValue.toString();
		nodeLabelArray[i]=tmpLabel;
		nodeHash[tmpLabel]=tmpNodeID;
	}
	nodeLabelArray.sort(charOrdA);
	for(var i=0;i<noOfNodes;i++){
		var tmpLabel=nodeLabelArray[i];
		var tmpNodeID=nodeHash[tmpLabel];
		if(i==0){
			var node1=nodeLabelArray[i].toString().charAt(0).toUpperCase();
			changeContent('<h2>'+node1+'</h2>');
		}
		else{
			var node2=nodeLabelArray[i].toString().charAt(0).toUpperCase();
			var node3=nodeLabelArray[i-1].toString().charAt(0).toUpperCase();
			//alert("node 2:"+node2+":::::"+"node 3:"+node3);
			if(node2!=node3){
				changeContent('<br/><h2>'+node2+'</h2>');
			}
		}
		changeContent("<span class=\"customsitemap\"><a href=\""+tmpNodeID+".html\">"+tmpLabel+"</a>");
	}
}
