/*
 * Hensikten er � holde i live en session gjennom � jevnlig kj�re ett AJAX kall mot serveren
 * url: en (helst dummy) side hvor requesten sendes
 * interval: intervall mellom hvert kall i millisekund
 *
 * Er testet og fungerer i Opera/Firefox/Safari/IE6/IE7
 */
/*
var sessionKeepAlive = function(url, interval){
	var request = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("MSXML2.XMLHTTP.3.0");
	
	reloadPage = function() {
		request.open("GET", url, true);
		request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
		
		request.onreadystatechange = function(){
			if (request.readyState == 4 && request.status == 200) {
				// alert("reloadPage() + " + url + ": " + request.responseText);
				setTimeout("reloadPage()", interval);
			}
		}
		
		request.send('');
	}
	
	setTimeout("reloadPage()", interval);
}*/


var getQueryParam = function(name) {
	name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
	var regexS = "[\\?&]"+name+"=([^&#]*)";
	var regex = new RegExp( regexS );
	var results = regex.exec( window.location.href );
	if( results == null )
		return "";
	else
		return results[1];
}

var sessionKeepAlive = function(url, interval){
	var fail = function() {
		Ext.TaskMgr.stop(t);
		alert('You have been logged out..\nYou will now be redirected to login page.');
		window.location = "../project/openIndex?ARTICLE_ID=" + getQueryParam('ARTICLE_ID');		
	}
	
	var t = {
		
		run: function() {
			Ext.Ajax.request({
				url: url,
				success: function(res, o) {
					if (res.responseText.indexOf("<!-- OK -->") < 0) {
						fail();
					}
				},
				failure: fail
			});
		},
		interval: interval
	}
	
	Ext.TaskMgr.start(t);
}

/*
 * Kaller opp "blank.html" hvert minutt
 */
sessionKeepAlive("openPage/blank.html", 60000);



