// JavaScript Document
/**
 * affiche une boîte de dialogue d'information sur l'expiration imminente de la session utilisateur :
 * si l'utilisateur clique sur OK, la page est rechargée pour réinitialiser le chronomètre de session
 
 * @param int minutes délai avant l'expiration de la session 
 */
function rappelSession(minutes)
{
   var msg='Votre session expirera dans '+minutes+' minute';
   if(minutes>1) msg+='s';
   msg+='.\nVoulez-vous recharger la page pour éviter la déconnexion automatique ?';
   
   if(confirm(msg)) location.reload();
}

/**
 * affiche une alerte sur l'expiration de la session et redirige vers une autre page
 
 * @param string url URL de redirection en cas de déconnexion
 */
function expirationSession(url)
{
   alert('Votre session a expiré !\nVous êtes déconnecté à présent.');
   location.href=url;
}

/**
 * affiche des avertissements sur le délai d'expiration de la session :
 * - un premier au bout de (expiration-rappel) minutes (par ex. : 20-3 = 17 minutes)
 * - un second au bout de (expiration) minutes (par ex. : 20 minutes)
 
 * @param int expiration délai en minutes d'expiration de la session
 * @param int rappel délai en minutes avant l'expiration de la session pour l'affichage du rappel
 * @param string redirection URL de redirection en cas de déconnexion
 */
function session(expiration, rappel, redirection)
{
   // affichage du rappel
   //var chronoRappel=setTimeout('rappelSession('+rappel+')', (expiration-rappel)*60*1000);

   //******attention
   expiration=5
   rappel=1
   // une fois le rappel affiché, on avertit uniquement de l'expiration
   //var chronoExpiration=setTimeout('expirationSession(\''+redirection+'\')', expiration*60*1000);

   var chronoRappel=setTimeout('Session_revenir('+rappel+')', (expiration-rappel)*60*1000);
}


//
function Session_revenir(minutes)
{
   var msg='Votre session expirera dans '+minutes+' minute';
   if(minutes>1) msg+='s';
   msg+='.\nVoulez-vous recharger la page pour éviter la déconnexion automatique ?';
   
   //if(confirm(msg)) location.reload();
   window.location="/gestion/index.asp";
}


//Pour biens :
function session_bien(expiration, rappel, redirection)
{
   // affichage du rappel
   //var chronoRappel=setTimeout('rappelSession('+rappel+')', (expiration-rappel)*60*1000);
   
   // une fois le rappel affiché, on avertit uniquement de l'expiration
   //var chronoExpiration=setTimeout('expirationSession(\''+redirection+'\')', expiration*60*1000);

   var chronoRappel=setTimeout('Session_revenir_bien('+rappel+')', (expiration-rappel)*60*1000);
}


//
function Session_revenir_bien(minutes)
{
   var msg='Votre session expirera dans '+minutes+' minute';
   if(minutes>1) msg+='s';
   msg+='.\nVoulez-vous recharger la page pour éviter la déconnexion automatique ?';
   
   //if(confirm(msg)) location.reload();
   window.location="/gestion/biens/index_bien.asp";
}
