			var coords 	= [];
			var codeEquip 	= [];
			var icons		= [];

			/* Ce tableau stocke les informations de disponibilité
			   pour la dernière notice interrogée */
			var markers = [];

			// Pour chaque marqueur on va mettre : 
//			markers['NOM']['ICONE'];
//			markers['NOM']['DISPO'];
//			markers['NOM']['OBJET'];


			/* Ce tableau stocke à tout moment l'état de l'icone pour
			   l'ensemble des bibliothèques */
			var iconesSites = [];

			var dispoCentrale = 0;

			var pageCourante = 1;

			var titreCourant = "";
			var idCourant = "";

			document.write("<script type=\"text/javascript\" src=\"/js/variables.js\"></script>");

			$(document).ready(function() {
		 		$("#valider_simple").click(function() {
					interroge(1);
				});
				$("#in_all").keypress(function(e) {
					if (e.which == 13)
					{
						interroge(1);
					}
				});

				prepareCarte();
				$("#reserveCentrale").hide();
				$("#maj_carte").hide();
				$("#noticeComplete").hide();
				// On va lancer l'interrogation
				if ($("#in_all"))
				{
					if ( ($("#in_all").attr('value') != '') && ($("#in_all").attr('value') != undefined) )
					{
						interroge(1);
					}
				}
			});

			function prepareCarte()
			{
				if (document.getElementById('carte'))
				{
					map = new GMap2(document.getElementById('carte'));
					map.addControl(new GSmallZoomControl(), new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(10,10)));
					map.setCenter(new GLatLng(48.8631646, 2.3332977), 12);
					updateMarkers();

					// Ajout du div qui va permettre l'acces a la notice 
					// dans le catalogue de la Ville de Paris
					function MyPane() {}
					MyPane.prototype = new GControl;
					MyPane.prototype.initialize = function(map) {
					 	var me = this;
					 	me.panel = document.createElement("div");
	 					me.panel.style.border = "1px solid gray";
	 					me.panel.style.background = "white";
	 					me.panel.style.padding = "5px";
	 					me.panel.align = "center";
						me.panel.id = "noticeComplete";
  					me.panel.innerHTML = "Notice complète";
 						map.getContainer().appendChild(me.panel);
  					return me.panel;
					};

					MyPane.prototype.getDefaultPosition = function() {
					  return new GControlPosition(
					     G_ANCHOR_TOP_LEFT, new GSize(10, 0));
					     //Should be _ and not &#95;
						};

					MyPane.prototype.getPanel = function() {
						return me.panel;
					}
					map.addControl(new MyPane());


				}
			}

			function reinitMarkers()
			{
				for (var nomBib in coords)
				{
					// Rien dans le tableau markers, du coup on doit créer avec la
					// valeur par dÃ©faut
					var resMark = addMarker(nomBib, coords[nomBib][0], coords[nomBib][1], 3);
					markers[nomBib]  = [];
					markers[nomBib]['ICONE'] = 3;
					markers[nomBib]['DISPO'] = "";
					markers[nomBib]['OBJET'] = resMark;
				}
			}

			function updateMarkers()
			{
				var OUT = "";
				for (var nomBib in coords)
				{
					// On va regarder si un marqueur existe
					if (markers[nomBib] == undefined)
					{
						// Rien dans le tableau markers, du coup on doit créer avec la
						// valeur par dÃ©faut

						var resMark = addMarker(nomBib, coords[nomBib][0], coords[nomBib][1], 3);
						markers[nomBib]  = [];
						markers[nomBib]['ICONE'] = 3;
						markers[nomBib]['DISPO'] = "";
						markers[nomBib]['OBJET'] = resMark;
					}
					else if (markers[nomBib]['DISPO'] != markers[nomBib]['ICONE'])
					{
						// On doit mettre a jour le marqueru
						var libelle = "";
						libelle = nomBib;
						if (codeEquip[nomBib] != undefined)
						{
							libelle = libelle + " [<a href='http://www.paris.fr/portail/Culture/Portal.lut?page=equipment&template=equipment.template.popup&document_equipment_id=" + codeEquip[nomBib] + "' target='_blank'>+ d'infos</a>]";
						}
						libelle = libelle + "</center>";
						if (markers[nomBib]['DISPO'] != 3)
						{
							libelle = libelle + "<br/><b>Section : </b>" + markers[nomBib]['SECTION'];
							libelle = libelle + "<br/><b>Cote		: </b>" + markers[nomBib]['COTE'];
						}

						if ( (markers[nomBib]['RETOUR'] != undefined) && (markers[nomBib]['RETOUR'] != '') )
						{
							libelle = libelle + "<br/><b>Retour pr&eacute;vu le </b>" + markers[nomBib]['RETOUR'];
							libelle = libelle + "<br/><br/><center><b><a target='_blank' href=\"/paris/alerte.php?titre=" + titreCourant + "&bibli=" + nomBib + "&id=" + idCourant + "\">M'avertir de la disponibilit&eacute;<br/>de ce document</a></b>";
						}

						var resMark = addMarker(libelle, coords[nomBib][0], coords[nomBib][1], markers[nomBib]['DISPO']);
						markers[nomBib]['ICONE'] = markers[nomBib]['DISPO'];
						markers[nomBib]['OBJET'] = resMark;
					}
					else
					{
//							OUT = OUT + "<br/>" + nomBib + " / " + markers[nomBib]['DISPO'];
					}
				}
				$("#notice_complete").html(OUT);

			}

			function addMarker(name, lat, lng, codeIcon)
			{
				var marker = new GMarker(new GLatLng(lat, lng), {icon:icons[codeIcon]});
				var libMark = name;
				if (codeEquip[name] != undefined)
				{
						libMark = libMark + " [<a href='http://www.paris.fr/portail/Culture/Portal.lut?page=equipment&template=equipment.template.popup&document_equipment_id=" + codeEquip[name] + "' target='_blank'>+ d'infos</a>]";
				}
				marker.bindInfoWindow("<div class='popup_bib'>" + libMark + "</div>");

				map.addOverlay(marker);
				return marker;	
			}

			// Cette fonction lance l'interrogation via query.php
			// On affiche la liste des rÃ©sultats
      function interroge(num_page)
      { 
        IconesResultats = []; 
        reinitMarkers();
				$("#nb_resultats").html('&nbsp;');
        $("#num_pages").html('&nbsp;');
        $("#noticeComplete").hide();
        $("#liste_resultats").html('<br/><br/><br/><br/><center><img src="/img/ajax-loader.gif"/></center><br/><br/><br/><br/>');
        var rech = $("#in_all").attr('value');    
   
				$.ajaxSetup({ contentType: "application/json;charset=utf-8" });

        $.ajax({
          url: '/paris/query.php',
          type: 'GET',
          data: 'q=' + encodeURIComponent(rech) + '&num_page=' + num_page,
          timeout: 30000,
          dataType: 'json',
          error: function(){
            $("#liste_resultats").html("Le serveur n'a pas r&eacute;pondu dans le temps imparti. Veuillez r&eacute;essayer plus tard. <a href='http://b14-sigbermes.apps.paris.fr/'>Accés direct au catalogue</a>");
						$("#nb_resultats").html("&nbsp;");
						$("#num_pages").html("&nbsp;");
          },
          success: function(data){
						pageCourante = num_page;
            var HTMLout = "";
						numLigne = 1;
						if (data['TROP_DE_RES'] == 1)
						{
							HTMLout = "<div class='gras' id='trop_de_res'>Trop de r&eacute;sultats pour cette question. Veuillez pr&eacute;ciser votre requ&ecirc;te</div>";
							data['TAB_PAGES'] = Array();
						}
						else
						{
	            $.each(data['NOTICES'], function(i,item){
	              HTMLout = HTMLout + "<div class='resultat"
								// On va alterner la classe selon le numéro de ligne
								if (numLigne % 2)
								{
									HTMLout = HTMLout + " resultat_impair";
								}
								else
								{
									HTMLout = HTMLout + " resultat_pair";
								}
								HTMLout = HTMLout + "'><div class='titre_ouvrage'><a onclick='getNotice(this.id)' href='#' id='item_" + item['numero'] + "'>" + item['titre'] + "</a>&nbsp;";
								
								if (item['nb_dispo'] == 0)
								{
									HTMLout = HTMLout + "<span class='exp_indispo'>[Aucun ex dispo]</span>";
								}
								else
								{
									HTMLout = HTMLout + "<span class='exp_dispo'>[" + item['nb_dispo'] + " ex dispo]</span>";
								}

								HTMLout = HTMLout + "</div></div>";
								numLigne++;	
					    });
						}
						$("#liste_resultats").html(HTMLout);
						
						// Mise a jour des pages
						HTMLout = "";
						$.each(data['TAB_PAGES'], function(i,num_page){
							if (num_page == '...')
							{
								HTMLout = HTMLout + "<span>" + num_page + "</span>";
							}
							else if (num_page == pageCourante)
							{
								HTMLout = HTMLout + "<span class='num_page'>" + num_page + "</span>";
							}
							else
							{
								HTMLout = HTMLout + "<span class='num_page'><a href='#' onclick='interroge(" + num_page + ")'>" + num_page + "</a></span>";
							}
						});
            $("#num_pages").html(HTMLout);

						$("#nb_resultats").html("Nombre de r&eacute;sultats : " + data['NB_RES']);;
						if ( (data['NB_RES'] == 0) && (data['SUGGESTION'] != "") )
						{
							var texteRebond = '';
							texteRebond = '<span style="color:red">Essayez avec cet orthographe : </span> ';
							texteRebond = texteRebond + "<a href='#' onclick='relanceSugg()' id='suggestion'>" + data['SUGGESTION'] + "</a>";
							$("#liste_resultats").html("<i>" + texteRebond + "</i>");
						}
          }
        });
      }  

			function relanceSugg()
			{
				$("#in_all").val($("#suggestion").html());
				interroge(1);
			}

			// Cette fonction va afficher la notice
      function getNotice(id)
      {   
				$("#reserveCentrale").hide();
				$("#maj_carte").show();
				$("#noticeComplete").hide();
				$("#carte").addClass("op35");
				$(".titre_ouvrage a").removeClass("gras");
				$("#" + id).addClass("gras")
				titreCourant = $("#" + id).html();

				var reserveCentrale = 0;

        id = id.replace("item_", "");
        // On va nettoyer id pour enlever le dÃ©but (item_)
        $.getJSON("/paris/getNotice.php",{number: id},
        function success(data){
          var HTMLout = ""; 
          // Remise a zero de toutes les dispo
					idCourant = data["ID"];
          for (var site in markers)
          {
						markers[site]['DISPO']		= 3;
						markers[site]['RETOUR']		= "";
						markers[site]['COTE']			= "";
						markers[site]['SECTION']	= "";
          }

          $.each(data["DISPO"], function(i,item){
            HTMLout = HTMLout + "<br/>" + item["site"] + " # " + item["dispo"];
            var dispo = item["dispo"];
						if (markers[item['site']] == undefined)
						{
							 // Le site n'existe pas
						}
						else
						{
             	markers[item['site']]['DISPO'] 		= dispo;
							markers[item['site']]['RETOUR'] 	= item['retour'];
							markers[item['site']]['COTE'] 		= item['cote'];
							markers[item['site']]['SECTION']	= item['section'];
						}

						// Traitement special pour la reserve centrale
						if ( (item['site'] == "R\u00e9serve centrale") && (dispo == 1) )
						{
							reserveCentrale = 1;
						}
          });


          $("#notice_complete").html(HTMLout);
          updateMarkers();

					// On va mettre les informations 
					HTMLout = "";
					HTMLout = HTMLout + "<a target='_blank' href='http://b14-sigbermes.apps.paris.fr/clientBookline/service/reference.asp?INSTANCE=EXPLOITATION&OUTPUT=PORTAL&DOCID=" + data["ID"] + "&DOCBASE=VPCO'>Voir dans le catalogue de la VdP</a>";
					if (reserveCentrale == 1)
					{
						HTMLout = HTMLout + "<br/><br/>Cet ouvrage est disponible &agrave;<br/>la <b>r&eacute;serve centrale</b>";
					}
					$("#noticeComplete").html(HTMLout);
					$("#noticeComplete").show("blind");
					$("#maj_carte").hide();
					$("#carte").removeClass("op35");
        });
      }   

