statsUrlToQuery = '';

// Sends HTTP request to the statsURL with parameter sessionKey every interval seconds
function Stats(statsURL, interval, sessionKey, userId)
{
	statsUrlToQuery = statsURL + '?sessionKey=' + escape(sessionKey) + '&userId=' + userId;
	this._interval = window.setInterval("SendDurationState()", interval * 1000);
}

function SendDurationState()
{
	// Use random number in parameter to avoid caching
	var url = statsUrlToQuery + '&rnd=' + Math.ceil( Math.random() * 100000 ) + 1;
	try {
		// Mozilla / Safari
		var request = new XMLHttpRequest();
	} catch (e) {
		// Explorer
		var _ieModelos = new Array(
		'MSXML2.XMLHTTP.5.0',
		'MSXML2.XMLHTTP.4.0',
		'MSXML2.XMLHTTP.3.0',
		'MSXML2.XMLHTTP',
		'Microsoft.XMLHTTP'
		);
		var success = false;
		for (var i=0; i < _ieModelos.length; i++) {
			try {
				var request = new ActiveXObject(_ieModelos[i]);
				success = true;
				break;
			} catch (e) {}
		}
		if (!success) 
			return false;
	}
	
	request.open("GET", url, false);
	request.send("");
}
