
<!--
//Titre s'affichant en haut de page
var TITRE_OPAC = "Consultation du catalogue ";
var VERSION_COMMUN = "Catalogue Commun";
//Titre s'affichant en haut de l'espace lecteur
var TITRE_LECTEUR = "Microbib OPAC - Votre Espace Lecteur";
//Titre s'affichant en haut de l'espace Affichage Doc
var TITRE_IMAGE_DOC = "Aperçu du Document";
//Messages d'informations au lecteur
var MESSAGE_CONNEXION = "La connexion à votre espace lecteur est activée,\n n\'oubliez pas de cliquer sur \'Deconnexion\', en haut à droite, lorsque vous aurez terminé.";
var MESSAGE_DECONNEXION = "La connexion à votre espace lecteur est desactivée,\n vous pouvez quitter le poste en toute sérénité.";
var MESSAGE_MOTDEPASS = "Si vous avez oublié votre mot de passe,\n ou bien tout simplement que vous n'en avez pas encore, veuillez vous adresser au responsable de la bibliothèque, qui est la seule personne habilitée à vous fournir ce type d'information.";
var MESSAGE_RESERVATION = "Voulez-vous confirmez la demande de réservation pour ce document ? \n\n Celle-ci sera soumise au bibliothécaire qui la validera, si cela est possible.";
var MESSAGE_NBRESERV = "Vous avez déjà atteint votre quota de demande de reservation !";
var MESSAGE_SITE_OBLI = "Sélectionner une bibliothèque.";

//Nombre de lettres minimum à taper pour lancer une recherche thématique
var LETTREMIN = 3;
//Durée au bout de laquelle le compte lecteur est automatiquement deconnecté si inactivité
var TEMPS_TIMEOUT = 5 * 60 * 1000; //en millisecondes (5minutes)
//Nom du cookie qui stocke le nombre de doc par page dans la grille de resultat
var COOKIE_NBDOCPAGE = 'nbdoc';
//Nom des cookie qui gerent la connexion a l'espace lecteur
var COOKIE_LECTEUR = 'connection';
var COOKIE_LECTEUR2 = 'nomlecteur';
//Nom du cookie qui indique que le login est lancé a partir du lien de reservation
var COOKIE_RESERV = 'page_reservation';
//Nom du cookie contenant le nombre de reservation actuelle du lecteur
var COOKIE_NBRESERV = 'nb_reserv';
//Nom des cookie pour l'activation des fonction additionnelles
var COOKIE_FONC_RESERV = 'fonc_reserv';
var COOKIE_FONC_SUGGES = 'fonc_sugges';
var COOKIE_FONC_MULTISITE = 'fonc_multisite' ; 
//Nom du site depot
var COOKIE_FONC_RESA_OPT = 'fonc_relais';
var COOKIE_SITE_DEPOT = 'site_depot';
//Cookie contenant le mode de recherche en cours
var COOKIE_RECHERCHE = 'recherche';
//Images guide pour les utilisteurs
var FLECHE_HAUT = "images/fleche_haut.gif";
var FLECHE_BAS = "images/fleche_bas.gif";
//Repertoire du css
var CSS_DIR = "include/";
var CSS_MAINFILE = "opac.css";

//------------------------------------------------
//Pages indispensables !!
var HOME = "../opac.wco";
var HOME_LECTEUR = "../compte.wco";
var PAGE_LOGIN = "../connexion.wco";
var PAGE_CONNEXION = "../login.wco";
var PAGE_LOGOUT = "deconnecte.wco";
var PAGE_RESERVATION = "../confirm_reserv.wco";
var PAGE_DETAILDOC = "../showdetail.wco";
var PAGE_ETENDUE = "../opacext.wco";
var PAGE_THEMA = "../opac_theme.wco";
var PAGE_NOUVEAU = "../nouveau.wco";
var PAGE_GENRES = "../mesgenres.wco";
var PAGE_REGLEMENT = "../reglement.wco";
var PAGE_MESPRETS = "../mesprets.wco";
var PAGE_MESRESERV = "../mesreserv.wco";
var PAGE_SUGGEST = "../suggestion.wco";


