var renewDialogTitle = "Renovar Sesion";
var renewDialogMsg = "Desea renovar la sesion del servidor ?";
var renewDialogYes = "Si";
var renewDialogNo = "No";
var body = $$('body')[0];
try{
	renewDialogTitle = renewDialogTitleReg;
	renewDialogMsg = renewDialogMsgReg;
	renewDialogYes = renewDialogYesReg;
	renewDialogNo = renewDialogNoReg;
}
catch(e){}
var min =0;
var limit = 180;
var current = 0;
var t;
function AbandoneSession(){
	location.href = 'Logout.aspx?RedirectTo=Logon.aspx';
}
function silentRenew(){
	new Ajax.Request('RenewSession.aspx', {
		method: 'GET',
		parameters: {nocache: Math.random()}
	});
}
function askRenewSessionTask(){
	window.focus();	
    ShowRenewPanel();
}

function GetRenewOverlay(){
    if ($('renewDialogOverlay') == null){
		new Insertion.Top(body, "<div id='renewDialogOverlay' class='renewDialogOverlay'></div");
	}
	return $('renewDialogOverlay');
}
function GetRenewPanel(){
    if ($('renewDialogPanel') == null){
		new Insertion.Top(body, "<div id='renewDialogPanel' class='renewDialogPanel'></div");
		
		new Insertion.Top($('renewDialogPanel'), "<div id='renewDialogBody' class='renewDialogBody'></div>");
		
		new Insertion.Top($('renewDialogBody'), "<div id='renewDialogTool' class='renewDialogTool'></div>");
		new Insertion.Top($('renewDialogTool'), "<input id='renewDialogYes' type='button' value='"+renewDialogYes+"' class='Ver10'/>");
		new Insertion.Top($('renewDialogTool'), "<input id='renewDialogNo' type='button' value='"+renewDialogNo+"' class='Ver10'/>");		
		$('renewDialogYes').observe('click', RenewSession);
		$('renewDialogNo').observe('click', AbandoneSession);		
		
		new Insertion.Top($('renewDialogBody'), "<div id='renewDialogBar' class='renewDialogBar'></div>");
		new Insertion.Top($('renewDialogBar'), "<div id='renewDialogFill' class='renewDialogFill'></div>");
		$('renewDialogFill').setStyle({width: '0px'});		
		new Insertion.Top($('renewDialogFill'), "<div class='renewDialogClear'></div>");		
		new Insertion.Top($('renewDialogBar'), "<div class='renewDialogClear'></div>");		
		
		new Insertion.Top($('renewDialogBody'), renewDialogMsg);			
		
		new Insertion.Top($('renewDialogPanel'), "<div id='renewDialogTitle' class='renewDialogTitle'></div>");
		new Insertion.Top($('renewDialogTitle'), renewDialogTitle);
		new Insertion.Top($('renewDialogTitle'), "<div class='renewDialogClear'></div>");		
    }
    return $('renewDialogPanel');
}

function newClear(){
	return new Element('div', {'class': 'renewDialogClear'});
}
function NoScroll(){
	window.scrollTo(0,0);
}
function ShowRenewPanel(){
	window.scrollTo(0,0);
	Element.observe(window, 'scroll', NoScroll);
	
	//body.select('select').each(Element.hide);
	//body.select('object').each(Element.hide);
	//body.select('iframe').each(Element.hide);
	
    GetRenewOverlay().show();
	GetRenewOverlay().setStyle({opacity: 0.8});
	GetRenewPanel().show();
	$('renewDialogFill').setStyle({width: '0px'});
	FixPosition();
    StartProgress();
}
function FixPosition(){
	GetRenewPanel().setStyle({
		top: body.getHeight()/2-GetRenewPanel().getWidth()/2, 
		left: body.getWidth()/2-GetRenewPanel().getHeight()/2
	});
}
function HideRenewPanel(){
	Element.stopObserving(window, 'scroll', NoScroll);
	
	//body.select('select').each(Element.show);
	//body.select('object').each(Element.show);
	//body.select('iframe').each(Element.show);
	
    GetRenewPanel().hide();
	GetRenewOverlay().hide();
}
function StartProgress(){
    current = 0;
    t = new PeriodicalExecuter(UpdateProgress, 1);
}

function UpdateProgress(){
	current = current + 1;
    $('renewDialogFill').setStyle({width: current+'px'});
    if (current == limit){
        t.stop();
        AbandoneSession();
    }
}

function RenewSession(){
	HideRenewPanel();
	t.stop();
    silentRenew();
}
//Element.observe(window, 'load', function(){
//    new PeriodicalExecuter(askRenewSessionTask, 10); // 1800
//	new PeriodicalExecuter(silentRenew, 300); 
//});
