function genSitemap()
{
	var tempContainer = d.getElementById('tempContainer');
	var content = d.getElementById('content');
	var navObj = new Object();
	var self = this;
	
	this.init = function()
	{
		var xml = new loadXML('../inc/left_nav.php?version=' + Math.random());
		xml.action = function(x)
		{
			tempContainer.innerHTML = x.responseText;
			
			var leftNav = d.getElementById('leftNav');
			var ul = setChildNodes(leftNav, 'UL');
			
			for (var i=0; i<ul.length; i++)
			{
				var id = ul[i].id.replace('_menu', '');
				navObj[id] = new Object();
				
				//var li = ul[i].getElementsByTagName('li');
				var li = setChildNodes(ul[i], 'LI');
				for (var j=0; j<li.length; j++)
				{
					navObj[id][j] = new Object();
					
					var a = li[j].getElementsByTagName('a')[0];
					navObj[id][j]['name'] = a.innerHTML;
					navObj[id][j]['link'] = a.href;
					if (a.target)	navObj[id][j]['target'] = a.target;
					
					var subUl = li[j].getElementsByTagName('ul');
					if (subUl.length == 0)	continue;
					
					var subLi = subUl[0].getElementsByTagName('li');
					for (var k=0; k<subLi.length; k++)
					{
						navObj[id][j][k] = new Object();
						
						var a = subLi[k].getElementsByTagName('a')[0];
						navObj[id][j][k]['name'] = a.innerHTML;
						navObj[id][j][k]['link'] = a.href;
						if (a.target)	navObj[id][j][k]['target'] = a.target;
					}
				} 
			}
			
			self.genStart();
		}
	};
	
	this.genStart = function()
	{
		for (var i in navObj)
		{
			this.genSingleRow(navObj[i], i);
		}
	};
	
	this.genSingleRow = function(obj, id)
	{
		var col = 4;
		var count = 0;
		
		var sitemapItem = createDiv('', 'sitemapItem clearfix');
		
		var sectionTitle = createDiv('', 'sectionTitle');
		var img = createImg('../images/sitemap/title_' + id + '.gif', d.getElementById(id).innerHTML);
		sectionTitle.appendChild(img);
		sitemapItem.appendChild(sectionTitle);
		
		var sitemapContent = createDiv('', 'sitemapContent');
		
		for (var i in obj)
		{
			var dl = d.createElement('dl');
			var dt = d.createElement('dt');
			var a = createA(obj[i]['link'], obj[i]['target'], obj[i]['name']);
			dt.appendChild(a);
			dl.appendChild(dt);
			
			for (var j in obj[i])
			{
				if (j == 'link')	continue;
				if (j == 'name')	continue;
				if (j == 'target')	continue;
				var dd = d.createElement('dd');
				var a = createA(obj[i][j]['link'], obj[i]['target'], obj[i][j]['name']);
				dd.appendChild(a);
				dl.appendChild(dd);
			}
			
			if (count%col == 0)
			{
				var div = createDiv('', 'clearfix');
				sitemapContent.appendChild(div);
			}
			div.appendChild(dl);
			count ++;
		}
		
		sitemapItem.appendChild(sitemapContent);
		content.appendChild(sitemapItem);
	};
	
	this.init();
}
	
function loadXML(url)
{
	var x;
	var self = this;
	
	this.action = function()	{};

	if (typeof(XMLHttpRequest) == 'undefined')
	{
		XMLHttpRequest = function()
		{
		    try { return new ActiveXObject("Msxml2.XMLHTTP.6.0"); }
				catch(e) {}
		    try { return new ActiveXObject("Msxml2.XMLHTTP.3.0"); }
				catch(e) {}
		    try { return new ActiveXObject("Msxml2.XMLHTTP"); }
				catch(e) {}
		    try { return new ActiveXObject("Microsoft.XMLHTTP"); }
				catch(e) {}
		    throw new Error("This browser does not support XMLHttpRequest.");
		};
	}

	x = new XMLHttpRequest();
	if (x.overrideMimeType)	x.overrideMimeType('text/xml');
	
	if (x)
	{
		x.onreadystatechange = function()
		{
			if (x.readyState == 4 && x.status == 200)
			{
				self.action(x);
			}
		}
		x.open('GET', url, true);
		x.send(null);
	}
}