//Titres du menu général  (Titre, nomdelapage, optionsdulien)
var MENU_GENERAL = new Array();

MENU_GENERAL.push(new Array("Recherche Simple",HOME));
MENU_GENERAL.push(new Array("Recherche Etendue",PAGE_ETENDUE));
MENU_GENERAL.push(new Array("Recherche Thématique",PAGE_THEMA));
MENU_GENERAL.push(new Array("Recherche par Genre",PAGE_GENRES));
MENU_GENERAL.push(new Array("Nouveautés",PAGE_NOUVEAU));

if(LireCookie(COOKIE_FONC_RESERV)==".T.")
{MENU_GENERAL.push(new Array("Espace Lecteur","#","onClick=\"ouvreEspaceLecteur()\""));
}
if(LireCookie(COOKIE_FONC_MULTISITE)==".F.")
{MENU_GENERAL.push(new Array("Réglement",PAGE_REGLEMENT));
}
if(estConnecte())
{MENU_GENERAL.push(new Array("<h7>" +"Deconnexion"+"</h7>" ,"#" ,"onclick=\"deconnexion()\"")) ;
}

//Légendes du menu général
var LEGENDE_GENERAL = new Array();
LEGENDE_GENERAL.push("Effectuer une recherche dans le catalogue de la bibliothèque");
LEGENDE_GENERAL.push("Effectuer une recherche multicritères dans le catalogue de la bibliothèque");
LEGENDE_GENERAL.push("Effectuer une recherche par mots matières dans le catalogue de la bibliothèque");
LEGENDE_GENERAL.push("Effectuer une recherche par genre dans le catalogue de la bibliothèque");
LEGENDE_GENERAL.push("Voir les nouveautés du catalogue de la bibliothèque");
if(LireCookie(COOKIE_FONC_RESERV)==".T.")
{LEGENDE_GENERAL.push("Accéder à votre espace personnel");
}
if(LireCookie(COOKIE_FONC_MULTISITE)==".F.")
{LEGENDE_GENERAL.push("Visualiser les modalités d\\'emprunt");
}
if(estConnecte())
{LEGENDE_GENERAL.push("Déconnexion de votre espace personnel");
}
//Titres du menu de l'espace lecteur
var MENU_LECTEUR = new Array();
MENU_LECTEUR.push(new Array("Mon Compte",HOME_LECTEUR));
MENU_LECTEUR.push(new Array("Mes emprunts",PAGE_MESPRETS));
MENU_LECTEUR.push(new Array("Mes réservations",PAGE_MESRESERV));
if(LireCookie(COOKIE_FONC_SUGGES)==".T.")
{MENU_LECTEUR.push(new Array("Suggestion",PAGE_SUGGEST));
}
MENU_LECTEUR.push(new Array("<h7>" +"Deconnexion"+"</h7>","#","onclick=\"deconnexion()\"")) ;


//**********************************************//
//Debut des méthodes de l'OPAC, NE PAS MODIFIER*//
//**********************************************//

//Adaptation du css en fonction de la résolution
function includeCSS()
{
   document.write("<link rel=stylesheet type=\"text/css\" href=\"" + CSS_DIR + CSS_MAINFILE + "\" />");
   document.write("<link href=\"../include/default.css\" rel=\"stylesheet\" type=\"text/css\" />");
   document.write("<link href=\"../include/alphacube.css\" rel=\"stylesheet\" type=\"text/css\" />");
}

