var xmlDoc;
function trackForIdAndRedirect(id)
{
	var info = getTrackingInfo(id);
	var url = info.redirect;
	var urlTarget = info.redirectTarget;
	var windowParams = -1;
	try
	{
		windowParams = info.windowParameters;
	}
	catch(err){}
	webtrends(id);
	atlas(info.atlas);
	if(info.redirectCommand != "")
	{
		if (info.redirectNumber == "1")
		{
	        showHide1();
	    }
		else if(info.redirectNumber == "2")
		{
	        showHide2();
	    }
		else if (info.redirectNumber == "3")
		{
	        showHide3();
	    }
	}
	else
	{
		if(windowParams != -1)
		{
			//alert("window params: " + windowParams)
			window.open(url,urlTarget,windowParams);
		}
		else
		{
			window.open(url,urlTarget);
		}
    }
}

function trackForId(id)
{
	webtrends(id);
}

function webtrends(id)
{
	var info = getTrackingInfo(id);
	var webtrends = info.webtrends;
	var parts = webtrends.split(",");
	var dcsuri = parts[0];
	var ti = parts[1];
	var cg_n = parts[2];
	var ws2008 = parts[3];
	
	try
	{
		dcsMultiTrack('DCS.dcsuri',dcsuri,'WT.ti',ti,'WT_cg_n',cg_n,'DCSext.ws2008',ws2008);
		//alert('DCS.dcsuri -> '+dcsuri+'\nWT.ti -> '+ti+'\nWT_cg_n -> '+cg_n+'\nDCSext.ws2008 -> '+ws2008);
	}
	catch(e){}
}

function atlas(url)
{
	document.getElementById("atlas_tag").src = url;
	pause(500);
}

function pause(millis)
{
	var date = new Date();
	var curDate = null;

	do { 
		curDate = new Date(); 
	}
	while(curDate-date < millis);
} 

function createXMLHttpRequest()
{
	if (typeof XMLHttpRequest != "undefined")
		return new XMLHttpRequest();
	else if (typeof ActiveXObject != "undefined")
		return new ActiveXObject("Microsoft.XMLHTTP");
	else
		throw new Error("XMLHttpRequest not supported");
}

function importXML()
{
	var request = createXMLHttpRequest();
	request.open("GET", "tracking/tracking.xml", true);
	request.onreadystatechange = function()
	{
		if(request.readyState == 4)
		{	
			xmlDoc = request.responseXML;
		}
	}
	request.send(null);
	
	/**** OLD ****/
	/*if(document.implementation && document.implementation.createDocument)
	{
		xmlDoc = document.implementation.createDocument("", "", null);
		xmlDoc.onload = null;
	}
	else if (window.ActiveXObject)
	{
		xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.onreadystatechange = function () {
			if (xmlDoc.readyState == 4)
				return;
		};
	}
	else
	{
		//alert('Your browser can\'t handle this script');
		return;
	}
	xmlDoc.load("tracking/tracking.xml");*/
}
	
function getTrackingInfo(id)
{
	var trackNodes = xmlDoc.getElementsByTagName("track");
	var index = -1;
	var i = 0;
	for(i = 0; i < trackNodes.length; i++)
	{
		if(id == trackNodes[i].attributes.getNamedItem("id").value)
		{
			index = i;
		}
	}
	if(index == -1)
	{
		return;
	}
	var id = trackNodes[index].attributes.getNamedItem("id").value;
	var w = trackNodes[index].getElementsByTagName("webtrends").item(0).firstChild.nodeValue;
	var a;
	try
	{
		a = trackNodes[index].getElementsByTagName("atlas").item(0).firstChild.nodeValue;
	}
	catch(err){}
	
	try
	{
		var r = trackNodes[index].getElementsByTagName("redirect").item(0).firstChild.nodeValue;
	}catch(e){}
	
	try
	{
		var rt = trackNodes[index].getElementsByTagName("redirect").item(0).attributes.getNamedItem("target").value
	}catch(e){}
	var wp = -1;
	try
	{
		wp = trackNodes[index].getElementsByTagName("redirect").item(0).attributes.getNamedItem("windowParameters").value
	}
	catch(err){}
	var c = trackNodes[index].getElementsByTagName("redirect").item(0).attributes.getNamedItem("command").value
	var n = trackNodes[index].getElementsByTagName("redirect").item(0).attributes.getNamedItem("number").value
	var res;
	if(wp != -1)
	{
		res = {"webtrends":w, "atlas": a, "redirect":r, "redirectTarget":rt, "redirectCommand":c, "redirectNumber":n, "windowParameters":wp}
	}
	else
	{
		res = {"webtrends":w, "atlas": a, "redirect":r, "redirectTarget":rt, "redirectCommand":c, "redirectNumber":n}
	}
	//alert("index "+ index + " id " + id);
	/*alert("webtrends: " + w);
	alert("atlas: " + a);
	alert("redirect: " + r + " : target: " + rt);
	alert("res " + res.atlas);*/
	return res;
	
}