window.onbeforeunload = windowCloseHandler;
function windowCloseHandler()
{
  var flex = document.application || window.application;
  if (flex != null)
  {
    try
    {
      var loggedIn = flex.getLoginStatus();
      if (loggedIn == true)
      {
        var servicePrefix = flex.getServicePrefix();
		logout( servicePrefix )
      }
    }
    catch(e)
    {
    }
  }
 
  return;
}

function logout( servicePrefix )
{
	if (servicePrefix == null)
	{
		servicePrefix = ''
	}
	serviceUrl = servicePrefix + '/services/common/logout.aspx'
    var response = $.ajax({url: serviceUrl, async: false}).responseText;

	serviceUrl = servicePrefix + '/services/ibportal/logout.aspx'
	var response = $.ajax({url: serviceUrl, async: false}).responseText;
	
	serviceUrl = servicePrefix + '/services/content/logout.aspx'
	var response = $.ajax({url: serviceUrl, async: false}).responseText;
	
	return
}

function reloadApplication()
{
  setTimeout( 'window.location.reload(true)' , 150 );
}


var _cachedUrlVars
function getUrlVars()
{
	if (_cachedUrlVars == null)
	{
	    var vars = [], hash;
	    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
	    for(var i = 0; i < hashes.length; i++)
	    {
	        hash = hashes[i].split('=');
	        vars.push(hash[0]);
	        vars[hash[0]] = hash[1];
	    }
	    _cachedUrlVars = vars;
	}
    return _cachedUrlVars;
} 

function onEmbedAttempt(e)
{
  if (e.success == true)
  {
    // Do Nothing     
  }
    else
    {
       var physicalKioskLayerVisibility = "hidden";
       var webLayerVisibility = "hidden";
       var isPhysicalKiosk = getUrlVars()['isPhysicalKiosk'];
       if (isPhysicalKiosk == 'true')
       {
         var physicalKioskLayerVisibility = "visible";
         var webLayerVisibility = "hidden";
       }
       else
       {
         var physicalKioskLayerVisibility = "hidden";
         var webLayerVisibility = "visible";             
        }
       $("#appLayer").css("visibility", 'visible');
       $("#physicalKioskLayer").css("visibility", physicalKioskLayerVisibility);
       $("#webLayer").css("visibility", webLayerVisibility);
   }
}


//-----------------------------------------------------------------------------
//
// Google Analytics Tracking
//
//-----------------------------------------------------------------------------


var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
var pageTracker;

/**
 * This function is called from the Flash application and allows it to set the desired tracker ID.
 */
function initializeGoogleAnalyticsTracker( trackerID )
{
	pageTracker = _gat._getTracker( trackerID );
	pageTracker._initData();
	
	// Reduce typical session timeout for something more meaningful for kiosk sessions - 3minutes from a default of 30 minutes
	pageTracker._setSessionTimeout(180);
	
	// Track load of kiosk
	pageTracker._trackPageview();
	return( true );
}