//Ouverture de la fenêtre POPUP pour l'espace lecteur
function ouvreEspaceLecteur()
{
  if($('espace_lecteur') == null)
  {
    espace_lecteur = new Window('espace_lecteur',
      {
        className: "alphacube",
        title: TITRE_LECTEUR,
        width:700,height:500,
        minimizable:false,
        maximizable:false,
        wiredDrag:true,
		url: (estConnecte() ? HOME_LECTEUR : PAGE_LOGIN),
        onload: function() {observeIframe('espace_lecteur_content');}
      });
    espace_lecteur.setDestroyOnClose();
    espace_lecteur.showCenter();
  }
  else espace_lecteur.destroy();
}

function observeIframe(fenetre)
{
  var nomPageIframe = retourneNomPage($(fenetre).contentWindow.location.href);
  switch(nomPageIframe)
  {
    case PAGE_CONNEXION :
    {
      if(estConnecte())
      { 
        if(LireCookie(COOKIE_RESERV)==1) location.reload();
        else Dialog.alert(MESSAGE_CONNEXION,
             {
               windowParameters:
               {
                 className: "alphacube",
                 width:300,height:120
               },
               okLabel: "OK",
               ok:function(win){ return true ; }
             });
			break;
      }
      else alert('Le login et/ou le mot de passe est incorrect !');
    }
    case PAGE_LOGOUT : location.replace(HOME);break;
    default :
    if(estConnecte())
    {
      if(LireCookie(COOKIE_RESERV)==1) location.reload();
    }
    break;
  }
}

//Méthodes pour la lecture / ecriture des cookies
function EcrireCookie(nom, valeur)
{
  var argv=EcrireCookie.arguments;
  var argc=EcrireCookie.arguments.length;
  var expires=(argc > 2) ? argv[2] : null;
  var path=(argc > 3) ? argv[3] : null;
  var domain=(argc > 4) ? argv[4] : null;
  var secure=(argc > 5) ? argv[5] : false;
  document.cookie=nom+"="+escape(valeur)+
  ((expires==null) ? "" : ("; expires="+expires.toGMTString()))+
  ((path==null) ? "" : ("; path="+path))+
  ((domain==null) ? "" : ("; domain="+domain))+
  ((secure==true) ? "; secure" : "");
}

function getCookieVal(offset)
{
  var endstr=document.cookie.indexOf (";", offset);
  if (endstr==-1) endstr=document.cookie.length;
  return unescape(document.cookie.substring(offset, endstr));
}

function LireCookie(nom)
{
  var arg=nom+"=";
  var alen=arg.length;
  var clen=document.cookie.length;
  var i=0;
  while (i<clen)
  {
    var j=i+alen;
    if (document.cookie.substring(i, j)==arg) return getCookieVal(j);
    i=document.cookie.indexOf(" ",i)+1;
    if (i==0) break;
  }
  return null;
}

function EffaceCookie(nom) {
     var expire = new Date ();
     expire.setTime (expire.getTime() - (24 * 60 * 60 * 1000));
     document.cookie = nom + "=; expires=" + expire.toGMTString();
}

//Méthodes pour la gestion de la sécurité de l'espace lecteur
function lanceTimeout()
{ 
  if (LireCookie(COOKIE_LECTEUR) == 1) 
    setTimeout("deconnexion('main');",TEMPS_TIMEOUT); }

function estConnecte(){ if(LireCookie(COOKIE_LECTEUR) == 1) return true; else return false; }

//Méthodes pour la reservation du lecteur
function lienReservation()
{
  if(estConnecte()) return "<a href=\"#\" onClick=\"javascript:reserver()\">| Reserver |</a>" ;
  else return "<a href=\"#\" onClick=\"lanceReservation()\">| Identifiez-vous pour réserver |</a>";
}

function lienReservation_r()
{
  if(estConnecte()) return "<a href=\"#\" onClick=\"lanceReservation()\">| Reserver |</a>" ;
  else return "<a href=\"#\" onClick=\"lanceReservation()\">| Réserver sur le réseau |</a>";
}

