var timeoutId0;	// alert timeout
var timeoutId1;	// expire timeout
var checkBcdNameRemMe	=	true;

var sessBcd	= "";
var sessLastName	=	"";
var sessRememberMe	=	"";
var sessRememberMeChecked	=	false;

var pageNeverShowsTimer	=	false;
var parentStyleId = "";

function setNoTimer()
{
	pageNeverShowsTimer = true;
}

function isDefined( variable)
{
    return (typeof(window[variable]) == "undefined")?  false: true;
}

function uiResetTimer(numMinutes, timerVar, expireAlertString)
{
	// short circuit if we NEVER show the timer for this page
	if (pageNeverShowsTimer)
	{
		return;
	}
	
	oneMinute = 60 * 1000;	// 60 seconds * 1000 milis/second
	window.clearTimeout(timerVar);
	
	timerVar = window.setTimeout('uiTimer_timer("'+expireAlertString+'")', (numMinutes * oneMinute));
}

function uiTimer_timer(type) 
{
      if (type == 'alert')
      {
      	var map = window.open("/budgetWeb/html/en/reservation/TimeoutAlertInform.html", 'Timeout' ,"width=400,height=310,resizable=no,scrollbars=no,toolbar=no,status=no,menubar=no,modal=yes");
      
      } 
      else if(type == 'expire')
      {
      	//var map = window.open("/budgetWeb/html/en/reservation/TimeoutAlertExpire.html", 'Timeout' , "width=400,height=290,resizable=no,scrollbars=no,toolbar=no,status=no,menubar=no,modal=yes");
      
      	// redirect client and be done - this is at the end of 15 minutes
      	document.location.href="/budgetWeb/reservation/timeout.ex";
      	
				closeWindow();
				      	
      	return;
      }
}

function recordSessionVars(bcd, lastName, rememberMe)
{
	sessBcd = bcd;
	sessLastName = lastName;
	sessRememberMe = rememberMe;
	sessRememberMeChecked	=	false;
}

function getSessionBcd()
{
	return sessBcd;
}

function getSessionLastName()
{
	return sessLastName;
}

function getSessionRememberMe()
{
	return sessRememberMe;
}

function isRememberMeChecked()
{
	return sessRememberMeChecked;
}

function checkRememberMe()
{
	sessRememberMeChecked = true;
}

/**
 * New version
 */
function uiTimer_start2(bcd, lastName, rememberMe) 
{
	var alertTime = 10;
	var expireTime = 15;

  //for testing:
  //var alertTime = 1;
  //var expireTime = 6;

	//alert("About to set timer...");

	uiResetTimer(alertTime, timeoutId0, "alert");
	uiResetTimer(expireTime, timeoutId1, "expire");
}

function removeTimerRelatedAspects()
{
	//alert("About to remove timer...");
	window.clearTimeout(timeoutId0);	
	window.clearTimeout(timeoutId1);

	closeWindow();	
}

/**
 * The following functions handle closing the popup window IFF interaction has occurred on the main site
 * (ie: the user clicked links).  The popup should go away and the user should be allowed to continue
 * navigating the site.
 */
//var parentWindow;
var originalUrl;

function checkParent() 
{
		originalUrl = opener.s_pageName; //opener.document.getElementById('s_pageName');
		if(originalUrl == null) {
			originalUrl = "";
		}

		
		//alert("Check Parent - Original URL>" + origianlUrl);
			
    setTimeout("handleCheckParent()",2000); // a 2 second delay to check to see if the URL in
    																				// the parent browser changed.
}

function closeWindow() 
{
  	// was a window opened?
  	if (isDefined('isWindowOpen'))
  	{
  		if (isWindowOpen)
  		{
  			self.close();
  		}
  	}
}

function handleCheckParent() 
{
    self.onerror = closeWindow;
    
		newUrl = opener.s_pageName;//opener.document.getElementById('s_pageName');
		if(newUrl == null) {
			newUrl = "";
		}
		
		//alert("Handle Parent - Original URL>" + originalUrl + " New URL>" + newUrl);
		
    if (originalUrl != newUrl)
    {
    	closeWindow();
    	
    	return;
    }
    
    // set parent check again
    checkParent();
}
/************ END OF POPUP CLOSING FUNCTIONALITY ************************/