// JavaScript Document

function AjaxDivLoader(dv)
{
	var div_name	= dv;
	
	this.onCompleted = function(req)
	{
		// parse the xml and search for the body
		var root = req.responseXML.documentElement;
		var text = '';
		
		// no root
		if (root == null)
		{
			if (req.responseText == '')
				return;
			else
				alert(req.responseText);
			return;
		}
		
		// main body area
		var bodyNodes = root.getElementsByTagName('body')[0].childNodes;
		for(i = 0; i < bodyNodes.length; i++)
			text = text + root.getElementsByTagName('body')[0].childNodes[i].nodeValue;
		
		// alert list
		var alerts = root.getElementsByTagName('alert');
		for (i = 0; i < alerts.length; i++)
			alert(alerts[i].childNodes[0].nodeValue);
		
		// update list of items to chaneg
		var divsets = root.getElementsByTagName('update');
		for (i = 0; i < divsets.length; i++)
			document.getElementById(divsets[i].getAttribute("id")).innerHTML = divsets[i].childNodes[0].nodeValue;
			
		// update list of items to chaneg
		divsets = root.getElementsByTagName('valueupdate');
		for (i = 0; i < divsets.length; i++)
			document.getElementById(divsets[i].getAttribute("id")).value = divsets[i].childNodes[0].nodeValue;
		
		// assign to a div tab
		var obj = getElement(div_name);
		if (obj && obj.nodeName == "TR" && getIEVersion() != -1)
		{
			obj.removeNode(true);
		}
		else if (obj)
		{				
			obj.innerHTML = text;
			if (obj.nodeName == "DIV")
			{
				// Effect.SlideDown(obj.id, { duration: 0.5 });
			}
		}
		
		// process any additional actions that have been included
		divsets = root.getElementsByTagName('action');
		for (i = 0; i < divsets.length; i++)
		{
			var type = divsets[i].getAttribute("type");
			var value = divsets[i].childNodes[0].nodeValue;

			// what action to perform
			if (type == "redirect")
			{
				window.location = value;
			}
		}
	}
}