function lanceReservation()
{
  EcrireCookie(COOKIE_RESERV,1);
  ouvreEspaceLecteur();
}
// Méthode site depot

function openDialog(id) {
	  Dialog.alert($(id).innerHTML, {className: "alphacube",  width:300, 
									okLabel:"Ok",ok: reserver()
									})
  }
  
function lastDialog(id) {
	  Dialog.confirm($(id).innerHTML, {className: "alphacube",  width:300, 
					   cancelLabel: "Cancel", cancel: closeAllModalWindows, 
					   okLabel:"Ok",ok: reserver() })
  }
  
function closeAllModalWindows() {
    Windows.closeAllModalWindows();
    return true;
  }

//Methode pour la reservation

function reserver()
{		  
	EcrireCookie(COOKIE_RESERV,0);

	if(LireCookie(COOKIE_NBRESERV)>0)
    {
		Dialog.confirm(MESSAGE_RESERVATION,
     {
      windowParameters:{ className: "alphacube", width:300 },
	  okLabel: "Oui", cancelLabel: "Non", buttonClass: "myButtonClass", id: "reservation",
	  cancel:function(win)
        { return false },
      ok:function(win)
        { 
          location.replace(PAGE_RESERVATION);
          EcrireCookie(COOKIE_NBRESERV,(LireCookie(COOKIE_NBRESERV) - 1));
		  
	      return true;
        }
	});
  }
  else Dialog.alert(MESSAGE_NBRESERV,
       {
         windowParameters: 
         {
           className: "alphacube",
           width:300,height:100
         },
         okLabel: "OK",
         ok:function(win) {return true;}
       });
}


function EnregistreConnexion()
{
  EcrireCookie(COOKIE_LECTEUR,1);
  EcrireCookie(COOKIE_LECTEUR2,$F('nomlecteur'));
  if (LireCookie(COOKIE_RESERV)!=1)
  location.replace(HOME_LECTEUR+"?a="+Math.floor(Math.random()*1000000));
}

function deconnexion()
{
  EcrireCookie(COOKIE_LECTEUR,0);
  EffaceCookie(COOKIE_LECTEUR2);
  EffaceCookie(COOKIE_RESERV);
  EffaceCookie(COOKIE_NBRESERV);
  Dialog.alert(MESSAGE_DECONNEXION,
  {windowParameters:
    {className: "alphacube",width:300,height:120},
    okLabel: "OK",
    ok:function(win)
	{location.replace(PAGE_LOGOUT); return true;}
  });
}

function espacelecteur()
{
	return "<a id=\"logout\" href=\"#\" onClick=\"ouvreEspaceLecteur()\">>>Espace Lecteur</a>";
	
}

function estconnecte()
{	if(estConnecte()) return "<a href=\"#\" id=\"logout\" onClick=\"deconnexion()\"><h7>>>Deconnexion</h7></a>" ;

	}
	
function reglements()
{
	return "<a href=\"#\" onclick=\"location.replace('reglement.wco')\">>>Réglements</a>" ;
}


function motdepass()
{Dialog.alert(MESSAGE_MOTDEPASS,
  {
	windowParameters:
    {className: "alphacube", width:400,height:130},
    okLabel: "OK",
    ok:function(win)
    {location.replace(PAGE_LOGIN);return true;}
  });
}


//Méthodes pour la gestion des menus et des liens
function retourneNomPage(source)
{
  var nomPage = source;
  nomPage = nomPage.split("/");
  nomPage = nomPage[nomPage.length - 1];
  nomPage = nomPage.replace(new RegExp("(%20|_|-)", "g"), "");
  return nomPage;
}

function afficheLegende(balise,texte)
{
  $(balise).innerHTML = texte;
}

function afficheMenu(origine)
{
  var nomPage = retourneNomPage(window.location.pathname);
  if(origine == 'main')
  {
    menu = "<div id=\"MENU\">";
	menu+= "<a href=\'#\' onClick=\'location.replace(\"opac.wco\")'><img title=\"Retour à la page d'acceuil\" id=\"logout\" src=\"images_bibliotheque/logo_sfgu_mini.gif\" height=\"60\" style=\"position:absolute;left: 4px;top: 3px;\"></a>";
	menu+= "<div style=\"text-align:center;height:74px;line-height:27px;\">";
	if (LireCookie(COOKIE_FONC_MULTISITE)== ".T.")document.write ("<h1>" +"Résultats du Catalogue Commun"+ "</h1>")
	 else {
	menu+= "<h1>" + LireCookie('raison_sociale') + "</h1>";

}
	menu+= "<h2 id=\"VERSION\">"+TITRE_OPAC + "(" + VERSION_OPAC + ")</h2>";
    menu+= "<hr /><ul id=\"tabnav\">";
     for(var i=0; i<MENU_GENERAL.length ;i++)
     {
        menu+= (nomPage == MENU_GENERAL[i][1] ? "<li class=\"active\">" : "<li>");
        menu+= "<a href=\"" + MENU_GENERAL[i][1] + "\" ";
		menu+= (MENU_GENERAL[i][2] ? MENU_GENERAL[i][2] : "");
        menu+= " onMouseOver=\"afficheLegende(\'VERSION\',\'"+LEGENDE_GENERAL[i]+"\');\" ";
        menu+= " onMouseOut=\"afficheLegende(\'VERSION\',\'"+TITRE_OPAC + "(" + VERSION_OPAC + ")\');\">"+ MENU_GENERAL[i][0] +"</a></li>";
     }
	 menu+= "<img src=\"images/microbib.png\" height=\"50\" style=\"position:absolute;right: 4px;top: 3px;\">";
     menu+= "</ul></div></div>";
  }
  if(origine == 'popup')
  {
    menu = "<ul id=\"tabnav\">";
    for(var i=0; i<MENU_LECTEUR.length ;i++)
    {
         menu+= (nomPage == MENU_LECTEUR[i][1] ? "<li class=\"active\">" : "<li>");
         menu+= "<a href=\"javascript:location.replace(\'"+MENU_LECTEUR[i][1]+"?a="+Math.floor(Math.random()*1000000)+"\')\" "+ (MENU_LECTEUR[i][2] ? MENU_LECTEUR[i][2] : "");	     
         menu+= ">"+ MENU_LECTEUR[i][0] +"</a></li>";
    }
    menu+= "</ul><br />";
  }
  if(origine == 'sites')
  {    
    menu= "<ul id=\"tabli\">";
    for(var i=0; i<LIST_BIB.length ;i++)
    {
		if(LireCookie(COOKIE_SITE_DEPOT)==i+1)
		{ 
		 menu+= (nomPage == LIST_BIB[i][1] ? "<li class=\"active\">" : "<li>");
         menu+= " <a href=\"#\"; onclick=\"EcrireCookie(COOKIE_SITE_DEPOT,"+LIST_BIB[i][1]+")\" "+ (LIST_BIB[i][2] ? LIST_BIB[i][2] : "");	     
         menu+= ">* " + LIST_BIB[i][0] +" *</a>";
		 }
		else
		 {menu+= (nomPage == LIST_BIB[i][1] ? "<li class=\"active\">" : "<li>");
         menu+= " <a href=\"#\" onclick=\"EcrireCookie(COOKIE_SITE_DEPOT,"+LIST_BIB[i][1]+")\" "+ (LIST_BIB[i][2] ? LIST_BIB[i][2] : "");	     
         menu+= ">"+ LIST_BIB[i][0] +"</a>";
			};
	}
  }
  return menu;

}

function lien(e, etat)
{
  Element.setStyle(e,{backgroundColor:(etat == 0 ? 'lightgrey' : '')});
}

//Detection de la resolution pour un affichage optimal
includeCSS();

