var URL_ICONE_HOME="./images/icones/popup/adresseUtiliserTrans.gif";
var URL_ICONE_MEMORISER="./images/icones/popup/adresseMemoriser.gif";
var URL_ICONE_FICHE="./images/icones/popup/fiche.gif";
var URL_ICONE_INVERSE_ITINERAIRE="./images/icones/route/interversionTrans.gif";
var URL_ICONE_INVERSE_ITINERAIREOVER="./images/icones/route/interversionOverTrans.gif";
var URL_YALLER="./images/icones/popup/aller.gif";
var URL_ENPARTIR="./images/icones/popup/partir.gif";
var URL_A_PIED="./images/icones/route/pietonTrans.gif";
var URL_A_PIED_ACTIVE="./images/icones/route/pietonActive.gif";
var URL_EN_VELO="./images/icones/route/veloTrans.gif";
var URL_EN_VELO_ACTIVE="./images/icones/route/veloActive.gif";
var URL_EN_VOITURE="./images/icones/route/voitureTrans.gif";
var URL_EN_VOITURE_ACTIVE="./images/icones/route/voitureActive.gif";
var URL_EN_COMMUN="./images/icones/route/transportCommun.gif";
var URL_EN_COMMUN_ACTIVE="./images/icones/route/transportCommunActive.gif";
var URL_ICONE_EXPORT_COLOR="./images/export_color.png";
var URL_ICONE_EXPORT_GREY="./images/export_grey.png";
var URL_FLECHE_DEPLIER="./images/flecheDeplier.gif";
var URL_FLECHE_PLIER="./images/flechePlier.gif";
var URL_VELO_BLEU="./images/veloBleu.gif";
var URL_METRO_BLEU="./images/12listeM.gif";
var HOME_ID;
var HOME_LIBELLE;
var KEY_HOME_ID="mdp_home_id";
var KEY_HOME_LIBELLE="mdp_home_libelle";
var gestionnaireRecherche=null;
var gestionnairePanneauLateral=null;
var preloadedImages=[];
var iPreloadedImages=0;
var pendingInitQueries=null;
var appReady=false;
var appDataReady=false;
function beginBatch(){
dwr.engine.beginBatch();}
function endBatch(){
dwr.engine.endBatch();}
function useLoadingImage(imageSrc){
var loadingImage;
if(imageSrc)loadingImage=imageSrc;
else loadingImage="ajax-loader.gif";
dwr.engine.setPreHook(function(){
var curBatch=dwr.engine._batches[dwr.engine._nextBatchId-1];
var callcount=curBatch.map.callCount-1;
var prefix="c"+callcount+"-";
var methodName=curBatch.map[prefix+"methodName"];
var disabledImageZone=$('disabledImageZone');
if(!disabledImageZone){
disabledImageZone=document.createElement('div');
disabledImageZone.setAttribute('id','disabledImageZone');
disabledImageZone.className="disabledImageZone";
disabledImageZone.style.zIndex="5000";
content="";
content+="<table width=\"100%\" height=\"100%\">";
content+="<tr height=\"100%\"><td width=\"100%\" style=\"vertical-align:center;horizontal-align=center\">";
content+="<div style=\"text-align:center\"><img src=\""+imageSrc+"\" id=\"imageZone\"></div>";
content+="</td></tr>";
content+="</table>";
disabledImageZone.innerHTML=content;
document.body.appendChild(disabledImageZone);}
else{
$('imageZone').src=imageSrc;}
if(methodName!="identifyEquipement"){
disabledImageZone.style.display='block';}});
dwr.engine.setPostHook(function(){
$('disabledImageZone').style.display='none';});}
function addImage(imgSrc){
preloadedImages[iPreloadedImages]=new Image();
preloadedImages[iPreloadedImages].src=imgSrc;
iPreloadedImages++;}
function preLoadImages(){
addImage(URL_FLECHE_DEPLIER);
addImage(URL_FLECHE_PLIER);
addImage(URL_VELO_BLEU);
addImage(URL_METRO_BLEU);
addImage(URL_PICTO_PETIT);
addImage(URL_PICTO_GRAND);
addImage("js/openlayers/img/"+CORNERS.TL.src);
addImage("js/openlayers/img/"+CORNERS.TM.src);
addImage("js/openlayers/img/"+CORNERS.TR.src);
addImage("js/openlayers/img/"+CORNERS.ML.src);
addImage("js/openlayers/img/"+CORNERS.MR.src);
addImage("js/openlayers/img/"+CORNERS.BL.src);
addImage("js/openlayers/img/"+CORNERS.BM.src);
addImage("js/openlayers/img/"+CORNERS.BR.src);
addImage("js/openlayers/theme/default/img/popupClose.gif");
addImage("js/openlayers/theme/default/img/popupClose-hover.gif");
addImage(URL_ICONE_HOME);
addImage(URL_ICONE_MEMORISER);
addImage(URL_YALLER);
addImage(URL_ENPARTIR);
addImage(URL_ICONE_INVERSE_ITINERAIRE);
addImage(URL_ICONE_INVERSE_ITINERAIREOVER);
addImage(URL_A_PIED);
addImage(URL_A_PIED_ACTIVE);
addImage(URL_EN_VELO);
addImage(URL_EN_VELO_ACTIVE);
addImage(URL_EN_VOITURE);
addImage(URL_EN_VOITURE_ACTIVE);
addImage(URL_EN_COMMUN);
addImage(URL_EN_COMMUN_ACTIVE);}
function ecrireCookie(nom,valeur){
var argv=ecrireCookie.arguments;
var argc=ecrireCookie.arguments.length;
var expires=new Date();
var unAn=expires.getTime()+(365*24*60*60*1000);
expires.setTime(unAn);
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 errorHandler(msg,exception){
document.getElementById("dwrDebug").innerHTML+=exception.name+"<br/>"+exception.message+"<br/>"+exception.description+"<br/>"+exception.fileName+"<br/>"+exception.lineNumber+"<br/>"+exception.stack+"<br/>";}
function finGetAppData(appData){
finGetListeEquipements(appData.nomenclatureEquipements);
finGetListeThematiques(appData.cartesThematiques);
finGetListeArrondissement(appData.arrondissements)
finGetEchellesCartesGenerales(appData.echellesCartesGenerales);
gestionnaireCarte.cartes=appData.cartes;
gestionnaireCarte.cartesGenerales[0]=appData.cartes[1];
gestionnaireCarte.cartesGenerales[1]=appData.cartes[2];
gestionnaireCarte.cartesGenerales[2]=appData.cartes[3];
if(BEAN_URL&&BEAN_URL.nbrParamsInURL>0)
traceAccess("url_parametree");
else
traceAccess("accueil");
gestionnairePanneauLateral.finalize();
gestionnaireCarte.finalize();
gestionnaireBandeau.init();
updateLayout();
appDataReady=true;
finInit();
}function initialisation(){
if(DEV_MODE==1&&(window.console==undefined||window.console===null)){
window.console=OpenLayers.Console;}
dwr.engine.setErrorHandler(dwr.engine._debug);
useLoadingImage("images/loading.gif");
gestionnaireCarte=new GestionnaireCarte();
gestionnairePopup=new GestionnairePopup();
gestionnairePanneauLateral=new GestionnairePanneauLateral();
gestionnaireRecherche=new GestionnaireRecherche();
gestionnaireMail=new GestionnaireMail();
gestionnaireOnglets=new GestionnaireOnglets();
gestionnaireUrl=new GestionnaireUrl();
gestionnaireItineraire=new GestionnaireItineraire();
gestionnaireImpression=new GestionnaireImpression();
gestionnaireExport=new GestionnaireExport();
gestionnaireBandeau=new GestionnaireBandeau();
HOME_ID=lireCookie(KEY_HOME_ID);
HOME_LIBELLE=lireCookie(KEY_HOME_LIBELLE);
startInitialization();
AppDataAjax.getAppData(finGetAppData);
preLoadImages();}
function startInitialization(){
pendingInitQueries=new Array();
registerPendingQuery("Initialization");}
function registerPendingQuery(query){
if(appReady||isEmptyStr(query))
return;
for(q in pendingInitQueries){
if(q==query)
return;}
pendingInitQueries.push(query);}
function registerTerminatedQuery(query){
if(appReady)
return;
for(var i=0;i<pendingInitQueries.length;i++){
var q=pendingInitQueries[i];
if(q==query){
pendingInitQueries.splice(i,1);
if(pendingInitQueries.length==0)
appReady=true;
return;}}}
function hauteur_fenetre(){
if(window.innerHeight)return window.innerHeight;
else if(document.body&&document.body.offsetHeight)return document.body.offsetHeight;
else return 0;}
function getElementVisibleHeight(elementID){
var element=document.getElementById(elementID);
if(element&&element.style.display!='none'){
return element.offsetHeight;}
return -1;}
function hauteur_bandeau_recherche(){
var height=getElementVisibleHeight("rechercheAdresse");
if(height>0){
return height;}
height=getElementVisibleHeight("rechercheEquipement");
if(height>0){
return height;}
height=getElementVisibleHeight("rechercheItineraire");
if(height>0){
return height;}
return height;}
function largeurFenetre(){
if(window.innerWidth)return window.innerWidth;
else if(document.body&&document.body.offsetWidth)return document.body.offsetWidth;
else return 0;}
function largeurBoutonOuverture(){
var bouton=document.getElementById("boutonOuverture");
if(document.body&&bouton){
if(document.body.offsetWidth){
return bouton.offsetWidth;}
else{
return bouton.innerWidth;}}
else{
return 0;}}
function updateLayout(){
updateHorizontalLayout(false);
updateVerticalLayout();}
function updateVerticalLayout(){
var mainPanel=document.getElementById("centre");
var tabBar=document.getElementById("mainTabBar");
var contenu=document.getElementById("contenu");
var tabBorder=2;
var bottomBorder=2;
var footerHeight=0;
var contentMargin=0;
if(mainPanel==null||tabBar==null||contenu==null){
return;}
var pageHeight=hauteur_fenetre();
var mainPanel_y0=mainPanel.offsetTop;
var content_y0=mainPanel_y0+tabBar.offsetHeight+tabBorder;
var mainPanelHeight=pageHeight-mainPanel_y0-bottomBorder-footerHeight;
var contentHeight=pageHeight-content_y0-bottomBorder-footerHeight;
if(contentHeight<=0){
return;}
mainPanel.style.height=""+mainPanelHeight+"px";
contenu.style.height=""+contentHeight+"px";
contenu.style.top=""+content_y0+"px";
var sidePanel=document.getElementById("panneauLateral");
if(sidePanel){
sidePanel.style.height=""+contentHeight+"px";}
var sidePanelContent=document.getElementById("contenuPanneauLateral");
if(sidePanelContent){
sidePanelContent.style.height=""+(contentHeight-contentMargin)+"px";}
var bouton=document.getElementById("boutonOuverture");
if(bouton){
var button_yOffset=contentHeight/2;
bouton.style.marginTop=""+button_yOffset+"px";
bouton.style.height=""+(contentHeight-button_yOffset)+"px";}
var map=document.getElementById("map");
if(map){
map.style.top=""+content_y0+"px";
map.style.height=""+contentHeight+"px";}
if(gestionnaireCarte!==null&&gestionnaireCarte.map!==null){
gestionnaireCarte.map.updateSize();}
var legend=document.getElementById("iframeLegende");
if(legend){
legend.style.height=""+(contentHeight-contentMargin)+"px";}}
function updateHorizontalLayout(bUpdateMapSize){
if(gestionnairePanneauLateral==null){
return;}
var content=document.getElementById("contenu");
var sidePanel=document.getElementById("panneauLateral");
var button=document.getElementById("boutonOuverture");
var map=document.getElementById("map");
var pageWidth=this.largeurFenetre();
var buttonWidth=this.largeurBoutonOuverture();
var panelWidth=0;
var panelShown=gestionnairePanneauLateral.PANNEAU_OUVERT;
if(panelShown&&gestionnairePanneauLateral.indexPanneauCourant>=0){
panelWidth=gestionnairePanneauLateral.tableauLargeurPanneau[gestionnairePanneauLateral.indexPanneauCourant];}
var mapOffset=panelWidth+buttonWidth;
var mapWidth=pageWidth-mapOffset;
content.style.width=""+pageWidth+"px";
sidePanel.style.width=""+panelWidth+"px";
button.style.left=""+panelWidth+"px";
if(map){
map.style.width=""+mapWidth+"px";
map.style.left=""+mapOffset+"px";}
if(bUpdateMapSize===null||bUpdateMapSize==true){
if(gestionnaireCarte!==null&&gestionnaireCarte.map!==null){
gestionnaireCarte.map.updateSize();}}}
function finInit(){
gestionnaireRecherche.init();
gestionnaireItineraire.init();
gestionnairePopup.init();
gestionnaireOnglets.init();
registerTerminatedQuery("Initialization");}
function contain(liste,value){
flag=false;
for(var i=0;i<liste.length&&!flag;i++){
if(liste[i]==value){
flag=true;}}
return flag;}
function RefreshPageRendering(){}


function standardisation(str){
str=str.toUpperCase();
str=str.replace(/[ÂÀÄÁÃ]/g,"A");
str=str.replace(/[ÊÈËÉ]/g,"E");
str=str.replace(/[ÎÌÏÍ]/g,"I");
str=str.replace(/[ÔÒÖÓÕ]/g,"O");
str=str.replace(/[ÛÙÜÚ]/g,"U");
str=str.replace(/Ç/g,"C");
str=str.replace(/Ñ/g,"N");
str=str.replace(/[\']/g,"' ");
return str;}
function removeQuote(str){
str=str.replace(/[\']/g," ");
str=str.replace(/[\"]/g," ");
return str;}
function standardisationParamUrl(str){
str=standardisation(str);
str=str.replace(/[\']/gi,' ');
str=str.replace(/\ ]+[\/]/g, '/');
str=str.replace(/[\ ]+$/g,'');
str=str.replace(/[^a-z0-9_:~\.\-\ \/\&\']/gi,'_');
str=str.toLowerCase();
return str;}
function standardisationChemin(str){
if(isEmptyStr(str))
return "";
str=standardisationParamUrl(str);
if(str.substring(0,1)!='/')
str='/'+str;
if(str.substring(str.length-1)=='/')
str=str.substring(0,str.length-1);
return str;}
function isEmptyStr(str){
return(str==undefined||str===null||str=="");}
function showElement(elementID,display){
var element=document.getElementById(elementID);
if(element){
element.style.display=display;}}
function hideElement(elementID){
var element=document.getElementById(elementID);
if(element){
element.style.display="none";}}
function changeClass(elementID,className){
var element=document.getElementById(elementID);
if(element){
element.className=className;}}
function getEltClass(elementID){
var element=document.getElementById(elementID);
if(element){
return element.className;}else{
return null;}}
function openWindow(url,params){
try{
if(isEmptyStr(params))
params="";
var newWindow=window.open(url,"_blank",params);
if(newWindow&&newWindow.top){
newWindow.focus();
return true;}
return false;}catch(e){
return false;}}
function traceAccess(page,section,subsection){}

function finGetCarteInit(bean){
if(bean==undefined||bean===null){
return;}
if(BEAN_URL!=null&&!isEmptyStr(BEAN_URL.mapId)){
gestionnaireOnglets.gestionOngletThematique(bean.carteId,bean.titreLong);
gestionnairePanneauLateral.ouvrirUnivers(bean.univers.nom);}
gestionnaireCarte.setCarte(bean);}
function finGetCarte(bean){
gestionnaireCarte.setCarte(bean);}
function finGetCarteGenerale(bean){
gestionnaireCarte.cartesGenerales[bean.carteId-1]=bean;}
function finGetCarteGeneraleSetCarte(bean){
gestionnaireCarte.cartesGenerales[bean.carteId-1]=bean;
gestionnaireCarte.loadCarteById(gestionnaireCarte.carteId);}
function finGetEchellesCartesGenerales(bean){
gestionnaireCarte.echellesCartesGenerales=bean;}
function finSelectEquipements(equipementsBean){
gestionnaireCarte.equipementsCategorie=equipementsBean.equipements;
gestionnaireCarte.loadClickable();
gestionnaireCarte.updateZIndex();
if(equipementsBean.isLimited){
alert("Seuls "+equipementsBean.limit+" équipements sont affichés");}
if(equipementsBean.listeCategories!==null&&equipementsBean.listeCategories.length!=0){
gestionnaireCarte.categories=equipementsBean.listeCategories;
var tabCatACocherEtDisabled=null;
if(!isEmptyStr(gestionnaireCarte.currentCarte.strCategorieList)){
tabCatACocherEtDisabled=gestionnaireCarte.currentCarte.strCategorieList.split(",");}
gestionnairePanneauLateral.affichagePanneauCarteEquipement(gestionnaireCarte.categories,tabCatACocherEtDisabled);}
registerTerminatedQuery("selectEquipements");}
function finZoomSurArrondissement(envelope){
gestionnaireCarte.highlightArrondissement=true;
gestionnaireCarte.zoomToExtentBean(envelope);
gestionnaireCarte.loadCoucheDynamique();
gestionnaireCarte.updateZIndex();
registerTerminatedQuery("zoomSurArrondissement");}
function finNettoyage(){
gestionnaireCarte.highlightArrondissement=false;
gestionnaireCarte.transports.length=[];
gestionnaireCarte.actionGestionTransport();
gestionnaireCarte.categories=null;
gestionnaireCarte.infoCategories=[];
gestionnaireCarte.layerMarkersRecherche.clearMarkers();
gestionnaireRecherche.listeFeature=[];
gestionnaireRecherche.beanEquipementsRecherches=null;
gestionnaireRecherche.beanAdressesRecherchees=null;
gestionnaireRecherche.itineraireBean=null;
gestionnaireRecherche.typeRechercheLancee=null;
gestionnaireItineraire.itiDepart=[];
gestionnaireItineraire.itiArrivee=[];
gestionnaireItineraire.itineraireBean=null;
gestionnaireRecherche.adresseIdCliquee=null;
if(gestionnaireCarte.coucheFondPlan!==null){
gestionnaireCarte.coucheFondPlan.mergeNewParams({'version':Math.random(),'adresseId':null});}
gestionnaireCarte.equipementsCategorie=[];
gestionnaireCarte.updateZIndex();
gestionnaireOnglets.supprimerOngletRechercheEtItineraire();
gestionnaireCarte.loadClickable();
gestionnaireCarte.updateZIndex();}
function mouseDown(px){
gestionnaireCarte.xdown=px.x;
gestionnaireCarte.ydown=px.y;
gestionnaireCarte.mouseDownPoint=px.clone();}
var lastClick=null;
function mouseUp(px){
if((Math.abs(px.x-gestionnaireCarte.xdown)+Math.abs(px.y-gestionnaireCarte.ydown))<4){
var lonlat=gestionnaireCarte.map.getLonLatFromPixel(px);
lastClick=px;
gestionnaireCarte.identify(lonlat,finIdentify);}}
function isPopupInfoOpen(){
if(gestionnaireCarte.popupInfo&&OpenLayers.Element.visible(gestionnaireCarte.popupInfo.div))
return true;
return false;}
function finIdentify(result){
if(gestionnaireCarte==null)
return;
if(result==null||result=="")
return;
if(gestionnaireCarte.stopWindows!==null){
if(gestionnaireCarte.stopWindows.equals(lastClick)){
gestionnaireCarte.stopWindows=null;
return;}}
if(openWindow(result))
return;
if(isPopupInfoOpen())
return;
if(gestionnaireCarte.popupExternalLink){
gestionnaireCarte.popupExternalLink.destroy();
gestionnaireCarte.popupExternalLink=null;}
var message="Les popups sont bloqués par votre navigateur.<br>"+"<a target='_blank' href='"+result+"' onClick='return !ouvrirLienPage()'>Cliquez ici pour accéder à la page</a>.";
var lonlat=gestionnaireCarte.map.getLonLatFromPixel(gestionnaireCarte.mouseDownPoint);
gestionnaireCarte.externalLink=result;
gestionnaireCarte.popupExternalLink=
new OpenLayers.Popup.AnchoredBubble("Popups bloqués",
lonlat,
new OpenLayers.Size(250,70),
message,
true);
gestionnaireCarte.map.addPopup(gestionnaireCarte.popupExternalLink,true);}
function ouvrirLienPage(){
if(gestionnaireCarte.popupExternalLink==null){
return true;}
if(!openWindow(gestionnaireCarte.externalLink)){
return false;}
gestionnaireCarte.popupExternalLink.destroy();
gestionnaireCarte.popupExternalLink=null;
return true;}
GestionnaireCarte=function(){
this.map;
this.currentCarte=null;
this.carteId=1;
this.lon=0;
this.lat=0;
this.xdown;
this.ydown;
this.mouseDownPoint=null;
this.externalLink=null;
this.popupExternalLink=null;
this.cartesGenerales=new Array();
this.cartes=new Array();
this.echellesCartesGenerales=null;
this.maxExtent=null;
this.scales=null;
this.coucheFondPlan=null;
this.overlayThematique=null;
this.overlayGeneral=null;
this.overlayEquipements=null;
this.clickableLayer=null;
this.layerMarkersRecherche=null;
this.transportLocked=false;
this.transports=[];
this.transportsActifs=[];
this.categoriesLocked=false;
this.categories=[];
this.infoCategories=[];
this.arrondissements=[];
this.equipementsCategorie=[];
this.updatingMap=false;
this.stopWindows=null;
this.highlightArrondissement=false;
this.getUniqueString=function(layerId){
return Math.random();}
this.updateZIndex=function(){
var i=0;
if(this.coucheFondPlan!==null){
this.map.setLayerIndex(this.coucheFondPlan,i++);}
if(this.overlayThematique!==null){
this.map.setLayerIndex(this.overlayThematique,i++);}
if(this.overlayGeneral!==null){
this.map.setLayerIndex(this.overlayGeneral,i++);}
if(this.overlayEquipements!==null){
this.map.setLayerIndex(this.overlayEquipements,i++);}
if(this.clickableLayer!==null){
this.map.setLayerIndex(this.clickableLayer,i++);}
this.map.setLayerIndex(this.layerMarkersRecherche,i++);}
this.loadCoucheFondPlan=function(){
if(this.coucheFondPlan!=null){
this.coucheFondPlan=null;}
var nomService=this.currentCarte.aimsService;
if(nomService==""||nomService===null){
return;}
if(this.currentCarte.highlightLayer==null||this.currentCarte.highlightLayer==""){
var tmpLayer=new OpenLayers.Layer.TMS(this.currentCarte.aimsService,"/carto/mapping/wms-c/",{'layername':this.currentCarte.carteId,'type':"jpg"});
tmpLayer.setTileSize(new OpenLayers.Size(BASELAYER_TILE_SIZE,BASELAYER_TILE_SIZE));}
else{
var tmpLayer=new OpenLayers.Layer.WMS(nomService,
"/carto/mapping/wms",{layers:nomService,nocache:this.getUniqueString(this.currentCarte.aimsService),
carteId:this.carteId,
adresseId:gestionnaireRecherche.adresseIdCliquee});
tmpLayer.singleTile=true;
tmpLayer.ratio=BASELAYER_RATIO;}
tmpLayer.isBaseLayer=true;
tmpLayer.gutter=BASELAYER_GUTTER;
tmpLayer.buffer=BASELAYER_BUFFER;
var options=new Object();
options.maxExtent=this.maxExtent;
options.scales=this.scales;
tmpLayer.addOptions(options);
this.coucheFondPlan=tmpLayer;
this.map.addLayer(this.coucheFondPlan);
this.map.setBaseLayer(this.coucheFondPlan);}
this.loadOverlayThematique=function(){
if(this.overlayThematique!==null){
this.overlayThematique=null;}
var nomService=this.currentCarte.aimsServiceOverlay;
if(nomService==""||nomService===null){
return;}
this.overlayThematique=new OpenLayers.Layer.WMS("overlayThematique",
"/carto/mapping/wms",{layers:nomService,nocache:this.getUniqueString("overlayThematique")});
if(OVERLAY_THEMATIQUE_LAYER_TILE_SIZE!=0){
this.overlayThematique.setTileSize(new OpenLayers.Size(OVERLAY_THEMATIQUE_LAYER_TILE_SIZE,OVERLAY_THEMATIQUE_LAYER_TILE_SIZE));}else{
this.overlayThematique.singleTile=true;
this.overlayThematique.ratio=OVERLAY_THEMATIQUE_LAYER_RATIO;}
this.overlayThematique.gutter=OVERLAY_THEMATIQUE_LAYER_GUTTER;
this.overlayThematique.buffer=OVERLAY_THEMATIQUE_LAYER_BUFFER;
var options=new Object();
options.maxExtent=this.maxExtent;
options.scales=this.scales;
this.overlayThematique.addOptions(options);
if(this.coucheFondPlan!==null){
this.overlayThematique.isBaseLayer=false;}else{
this.overlayThematique.isBaseLayer=true;}
this.map.addLayer(this.overlayThematique);
if(this.overlayThematique.isBaseLayer==true){
this.map.setBaseLayer(this.overlayThematique);}
this.overlayThematique.minResolution=0;
this.overlayThematique.maxResolution=1000000;}
this.loadOverlayGeneral=function(){
if(this.overlayGeneral!==null){
this.overlayGeneral=null;}
var nomService=this.currentCarte.aimsServiceOverlayGeneral;
if(nomService==""||nomService===null){
return;}
var layersOverlay=nomService+this.getCouchesTransport();
this.overlayGeneral=new OpenLayers.Layer.WMS("overlayGeneral",
"/carto/mapping/wms",{layers:layersOverlay,nocache:this.getUniqueString("overlayGeneral")});
this.overlayGeneral.isBaseLayer=false;
if(OVERLAY_GENERAL_LAYER_TILE_SIZE!=0){
this.overlayGeneral.setTileSize(new OpenLayers.Size(OVERLAY_GENERAL_LAYER_TILE_SIZE,OVERLAY_GENERAL_LAYER_TILE_SIZE));}else{
this.overlayGeneral.singleTile=true;
this.overlayGeneral.ratio=OVERLAY_GENERAL_LAYER_RATIO;}
this.overlayGeneral.gutter=OVERLAY_GENERAL_LAYER_GUTTER;
this.overlayGeneral.buffer=OVERLAY_GENERAL_LAYER_BUFFER;
var options=new Object();
options.maxExtent=this.maxExtent;
options.scales=this.scales;
this.overlayGeneral.addOptions(options);
if(this.coucheFondPlan!==null||this.overlayThematique!==null){
this.overlayGeneral.isBaseLayer=false;}else{
this.overlayGeneral.isBaseLayer=true;}
this.map.addLayer(this.overlayGeneral);
if(this.overlayGeneral.isBaseLayer==true){
this.map.setBaseLayer(this.overlayGeneral);}
this.overlayGeneral.minResolution=0;
this.overlayGeneral.maxResolution=1000000;}
this.loadCoucheDynamique=function(){
if(this.overlayEquipements!==null){
this.overlayEquipements.destroy(true);}
this.overlayEquipements=new OpenLayers.Layer.WMS("overlayEquipements",
"/carto/mapping/wms",{layers:"overlayEquipements",nocache:this.getUniqueString("overlayEquipements"),listeCat:this.currentCarte.strCategorieList,listeEqu:this.currentCarte.strEquipementList});
this.overlayEquipements.isBaseLayer=false;
if(CLICKABLE_LAYER_TILE_SIZE!=0){
this.overlayEquipements.setTileSize(new OpenLayers.Size(CLICKABLE_LAYER_TILE_SIZE,CLICKABLE_LAYER_TILE_SIZE));}else{
this.overlayEquipements.singleTile=true;
this.overlayEquipements.ratio=CLICKABLE_LAYER_RATIO;}
this.overlayEquipements.gutter=CLICKABLE_LAYER_GUTTER;
this.overlayEquipements.buffer=CLICKABLE_LAYER_BUFFER;
var options=new Object();
options.maxExtent=this.maxExtent;
options.scales=this.scales;
this.overlayEquipements.addOptions(options);
this.map.addLayer(this.overlayEquipements);
this.overlayEquipements.minResolution=0;
this.overlayEquipements.maxResolution=1000000;}
this.loadClickable=function(){
if(this.clickableLayer!==null){
this.clickableLayer.destroy(true);}
if((this.equipementsCategorie==null||this.equipementsCategorie.length<=0)&&(gestionnaireItineraire.itineraireBean==null)){
if(this.highlightArrondissement){
this.loadCoucheDynamique();}
else if(this.overlayEquipements!==null){
this.overlayEquipements.destroy(true);}
return;}
this.loadCoucheDynamique();
this.clickableLayer=new OpenLayers.Layer.Clickable("Clickable");
this.clickableLayer.events.register('updatemap',this,gestionnaireCarte.updateMap);
this.clickableLayer.events.register('itemclicked',this,gestionnaireCarte.itemClicked);
this.clickableLayer.isBaseLayer=false;
var options=new Object();
options.maxExtent=this.maxExtent;
options.scales=this.scales;
this.clickableLayer.addOptions(options);
this.map.addLayer(this.clickableLayer);
this.clickableLayer.minResolution=0;
this.clickableLayer.maxResolution=1000000;
this.clickableLayer.ratio=CLICKABLE_LAYER_RATIO;}
this.loadVectorLayers=function(){
this.layerMarkersRecherche=new OpenLayers.Layer.Markers("Elements recherchés");
this.layerMarkersRecherche.setVisibility(true);
this.layerMarkersRecherche.isBaseLayer=false;
this.map.addLayer(this.layerMarkersRecherche);
this.layerMarkersRecherche.minResolution=0;
this.layerMarkersRecherche.maxResolution=1000000;}
this.loadCarte=function(){
updateLayout();
this.updatingMap=true;
this.map.maxExtent=new OpenLayers.Bounds();
this.map.maxExtent.initialize(this.currentCarte.XMin,this.currentCarte.YMin,this.currentCarte.XMax,this.currentCarte.YMax);
if(this.currentCarte.carteId<=3){
this.scales=this.echellesCartesGenerales;}else{
this.scales=this.currentCarte.echelles;}
var oldFondPlan=this.coucheFondPlan;
var oldOvelayThematique=this.overlayThematique;
var oldOverlayGeneral=this.overlayGeneral;
this.loadCoucheFondPlan();
this.loadOverlayThematique();
this.loadOverlayGeneral();
if(oldFondPlan!==null){
oldFondPlan.destroy(true);}
if(oldOvelayThematique!=null){
oldOvelayThematique.destroy(true);}
if(oldOverlayGeneral!=null){
oldOverlayGeneral.destroy(true);}
this.updatingMap=false;}
this.finalize=function(){
var mapOptions={
projection:"EPSG:27571",
units:'m',
controls:[]};
if(BEAN_URL!==null&&!isEmptyStr(BEAN_URL.mapId)){
this.carteId=BEAN_URL.mapId;}
OpenLayers.DOTS_PER_INCH=MAP_DPI;
OpenLayers.IMAGE_RELOAD_ATTEMPTS=TILE_RELOAD_ATTEMPTS;
if(!isEmptyStr(ONLOADERROR_TILE_COLOR)){
OpenLayers.Util.onImageLoadErrorColor=ONLOADERROR_TILE_COLOR;}
this.map=new OpenLayers.Map('map',mapOptions);
this.map.center=new OpenLayers.LonLat();
this.exportRectangle=new OpenLayers.Control.MdpExportRectangle();
this.map.addControl(this.exportRectangle);
this.desactivateExportRectangle();
this.navToolBar=new OpenLayers.Control.NavToolbar();
this.map.addControl(this.navToolBar);
var panZoomBar=new OpenLayers.Control.MdpPanZoomBar();
panZoomBar.position=null;
this.map.addControl(panZoomBar);
if(DEV_MODE){
this.map.addControl(new OpenLayers.Control.LayerSwitcher({'ascending':false}));}
this.layerSwitcher=new OpenLayers.Control.MdpLayerSwitcher();
this.map.addControl(this.layerSwitcher);
this.map.addControl(new OpenLayers.Control.MasqueCarte());
this.map.addControl(new OpenLayers.Control.MdpCopyright());
this.map.addControl(new OpenLayers.Control.ScaleBar());
dragPan=this.navToolBar.controls[0].dragPan.handler;
dragPan.callbacks["down"]=mouseDown;
dragPan.callbacks["up"]=mouseUp;
this.map.events.register("zoomend",this,this.mapZoomed);
if(BEAN_URL!==null){
for(var i=0;i<BEAN_URL.couche.length;i++){
if(BEAN_URL.couche[i]){this.transports.push(i+1);}}}
var carte=this.cartes[this.carteId];
finGetCarteInit(carte);
beginBatch();
CarteAjax.nettoyerCarte();
this.restoreSelectedEquipements();
endBatch();
var mairie=BEAN_URL.mairie;
if(mairie&&mairie>0&&mairie<21){
this.zoomSurArrondissement(mairie);}}
this.restoreSelectedEquipements=function(){
if(BEAN_URL===null||BEAN_URL.equipement===null)
return;
switch(BEAN_URL.equipement){
case "C":
CarteEquipementsAjax.selectEquipements(BEAN_URL.equipementId,finSelectEquipements);
break;
case "S":
CarteEquipementsAjax.selectEquipementsById(BEAN_URL.equipementId,finSelectEquipements);
break;
case "R":
CarteEquipementsAjax.selectEquipementsByRubriques(BEAN_URL.equipementId,finSelectEquipements);
break;
case "U":
CarteEquipementsAjax.selectEquipementsByUnivers(BEAN_URL.equipementId,finSelectEquipements);
break;
default:
return;}
registerPendingQuery("selectEquipements");}
this.activateExportRectangle=function(){
if(!this.exportRectangle.displayIsOn()){
this.exportRectangle.displayOn();
this.map.events.register('zoomend',this.exportRectangle,this.exportRectangle.update);
this.exportRectangle.update();}
else{}}
this.desactivateExportRectangle=function(){
if(this.exportRectangle.displayIsOn()){
this.exportRectangle.displayOff();
this.map.events.unregister('zoomend',this.exportRectangle,this.exportRectangle.update);}}
this.loadCarteById=function(idCarte){
gestionnaireCarte.actionLoadCarteById(idCarte);}
this.actionLoadCarteById=function(idCarte){
this.carteId=idCarte;
if(idCarte<=3){
this.setCarte(gestionnaireCarte.cartesGenerales[idCarte-1]);}else{
CarteAjax.getCarte(idCarte,finGetCarte);}}
this.setCarte=function(carte){
if(carte==undefined||carte===null){
return;}
if(document.getElementById("copyright")!==null){
document.getElementById("copyright").innerHTML=carte.copyright;}
this.currentCarte=carte;
if(this.currentCarte.couchesTransportActives!==null&&this.currentCarte.couchesTransportActives.length>0){
this.transportsActifs=this.currentCarte.couchesTransportActives;}else{
this.transportsActifs=[];}
if(this.currentCarte.couchesTransportAffichees!==null&&this.currentCarte.couchesTransportAffichees.length>0){
for(var i=0;i<this.currentCarte.couchesTransportAffichees.length;i++){
if(!contain(this.transports,this.currentCarte.couchesTransportAffichees[i])){
this.transports.push(this.currentCarte.couchesTransportAffichees[i]);}}}
var listeTransportTemp=[];
for(var i=0;i<this.transports.length;i++){
transport=this.transports[i];
if(contain(this.transportsActifs,transport)){
listeTransportTemp.push(transport);}}
this.transports=listeTransportTemp;
this.updateCheckboxTransport();
this.carteId=carte.carteId;
this.loadCarte();
if(!appReady){
this.loadVectorLayers();
var defaultExtent=true;
if(BEAN_URL!==null){
var extent=null;
if(!isEmptyStr(BEAN_URL.envelopeXmax)){
extent=new OpenLayers.Bounds();
extent.initialize(BEAN_URL.envelopeXmin,BEAN_URL.envelopeYmin,BEAN_URL.envelopeXmax,BEAN_URL.envelopeYmax);}
else if(!isEmptyStr(BEAN_URL.zoom)&&!isEmptyStr(BEAN_URL.zoomCentreX)&&!isEmptyStr(BEAN_URL.zoomCentreY)){
var newCenter=new OpenLayers.LonLat(
BEAN_URL.zoomCentreX,
BEAN_URL.zoomCentreY);
this.map.setCenter(newCenter,BEAN_URL.zoom,true,true);
defaultExtent=false;}
else if(!isEmptyStr(BEAN_URL.location)){
this.map.zoom=1;
this.map.zoomToMaxExtent();
var locationType=BEAN_URL.location.substring(0,1);
if(locationType=='D'){
var arrId=locationSuffixe.substring(3,5);
CarteAjax.highlightArrondissement(arrId,finZoomSurArrondissement);
defaultExtent=false;}else{
defaultExtent=false;}}
else if(!isEmptyStr(BEAN_URL.itiXDep)&&!isEmptyStr(BEAN_URL.itiYDep)&&!isEmptyStr(BEAN_URL.itiXArr)&&!isEmptyStr(BEAN_URL.itiYArr)){
extent=new OpenLayers.Bounds(BEAN_URL.itiXDep,BEAN_URL.itiYDep,BEAN_URL.itiXDep,BEAN_URL.itiYDep);
extent.extend(new OpenLayers.LonLat(BEAN_URL.itiXArr,BEAN_URL.itiYArr));
var halfWidth=extent.getWidth()*1.2/2;
var halfHeight=extent.getHeight()*1.2/2;
var center=extent.getCenterLonLat();
extent.extend(new OpenLayers.LonLat(center.lon-halfWidth,center.lat-halfHeight));
extent.extend(new OpenLayers.LonLat(center.lon+halfWidth,center.lat+halfHeight));}
if(extent!==null){
var zoom=this.getZoomForExtent(extent);
if(zoom===null){
this.map.zoomToExtent(extent);}else{
var center=extent.getCenterLonLat();
this.map.setCenter(center,zoom,false,true);}
defaultExtent=false;}}
if(defaultExtent){
this.map.zoom=1;
this.map.zoomToMaxExtent();
this.map.zoomTo(0);}}
this.loadClickable();
if(gestionnairePanneauLateral){
if(!isEmptyStr(carte.legendeUrl)){
renseignerPanneau("<IFRAME id='iframeLegende' src='"+carte.legendeUrl+"' scrolling='auto'></iframe>","panneau_legende",false,false,false);
var panel=document.getElementById("panneauLateral");
var legend=document.getElementById("iframeLegende");
var panelIndex=getIndexPanneau("panneau_legende");
var panelWidth=gestionnairePanneauLateral.tableauLargeurPanneau[panelIndex];
var panelHeight=panel.offsetHeight;
var margin=50;
legend.style.width=""+(panelWidth+margin)+"px";
legend.style.height=""+(panelHeight+margin)+"px";
gestionnaireOnglets.activerOngletPanneauByName("ongletLegende",true);}else{
gestionnaireOnglets.supprimerOngletLegende();
if(gestionnairePanneauLateral.legendeAffichee){
gestionnairePanneauLateral.choixPanneau("panneau_general");}}
if(!isEmptyStr(carte.aimsServiceExport)){
gestionnaireOnglets.EnableTab(gestionnaireOnglets.tableauNomOnglet[6]);}
else{
gestionnaireOnglets.supprimerOngletDynamique(gestionnaireOnglets.tableauNomOnglet[6]);}}
var tabCatACocherEtDisabled=null
if(!isEmptyStr(this.currentCarte.strCategorieList)){
tabCatACocherEtDisabled=this.currentCarte.strCategorieList.split(",");}
gestionnairePanneauLateral.affichagePanneauCarteEquipement(this.categories,tabCatACocherEtDisabled);
this.updateZIndex();}
this.getCouchesTransport=function(){
var coucheTransports="";
for(var index=0;index<this.transports.length;index++){
coucheTransports+=",";
if(this.transports[index]==1){
coucheTransports+="map.layer.background.velib";}else if(this.transports[index]==2){
coucheTransports+="map.layer.background.cyclables";}else if(this.transports[index]==3){
coucheTransports+="map.layer.background.metro";}else if(this.transports[index]==4){
coucheTransports+="map.layer.background.bus";}else if(this.transports[index]==5){
coucheTransports+="map.layer.background.taxi";}}
return coucheTransports;}
this.updateCheckboxTransport=function(){
gestionnairePanneauLateral.changeCheckboxTransport(this.transports,this.transportsActifs);
this.layerSwitcher.changeCheckboxTransport(this.transports,this.transportsActifs);}
this.gestionCheckBoxCategorie=function(categorieId,libelle,urlIcone,checkbox){
if(!this.categoriesLocked){
this.categoriesLocked=true;
if(checkbox.checked){
var fund=false;
if(this.categories==null){
this.categories=[];}
for(var index=0;index<this.categories.length;index++){
if(this.categories[index]==categorieId){
fund=true;}}
if(!fund){
this.categories.push(categorieId);
beanCategorie=new Object();
beanCategorie.libelle=libelle;
beanCategorie.urlIcone=urlIcone;
this.infoCategories.push(beanCategorie);}}else{
var toremove=-1;
for(var index=0;index<this.categories.length;index++){
if(this.categories[index]==categorieId){
toremove=index;}}
if(toremove>=0){
this.categories.splice(toremove,1);
this.infoCategories.splice(toremove,1);}}
CarteEquipementsAjax.selectEquipements(this.categories,finSelectEquipements);
this.categoriesLocked=false;}}
this.gestionCheckBoxCarteGenerale=function(transportId,checkbox){
if(!this.transportLocked){
this.transportLocked=true;
if(checkbox.checked){
var fund=false;
for(var index=0;index<this.transports.length;index++){
if(this.transports[index]==transportId){
fund=true;}}
if(!fund){
this.transports.push(transportId);}}else{
var toremove=-1;
for(var index=0;index<this.transports.length;index++){
if(this.transports[index]==transportId){
toremove=index;}}
if(toremove>=0){
this.transports.splice(toremove,1);}}
this.transportLocked=false;}
gestionnaireCarte.actionGestionTransport();}
this.actionGestionTransport=function(){
this.updateCheckboxTransport();
var oldOverlayGeneral=this.overlayGeneral;
this.loadOverlayGeneral(null);
if(oldOverlayGeneral!=null){
oldOverlayGeneral.destroy(true);}
this.updateZIndex();}
this.affichePetitesIcones=function(){
var mapScale=this.map.getResolution()*MAP_DPI/M_PER_INCH;
if(ECHELLE_CHANGEMENT_ICONE<mapScale){
return true;}else{
return false;}}
this.updateMap=function(tile){
if(this.clickableLayer.beginUpdate()){
for(var index=0;index<this.equipementsCategorie.length;index++){
var equipement=this.equipementsCategorie[index];
var imageSize=equipement.imageGrandSize;
if(this.affichePetitesIcones()){
imageSize=equipement.imagePetitSize;}
this.clickableLayer.addArea(equipement.coordx,equipement.coordy,imageSize,imageSize,null,equipement.strNom,equipement);}
for(var i=0;i<this.currentCarte.listeEquipementBeanActif.length;i++){
var equipement=this.currentCarte.listeEquipementBeanActif[i];
var imageSize=equipement.imageGrandSize;
if(this.affichePetitesIcones()){
imageSize=equipement.imagePetitSize;}
this.clickableLayer.addArea(equipement.coordx,equipement.coordy,imageSize,imageSize,null,equipement.strNom,equipement);}
this.clickableLayer.imageURL="./images/trans.gif";
this.clickableLayer.endUpdate();}}
this.itemClicked=function(container){
var equipement=container[1];
if(equipement==undefined||equipement===null)
return;
var evt=container[0];
this.stopWindows=evt.xy;
gestionnairePopup.affichePopupInfoEquipement(equipement);}
this.supportScale=function(carte,scale){
var supporte=false;
var min=-1;
var max=-1;
for(var index=0;index<carte.echelles.length;index++){
if(min==-1||min>carte.echelles[index]){
min=carte.echelles[index];}
if(max==-1||max<carte.echelles[index]){
max=carte.echelles[index];}}
if(scale-1<=max&&scale+1>=min){
supporte=true;}
return supporte;}
this.trouveCarteSupportee=function(scale){
for(var index=0;index<this.cartesGenerales.length;index++){
if(this.supportScale(this.cartesGenerales[index],scale)){
return this.cartesGenerales[index];}}}
this.mapZoomed=function(num){
if(!this.updatingMap&&!isNaN(this.map.getScale())){
if(num<=3){
var idCourant=num;
document.getElementById("ongletVueAerienne").className='controleCarteInactif';
document.getElementById("ongletPlanSimplifie").className='controleCarteInactif';
document.getElementById("ongletPlanDetaille").className='controleCarteInactif';
document.getElementById("lienVueAerienne").className='lienInactif';
document.getElementById("lienPlanSimplifie").className='lienInactif';
document.getElementById("lienPlanDetaille").className='lienInactif';
for(var index=0;index<this.cartesGenerales.length;index++){
if(!this.supportScale(this.cartesGenerales[index],this.map.getScale())){
if(this.cartesGenerales[index].carteId==1){
document.getElementById("ongletVueAerienne").className='controleCarteInterdit';
document.getElementById("lienVueAerienne").className='lienInterdit';}
else if(this.cartesGenerales[index].carteId==2){
document.getElementById("ongletPlanDetaille").className='controleCarteInterdit';
document.getElementById("lienPlanDetaille").className='lienInterdit';}
else if(this.cartesGenerales[index].carteId==3){
document.getElementById("ongletPlanSimplifie").className='controleCarteInterdit';
document.getElementById("lienPlanSimplifie").className='lienInterdit';}}}
if(!this.supportScale(this.currentCarte,this.map.getScale())){
mapSupported=this.trouveCarteSupportee(this.map.getScale());
if(mapSupported!==null){
idCourant=mapSupported.carteId;
this.setCarte(mapSupported);}}
if(idCourant==1){
document.getElementById("ongletVueAerienne").className='controleCarteActif';
document.getElementById("lienVueAerienne").className='lienActif';}
else if(idCourant==2){
document.getElementById("ongletPlanDetaille").className='controleCarteActif';
document.getElementById("lienPlanDetaille").className='lienActif';}
else if(idCourant==3){
document.getElementById("ongletPlanSimplifie").className='controleCarteActif';
document.getElementById("lienPlanSimplifie").className='lienActif';}}
else{
var idCourant=this.currentCarte.carteId;
document.getElementById("ongletVueAerienne").className='controleCarteInactif';
document.getElementById("ongletPlanSimplifie").className='controleCarteInactif';
document.getElementById("ongletPlanDetaille").className='controleCarteInactif';
document.getElementById("lienVueAerienne").className='lienInactif';
document.getElementById("lienPlanSimplifie").className='lienInactif';
document.getElementById("lienPlanDetaille").className='lienInactif';
for(var index=0;index<this.cartesGenerales.length;index++){
if(!this.supportScale(this.cartesGenerales[index],this.map.getScale())){
if(this.cartesGenerales[index].carteId==1){
document.getElementById("ongletVueAerienne").className='controleCarteInterdit';
document.getElementById("lienVueAerienne").className='lienInterdit';}
else if(this.cartesGenerales[index].carteId==2){
document.getElementById("ongletPlanDetaille").className='controleCarteInterdit';
document.getElementById("lienPlanDetaille").className='lienInterdit';}
else if(this.cartesGenerales[index].carteId==3){
document.getElementById("ongletPlanSimplifie").className='controleCarteInterdit';
document.getElementById("lienPlanSimplifie").className='lienInterdit';}}}
if(!this.supportScale(this.currentCarte,this.map.getScale())){
mapSupported=this.trouveCarteSupportee(this.map.getScale());
if(mapSupported!==null){
idCourant=mapSupported.carteId;
this.setCarte(mapSupported);}}
if(idCourant==1){
document.getElementById("ongletVueAerienne").className='controleCarteActif';
document.getElementById("lienVueAerienne").className='lienActif';}
else if(idCourant==2){
document.getElementById("ongletPlanDetaille").className='controleCarteActif';
document.getElementById("lienPlanDetaille").className='lienActif';}
else if(idCourant==3){
document.getElementById("ongletPlanSimplifie").className='controleCarteActif';
document.getElementById("lienPlanSimplifie").className='lienActif';}}
this.updateMarkers();}}
this.updateMarkers=function(){
this.lon=0;
this.lat=0;
if(this.layerMarkersRecherche!==null){
this.layerMarkersRecherche.clearMarkers();
var imagePath;
var imageSize;
for(var i=0;i<gestionnaireRecherche.listeFeature.length;i++){
var feature=gestionnaireRecherche.listeFeature[i];
this.gestionMarker(feature,"");}
if(gestionnaireItineraire.itiDepart!==null&&gestionnaireItineraire.itiDepart.length>0){
this.gestionMarker(gestionnaireItineraire.itiDepart[0],"itiDepart");}
if(gestionnaireItineraire.itiArrivee!==null&&gestionnaireItineraire.itiArrivee.length>0){
this.gestionMarker(gestionnaireItineraire.itiArrivee[0],"itiArrivee");}}}
this.gestionMarker=function(feature,type){
var smallMarker=this.affichePetitesIcones();
if(smallMarker){
imageSize=URL_PICTO_PETIT_SIZE;}
else{
imageSize=URL_PICTO_GRAND_SIZE;}
if(type=="itiDepart"){
if(smallMarker){
imagePath=URL_PICTO_DEPART_PETIT;}else{
imagePath=URL_PICTO_DEPART_GRAND;}}else if(type=="itiArrivee"){
if(smallMarker){
imagePath=URL_PICTO_ARRIVEE_PETIT;}else{
imagePath=URL_PICTO_ARRIVEE_GRAND;}}else if(feature.data.bean.libelle){
if(smallMarker){
imagePath=URL_PICTO_PETIT;}else{
imagePath=URL_PICTO_GRAND;}}else{
if(feature.lonlat.lon!=this.lon||feature.lonlat.lat!=this.lat){
if(smallMarker){
imagePath=directoryImage+feature.data.bean.imagePetitPath;
imageSize=feature.data.bean.imagePetitSize;}else{
imagePath=directoryImage+feature.data.bean.imageGrandPath;
imageSize=feature.data.bean.imageGrandSize;}
this.lon=feature.lonlat.lon;
this.lat=feature.lonlat.lat;}}
feature.data.icon=
new OpenLayers.Icon(
imagePath,
new OpenLayers.Size(imageSize,imageSize),
new OpenLayers.Pixel(-(imageSize/2), -(imageSize/2)));
marker=feature.createMarker();
this.layerMarkersRecherche.addMarker(marker);
if(feature.data.bean.libelle){
marker.events.register("mousedown",feature,gestionnairePopup.evtAffichePopUpInfoAdresse);}else if(feature.data.bean.popup){
marker.events.register("mousedown",feature,gestionnairePopup.evtAffichePopUpInfoEquipement);}else if(feature.data.bean.libelleRatp){
marker.events.register("mousedown",feature,gestionnairePopup.evtAffichePopUpInfoRatp);}}
this.zoomToExtentBean=function(extentBean){
var extent=new OpenLayers.Bounds();
extent.initialize(extentBean.XMin,extentBean.YMin,extentBean.XMax,extentBean.YMax);
var zoom=this.getZoomForExtent(extent);
if(zoom===null){
this.map.zoomToExtent(extent);}else{
var center=extent.getCenterLonLat();
this.map.setCenter(center,zoom,false,true);}}
this.zoomSurArrondissement=function(idArrondissement){
CarteAjax.highlightArrondissement(idArrondissement,finZoomSurArrondissement);
registerPendingQuery("zoomSurArrondissement");};
this.zoomCarteGenerale=function(){
this.map.zoomToMaxExtent();
this.map.zoomTo(0);};
this.getDefaultResultZoom=function(){
var zoom=this.map.getZoomForResolution(ECHELLE_MINIMUM_RECHERCHE*M_PER_INCH/MAP_DPI);
return zoom;};
this.centreCarteSurPoint=function(center){
var zoom=this.getDefaultResultZoom();
this.map.setCenter(center,zoom,false,true);};
this.centreCarteSurElements=function(nbreElements,enveloppe){
var extent=new OpenLayers.Bounds();
extent.initialize(enveloppe.xMin,enveloppe.yMin,enveloppe.xMax,enveloppe.yMax);
var center=extent.getCenterLonLat();
if(nbreElements==1){
this.centreCarteSurPoint(center);
return;}
var xmargin=0.1*extent.getWidth();
var ymargin=0.1*extent.getHeight();
extent.initialize(extent.left-xmargin,extent.bottom-ymargin,extent.right+xmargin,extent.top+ymargin);
var zoom=this.getZoomForExtent(extent);
var zoomMax=this.getDefaultResultZoom();
if(zoom===null||zoom>zoomMax){
zoom=zoomMax;}
this.map.setCenter(center,zoom,false,true);};
this.getZoomForExtent=function(extent){
if(this.map.baseLayer===null){
return null;}
var viewSize=this.map.getSize();
var idealResolution=Math.max(extent.getWidth()/viewSize.w,
extent.getHeight()/viewSize.h);
for(var i=1;i<this.map.baseLayer.resolutions.length;i++){
var resolution=this.map.baseLayer.resolutions[i];
if(resolution<idealResolution*0.99){
return i-1;}}
return this.map.baseLayer.resolutions.length-1;};
this.removePopups=function(){
if(this.popupInfo){
this.layerMarkersRecherche.map.removePopup(this.popupInfo);
this.popupInfo.destroy();
this.popupInfo=null;}
if(this.popupExternalLink){
this.layerMarkersRecherche.map.removePopup(this.popupExternalLink);
this.popupExternalLink.destroy();
this.popupExternalLink=null;}};
this.identify=function(lonlat,callback){
var nomServiceFondPlan=this.currentCarte.aimsService;
CarteAjax.identifyMapObject(nomServiceFondPlan,
this.currentCarte.activeLayer,
this.currentCarte.activeUrl,
lonlat.lon,
lonlat.lat,
callback);};}


var PREFIXE_DIV_EQUIPEMENT="equipement";
var DEBUT_LIBELLE_EQUIPEMENT="Sélectionnez les équipements du thème '";
var FIN_LIBELLE_EQUIPEMENT="' à afficher";
var descriptifRecherche=null;
function identifiantAdresse(adresseBean){
if(adresseBean===null)
return null;
if(adresseBean.type=="A")
return "A"+adresseBean.identifiant;
else
return "W"+adresseBean.identifiant;}
GestionnaireRecherche=function(){
this.listeFeature=[];
this.typeRechercheLancee="";
this.parametreRechercheLancee=[];
this.rechercheParUrl=false;
this.beanEquipementsRecherches=null;
this.beanAdressesRecherchees=null;
this.adresseIdCliquee=null;
this.arrondissementAvancee=null;
this.init=function(){
if(!isEmptyStr(BEAN_URL.typeRecherche)){
this.rechercheParUrl=true;
switch(BEAN_URL.typeRecherche){
case "A":
this.restoreRechercheAdresse();
break;
case "S":
this.restoreRechercheEquipement();
break;
case "AV":
this.restoreRechercheAvanceeEquipement();
break;
default:
break;}}else if(!isEmptyStr(BEAN_URL.location)){
var locationType=BEAN_URL.location.substring(0,1);
var locationId=BEAN_URL.location.substring(1,BEAN_URL.location.length);
switch(locationType){
case "A":
this.adresseIdCliquee=BEAN_URL.location;
RechercheAjax.localiseAdresseById(locationId,new GestionnaireRechercheCallBack().callbackRechercheAdresse);
registerPendingQuery("rechercheAdresse");
break;
case "W":
this.adresseIdCliquee=BEAN_URL.location;
RechercheAjax.localiseVoieById(locationId,new GestionnaireRechercheCallBack().callbackRechercheAdresse);
registerPendingQuery("rechercheAdresse");
break;
case "S":
RechercheAjax.localiseEquipementById(locationId,new GestionnaireRechercheCallBack().callbackRechercheEquipement);
registerPendingQuery("rechercheEquipement");
break;
default:
break;}}
if(!isEmptyStr(BEAN_URL.adresseActive)){
this.adresseIdCliquee=BEAN_URL.adresseActive;
this.gestionHighlight();}};
this.getInputAdresseValue=function(){
var element=document.getElementById("input_recherche_adresse");
if(element!==null)
return element.value;
return null;};
this.getInputEquipAdresseValue=function(){
var element=document.getElementById("input_recherche_equipement_adresse");
if(element!==null)
return element.value;
return null;};
this.getInputEquipLieuValue=function(){
var element=document.getElementById("input_recherche_equipement_lieu");
if(element!==null)
return element.value;
return null;};
this.gestionHighlight=function(){
if(gestionnaireCarte&&gestionnaireCarte.currentCarte){
if(!isEmptyStr(gestionnaireCarte.currentCarte.highlightLayer)&&gestionnaireCarte.coucheFondPlan!==null){
gestionnaireCarte.coucheFondPlan.mergeNewParams({'version':Math.random(),'adresseId':this.adresseIdCliquee});
gestionnaireCarte.updateZIndex();}}};
this.idDansListe=function(id,liste){
var trouve=false;
for(var i=0;i<liste.length&&!trouve;i++){
if(liste[i]==id){
trouve=true;}}
return trouve;};
this.restoreRechercheAdresse=function(){
document.getElementById("input_recherche_adresse").value=BEAN_URL.adresse;
gestionnaireOnglets.selectOngletRecherche(1);
this.actionRechercheAdresse();
registerPendingQuery("rechercheAdresse");};
this.rechercherAdresse=function(){
if(isEmptyStr(this.getInputAdresseValue())){
alert("Veuillez saisir une adresse.");
return;}
this.actionRechercheAdresse();};
this.actionRechercheAdresse=function(){
var adresse=this.getInputAdresseValue();
if(isEmptyStr(adresse))
return;
this.typeRechercheLancee="A";
this.parametreRechercheLancee[0]=adresse;
var stdAdresse=standardisation(adresse);
descriptifRecherche=adresse;
var callback=new GestionnaireRechercheCallBack().callbackRechercheAdresse;
RechercheAjax.localiserAdresse(stdAdresse,callback);};
this.restoreRechercheEquipement=function(){
document.getElementById("input_recherche_equipement_adresse").value=BEAN_URL.adresse;
document.getElementById("input_recherche_equipement_lieu").value=BEAN_URL.lieu;
gestionnaireOnglets.selectOngletRecherche(2);
this.actionRechercherEquipement();
registerPendingQuery("rechercheEquipement");};
this.rechercherEquipement=function(){
if(isEmptyStr(this.getInputEquipAdresseValue())&&isEmptyStr(this.getInputEquipLieuValue())){
alert("Veuillez saisir un lieu et/ou une adresse.");
return;}
this.actionRechercherEquipement();};
this.actionRechercherEquipement=function(){
var adresse=this.getInputEquipAdresseValue();
var lieu=this.getInputEquipLieuValue();
if(isEmptyStr(adresse)&&isEmptyStr(lieu))
return;
this.typeRechercheLancee="S";
this.parametreRechercheLancee[0]=adresse;
this.parametreRechercheLancee[1]=lieu;
var stdAdresse=standardisation(adresse);
var stdLieu=standardisation(lieu);
if(!isEmptyStr(stdLieu))
descriptifRecherche=stdLieu+","+stdAdresse;
else
descriptifRecherche=stdAdresse;
var callback=new GestionnaireRechercheCallBack().callbackRechercheEquipement;
RechercheAjax.localiserEquipement(stdLieu,stdAdresse,callback);};
this.choixRubrique=function(idDiv,indexTab){
for(var i=0;i<gestionnairePanneauLateral.coucheEquipement.length;i++){
idTemp=PREFIXE_DIV_EQUIPEMENT+gestionnairePanneauLateral.coucheEquipement[i].id;
changeClass(idTemp,"link");}
hideElement("contenuEquipementUneColonne");
showElement("contenuEquipementDeuxColonnes","block");
changeClass(PREFIXE_DIV_EQUIPEMENT+idDiv,"linkActif");
changeClass("equipements","equipementLong");
document.getElementById("titreSousEquipement").innerHTML=DEBUT_LIBELLE_EQUIPEMENT+gestionnairePanneauLateral.coucheEquipement[indexTab].libelle+FIN_LIBELLE_EQUIPEMENT;
showElement("titreSousEquipement","block");
showElement("sousEquipement","block");
document.getElementById("sousEquipement").style.marginBottom="4px";
hideElement("contenuSousSousEquipement");
this.renseignerCategorie(indexTab);};
this.renseignerCategorie=function(indexTab){
listeCategorie=gestionnairePanneauLateral.coucheEquipement[indexTab].listeCouche;
contenuSsEquip="<TABLE width='99%' border='0'>";
contenuSsEquip+="<tr><td></td><td></td>";
contenuSsEquip+="<td class='link' onclick='gestionnaireRecherche.fermerEquipement();'><a style='margin-left:2px;'><span class='aquo'>&laquo;</span>Fermer</a>";
contenuSsEquip+="</td>";
contenuSsEquip+="</tr>";
for(var i=0;i<listeCategorie.length;i++){
if(i%2==0){
contenuSsEquip+="<tr>";}
contenuSsEquip+="<TD class='link'><a onclick='gestionnaireRecherche.choixCategorie("+indexTab+","+i+")'>::"+listeCategorie[i].libelle+"</a></TD>";
if(i%2!=0){
contenuSsEquip+="</tr>";}}
contenuSsEquip+="</TABLE>";
document.getElementById("contenuSousEquipement").innerHTML=contenuSsEquip;
showElement("contenuSousEquipement","");};
this.rechercheAvanceCategorieActive=null;
this.rechercheAvanceNbCategorieActive=0;
this.choixCategorie=function(idRubrique,idCategorie){
listeEquipement=gestionnairePanneauLateral.coucheEquipement[idRubrique].listeCouche[idCategorie].listeCouche;
contenuSsSsEquip="<TABLE width='90%' border='0'>";
for(var i=0;i<listeEquipement.length;i++){
if(i%2==0){
contenuSsSsEquip+="<tr>";}
contenuSsSsEquip+="<TD class='sousEquipement'><INPUT id='checkbox"+idRubrique+"_"+idCategorie+"_"+i+"' align='top' type='checkbox' onclick='gestionnaireRecherche.checkCatEquipement("+idRubrique+","+idCategorie+","+i+")'";
if(listeEquipement[i].checked!=null&&listeEquipement[i].checked==true){
contenuSsSsEquip+=" CHECKED ";}
contenuSsSsEquip+="/> ";
contenuSsSsEquip+="&nbsp;";
contenuSsSsEquip+="<IMG src='"+directoryImage+listeEquipement[i].urlIcone+"' align='top'/>";
contenuSsSsEquip+="&nbsp;";
contenuSsSsEquip+="<span style='vertical-align:top;'>"+listeEquipement[i].libelle+"</span>";
contenuSsSsEquip+="</TD>";
if(i%2!=0){
contenuSsSsEquip+="</tr>";}}
contenuSsSsEquip+="</TABLE>";
document.getElementById("contenuSousSousEquipement").innerHTML=contenuSsSsEquip;
showElement("contenuSousSousEquipement","block");};
this.checkCatEquipement=function(i,j,k){
var idCatCochee=gestionnairePanneauLateral.coucheEquipement[i].listeCouche[j].id;
equipement=gestionnairePanneauLateral.coucheEquipement[i].listeCouche[j].listeCouche[k];
if(equipement.checked==true){
equipement.checked=false;}
else{
if(this.rechercheAvanceCategorieActive==idCatCochee){
equipement.checked=true;}else{
this.rechercheAvanceCategorieActive=idCatCochee;
for(var indiceRubrique=0;indiceRubrique<gestionnairePanneauLateral.coucheEquipement.length;indiceRubrique++){
for(indiceCat=0;indiceCat<gestionnairePanneauLateral.coucheEquipement[indiceRubrique].listeCouche.length;indiceCat++){
if(gestionnairePanneauLateral.coucheEquipement[indiceRubrique].listeCouche[indiceCat].id!=idCatCochee){
for(indiceEq=0;indiceEq<gestionnairePanneauLateral.coucheEquipement[indiceRubrique].listeCouche[indiceCat].listeCouche.length;indiceEq++){
gestionnairePanneauLateral.coucheEquipement[indiceRubrique].listeCouche[indiceCat].listeCouche[indiceEq].checked=false;}}}
equipement.checked=true;}}}};
this.fermerEquipement=function(){
showElement("contenuEquipementUneColonne","block");
changeClass("equipements","equipementCourt");
hideElement("contenuEquipementDeuxColonnes");
hideElement("sousEquipement");};
this.restoreRechercheAvanceeEquipement=function(){
var listeCategorie=[];
for(var indexUnivers=0;indexUnivers<gestionnairePanneauLateral.coucheEquipement.length;indexUnivers++){
var univers=gestionnairePanneauLateral.coucheEquipement[indexUnivers];
for(var indexRubrique=0;indexRubrique<univers.listeCouche.length;indexRubrique++){
var rubrique=univers.listeCouche[indexRubrique];
for(var indexCat=0;indexCat<rubrique.listeCouche.length;indexCat++){
var categorie=rubrique.listeCouche[indexCat];
if(this.idDansListe(categorie.id,BEAN_URL.raListeCat)){
categorie.checked=true;
listeCategorie.push(categorie.id);}}}}
var criteresGeographiques;
var parametreCritereGeographique=[];
if(BEAN_URL.raCritereGeo==0){}else if(BEAN_URL.raCritereGeo==1){
parametreCritereGeographique[0]=BEAN_URL.raOption1;}else if(BEAN_URL.raCritereGeo==2){
parametreCritereGeographique[0]=BEAN_URL.raOption1;
parametreCritereGeographique[1]=BEAN_URL.raOption2;}
descriptifRecherche=" Recherche Avancée ";
RechercheAjax.localiserEquipementAvance(listeCategorie,BEAN_URL.raCritereGeo,parametreCritereGeographique,BEAN_URL.raEquipement,new GestionnaireRechercheCallBack().callbackRechercheEquipement);
registerPendingQuery("recherche");};
this.lancerRechercheAvancee=function(){
descriptifRecherche=" Recherche Avancée ";
var listeCategorie=[];
for(var indexUnivers=0;indexUnivers<gestionnairePanneauLateral.coucheEquipement.length;indexUnivers++){
var univers=gestionnairePanneauLateral.coucheEquipement[indexUnivers];
for(var indexRubrique=0;indexRubrique<univers.listeCouche.length;indexRubrique++){
var rubrique=univers.listeCouche[indexRubrique];
for(var indexCat=0;indexCat<rubrique.listeCouche.length;indexCat++){
var categorie=rubrique.listeCouche[indexCat];
if(categorie.checked!=null&&categorie.checked==true){
listeCategorie.push(categorie.id);}}}}
var criteresGeographiques;
var parametreCritereGeographique=[];
if(document.getElementById("rechercheAvanceeToutParis").checked){
criteresGeographiques=0;}else if(document.getElementById("rechercheAvanceeAdresse").checked){
criteresGeographiques=1;
parametreCritereGeographique[0]=document.getElementById("rechercheAvanceeLibelleAdresse").value;}else if(document.getElementById("rechercheAvanceeArrondissement").checked){
criteresGeographiques=2;
parametreCritereGeographique[0]=document.getElementById("rechercheAvanceeChoixArrondissement").value;
parametreCritereGeographique[1]=document.getElementById("rechercheAvanceeArrondissementProximite").checked;}
var nomEquipement=document.getElementById("rechercheAvanceeNomEquipement").value;
this.typeRechercheLancee="AV";
this.parametreRechercheLancee[0]=listeCategorie;
this.parametreRechercheLancee[1]=criteresGeographiques;
this.parametreRechercheLancee[2]=parametreCritereGeographique;
this.parametreRechercheLancee[3]=nomEquipement;
this.actionLancerRechercheAvancee();};
this.actionLancerRechercheAvancee=function(){
var listeCategorie=[];
for(var indexUnivers=0;indexUnivers<gestionnairePanneauLateral.coucheEquipement.length;indexUnivers++){
var univers=gestionnairePanneauLateral.coucheEquipement[indexUnivers];
for(var indexRubrique=0;indexRubrique<univers.listeCouche.length;indexRubrique++){
var rubrique=univers.listeCouche[indexRubrique];
for(var indexCat=0;indexCat<rubrique.listeCouche.length;indexCat++){
var categorie=rubrique.listeCouche[indexCat];
if(categorie.checked!=null&&categorie.checked==true){
listeCategorie.push(categorie.id);}}}}
var criteresGeographiques;
var parametreCritereGeographique=[];
if(document.getElementById("rechercheAvanceeToutParis").checked){
criteresGeographiques=0;}else if(document.getElementById("rechercheAvanceeAdresse").checked){
criteresGeographiques=1;
parametreCritereGeographique[0]=document.getElementById("rechercheAvanceeLibelleAdresse").value;}else if(document.getElementById("rechercheAvanceeArrondissement").checked){
criteresGeographiques=2;
parametreCritereGeographique[0]=document.getElementById("rechercheAvanceeChoixArrondissement").value;
parametreCritereGeographique[1]=document.getElementById("rechercheAvanceeArrondissementProximite").checked;}
var nomEquipement=document.getElementById("rechercheAvanceeNomEquipement").value;
RechercheAjax.localiserEquipementAvance(listeCategorie,criteresGeographiques,parametreCritereGeographique,nomEquipement,new GestionnaireRechercheCallBack().callbackRechercheEquipement);};
this.rechercheAvancee=function(){
gestionnairePopup.suppressionAncienPopup();
var contenuUneColonne="";
for(var i=0;i<gestionnairePanneauLateral.coucheEquipement.length;i++){
contenuUneColonne+="<p class='link'><a  onclick='gestionnaireRecherche.choixRubrique(\"";
contenuUneColonne+=gestionnairePanneauLateral.coucheEquipement[i].id;
contenuUneColonne+="\"," + i + ");'><span class='aquo'>&raquo;</span>";
contenuUneColonne+=gestionnairePanneauLateral.coucheEquipement[i].libelle;
contenuUneColonne+="</a></p>";}
document.getElementById("contenuEquipementUneColonne").innerHTML=contenuUneColonne;
contenuDeuxColonne="";
contenuDeuxColonne+="<table width='100%' summary='liste equipements'>";
for(var i=0;i<gestionnairePanneauLateral.coucheEquipement.length;i++){
if(i%2==0){
contenuDeuxColonne+="<tr>";}
contenuDeuxColonne+="<td><p id='";
contenuDeuxColonne+="equipement"+gestionnairePanneauLateral.coucheEquipement[i].id;
contenuDeuxColonne+="' class='link'><a  onclick='gestionnaireRecherche.choixRubrique(\"";
contenuDeuxColonne+=gestionnairePanneauLateral.coucheEquipement[i].id;
contenuDeuxColonne+="\"," + i + ");'><span class='aquo'>&raquo;</span>";
contenuDeuxColonne+=gestionnairePanneauLateral.coucheEquipement[i].libelle;
contenuDeuxColonne+="</a></p></td>";
if(i%2!=0){
contenuDeuxColonne+="<td></td></tr>";}}
contenuDeuxColonne+="</table>";
document.getElementById("contenuEquipementDeuxColonnes").innerHTML=contenuDeuxColonne;
var contenuArrondissement="";
contenuArrondissement+="<select id='rechercheAvanceeChoixArrondissement' name='fr.paris.carto.rechercheAvancee.arrondissement' '>";
indexArrondissementCourant=0;
for(var i=0;i<gestionnaireCarte.arrondissements.length;i++){
contenuArrondissement+=" <option onClick='gestionnaireRecherche.arrondissementAvancee="+gestionnaireCarte.arrondissements[i].id+"'  value='"+gestionnaireCarte.arrondissements[i].id+"'";
if(gestionnaireCarte.arrondissements[i].id==this.arrondissementAvancee){
contenuArrondissement+=" selected='selected'";}
contenuArrondissement+=">"+gestionnaireCarte.arrondissements[i].libelle+" </option>";}
contenuArrondissement+=" </select>";
document.getElementById("listeArrondissement").innerHTML=contenuArrondissement;
showElement("fenetreVolanteRechercheAvancee","block");
if(this.fenetreRechercheExiste()){
YAHOO.mdp.fenetreRechercheAvancee.fenetre.show();}else{
new FenetreRechercheAvancee();}};
this.fenetreRechercheExiste=function(){
return(YAHOO!=null&&YAHOO.mdp!=null&&YAHOO.mdp.fenetreRechercheAvancee!=null&&YAHOO.mdp.fenetreRechercheAvancee.fenetre!=null);};
this.afficherInfoAdresse=function(indexFeature,adresseId){
gestionnairePopup.affichePopupInfoAdresse(gestionnaireRecherche.listeFeature[indexFeature].data.bean);
this.adresseIdCliquee=adresseId;};};
GestionnaireRechercheCallBack=function(){
var popup;
this.rechercheEnveloppe=function(listePoints){
var xMin=0;
var xMax=0;
var yMin=0;
var yMax=0;
for(var i=0;i<listePoints.length;i++){
if(xMin==0||xMin>listePoints[i].coordx){
xMin=listePoints[i].coordx;}
if(yMin==0||yMin>listePoints[i].coordy){
yMin=listePoints[i].coordy;}
if(xMax==0||xMax<listePoints[i].coordx){
xMax=listePoints[i].coordx;}
if(yMax==0||yMax<listePoints[i].coordy){
yMax=listePoints[i].coordy;}}
enveloppe=new Object();
enveloppe.xMin=parseInt(xMin);
enveloppe.xMax=parseInt(xMax);
enveloppe.yMin=parseInt(yMin);
enveloppe.yMax=parseInt(yMax);
return enveloppe;};
this.callbackRechercheAdresse=function(rechercheBean){
gestionnaireRecherche.beanEquipementsRecherches=null;
gestionnaireRecherche.beanAdressesRecherchees=rechercheBean;
var adresseIdCliquee=null;
var adresseCliquee=null;
if(!appReady&&!isEmptyStr(gestionnaireRecherche.adresseIdCliquee))
adresseIdCliquee=gestionnaireRecherche.adresseIdCliquee;
var contenu=valoriserEnteteRecherche(rechercheBean,"Recherche d'une adresse",descriptifRecherche,rechercheBean.adresses.length);
contenu+="<UL style='list-style-type: square; margin-left:15px;'>";
gestionnaireRecherche.listeFeature=[];
var listeAdresseAffichee=[];
var indexDansFeature=0;
for(var i=0;i<rechercheBean.adresses.length;i++){
if(listeAdresseAffichee[rechercheBean.adresses[i].libelle]==null){
listeAdresseAffichee[rechercheBean.adresses[i].libelle]=true;
var adresse=rechercheBean.adresses[i];
var data=new Object();
data.bean=adresse;
feature=new OpenLayers.Feature(gestionnaireCarte.layerMarkersRecherche,
new OpenLayers.LonLat(adresse.coordx,adresse.coordy),data);
gestionnaireRecherche.listeFeature[indexDansFeature]=feature;
if(adresseIdCliquee&&adresseIdCliquee==identifiantAdresse(adresse))
adresseCliquee=adresse;
contenu+="<LI><STRONG> <A  style='text-decoration:underline;color:#0033CC;cursor:pointer;' onClick='gestionnaireRecherche.afficherInfoAdresse("+indexDansFeature+",\""+rechercheBean.adresses[i].type + rechercheBean.adresses[i].identifiant+"\")'>"+rechercheBean.adresses[i].libelle+"</A></STRONG>,";
for(var j=0;j<adresse.arrondissement.length;j++){
libArrondissement=adresse.arrondissement[j].libelle;
idArrondissement=adresse.arrondissement[j].id;
contenu+="&nbsp;<A  onClick='gestionnaireCarte.zoomSurArrondissement("+idArrondissement+")' class='lienArrondissement'>"+libArrondissement+"</A>";
if(j+1<adresse.arrondissement.length){
contenu+=", ";}}
contenu+="</LI><br />";
indexDansFeature++;}}
contenu+="</UL>";
renseignerPanneau(contenu,"panneau_recherche",false,false,true);
gestionnaireCarte.updateMarkers();
if(adresseCliquee){
gestionnairePopup.affichePopupInfoAdresse(adresseCliquee);}else if(rechercheBean.adresses.length>0){
if(appReady||(isEmptyStr(BEAN_URL.envelopeXmax)&&isEmptyStr(BEAN_URL.zoom)&&isEmptyStr(BEAN_URL.zoomCentreX)&&isEmptyStr(BEAN_URL.location))){
enveloppe=new GestionnaireRechercheCallBack().rechercheEnveloppe(rechercheBean.adresses);
gestionnaireCarte.centreCarteSurElements(rechercheBean.adresses.length,enveloppe);
gestionnaireCarte.mapZoomed();}}
registerTerminatedQuery("rechercheAdresse");
if(appReady)
traceAccess("recherche","adresse");};
this.callbackRechercheEquipement=function(beanEquipement,adresseIdCliquee){
gestionnaireRecherche.beanEquipementsRecherches=beanEquipement;
gestionnaireRecherche.beanAdressesRecherchees=null;
nbEquipements=0;
if(beanEquipement.equipements!=null){
nbEquipements=beanEquipement.equipements.length;}
var adresseIdCliquee=null;
var equipementClique=null;
if(!appReady&&!isEmptyStr(gestionnaireRecherche.adresseIdCliquee))
adresseIdCliquee=gestionnaireRecherche.adresseIdCliquee;
var contenu=valoriserEnteteRecherche(beanEquipement,"Recherche d'un équipement",descriptifRecherche,nbEquipements);
if(beanEquipement.errorMessage==null||beanEquipement.errorMessage==""){
contenu+="<UL  style='list-style-type: square; margin-left: 15px;'>";
gestionnaireRecherche.listeFeature=[];
var indexListeFeature=0;
for(var i=0;i<beanEquipement.equipements.length;i++){
var equipement=beanEquipement.equipements[i];
if(equipement.equipementsMemeAdresse!=null&&equipement.equipementsMemeAdresse.length>0){
var data=new Object();
data.bean=new Object();
data.bean.imagePetitPath=directoryMenu+multiSupplyPetit;
data.bean.imageGrandPath=directoryMenu+multiSupplyGrand;
data.bean.imagePetitSize=multiSupplyPetitSize;
data.bean.imageGrandSize=multiSupplyGrandSize;
data.bean.popup=false;
var feature=new OpenLayers.Feature(gestionnaireCarte.layerMarkersRecherche,
new OpenLayers.LonLat(equipement.coordx,equipement.coordy),data);
gestionnaireRecherche.listeFeature[indexListeFeature]=feature;
indexListeFeature++;}
var data=new Object();
data.bean=equipement;
data.bean.popup=true;
var feature=new OpenLayers.Feature(gestionnaireCarte.layerMarkersRecherche,
new OpenLayers.LonLat(equipement.coordx,equipement.coordy),data);
gestionnaireRecherche.listeFeature[indexListeFeature]=feature;
if(adresseIdCliquee){
if(adresseIdCliquee=="A"+equipement.identifiantAdresse)
equipementClique=equipement;
else if(adresseIdCliquee=="S"+equipement.identifiant)
equipementClique=equipement;}
contenu+="<LI><STRONG> <A  onClick='gestionnairePopup.affichePopupInfoEquipement(gestionnaireRecherche.listeFeature["+indexListeFeature+"].data.bean)' style='text-decoration:underline;cursor:pointer;color:#0033CC;'>";
contenu+=equipement.strNom+"</STRONG>,&nbsp;"+equipement.adresseComplete+"</A>,&nbsp;";
var libArrondissement=equipement.libelleArrondissement;
contenu+="<A  onclick='gestionnaireCarte.zoomSurArrondissement("+equipement.arrondissement+")' style='text-decoration:underline;cursor:pointer;color:#0033CC;'>"+libArrondissement+"</A><br /><p>&nbsp;</p>";
indexListeFeature++;}
contenu+="</UL>";}
renseignerPanneau(contenu,"panneau_recherche",false,false,true);
gestionnaireCarte.updateMarkers();
if(equipementClique){
gestionnairePopup.affichePopupInfoEquipement(equipementClique);}else if(beanEquipement.equipements.length>0){
if(appReady||(isEmptyStr(BEAN_URL.envelopeXmax)&&isEmptyStr(BEAN_URL.zoom)&&isEmptyStr(BEAN_URL.zoomCentreX)&&isEmptyStr(BEAN_URL.location))){
enveloppe=new GestionnaireRechercheCallBack().rechercheEnveloppe(beanEquipement.equipements);
gestionnaireCarte.centreCarteSurElements(beanEquipement.equipements.length,enveloppe);
gestionnaireCarte.mapZoomed();}}
registerTerminatedQuery("rechercheEquipement");
if(appReady)
traceAccess("recherche","equipement");};};
valoriserEnteteRecherche=function(bean,libelle,libelleRecherche,nbreAffiche){
var ouvrePanneau=(appReady||isEmptyStr(BEAN_URL.ongletPanneau));
gestionnaireOnglets.activerOngletPanneauByName("ongletVotreRecherche",ouvrePanneau);
var contenu="<strong>"+libelle+"</strong>";
if(libelleRecherche!=null&&libelleRecherche.length>0&&libelleRecherche.charAt(libelleRecherche.length-1)==","){
contenu+="<br />\"" +  libelleRecherche.substring(0,libelleRecherche.length-1) + "\"";}
else if(libelleRecherche!=null){
contenu+="<br />\"" +  libelleRecherche + "\"";}
if(bean.errorMessage==null||bean.errorMessage==""){
contenu+="<br /><I>"+bean.nbrResultatTotal;
if(bean.nbrResultatTotal>1){
contenu+=" r&eacute;ponses trouv&eacute;es</I>";}else{
contenu+=" r&eacute;ponse trouv&eacute;e</I>";}
if(bean.nbrResultatTotal>nbreAffiche){
contenu+=" <br /> <i> seuls les "+nbreAffiche+" premiers r&eacute;sultats sont affich&eacute;s </i>";}
contenu+="<br /><br />";}else{
contenu+="<br />"+bean.errorMessage;}
return contenu;};


function GestionnaireOnglets(){
this.ONGLET_DEPLACEMENT_OUVERT=false;
this.ongletRecherche="A";
this.tableauNomOnglet=["ongletCarteGenerale","ongletCarteEquipement","ongletCarteThematique","ongletLegende","ongletVotreRecherche","ongletItineraire","ongletExport"];
this.indexOngletDynamique=3;
this.tableauOngletRecherche=["ongletRechercheAdresse","ongletRechercheEquipement","ongletCalculItineraire"];
this.tableauFormulaireRecherche=["rechercheAdresse","rechercheEquipement","rechercheItineraire"];
this.tableauCodeOngletRecherche=["A","S","I"];
this.init=function(){
var etatPanneau=false;
if(BEAN_URL!==null&&BEAN_URL.etatPanneau!=null&&BEAN_URL.etatPanneau=="O"){
this.etatPanneau=true;}
else{
this.etatPanneau=false;}
var panneauActif=null;
if(BEAN_URL!==null)
panneauActif=BEAN_URL.ongletPanneau;
var indexPanneau=1;
if(gestionnairePanneauLateral){
if(!isEmptyStr(panneauActif)){
for(var i=0;i<gestionnairePanneauLateral.tableauCodePanneau.length;i++){
if(panneauActif==gestionnairePanneauLateral.tableauCodePanneau[i]){
indexPanneau=i+1;}}}}
else{
alert("GestionnaireOnglets::init(): gestionnairePanneauLateral not defined yet");}
this.activerOngletPanneau(indexPanneau,this.etatPanneau);
var indexOnglet=1;
if(!isEmptyStr(BEAN_URL.ongletRecherche)){
for(var j=0;j<this.tableauCodeOngletRecherche.length;j++){
if(BEAN_URL.ongletRecherche==this.tableauCodeOngletRecherche[j]){
indexOnglet=j+1;}}}
this.selectOngletRecherche(indexOnglet);};
this.selectOngletRecherche=function(num){
num--;
if(num<0||num>=this.tableauOngletRecherche.length){
return;}
for(var i=0;i<this.tableauOngletRecherche.length;i++){
if(i!=num){
var nomOnglet=this.tableauOngletRecherche[i];
var nomForm=this.tableauFormulaireRecherche[i];
this.UnSelectTab(nomOnglet);
this.HideForm(nomForm);}}
this.SelectTab(this.tableauOngletRecherche[num]);
this.ShowForm(this.tableauFormulaireRecherche[num]);
this.ongletRecherche=this.tableauCodeOngletRecherche[i];
updateVerticalLayout();
RefreshPageRendering();}
this.indexOngletSecondaire=function(nomOnglet){};
this.activerOngletPanneau=function(num,ouvrirPanneau){
num--;
this.selectOngletPrincipalInternal(num);
this.activerPanneauLateralInternal(num,ouvrirPanneau);};
this.actionOngletExport=function(){
for(var i=0;i<6;i++){
this.UnSelectTab(this.tableauNomOnglet[i]);}
this.activerPanneauLateralInternal(6,gestionnairePanneauLateral.PANNEAU_OUVERT);
gestionnairePanneauLateral.affichagePanneauExport();
this.SelectTab(this.tableauNomOnglet[6]);}
this.selectOngletPrincipalInternal=function(num){
var i;
var tabID=this.tableauNomOnglet[num];
var tabState=null;
var newEmptyTab=null;
if(num>=this.indexOngletDynamique&&getEltClass(tabID)=="tabDisabled"){
tabState=new Array(this.tableauNomOnglet.length);
if(getEltClass("emptyTab1")=="tabSpacer"){
changeClass("emptyTab1","tabSpacerDisabled");
newEmptyTab="emptyTab2";}else{
changeClass("emptyTab2","tabSpacerDisabled");
newEmptyTab="emptyTab1";}
changeClass("emptyTab3","tabSpacer");}
for(i=0;i<this.tableauNomOnglet.length;i++){
var tabName=this.tableauNomOnglet[i];
if(tabState==null||i<num){
this.UnSelectTab(tabName);}
else if(i>num){
tabState[i]=getEltClass(tabName);
this.DisableTab(tabName);}}
this.SelectTab(tabID);
if(tabState!=null){
for(i=num+1;i<this.tableauNomOnglet.length;i++){
var tabName=this.tableauNomOnglet[i];
if(i==num){
this.SelectTab(tabName);}else if(tabState[i]!="tabDisabled"){
changeClass(tabName+"Space","tabSpacer");
changeClass(tabName,"tabIdle");}}}
if(newEmptyTab!=null){
changeClass(newEmptyTab,"tabSpacer");}}
this.activerPanneauLateralInternal=function(num,ouvrirPanneau){
if(gestionnairePanneauLateral!=null){
gestionnairePanneauLateral.choixPanneau(gestionnairePanneauLateral.tableauNomPanneau[num]);
var panelWidth=gestionnairePanneauLateral.tableauLargeurPanneau[num];
document.getElementById("contenuPanneauLateral").style.width=""+panelWidth+"px";
if(ouvrirPanneau){
gestionnairePanneauLateral.ouvrirPanneau();}}
else{
alert("GestionnaireOnglets::activerOngletPanneau(): gestionnairePanneauLateral not defined yet");}
gestionnairePopup.suppressionAncienPopup();};
this.activerOngletPanneauByName=function(nomPanneau,ouvrirPanneau){
var indexPanneau=1;
for(var i=0;i<this.tableauNomOnglet.length;i++){
if(nomPanneau==this.tableauNomOnglet[i]){
indexPanneau=i+1;}}
this.activerOngletPanneau(indexPanneau,ouvrirPanneau);};
this.toggleOngletPanneau=function(num){
num--;
if(num<0||num>=this.tableauNomOnglet.length){
return;}
var tab=document.getElementById(this.tableauNomOnglet[num]);
if(tab==null||tab.className=="tabDisabled"){
return;}
if(tab.className=="tabIdle"){
this.activerOngletPanneau(num+1,true);}else{
gestionnairePanneauLateral.actionPanneauLateral();}};
this.actionOngletRecherche=function(num){
this.selectOngletRecherche(num);};
this.actionOngletPrincipal=function(num){
this.toggleOngletPanneau(num);};
this.supprimerOngletDynamique=function(nomOnglet){
var tab=document.getElementById(nomOnglet);
if(tab==null){
return;}
if(nomOnglet==this.tableauNomOnglet[6]){
gestionnaireCarte.desactivateExportRectangle();}
var tabSelected=false;
if(tab.className=="tabSelected"){
tabSelected=true;}
changeClass(nomOnglet+"Space","tabSpacerDisabled");
changeClass(nomOnglet,"tabDisabled");
if(tabSelected){
this.activerOngletPanneau(1,gestionnairePanneauLateral.PANNEAU_OUVERT);}};
this.supprimerOngletRechercheEtItineraire=function(){
this.supprimerOngletDynamique("ongletVotreRecherche");
this.supprimerOngletDynamique("ongletItineraire");};
this.supprimerOngletLegende=function(){
this.supprimerOngletDynamique("ongletLegende");};
this.gestionOngletCarteGenerale=function(num){
if(!gestionnairePanneauLateral){
alert("GestionnaireOnglets::gestionOngletCarteGenerale(): gestionnairePanneauLateral not defined yet");
return;}
gestionnairePanneauLateral.changePlan();
if(num==1){
if((document.getElementById("lienVueAerienne").className!='lienInterdit')&&(document.getElementById("ongletVueAerienne").className!='controleCarteInterdit')){
gestionnairePanneauLateral.changeCheckbox("vueAerienne");
changeClass("lienVueAerienne","lienActif");
changeClass("lienPlanSimplifie","lienInactif");
changeClass("lienPlanDetaille","lienInactif");
gestionnaireCarte.loadCarteById(1);
gestionnaireCarte.mapZoomed(1);}}else if(num==2){
if((document.getElementById("lienPlanSimplifie").className!='lienInterdit')&&(document.getElementById("ongletPlanSimplifie").className!='controleCarteInterdit')){
gestionnairePanneauLateral.changeCheckbox("vueSimplifiee");
changeClass("lienVueAerienne","lienInactif");
changeClass("lienPlanSimplifie","lienActif");
changeClass("lienPlanDetaille","lienInactif");
gestionnaireCarte.loadCarteById(3);
gestionnaireCarte.mapZoomed(3);}}else if(num==3){
if((document.getElementById("lienPlanDetaille").className!='lienInterdit')&&(document.getElementById("ongletPlanDetaille").className!='controleCarteInterdit')){
gestionnairePanneauLateral.changeCheckbox("vueDetaillee");
changeClass("lienVueAerienne","lienInactif");
changeClass("lienPlanSimplifie","lienInactif");
changeClass("lienPlanDetaille","lienActif");
gestionnaireCarte.loadCarteById(2);
gestionnaireCarte.mapZoomed(2);}}};
this.afficherCarteGenerale=function(){
CarteAjax.nettoyerCarte(finNettoyage);
gestionnairePanneauLateral.unCheckAll();
gestionnaireCarte.loadCarteById(1);
gestionnaireCarte.zoomCarteGenerale();};
this.gestionOngletDeplacement=function(){
if(this.ONGLET_DEPLACEMENT_OUVERT){
showElement("ouvrirDeplacement","inline");
hideElement("fermerDeplacement");
hideElement("celluleDeplacement");
this.ONGLET_DEPLACEMENT_OUVERT=false;}else{
hideElement("ouvrirDeplacement");
showElement("fermerDeplacement","inline");
showElement("celluleDeplacement","block");
this.ONGLET_DEPLACEMENT_OUVERT=true;}
var lonlat=gestionnaireCarte.map.getCenter();
gestionnaireCarte.map.setCenter(lonlat);};
this.afficherUrl=function(){
var champURL=document.getElementById('inputUrl');
if(champURL){
champURL.value=gestionnaireUrl.getUrl();}
if(this.fenetreUrlExiste()){
YAHOO.mdp.fenetreUrl.fenetre.show();
YAHOO.mdp.fenetreUrl.fenetre.cfg.setProperty("context",["lienUrl","tr","tl"]);}else{
new FenetreUrl(window.document);}
document.getElementById('fenetreVolanteUrl').style.display='block';
YAHOO.mdp.fenetreUrl.fenetre.cfg.setProperty("context",["lienUrl","tr","bl"]);
if(champURL){
champURL.select();}};
this.fenetreUrlExiste=function(){
return(YAHOO!=null&&YAHOO.mdp!=null&&YAHOO.mdp.fenetreUrl!=null&&YAHOO.mdp.fenetreUrl.fenetre!=null);};
this.gestionOngletThematique=function(id,libelle){
changeClass("ongletVueAerienne","controleCarteInactif");
changeClass("ongletPlanSimplifie","controleCarteInactif");
changeClass("ongletPlanDetaille","controleCarteInactif");
changeClass("lienVueAerienne","lienInactif");
changeClass("lienPlanSimplifie","lienInactif");
changeClass("lienPlanDetaille","lienInactif");
if(libelle!=null){
gestionnairePanneauLateral.updateTreeTheme(libelle);}
else{
gestionnairePanneauLateral.updateTreeThematique(id);}
gestionnaireCarte.loadCarteById(id);};
this.SelectTab=function(elementID){
if(elementID==this.tableauNomOnglet[6]){
gestionnaireCarte.activateExportRectangle();}
changeClass(elementID+"Space","tabSpacer");
changeClass(elementID,"tabSelected");};
this.UnSelectTab=function(elementID){
var tab=document.getElementById(elementID);
if(tab==null||tab.className=="tabDisabled"){
return;}
if(elementID==this.tableauNomOnglet[6]){
gestionnaireCarte.desactivateExportRectangle();}
changeClass(elementID+"Space","tabSpacer");
changeClass(elementID,"tabIdle");};
this.DisableTab=function(elementID){
changeClass(elementID+"Space","tabSpacerDisabled");
changeClass(elementID,"tabDisabled");};
this.EnableTab=function(elementID){
changeClass(elementID+"Space","tabSpacer");
changeClass(elementID,"tabIdle");};
this.ShowForm=function(elementID){
changeClass(elementID,"formulaireVisible");};
this.HideForm=function(elementID){
changeClass(elementID,"formulaireMasque");};}
GestionnairePopup=function(){
var LARGEUR_POPUP=250;
var HAUTEUR_POPUP=120;
var URL_PREV="./images/icones/popup/equipementPrecedent.gif";
var URL_NEXT="./images/icones/popup/equipementSuivant.gif";
var URL_PREV_NONE="./images/icones/popup/equipementPrecedentGris.gif";
var URL_NEXT_NONE="./images/icones/popup/equipementSuivantGris.gif";
this.equipementPrincipal;
this.indexNomEquipement;
this.idPopupCourant="";
this.libelleCourant="";
this.taille=0;
this.tailleLargeur=0;
this.idFiche=null;
this.init=function(){
var type=BEAN_URL.popupInfo.substring(0,1);
if(isEmptyStr(type)||!isEmptyStr(BEAN_URL.typeRecherche))
return;
var id=BEAN_URL.popupInfo.substring(1,BEAN_URL.popupInfo.length);
switch(type){
case "A":
registerPendingQuery("popupAdresse");
break;
case "W":
registerPendingQuery("popupAdresse");
break;
case "S":
RechercheAjax.localiseEquipementById(id,gestionnairePopup.callbackPopupEquipement);
registerPendingQuery("popupEquipement");
break;
default:
break;}};
this.callbackPopupAdresse=function(bean){
gestionnairePopup.affichePopupInfoAdresse(bean.adresses[0]);
registerTerminatedQuery("popupAdresse");};
this.callbackPopupEquipement=function(bean){
gestionnairePopup.affichePopupInfoEquipement(bean.equipements[0]);
registerTerminatedQuery("popupEquipement");};
this.suppressionAncienPopup=function(){
var closed=isPopupInfoOpen();
gestionnaireCarte.removePopups();
this.idPopupCourant="";
return closed;};
this.getStrArrondissements=function(tabArrondissement){
var libArrondissement="";
for(var j=0;j<tabArrondissement.length;j++){
libArrondissement+=tabArrondissement[j].libelle;
if(j+1<tabArrondissement.length){
libArrondissement+=", ";}}
return libArrondissement;};
this.creationPopup=function(contenu,x,y,size,tailleContenu){
var anchor=new OpenLayers.Icon(null,new OpenLayers.Size(size,size),new OpenLayers.Pixel(0,-14),false);
gestionnaireCarte.popupInfo=new OpenLayers.Popup.AnchoredBubble("popupInfo",
new OpenLayers.LonLat(x,y),
new OpenLayers.Size(LARGEUR_POPUP,tailleContenu),
contenu,
anchor,
true);};
this.centragePopup=function(){
var valTop=document.getElementById('popupInfo').style.top;
valTop=valTop.slice(0,valTop.length-2);
valTop=parseInt(valTop);
valTop-=6;
document.getElementById('popupInfo').style.top=valTop+"px";
valTop=document.getElementById('popupInfo').style.left;
valTop=valTop.slice(0,valTop.length-2);
valTop=parseInt(valTop);
valTop+=7;
document.getElementById('popupInfo').style.left=valTop+"px";}
this.yAller=function(){
gestionnaireOnglets.selectOngletRecherche(3);
document.getElementById("input_recherche_itineraire_fin").value=this.libelleCourant;
gestionnaireItineraire.strIdArrivee=this.idPopupCourant;};
this.enPartir=function(){
gestionnaireOnglets.selectOngletRecherche(3);
document.getElementById("input_recherche_itineraire_debut").value=this.libelleCourant;
gestionnaireItineraire.strIdDepart=this.idPopupCourant;};
this.affichePopupInfoRatp=function(infoRatp){
this.suppressionAncienPopup();
var contenu="";
contenu+="<div id='content' align='center'>";
contenu+="<B align='center'>"+infoRatp.libelleRatp+"</B>";
contenu+="<BR/>";
contenu+="</div>";
var inclus=gestionnaireCarte.map.getExtent().contains(infoRatp.coordx,infoRatp.coordy,true);
if(!inclus&&appReady){
gestionnaireCarte.centreCarteSurPoint(new OpenLayers.LonLat(infoRatp.coordx,infoRatp.coordy));}
this.creationPopup(contenu,infoRatp.coordx,infoRatp.coordy,16,0);
gestionnaireCarte.map.addPopup(gestionnaireCarte.popupInfo);
this.taille=document.getElementById('content').offsetHeight;
this.tailleLargeur=document.getElementById('content').offsetWidth;
this.suppressionAncienPopup();
this.creationPopup(contenu,infoRatp.coordx,infoRatp.coordy,16,this.taille);
gestionnaireCarte.map.addPopup(gestionnaireCarte.popupInfo);
this.centragePopup();};
this.affichePopupInfoAdresse=function(adresseBean){
var previousPopupID=this.idPopupCourant;
var closed=this.suppressionAncienPopup();
var newPopupID=identifiantAdresse(adresseBean);
if(closed&&previousPopupID==newPopupID)
return;
this.idPopupCourant=newPopupID;
gestionnaireRecherche.adresseIdCliquee=this.idPopupCourant;
gestionnaireRecherche.gestionHighlight();
this.libelleCourant=adresseBean.libelle;
libArrondissement=this.getStrArrondissements(adresseBean.arrondissement);
var contenu="";
contenu+="<div id='content' align='center'>";
contenu+="<br/>";
contenu+="<br/>";
contenu+="<strong align='center'>"+adresseBean.libelle+",</strong>";
contenu+="<table width='60%' border='0'><tr><td>"+libArrondissement+"</td>";
contenu+="<td><a class='legendePopUp' title='Mémoriser cette adresse' onclick='gestionnairePopup.memoriserHome(); return false;' href='javascript:void(0)' style='cursor:pointer'><img src='"+URL_ICONE_MEMORISER+"' BORDER='0'/></a></td></tr></table>";
contenu+="<table width='100%'  border='0'><tr align='center'>";
contenu+=" <td><a class='legendePopUp' title='Calculer un itinéraire vers cette adresse'   onclick='gestionnairePopup.yAller();   return false;' href='javascript:void(0)' >  <img src='"+URL_YALLER+"' BORDER='0'/><label>&nbsp;Y aller</label></a></td>";
contenu+=" <td><a class='legendePopUp' title='Calculer un itinéraire depuis cette adresse' onclick='gestionnairePopup.enPartir(); return false;' href='javascript:void(0)' ><img src='"+URL_ENPARTIR+"' BORDER='0'/><label>&nbsp;En partir</label></a></td></tr></table>";
contenu+="<br/>";
contenu+="</div>";
var inclus=gestionnaireCarte.map.getExtent().contains(adresseBean.coordx,adresseBean.coordy,true);
if(!inclus&&appReady){
gestionnaireCarte.centreCarteSurPoint(new OpenLayers.LonLat(adresseBean.coordx,adresseBean.coordy));}
this.creationPopup(contenu,adresseBean.coordx,adresseBean.coordy,16,0);
gestionnaireCarte.map.addPopup(gestionnaireCarte.popupInfo);
this.taille=document.getElementById('content').offsetHeight;
this.tailleLargeur=document.getElementById('content').offsetWidth;
gestionnaireCarte.removePopups();
this.creationPopup(contenu,adresseBean.coordx,adresseBean.coordy,16,this.taille);
gestionnaireCarte.map.addPopup(gestionnaireCarte.popupInfo);
this.centragePopup();};
this.updateLienFicheEquipement=function(){
var lienFiche=document.getElementById("fichePopUp");
if(lienFiche===null)
return;
if(this.idFiche!==null){
lienFiche.setAttribute('href',EQUIPEMENT_URL+this.idFiche);}else{
lienFiche.setAttribute('href','javascript:void(0)');}}
this.affichePopupInfoEquipement=function(equipementBean){
if(equipementBean==undefined||equipementBean===null)
return;
var previousPopupID=this.idPopupCourant;
var closed=this.suppressionAncienPopup();
var newPopupID="S"+equipementBean.identifiant;
if(closed&&previousPopupID==newPopupID)
return;
this.idAdressePopupCourant="A"+equipementBean.identifiantAdresse;
gestionnaireRecherche.adresseIdCliquee=this.idAdressePopupCourant;
if(gestionnaireCarte&&gestionnaireCarte.currentCarte){
if(!isEmptyStr(gestionnaireCarte.currentCarte.highlightLayer)&&gestionnaireCarte.coucheFondPlan!==null){
gestionnaireCarte.coucheFondPlan.mergeNewParams({'version':Math.random(),'adresseId':gestionnaireRecherche.adresseIdCliquee});
gestionnaireCarte.updateZIndex();}}
this.equipementPrincipal=equipementBean;
this.idPopupCourant=newPopupID;
this.indexNomEquipement=0;
this.libelleCourant=equipementBean.strNom;
libArrondissement=equipementBean.libelleArrondissement;
var contenu="";
contenu+="<div id='content' align='center'>";
contenu+="<br/>";
contenu+="<table><tr>";
contenu+="<td id='equipPrecedent' width='16'><img src='"+URL_PREV_NONE+"'></img></td>";
contenu+="<td align='center'><strong><span id='popupNomElement'>"+equipementBean.strNom+"</span></strong></td>";
contenu+="<td id='equipSuivant' width='16'><img src='"+URL_NEXT_NONE+"'></img></td>";
contenu+="</tr></table>";
this.idFiche=equipementBean.identifiantParisFr;
var classeFiche="legendePopUp";
if(equipementBean.identifiantParisFr===null)
classeFiche="legendePopupHidden";
contenu+="<br/><a class='"+classeFiche+"' id='fichePopUp' target='_blank' href='' title='Voir la fiche de l'équipement sur Paris.fr'>"+"<img src='"+URL_ICONE_FICHE+"'/>Plus d'infos</a>"+"<br/><br/>";
contenu+=equipementBean.adresseComplete+",";
contenu+="<table width='60%'><tr><td>"+libArrondissement+"</td><td><a class='legendePopUp' title='Mémoriser cette adresse' onclick='gestionnairePopup.memoriserHome(); return false;' href='#'><img src='"+URL_ICONE_MEMORISER+"' BORDER='0'/></a></td></tr></table>";
contenu+="<table width='100%'><tr align='center'>";
contenu+="<td><a class='legendePopUp' title='Calculer un itinéraire vers cette adresse' onclick='gestionnairePopup.yAller();   return false;' href='javascript:void(0);'><img src='"+URL_YALLER+"' BORDER='0'/>Y aller</a></td>";
contenu+="<td><a class='legendePopUp' title='Calculer un itinéraire depuis cette adresse' onclick='gestionnairePopup.enPartir(); return false;' href='javascript:void(0);'><img src='"+URL_ENPARTIR+"' BORDER='0'/>En partir</a></td></tr></table>";
contenu+="<br/></div>";
var imageSize=equipementBean.imageGrandSize;
if(gestionnaireCarte.affichePetitesIcones()){
imageSize=equipementBean.imagePetitSize;}
var inclus=gestionnaireCarte.map.getExtent().contains(equipementBean.coordx,equipementBean.coordy,true);
if(!inclus){
gestionnaireCarte.centreCarteSurPoint(new OpenLayers.LonLat(equipementBean.coordx,equipementBean.coordy));}
this.creationPopup(contenu,equipementBean.coordx,equipementBean.coordy,imageSize,0);
gestionnaireCarte.map.addPopup(gestionnaireCarte.popupInfo);
this.taille=document.getElementById('content').offsetHeight;
this.tailleLargeur=document.getElementById('content').offsetWidth;
gestionnaireCarte.removePopups();
this.creationPopup(contenu,equipementBean.coordx,equipementBean.coordy,16,this.taille);
gestionnaireCarte.map.addPopup(gestionnaireCarte.popupInfo);
this.updateLienFicheEquipement();
var hasOthers=(equipementBean.equipementsMemeAdresse!=null&&equipementBean.equipementsMemeAdresse.length>0);
var hasPrevious=(hasOthers&&this.indexNomEquipement>0);
var hasNext=(hasOthers&&this.indexNomEquipement<equipementBean.equipementsMemeAdresse.length);
this.activeLienEquipementPrecedent(hasPrevious);
this.activeLienEquipementSuivant(hasNext);
var popup=document.getElementById('popupInfo');
if(popup){
this.centragePopup();}};
this.evtAffichePopUpInfoAdresse=function(evt){
gestionnairePopup.affichePopupInfoAdresse(this.data.bean);
var popup=document.getElementById("popupInfo");
if(popup){
popup.style.height="0px";}
Event.stop(evt);};
this.evtAffichePopUpInfoRatp=function(evt){
gestionnairePopup.affichePopupInfoRatp(this.data.bean);
var popup=document.getElementById("popupInfo");
if(popup){
popup.style.height="0px";}
Event.stop(evt);};
this.evtAffichePopUpInfoEquipement=function(evt){
gestionnairePopup.affichePopupInfoEquipement(this.data.bean);
var popup=document.getElementById("popupInfo");
if(popup){
popup.style.height="0px";}
Event.stop(evt);};
this.equipementPrecedent=function(){
this.indexNomEquipement--;
var eqp=null;
if(this.indexNomEquipement==0){
eqp=this.equipementPrincipal;}else{
eqp=this.equipementPrincipal.equipementsMemeAdresse[this.indexNomEquipement-1];}
if(eqp===null){
return;}
document.getElementById("popupNomElement").innerHTML=eqp.strNom;
this.idPopupCourant="S"+eqp.identifiant;
this.libelleCourant=eqp.strNom;
this.activeLienEquipementPrecedent(this.indexNomEquipement>0);
this.activeLienEquipementSuivant(true);
this.idFiche=eqp.identifiantParisFr;
if(eqp.identifiantParisFr===null){
changeClass('fichePopUp',"legendePopupHidden");}
else{
changeClass('fichePopUp',"legendePopup");}
this.updateLienFicheEquipement();
this.retaillerPopup();};
this.equipementSuivant=function(){
var eqp=this.equipementPrincipal.equipementsMemeAdresse[this.indexNomEquipement];
if(eqp===null){
return;}
document.getElementById("popupNomElement").innerHTML=eqp.strNom;
this.libelleCourant=eqp.strNom;
this.idPopupCourant="S"+eqp.identifiant;
this.indexNomEquipement++;
var hasNext=(this.indexNomEquipement<this.equipementPrincipal.equipementsMemeAdresse.length);
this.activeLienEquipementPrecedent(true);
this.activeLienEquipementSuivant(hasNext);
this.idFiche=eqp.identifiantParisFr;
if(eqp.identifiantParisFr===null){
changeClass('fichePopUp',"legendePopupHidden");}
else{
changeClass('fichePopUp',"legendePopup");}
this.updateLienFicheEquipement();
this.retaillerPopup();};
this.activeLienEquipementPrecedent=function(active){
var element=document.getElementById('equipPrecedent');
if(element===null)
return;
if(active){
var caption="Equipement précédent à cette adresse";
element.innerHTML="<a href='javascript:void(0)' style='text-decoration:none;cursor:pointer;' onClick='gestionnairePopup.equipementPrecedent(); return false;'><img src='"+URL_PREV+"' title='"+caption+"' alt='&lsaquo;&lsaquo;'/></a>";}else{
element.innerHTML="<img src='"+URL_PREV_NONE+"' alt='&lsaquo;&lsaquo;'></img>";}}
this.activeLienEquipementSuivant=function(active){
var element=document.getElementById('equipSuivant');
if(element===null)
return;
if(active){
var caption="Equipement suivant à cette adresse";
element.innerHTML="<a title='"+caption+"' href='javascript:void(0)' style='text-decoration:none;cursor:pointer;' onClick='gestionnairePopup.equipementSuivant(); return false;'><img src='"+URL_NEXT+"' title='"+caption+"' alt='&rsaquo;&rsaquo;'/></a>";}else{
element.innerHTML="<img src='"+URL_NEXT_NONE+"' alt='&rsaquo;&rsaquo;'></img>";}}
this.retaillerPopup=function(){
if(this.tailleLargeur<=document.getElementById('popupNomElement').offsetWidth){
this.tailleLargeur=document.getElementById('popupNomElement').offsetWidth;
document.getElementById('popupInfo_contentDiv').style.width=(this.tailleLargeur+28*2)+"px";
document.getElementById('topMiddle_innerImage').style.width=(this.tailleLargeur+28*2)+"px";
document.getElementById('topMiddle').style.width=(this.tailleLargeur+28*2)+"px";
document.getElementById('bottomMiddle_innerImage').style.width=(this.tailleLargeur+28*2)+"px";
document.getElementById('bottomMiddle').style.width=(this.tailleLargeur+28*2)+"px";
document.getElementById('topRight').style.left=document.getElementById('topMiddle').offsetWidth+document.getElementById('topLeft').offsetWidth+"px";
document.getElementById('middleRight').style.left=document.getElementById('topMiddle').offsetWidth+document.getElementById('topLeft').offsetWidth-15+"px";
document.getElementById('bottomRight').style.left=document.getElementById('topMiddle').offsetWidth+document.getElementById('topLeft').offsetWidth+1+"px";
document.getElementById('close').style.right=0+"px";
document.getElementById('close').style.left=(this.tailleLargeur+28*2-15)+"px";}
if(this.taille!=document.getElementById('content').offsetHeight){
this.taille=document.getElementById('content').offsetHeight;
var origine=document.getElementById('bottomArrow').style.top;
origine=origine.slice(0,origine.length-2);
origine=parseInt(origine);
document.getElementById('popupInfo_contentDiv').style.height=(this.taille+8*2)+"px";
document.getElementById('middleLeft_innerImage').style.height=(this.taille+8*2)+"px";
document.getElementById('middleLeft').style.height=(this.taille+8*2)+"px";
document.getElementById('middleRight_innerImage').style.height=(this.taille+8*2)+"px";
document.getElementById('middleRight').style.height=(this.taille+8*2)+"px";
document.getElementById('bottomLeft').style.top=document.getElementById('middleLeft').offsetHeight+document.getElementById('topLeft').offsetHeight+"px";
document.getElementById('bottomMiddle').style.top=document.getElementById('topMiddle').offsetHeight+document.getElementById('middleLeft').offsetHeight-34+"px";
document.getElementById('bottomArrow').style.top=document.getElementById('topMiddle').offsetHeight+document.getElementById('middleLeft').offsetHeight-13+"px";
var newOrigine=document.getElementById('bottomArrow').style.top;
newOrigine=newOrigine.slice(0,newOrigine.length-2);
newOrigine=parseInt(newOrigine);
var deplacement=origine-newOrigine;
var valTop=document.getElementById('popupInfo').style.top;
valTop=valTop.slice(0,valTop.length-2);
valTop=parseInt(valTop);
valTop=valTop+deplacement;
document.getElementById('popupInfo').style.top=valTop+"px";
document.getElementById('bottomWhite').style.top=document.getElementById('topMiddle').offsetHeight+document.getElementById('middleLeft').offsetHeight-20+"px";
document.getElementById('bottomRight').style.top=document.getElementById('middleLeft').offsetHeight+document.getElementById('topLeft').offsetHeight+"px";}};
this.memoriserHome=function(idPopupCourant,libelleCourant){
if(idPopupCourant==null){
ecrireCookie(KEY_HOME_ID,this.idPopupCourant);
ecrireCookie(KEY_HOME_LIBELLE,this.libelleCourant);
HOME_ID=this.idPopupCourant;
HOME_LIBELLE=this.libelleCourant;
alert("L'adresse '"+this.libelleCourant.toLowerCase()+"' a été correctement mémorisée.");}else{
ecrireCookie(KEY_HOME_ID,idPopupCourant);
ecrireCookie(KEY_HOME_LIBELLE,libelleCourant);
HOME_ID=idPopupCourant;
HOME_LIBELLE=libelleCourant;
alert("L'adresse '"+libelleCourant.toLowerCase()+"' a été correctement mémorisée.");}};};
function finGetListeEquipements(bean){
gestionnairePanneauLateral.coucheEquipement=bean;}
function finGetListeThematiques(bean){
gestionnairePanneauLateral.affichagePanneauTheme(bean);}
function finGetListeArrondissement(bean){
gestionnaireCarte.arrondissements=bean;}
function renseignerPanneau(contenu,idDiv,ouvrir,majPanneau,nettoyerCarte){
if(nettoyerCarte==null||nettoyerCarte){
contenu+="<br /><HR/>";
contenu+="<A onClick='gestionnaireCarte.zoomCarteGenerale();' style='cursor:pointer;' title='Revenir à la vue générale'><img src='"+directoryImage+"pictoParis.gif' alt='Dézoomer' align='middle'/>&nbsp;<label class='lienNettoyerCarte'>Revenir à la vue générale</label></A>";
contenu+="<br /><A onClick='CarteAjax.nettoyerCarte(finNettoyage); gestionnairePanneauLateral.unCheckAll();' style='cursor:pointer;' title='Effacer les informations affichées sur la carte'><img src='"+directoryImage+"gomme.gif' alt='Gomme' align='middle'/>&nbsp;<label class='lienNettoyerCarte'>Nettoyer la carte</label></A>";}
document.getElementById(idDiv).innerHTML=contenu;
if(majPanneau==null||majPanneau==true){
gestionnairePanneauLateral.choixPanneau(idDiv);}
if(ouvrir){
gestionnairePanneauLateral.ouvrirPanneau();
updateHorizontalLayout();}
RefreshPageRendering();}
function getIndexPanneau(idDiv){
if(gestionnairePanneauLateral){
for(var i=0;i<gestionnairePanneauLateral.tableauNomPanneau.length;i++){
var idPanneau=gestionnairePanneauLateral.tableauNomPanneau[i];
if(idDiv==idPanneau){
return i;}}}
return 0;}
treeGeneral=null;
function GestionnairePanneauLateral(){
this.legendeAffichee=false;
this.initialized=null;
this.tabTheme=null;
this.tabCarteDuMois=null;
this.PANNEAU_OUVERT=false;
this.indiceLigne=null;
this.indiceCouche=null;
this.coucheEquipement;
this.indexPanneauCourant=0;
this.nombreCoucheTransport=5;
this.nombreCoucheEquipement=0;
this.imgUrl="imgTree/puce.gif";
this.tableauNomPanneau=["panneau_general","panneau_equipement","panneau_theme","panneau_legende","panneau_recherche","panneau_itineraire","panneau_export"];
this.tableauLargeurPanneau=[250,250,300,350,350,350,350];
this.tableauCodePanneau=["CG","CE","CT","LE","RE","IT"];
this.tableauClassPanneau=["sidePanelContent","sidePanelContent","sidePanelContent","sidePanelContentNoScroll","sidePanelContent","sidePanelContent"];
this.tableauNomThematique=new Array();
this.tableauRefPanneau=["carte_generale","cartes_equipements","cartes_thematiques","legende","","",""];
this.finalize=function(){
this.chargerPanneauCarteGenerale();
this.affichagePanneauCarteGenerale(false);};
this.actionPanneauLateral=function(){
if(!this.PANNEAU_OUVERT){
this.ouvrirPanneau();}else{
this.fermerPanneau();}};
this.ouvrirPanneau=function(){
var lonlat=gestionnaireCarte.map.getCenter();
this.PANNEAU_OUVERT=true;
updateHorizontalLayout();
showElement("boutonPanneauOuvert","inline");
hideElement("boutonPanneauFerme");
showElement("contenuPanneauLateral","block");
gestionnaireCarte.map.setCenter(lonlat);
gestionnaireCarte.map.events.getMousePosition({clientX:0,clientY:0});};
this.fermerPanneau=function(){
var lonlat=gestionnaireCarte.map.getCenter();
this.PANNEAU_OUVERT=false;
updateHorizontalLayout();
hideElement("boutonPanneauOuvert");
showElement("boutonPanneauFerme","inline");
hideElement("contenuPanneauLateral");
gestionnaireCarte.map.setCenter(lonlat);};
this.choixPanneau=function(idDiv){
var indexPanneauPrec=this.indexPanneauCourant;
this.indexPanneauCourant=0;
for(var i=0;i<this.tableauNomPanneau.length;i++){
var idPanneau=this.tableauNomPanneau[i];
if(idDiv==idPanneau){
this.indexPanneauCourant=i;}
else{
hideElement(idPanneau);}}
showElement(idDiv,"block");
var panelClassName=this.tableauClassPanneau[this.indexPanneauCourant];
changeClass("contenuPanneauLateral",panelClassName);
if(idDiv=="panneau_legende"){
this.legendeAffichee=true;}else{
this.legendeAffichee=false;}
if(this.PANNEAU_OUVERT==true){
this.ouvrirPanneau();}
if(appReady&&this.indexPanneauCourant!=indexPanneauPrec){
var refPanneau=this.tableauRefPanneau[this.indexPanneauCourant];
if(!isEmptyStr(refPanneau))
traceAccess("panneau_"+refPanneau);}};
this.changeCheckboxTransport=function(couchesTransport,coucheTransportActives){
var cte=2;
if(DEBRANCHER_ON==1){
cte=0;}
for(var index=6;index<=10;index++){
var box=document.getElementById("c_treeGeneral"+index);
if(box){
box.checked=false;
box.disabled=true;}}
for(var index=0;index<couchesTransport.length;index++){
var id_c=parseInt(couchesTransport[index])+5-cte;
var box=document.getElementById("c_treeGeneral"+id_c);
if(box){
box.checked=true;}}
for(var index=0;index<coucheTransportActives.length;index++){
var id_c=parseInt(coucheTransportActives[index])+5-cte;
var box=document.getElementById("c_treeGeneral"+id_c);
if(box){
box.disabled=false;}}};
this.changeCheckbox=function(nomCouche){
treeGeneral.aNodes[2].checked=false;
treeGeneral.aNodes[3].checked=false;
treeGeneral.aNodes[4].checked=false;
if(nomCouche=="vueAerienne"){
treeGeneral.aNodes[2].checked=true;}else if(nomCouche=="vueSimplifiee"){
treeGeneral.aNodes[3].checked=true;}
else if(nomCouche=="vueDetaillee"){
treeGeneral.aNodes[4].checked=true;}
if(document.getElementById("panneau_general").style.display!='none'){
this.affichagePanneauCarteGenerale(this.PANNEAU_OUVERT);}};
this.unCheckAll=function(){
for(var index=6;index<=this.nombreCoucheTransport;index++){
document.getElementById("c_treeGeneral"+index).checked=false;}
for(var index=0;index<=this.nombreCoucheEquipement;index++){
var obj=document.getElementById("c_treeEquipement"+index);
if(obj){
obj.checked=false;}}
gestionnairePopup.suppressionAncienPopup();};
this.chargerPanneauCarteGenerale=function(){
treeGeneral=new dTree('treeGeneral');
var indice=0;
treeGeneral.add(0,-1,'');
treeGeneral.add(1,0,"<a class='node' onclick='gestionnaireOnglets.afficherCarteGenerale()' style='cursor:pointer;'>Carte générale</a>",'#',0,"","","",true);
treeGeneral.add(2,
1,
"<a id='lienVueAerienne' class='lienActif' onclick='gestionnaireOnglets.gestionOngletCarteGenerale(1)'><img src='"+this.imgUrl+"' align=\"middle\" alt='Vue aérienne'>&nbsp;Vue aérienne</a>",
'#',
0,
"gestionnaireOnglets.gestionOngletCarteGenerale(1)",
true,
"imgTree/globe.gif",
false);
treeGeneral.add(3,
1,
"<a id='lienPlanSimplifie' class='lienInactif' onclick='gestionnaireOnglets.gestionOngletCarteGenerale(2)'><img src='"+this.imgUrl+"' align=\"middle\" alt='Plan simplifié'>&nbsp;Plan simplifié</a>",
'#',
0,
"gestionnaireOnglets.gestionOngletCarteGenerale(2)",
false,
this.imgUrl,
false);
treeGeneral.add(4,
1,
"<a id='lienPlanDetaille' class='lienInactif' onclick='gestionnaireOnglets.gestionOngletCarteGenerale(3)'><img src='"+this.imgUrl+"' align=\"middle\" alt='Plan détaillé'>&nbsp;Plan détaillé</a>",
'#',
0,
"gestionnaireOnglets.gestionOngletCarteGenerale(3)",
false,
this.imgUrl,
false);
treeGeneral.add(5,0,"Déplacements",'#',0,"","","",true);
var retrait=2;
if(DEBRANCHER_ON==1){
retrait=0;
treeGeneral.add(6,
5,
"Stations Velib'",
'#',
2,
"gestionnaireCarte.gestionCheckBoxCarteGenerale(1, this)",
false,
"",
false);
this.nombreCoucheTransport++;
treeGeneral.add(7,
5,
"Pistes cyclables",
'#',
2,
"gestionnaireCarte.gestionCheckBoxCarteGenerale(2, this)",
false,
"",
false);
this.nombreCoucheTransport++;}
treeGeneral.add(8-retrait,
5,
"Stations de métro",
'#',
2,
"gestionnaireCarte.gestionCheckBoxCarteGenerale(3, this)",
false,
"",
false);
this.nombreCoucheTransport++;
treeGeneral.add(9-retrait,
5,
"Arrêts de bus",
'#',
2,
"gestionnaireCarte.gestionCheckBoxCarteGenerale(4, this)",
false,
"",
false);
this.nombreCoucheTransport++;
treeGeneral.add(10-retrait,
5,
"Bornes de taxi",
'#',
2,
"gestionnaireCarte.gestionCheckBoxCarteGenerale(5, this)",
false,
"",
false);
this.nombreCoucheTransport++;};
this.affichagePanneauCarteGenerale=function(boolOuvrirPanneau){
var contenu="";
contenu+="<div class='dtree'>";
contenu+=treeGeneral;
contenu+="</div>";
renseignerPanneau(contenu,"panneau_general",boolOuvrirPanneau,true,true);
treeGeneral.openAll();};
this.affichagePanneauCarteEquipement=function(tabCatACocher,tabCatACocherEtDisabled,tabRubriqueACocher){
tabNoeudAOuvrir=[];
if(tabCatACocher==null){
tabCatACocher=[];}
if(tabCatACocherEtDisabled==null){
tabCatACocherEtDisabled=[];}
var contenu="";
contenu+="<div class='dtree'>";
treeEquipement=new dTree('treeEquipement');
var indice=0;
treeEquipement.add(indice++,-1,'');
this.nombreCoucheEquipement++;
var libelle2="";
for(var i=0;i<this.coucheEquipement.length;i++){
var indicePere=indice;
treeEquipement.add(indice++,0,this.coucheEquipement[i].libelle,'#',0,"","","",true);
this.nombreCoucheEquipement++;
for(var j=0;j<this.coucheEquipement[i].listeCouche.length;j++){
var indiceRubrique=indice;
treeEquipement.add(indice++,indicePere,this.coucheEquipement[i].listeCouche[j].libelle,'#',0,"","");
this.nombreCoucheEquipement++;
if(this.coucheEquipement[i].listeCouche[j].listeCouche.length==1){
libelle2=this.coucheEquipement[i].listeCouche[j].listeCouche[0].libelle.replace(RegExp("'","gi"),"\\'");
var idCat=this.coucheEquipement[i].listeCouche[j].listeCouche[0].id;
var checked=false;
if(contain(tabCatACocher,idCat)||contain(tabCatACocherEtDisabled,idCat)){
checked=true;}
var disabled=false;
if(contain(tabCatACocherEtDisabled,idCat)){
disabled=true;}
if(checked){
tabNoeudAOuvrir.push(indicePere);}
treeEquipement.add(indice++,
indiceRubrique,
this.coucheEquipement[i].listeCouche[j].listeCouche[0].libelle,
'#',
2,
"gestionnaireCarte.gestionCheckBoxCategorie("+idCat+",'"+libelle2+"','"+IMG_SRC+this.coucheEquipement[i].listeCouche[j].listeCouche[0].urlIcone+"', this)",
checked,
directoryImage+this.coucheEquipement[i].listeCouche[j].listeCouche[0].urlIcone,
false,
disabled);
this.nombreCoucheEquipement++;}else{
for(var k=0;k<this.coucheEquipement[i].listeCouche[j].listeCouche.length;k++){
libelle2=this.coucheEquipement[i].listeCouche[j].listeCouche[k].libelle.replace(RegExp("'","gi"),"\\'");
var idCat=this.coucheEquipement[i].listeCouche[j].listeCouche[k].id;
var checked=false;
if(contain(tabCatACocher,idCat)||contain(tabCatACocherEtDisabled,idCat)){
checked=true;}
var disabled=false;
if(contain(tabCatACocherEtDisabled,idCat)){
disabled=true;}
if(checked){
tabNoeudAOuvrir.push(indiceRubrique);}
treeEquipement.add(indice++,
indiceRubrique,
this.coucheEquipement[i].listeCouche[j].listeCouche[k].libelle,
'#',
2,
"gestionnaireCarte.gestionCheckBoxCategorie("+this.coucheEquipement[i].listeCouche[j].listeCouche[k].id+",'"+libelle2+"','"+IMG_SRC+this.coucheEquipement[i].listeCouche[j].listeCouche[k].urlIcone+"', this)",
checked,
directoryImage+this.coucheEquipement[i].listeCouche[j].listeCouche[k].urlIcone,
false,
disabled);
this.nombreCoucheEquipement++;}}}}
contenu+=treeEquipement;
contenu+="</div>";
renseignerPanneau(contenu,"panneau_equipement",false,false,true);
treeEquipement.closeAll();
treeEquipement.openNodes(tabNoeudAOuvrir);};
this.affichagePanneauTheme=function(couchesParTypeBean){
var contenu="";
contenu+="<div class='dtree'>";
treeTheme=new dTree('treeTheme');
this.tabTheme=new Array();
this.tabCarteDuMois=new Array();
var indice=0;
treeTheme.add(indice++,-1,'');
var nbrCarteMois=this.rechercherCarteMois(couchesParTypeBean);
if(nbrCarteMois>0){
var indicePere=indice;
if(nbrCarteMois>=1){
treeTheme.add(indice++,0,"<label id='carteDuMois'>Carte du mois</label>",'#',0,"","","",true);}
this.initialized=false;
for(var i=0;i<couchesParTypeBean.length;i++){
for(var j=0;j<couchesParTypeBean[i].listeCouche.length;j++){
if(couchesParTypeBean[i].listeCouche[j].carteDuMois){
var id=couchesParTypeBean[i].listeCouche[j].id;
var libelle=couchesParTypeBean[i].listeCouche[j].libelle;
var idTxt=this.parseLibelle(libelle);
var obj="<a id='"+idTxt+"' class='lienInactif' name='"+idTxt+"' onclick='gestionnaireOnglets.gestionOngletThematique("+id+", \""+idTxt+"\")'><img src='"+this.imgUrl+"' style=\"vertical-align:middle;\" alt='"+libelle+"'>&nbsp;"+libelle+"</a>";
treeTheme.add(indice++,
indicePere,
obj,
'#',
0,
"gestionnaireOnglets.gestionOngletThematique('"+id+"')",
this.imgUrl,false);
this.tabTheme.push(idTxt);
this.tabCarteDuMois.push(idTxt);
this.tableauNomThematique.push("");}}}}
for(var i=0;i<couchesParTypeBean.length;i++){
var indicePere=indice;
var nomUnivers=couchesParTypeBean[i].libelle;
treeTheme.add(indice++,0,"<label id='"+"univCarte_"+nomUnivers+"' class='nodeIdx_"+indicePere+"'>"+nomUnivers+"</label>",'#',0,"","","",true);
for(var j=0;j<couchesParTypeBean[i].listeCouche.length;j++){
var libelle=couchesParTypeBean[i].listeCouche[j].libelle;
var idTxt=this.parseLibelle(libelle);
var id=couchesParTypeBean[i].listeCouche[j].id;
var obj="<a id='"+idTxt+"' class='lienInactif' name='"+idTxt+"' onclick='gestionnaireOnglets.gestionOngletThematique("+id+", \""+idTxt+"\")'><img src='"+this.imgUrl+"' style=\"vertical-align:middle;\" alt='"+libelle+"'>&nbsp;"+libelle+"</a>";
treeTheme.add(indice++,
indicePere,
obj,
'#',
0,
"gestionnaireOnglets.gestionOngletThematique('"+id+"')",
this.imgUrl,false);
this.tabTheme.push(idTxt);
this.tableauNomThematique.push(idTxt);}}
contenu+=treeTheme;
contenu+="</div>";
renseignerPanneau(contenu,"panneau_theme",false,false,true);
treeTheme.closeAll();};
this.affichagePanneauExport=function(){
var contenu="";
contenu+="<div class=\"menuTopExport\">";
contenu+="<img title=\"Exporter la carte au format PDF\" src=\"/carto/images/export_color.png\" alt='Exporter'>";
contenu+="&nbsp;Export en PDF de la carte actuelle";
contenu+="</div>";
contenu+="<div class=\"exportFormContent\">";
contenu+="<form id=\"choixExportForm\" action=\"javascript:void(0)\">";
contenu+="<table id=\"choixExportTable\" summary=\"Formulaire de choix des options d'exportation.\" cellspacing=\"5\">";
contenu+="<tr class=\"ligneExport\">";
contenu+="<td colspan=\"3\">Veuillez saisir les données suivantes :</td>";
contenu+="</tr>";
contenu+="<tr class=\"ligneExport\">";
contenu+="<td class=\"label\">Format d'impression</td>";
contenu+="<td><input id=\"choixFormatExport\" type=\"radio\" name=\"choixFormatExport\" value=\"A3\" checked=\"checked\" onClick=\"gestionnaireExport.setFormat(this)\"/> A3</td>";
contenu+="<td><input type=\"radio\" name=\"choixFormatExport\" value=\"A4\" onClick=\"gestionnaireExport.setFormat(this)\"/> A4</td>";
contenu+="</tr>";
contenu+="<tr class=\"ligneExport\">";
contenu+="<td class=\"label\">Mise en Page</td>";
contenu+="<td><input id=\"miseEnPage\" type=\"radio\" name=\"miseEnPage\" value=\"portrait\" onClick=\"gestionnaireExport.setOrientation(this)\"/> Portrait</td>";
contenu+="<td><input type=\"radio\" name=\"miseEnPage\" value=\"paysage\" checked=\"checked\" onClick=\"gestionnaireExport.setOrientation(this)\"/> Paysage</td>";
contenu+="</tr>";
if(gestionnaireCarte.currentCarte!=null){
var echelles=gestionnaireCarte.currentCarte.echellesExport;
if(echelles!=null){
contenu+="<tr class=\"ligneExport\">"
contenu+="<td class=\"label\">Echelle d'export</td>";
contenu+="<td colspan=\"2\">";
contenu+="<select name=\"echelleExport\" style=\"width:100%;\" onChange=\"gestionnaireExport.setScale(this)\">";
for(var i=0;i<echelles.length;i++){
contenu+="<option value=\""+echelles[i]+"\">1:"+echelles[i]+"</option>";}
contenu+="</select>";
contenu+="</td>";}}
if(gestionnaireCarte.currentCarte.licence!=""&&gestionnaireCarte.currentCarte.licence!=null){
contenu+="<tr class=\"ligneExport\">";
contenu+="<td colspan=\"3\"><input type=\"checkbox\" name=\"licenseUtilisation\" id=\"licenseUtilisation\"/> J'ai lu et j'accepte la <a onClick=\"gestionnaireExport.licenceWindows()\">licence d'utilisation.</a>";
contenu+="</td>";
contenu+="</tr>";}
contenu+="<tr class=\"ligneExport\">";
contenu+="<td></td>";
contenu+="<td><button class=\"bgall\" type=\"button\" onclick=\"gestionnaireExport.checkSubmit()\">Exporter</button></td>";
contenu+="</tr>";
contenu+="</table>";
contenu+="</form>";
if(gestionnaireCarte.currentCarte.infosExport!=null){
contenu+="<div style=\"font-style:italic;text-align:center;margin-left:60px;width:225px\">"+gestionnaireCarte.currentCarte.infosExport+"</div>"}
contenu+="<div id=\"exportRecadrage\" style=\"display:none\"><p>Le niveau de zoom est trop important pour afficher le cadre d'export</p>"+
"<p>Cliquez-ici pour le réafficher; <button class=\"bgall\" type=\"button\" onclick=\"gestionnaireExport.recadrer()\">Recadrer</button></p></div>"
contenu+="<div id=\"generateInfo\"></div>";
contenu+="</div>";
renseignerPanneau(contenu,"panneau_export",false,false,true);}
this.rechercherCarteMois=function(couchesParTypeBean){
var number=0;
this.indiceLigne=new Array();
for(var i=0;i<couchesParTypeBean.length;i++){
var tab=new Array();
for(var j=0;j<couchesParTypeBean[i].listeCouche.length;j++){
if(couchesParTypeBean[i].listeCouche[j].carteDuMois){
tab.push(couchesParTypeBean[i].listeCouche[j].id);
number++;}}
if(tab.length>=1)
this.indiceLigne.push(tab);}
return number;};
this.parseLibelle=function(libelle){
if(libelle.substring(0,5)=="PLU :"){
libelle=libelle.substring(6);}
var idTxt=libelle;
while(idTxt.search("'")!=-1)
idTxt=idTxt.replace("'","");
return idTxt;};
this.changePlan=function(){
if(this.tabTheme!==null){
for(var i=0;i<this.tabTheme.length;i++){
var obj=this.tabTheme[i];
document.getElementById(obj).className='lienInactif';}}
if(this.tabCarteDuMois!==null){
for(var i=0;i<this.tabCarteDuMois.length;i++){
var carte=this.tabCarteDuMois[i];
var tab=document.getElementsByName(carte);
for(var j=0;j<tab.length;j++){
tab[j].className='lienInactif';}}}};
this.updateTreeTheme=function(libelle){
this.changePlan();
var parsedLibelle=this.parseLibelle(libelle);
var tab=document.getElementsByName(parsedLibelle);
var i=0;
if(tab.length==0){
var chainePrincipale;
var chaineVoulue;
for(i=0;i<this.tableauNomThematique.length;i++){
if(this.tableauNomThematique[i].length>parsedLibelle.length){
chaineVoulue=parsedLibelle;
chainePrincipale=this.tableauNomThematique[i];}
else{
chaineVoulue=this.tableauNomThematique[i];
chainePrincipale=parsedLibelle;}
if(!isEmptyStr(chaineVoulue)&&!isEmptyStr(chainePrincipale)&&chainePrincipale.toLowerCase().search(chaineVoulue.toLowerCase())!==-1){
tab=document.getElementsByName(this.tableauNomThematique[i]);
break;}}}
for(i=0;i<tab.length;i++){
tab[i].className='lienActif';}};
this.openCarteDuMois=function(){
if(document.getElementById("carteDuMois")&&!this.initialized&&treeTheme!==null){
treeTheme.o(1);
this.initialized=true;}};
this.updateTreeThematique=function(id){
this.changePlan();
var libelle=this.tableauNomThematique[id];
var tab=document.getElementsByName(libelle);
for(var i=0;i<tab.length;i++){
tab[i].className='lienActif';}};
this.ouvrirUnivers=function(nomUnivers){
if(treeTheme===null)
return;
treeTheme.o(1);
var univers=document.getElementById('univCarte_'+nomUnivers);
if(univers){
var nodeIdx=univers.className;
var prefix='nodeIdx_';
if(nodeIdx.indexOf(prefix)==0){
var nodeIndex=nodeIdx.substr(prefix.length,nodeIdx.length-prefix.length);
treeTheme.o(nodeIndex);}}};
function changeClass(elementID,className){
var element=document.getElementById(elementID.id);
if(element){
element.className=className;}}}

function GestionnaireHistorique(){
this.bookmarkedHistoryState=null;
this.initialHistoryState=null;
this.init=function(){
var defaultState="";
var bookmarkedState=YAHOO.util.History.getBookmarkedState("state");
var initialState=bookmarkedState||defaultState;
YAHOO.util.History.register("state",initialState,this.register);
YAHOO.util.History.onLoadEvent.subscribe(this.subscribe);
YAHOO.util.History.initialize();};
this.subscribe=function(){};
this.register=function(state){
var tabParam=state.split("&");
for(var indexParam=0;indexParam<tabParam.length;indexParam++){
if(!isEmptyStr(tabParam[indexParam])){
if(tabParam[indexParam]=="recherche"){
gestionnaireHistorique.registerRecherche(tabParam);}else if(tabParam[indexParam].split("=")[0]=="idMap"){
gestionnaireCarte.actionLoadCarteById(tabParam[0].split("=")[1]);}else if(tabParam[indexParam].split("=")[0]=="transportId"){
tabIdsString=tabParam[indexParam].split("=")[1].split(",");
tabIdsInt=[];
for(var i=0;i<tabIdsString.length;i++){
var strId=tabIdsString[i]
if(!isEmptyStr(strId)){
tabIdsInt[i]=parseInt(strId);}}
gestionnaireCarte.transports=tabIdsInt;
gestionnaireCarte.actionGestionTransport();}}}};
this.registerRecherche=function(tabParam){
if(tabParam[1]=="typeRecherche=A"){
var adresse=tabParam[2].split("=")[1];
document.getElementById("input_recherche_adresse").value=adresse;
gestionnaireRecherche.actionRechercheAdresse();}if(tabParam[1]=="typeRecherche=S"){
var adresse=tabParam[2].split("=")[1];
var lieu=tabParam[3].split("=")[1];
document.getElementById("input_recherche_equipement_adresse").value=adresse;
document.getElementById("input_recherche_equipement_lieu").value=lieu;
gestionnaireRecherche.actionRechercherEquipement();}else if(tabParam[1]=="typeRecherche=AV"){
var tabRechercheAvancee=[];
for(var i=2;i<tabParam.length;i++){
index=tabParam[i].split("=")[0];
value=tabParam[i].split("=")[1];
tabRechercheAvancee[index]=value;}
var searchedCat=tabRechercheAvancee["cat"];
if(!isEmptyStr(searchedCat)){
var listeId=[];
listeId=searchedCat.split(",");
for(var indexUnivers=0;indexUnivers<gestionnairePanneauLateral.coucheEquipement.length;indexUnivers++){
var univers=gestionnairePanneauLateral.coucheEquipement[indexUnivers];
for(var indexRubrique=0;indexRubrique<univers.listeCouche.length;indexRubrique++){
var rubrique=univers.listeCouche[indexRubrique];
for(var indexCat=0;indexCat<rubrique.listeCouche.length;indexCat++){
var categorie=rubrique.listeCouche[indexCat];
if(this.idDansListe(categorie.id,listeId)){
categorie.checked=true;}}}}}
var searchedCg=tabRechercheAvancee["cg"];
if(!isEmptyStr(searchedCg)){
if(searchedCg==0){
document.getElementById("rechercheAvanceeToutParis").checked=true;}else if(searchedCg==1){
document.getElementById("rechercheAvanceeLibelleAdresse").value=tabRechercheAvancee["option1"];}else if(searchedCg==2){
document.getElementById("rechercheAvanceeChoixArrondissement").value=tabRechercheAvancee["option1"];
document.getElementById("rechercheAvanceeArrondissementProximite").checked=tabRechercheAvancee["option2"];}}
var searchedName=tabRechercheAvancee["ra_equipement"];
if(!isEmptyStr(searchedName)){
document.getElementById("rechercheAvanceeNomEquipement").value=searchedName;}
gestionnaireRecherche.actionLancerRechercheAvancee();}};
this.idDansListe=function(id,liste){
var trouve=false;
for(var i=0;i<liste.length&&!trouve;i++){
if(liste[i]==id){
trouve=true;}}
return trouve;};
this.navigate=function(label){
var strIds="";
for(var i=0;i<gestionnaireCarte.transports.length;i++){
if(i>0){
strIds+=",";}
strIds+=gestionnaireCarte.transports[i];}
label+="&transportId="+strIds;
YAHOO.util.History.navigate('state',label);};}
GestionnaireItineraire=function(){
this.itiDepart=[];
this.itiArrivee=[];
this.itineraireBean;
this.critereTemporaireDepart;
this.critereTemporaireArrivee;
this.strIdDepart;
this.strIdArrivee;
this.idModeTransport=3;
this.MODE_CAR=3;
this.MODE_FOOT=1;
this.MODE_CYCLE=2;
this.MODE_TRANSPORT=4;
this.init=function(){
if(!isEmptyStr(BEAN_URL.from)&&!isEmptyStr(BEAN_URL.to)&&!isEmptyStr(BEAN_URL.vehicule)){
var criteresItineraireBean=new Object();
this.strIdDepart=BEAN_URL.from;
criteresItineraireBean.idDepart=this.strIdDepart;
this.strIdArrivee=BEAN_URL.to;
criteresItineraireBean.idArrivee=this.strIdArrivee;
if(BEAN_URL.vehicule=="R"){
this.idModeTransport=this.MODE_CAR;}else if(BEAN_URL.vehicule=="C"){
this.idModeTransport=this.MODE_CYCLE;}else if(BEAN_URL.vehicule=="F"){
this.idModeTransport=this.MODE_FOOT;}else if(BEAN_URL.vehicule=="T"){
this.idModeTransport=this.MODE_TRANSPORT;}
criteresItineraireBean.idModeTransport=this.idModeTransport;
ItineraireAjax.getItineraire(criteresItineraireBean,callbackRechercheItineraire);
registerPendingQuery("rechercheItineraire");}else if(BEAN_URL.itiRatp!=null&&BEAN_URL.itiRatp=="true"){
criteresItineraireBean=new Object();
criteresItineraireBean.ratpDepartX=BEAN_URL.itiXDep;
criteresItineraireBean.ratpDepartY=BEAN_URL.itiYDep;
criteresItineraireBean.ratpArriveeX=BEAN_URL.itiXArr;
criteresItineraireBean.ratpArriveeY=BEAN_URL.itiYArr;
criteresItineraireBean.ratpLibelleDepart=BEAN_URL.itiLibDep;
criteresItineraireBean.ratpLibelleArrivee=BEAN_URL.itiLibArr;
ItineraireAjax.getItineraireRatp(criteresItineraireBean,callbackRechercheItineraireRatp);
registerPendingQuery("rechercheItineraireRatp");}};
this.rechercherItineraire=function(){
gestionnairePopup.suppressionAncienPopup();
var criteresItineraireBean=new Object();
criteresItineraireBean.strDepart=standardisation(document.getElementById("input_recherche_itineraire_debut").value);
criteresItineraireBean.strArrivee=standardisation(document.getElementById("input_recherche_itineraire_fin").value);
if(!isEmptyStr(this.strIdDepart)){
criteresItineraireBean.idDepart=this.strIdDepart;}
if(!isEmptyStr(this.strIdArrivee)){
criteresItineraireBean.idArrivee=this.strIdArrivee;}
criteresItineraireBean.idModeTransport=this.idModeTransport;
ItineraireAjax.getItineraire(criteresItineraireBean,callbackRechercheItineraire);}
this.rechercherItineraireAvecMode=function(idMode){
var criteresItineraireBean=new Object();
criteresItineraireBean.strDepart=this.itineraireBean.critereDepart[0].strDepart;
criteresItineraireBean.strArrivee=this.itineraireBean.critereArrivee[0].strArrivee;
criteresItineraireBean.idDepart=this.itineraireBean.critereDepart[0].idDepart;
criteresItineraireBean.idArrivee=this.itineraireBean.critereArrivee[0].idArrivee;
criteresItineraireBean.idModeTransport=idMode;
ItineraireAjax.getItineraire(criteresItineraireBean,callbackRechercheItineraire);}
this.inverse=function(){
var temp1=document.getElementById("input_recherche_itineraire_debut").value;
var idTemp1=this.strIdDepart;
document.getElementById("input_recherche_itineraire_debut").value=document.getElementById("input_recherche_itineraire_fin").value;
document.getElementById("input_recherche_itineraire_fin").value=temp1;
this.strIdDepart=this.strIdArrivee;
this.strIdArrivee=idTemp1;}
this.valoriserItineraireEtrechercher=function(){
if(this.critereTemporaireDepart&&this.critereTemporaireArrivee){
document.getElementById("input_recherche_itineraire_debut").value=this.critereTemporaireDepart.strDepart;
document.getElementById("input_recherche_itineraire_fin").value=this.critereTemporaireArrivee.strArrivee;
this.strIdDepart=this.critereTemporaireDepart.idDepart;
this.strIdArrivee=this.critereTemporaireArrivee.idArrivee;
this.rechercherItineraire();}}
this.choixDepart=function(index){
this.critereTemporaireDepart=this.itineraireBean.critereDepart[index];}
this.choixArrivee=function(index){
this.critereTemporaireArrivee=this.itineraireBean.critereArrivee[index]}
this.renseignerHomeDepart=function(){
if(!isEmptyStr(HOME_ID)){
document.getElementById("input_recherche_itineraire_debut").value=HOME_LIBELLE;
this.strIdDepart=HOME_ID;}}
this.renseignerHomeArrivee=function(){
if(!isEmptyStr(HOME_ID)){
document.getElementById("input_recherche_itineraire_fin").value=HOME_LIBELLE;
this.strIdArrivee=HOME_ID;}}
this.imprimer=function(){
gestionnaireImpression.afficherPageImpression(true);}
this.switchModeTransportImg=function(num){
document.getElementById("pieton").src=URL_A_PIED;
document.getElementById("velo").src=URL_EN_VELO;
document.getElementById("voiture").src=URL_EN_VOITURE;
document.getElementById("commun").src=URL_EN_COMMUN;
switch(num){
case 1:
document.getElementById("pieton").src=URL_A_PIED_ACTIVE;
break;
case 2:
document.getElementById("velo").src=URL_EN_VELO_ACTIVE;
break;
case 3:
document.getElementById("voiture").src=URL_EN_VOITURE_ACTIVE;
break;
case 4:
document.getElementById("commun").src=URL_EN_COMMUN_ACTIVE;
break;
default:break;}}}
callbackRechercheItineraire=function(itineraireBean){
gestionnaireItineraire.itineraireBean=itineraireBean;
var listeOk=true;
var contenu="<FORM>";
if(!isEmptyStr(itineraireBean.strErreur)){
contenu+="<br />"+itineraireBean.strErreur;}else if(itineraireBean.critereDepart.length==0||itineraireBean.critereArrivee.length==0){
if(itineraireBean.critereDepart.length==0){
listeOk=false;
contenu+="<br />"+document.getElementById("input_recherche_itineraire_debut").value+" ne correspond à aucun équipement ou adresse";}
if(itineraireBean.critereArrivee.length==0){
listeOk=false;
contenu+="<br />"+document.getElementById("input_recherche_itineraire_fin").value+" ne correspond à aucun équipement ou adresse";}}else if(itineraireBean.critereDepart.length>1||itineraireBean.critereArrivee.length>1){
contenu+=choixDepartArriveeItineraire(itineraireBean);}
if(itineraireBean.critereDepart!=null&&itineraireBean.critereArrivee!=null&&itineraireBean.critereDepart.length==1&&itineraireBean.critereArrivee.length==1){
gestionnaireOnglets.activerOngletPanneauByName("ongletItineraire",true);
if(itineraireBean.depart.catId!=null){
document.getElementById("input_recherche_itineraire_debut").value=itineraireBean.depart.strNom;}else{
document.getElementById("input_recherche_itineraire_debut").value=itineraireBean.depart.libelle;}
if(itineraireBean.arrivee.catId!=null){
document.getElementById("input_recherche_itineraire_fin").value=itineraireBean.arrivee.strNom;}else{
document.getElementById("input_recherche_itineraire_fin").value=itineraireBean.arrivee.libelle;}
var contenuFenetreLateral="";
contenuFenetreLateral+="<B>Départ : </B><br/>";
contenuFenetreLateral+=afficherInfoLieu(itineraireBean.depart,true);
contenuFenetreLateral+="<br/><B>Arrivée : </B><br/>";
contenuFenetreLateral+=afficherInfoLieu(itineraireBean.arrivee,false);
if(itineraireBean.idTypeDeplacement==gestionnaireItineraire.MODE_CAR){
contenuFenetreLateral+="<br/> En voiture : ";}else if(itineraireBean.idTypeDeplacement==gestionnaireItineraire.MODE_FOOT){
contenuFenetreLateral+="<br/> A pied : ";}else if(itineraireBean.idTypeDeplacement==gestionnaireItineraire.MODE_CYCLE){
contenuFenetreLateral+="<br/> A vélo : ";}else if(itineraireBean.idTypeDeplacement==gestionnaireItineraire.MODE_TRANSPORT&&tec_active){
contenuFenetreLateral+="<br/> En transport en commun : ";
window.open(itineraireBean.urlTEC,"","");}
contenuFenetreLateral+=itineraireBean.strHtmlItineraire[0];
if(!isEmptyStr(itineraireBean.strHtmlItineraire[3])){
contenuFenetreLateral+=", ";
contenuFenetreLateral+=itineraireBean.strHtmlItineraire[3];}
var dureeCourante=itineraireBean.strHtmlItineraire[0];
if((itineraireBean.idTypeDeplacement!=gestionnaireItineraire.MODE_CAR)&&(itineraireBean.dureesParcoursCar<=dureeCourante||itineraireBean.dureesParcoursCar=="moins d'1 minute.")){
contenuFenetreLateral+="<br/> <a href='javascript:void(0)' onclick='gestionnaireItineraire.rechercherItineraireAvecMode(3); return false;' style='cursor:pointer;text-decoration:none;color:#000000;'><label class='lienArrondissement'>En voiture :</label> "+itineraireBean.dureesParcoursCar+"</a>";}
if((itineraireBean.idTypeDeplacement!=gestionnaireItineraire.MODE_CYCLE)&&(itineraireBean.dureesParcoursCycle<=dureeCourante||itineraireBean.dureesParcoursCycle=="moins d'1 minute.")){
contenuFenetreLateral+="<br/> <a href='javascript:void(0)' onclick='gestionnaireItineraire.rechercherItineraireAvecMode(2); return false;' style='cursor:pointer;text-decoration:none;color:#000000;'><label class='lienArrondissement'>En vélo :</label> "+itineraireBean.dureesParcoursCycle+"</a>";}
if((itineraireBean.idTypeDeplacement!=gestionnaireItineraire.MODE_FOOT)&&(itineraireBean.dureesParcoursFoot<=dureeCourante||itineraireBean.dureesParcoursFoot=="moins d'1 minute.")){
contenuFenetreLateral+="<br/> <a href='javascript:void(0)' onclick='gestionnaireItineraire.rechercherItineraireAvecMode(1); return false;' style='cursor:pointer;text-decoration:none;color:#000000;'><label class='lienArrondissement'>A pied :</label> "+itineraireBean.dureesParcoursFoot+"</a>";}
if(tec_active&&(itineraireBean.idTypeDeplacement!=gestionnaireItineraire.MODE_TER)&&(itineraireBean.dureesParcoursTEC<=dureeCourante||itineraireBean.dureesParcoursTEC=="moins d'1 minute.")){
contenuFenetreLateral+="<br/> <a href='javascript:void(0)' onclick='gestionnaireItineraire.rechercherItineraireAvecMode(4); return false;' style='cursor:pointer;text-decoration:none;color:#000000;'><label class='lienArrondissement'>En transport en commun :</label> "+itineraireBean.dureesParcoursTEC+"</a>";}
if(itineraireBean.dureesParcoursCar>dureeCourante){
contenuFenetreLateral+="<br/><a href='javascript:void(0)' onclick='gestionnaireItineraire.rechercherItineraireAvecMode(3); return false;' > En voiture : "+itineraireBean.dureesParcoursCar+"</a>";}
contenuFenetreLateral+="<br/><br/>Les itinéraires proposés ne tiennent pas compte des modifications exceptionnelles de circulation<br/><br/>";
contenuFenetreLateral+="<a href='javascript:void(0)' onclick='gestionnaireItineraire.imprimer(); return false;' style='cursor:pointer;text-decoration:none;color:#000000;' title=\"Imprimer l'itinéraire\"><img src='"+iconePrint + "' border='0'>&nbsp;<label class='lienArrondissement'>Imprimer</label></a><br/><br/>";
if(itineraireBean.strHtmlItineraire[1]!=null&&itineraireBean.strHtmlItineraire[1]!="null"){
contenuFenetreLateral+="<div id='roadbook'>"+itineraireBean.strHtmlItineraire[1]+"</div>";}
renseignerPanneau(contenuFenetreLateral,"panneau_itineraire",false,false,true);
gestionnaireCarte.loadClickable();
gestionnaireCarte.updateMarkers();
gestionnaireCarte.updateZIndex();
var listePoint=[];
listePoint[0]=itineraireBean.depart;
listePoint[1]=itineraireBean.arrivee;
enveloppe=new GestionnaireRechercheCallBack().rechercheEnveloppe(listePoint);
gestionnaireCarte.centreCarteSurElements(2,enveloppe);}
else{
contenu+="</TABLE>";
contenu+="</FORM>";
document.getElementById("contenuFenetreChoixItineraire").innerHTML=contenu;
document.getElementById("fenetreChoixItineraire").style.height='auto';
document.getElementById("fenetreChoixItineraire").style.display='block';
var fenetre;
if(fenetreItiExiste()){
YAHOO.mdp.fenetreChoixItineraire.show();
fenetre=YAHOO.mdp.fenetreChoixItineraire;}else{
fenetre=new FenetreChoixDestItineraire();}
if(!listeOk){
YAHOO.mdp.fenetreChoixItineraire.getButtons()[1].style.display="none";}}
registerTerminatedQuery("rechercheItineraire");
if(appReady)
traceAccess("recherche","itineraire");}
callbackRechercheItineraireRatp=function(itineraireBean){
gestionnaireItineraire.itineraireBean=itineraireBean;
gestionnaireOnglets.activerOngletPanneauByName("ongletItineraire",true);
var contenuFenetreLateral="";
contenuFenetreLateral+="<B>Départ : </B>";
var data=new Object();
data.bean=new Object();
data.bean.libelleRatp=itineraireBean.depart;
data.bean.coordx=BEAN_URL.itiXDep;
data.bean.coordy=BEAN_URL.itiYDep;
feature=new OpenLayers.Feature(gestionnaireCarte.layerMarkersRecherche,
new OpenLayers.LonLat(BEAN_URL.itiXDep,BEAN_URL.itiYDep),data);
gestionnaireItineraire.itiDepart[0]=feature;
contenuFenetreLateral+="&nbsp;<A href='javascript:void(0)' onClick='gestionnairePopup.affichePopupInfoRatp(gestionnaireItineraire.itiDepart[0].data.bean); return false;' style='cursor:pointer;text-decoration:underline;color:#0033CC;'>"+itineraireBean.depart+"</A>";
contenuFenetreLateral+="<B>Arrivée : </B>";
var data=new Object();
data.bean=new Object();
data.bean.libelleRatp=itineraireBean.arrivee;
data.bean.coordx=BEAN_URL.itiXArr;
data.bean.coordy=BEAN_URL.itiYArr;
feature=new OpenLayers.Feature(gestionnaireCarte.layerMarkersRecherche,
new OpenLayers.LonLat(BEAN_URL.itiXArr,BEAN_URL.itiYArr),data);
gestionnaireItineraire.itiArrivee[0]=feature;
contenuFenetreLateral+="&nbsp;<A href='javascript:void(0)' onClick='gestionnairePopup.affichePopupInfoRatp(gestionnaireItineraire.itiArrivee[0].data.bean); return false;' style='cursor:pointer;text-decoration:underline;color:#0033CC;'>"+itineraireBean.arrivee+"</A>";
contenuFenetreLateral+="<br/> A pied : ";
contenuFenetreLateral+=itineraireBean.strHtmlItineraire[0];
if(!isEmptyStr(itineraireBean.strHtmlItineraire[3])){
contenuFenetreLateral+=", ";
contenuFenetreLateral+=itineraireBean.strHtmlItineraire[3];}
var dureeCourante=itineraireBean.strHtmlItineraire[0];
contenuFenetreLateral+="<br/><br/>Les itinéraires proposés ne tiennent pas compte des modifications exceptionnelles de circulation<br/><br/>";
contenuFenetreLateral+="<a href='javascript:void(0)' onclick='gestionnaireItineraire.imprimer(); return false;' style='cursor:pointer;text-decoration:none;color:#000000;' title=\"Imprimer l'itinéraire\"><img src='"+iconePrint + "' border='0'>&nbsp;<label class='lienArrondissement'>Imprimer</label></a><br/><br/>";
if(itineraireBean.strHtmlItineraire[1]!=null&&itineraireBean.strHtmlItineraire[1]!="null"){
contenuFenetreLateral+="<div id='roadbook'>"+itineraireBean.strHtmlItineraire[1]+"</div>";}
renseignerPanneau(contenuFenetreLateral,"panneau_itineraire",false,false,true);
gestionnaireCarte.loadClickable();
gestionnaireCarte.updateMarkers();
gestionnaireCarte.updateZIndex();
var listePoint=[];
var p1=new Object();
p1.coordx=BEAN_URL.itiXDep;
p1.coordy=BEAN_URL.itiYDep;
var p2=new Object();
p2.coordx=BEAN_URL.itiXArr;
p2.coordy=BEAN_URL.itiYArr;
listePoint[0]=p1;
listePoint[1]=p2;
enveloppe=new GestionnaireRechercheCallBack().rechercheEnveloppe(listePoint);
gestionnaireCarte.centreCarteSurElements(2,enveloppe);
gestionnaireItineraire.itineraireBean.depart=new Object();
gestionnaireItineraire.itineraireBean.depart.coordx=BEAN_URL.itiXDep;
gestionnaireItineraire.itineraireBean.depart.coordy=BEAN_URL.itiYDep;
gestionnaireItineraire.itineraireBean.arrivee=new Object();
gestionnaireItineraire.itineraireBean.arrivee.coordx=BEAN_URL.itiXArr;
gestionnaireItineraire.itineraireBean.arrivee.coordy=BEAN_URL.itiYArr;
registerTerminatedQuery("rechercheItineraireRatp");}
fenetreItiExiste=function(){
return(YAHOO!=null&&YAHOO.mdp!=null&&YAHOO.mdp.fenetreChoixItineraire!=null);}
afficherInfoLieu=function(lieu,boolDepart){
var contenu="";
if(lieu.catId!=null){
var data=new Object();
data.bean=lieu;
data.bean.popup=true;
var feature=new OpenLayers.Feature(gestionnaireCarte.layerMarkersRecherche,
new OpenLayers.LonLat(lieu.coordx,lieu.coordy),data);
if(boolDepart){
gestionnaireItineraire.itiDepart[0]=feature;
contenu+="&nbsp;<A href='javascript:void(0)' onClick='gestionnairePopup.affichePopupInfoEquipement (gestionnaireItineraire.itiDepart["+0+"].data.bean); return false;' style='cursor:pointer;text-decoration:underline;color:#0033CC;'>";}else{
gestionnaireItineraire.itiArrivee[0]=feature;
contenu+="&nbsp;<A href='javascript:void(0)' onClick='gestionnairePopup.affichePopupInfoEquipement (gestionnaireItineraire.itiArrivee["+0+"].data.bean); return false;' style='cursor:pointer;text-decoration:underline;color:#0033CC;'>";}
contenu+="<B>"+lieu.strNom+"</B>, "+lieu.adresseComplete+"</A>";
var libArrondissement=lieu.libelleArrondissement;
contenu+=", <A href='javascript:void(0)' onclick='gestionnaireCarte.zoomSurArrondissement("+lieu.arrondissement+"); return false;' style='cursor:pointer;text-decoration:underline;color:#0033CC;'>"+libArrondissement+"</A>";
var idEquipement;
idEquipement="S"+feature.data.bean.identifiant;
contenu+="<a onclick='gestionnairePopup.memoriserHome(\"" +  idEquipement + "\",\"" + removeQuote(lieu.strNom) +"\")'><img src='"+URL_ICONE_MEMORISER+"' /></a>";}else{
var data=new Object();
data.bean=lieu;
feature=new OpenLayers.Feature(gestionnaireCarte.layerMarkersRecherche,
new OpenLayers.LonLat(lieu.coordx,lieu.coordy),data);
var idAdresse;
if(boolDepart){
gestionnaireItineraire.itiDepart[0]=feature;
contenu+="&nbsp;<A href='javascript:void(0)' onClick='gestionnairePopup.affichePopupInfoAdresse(gestionnaireItineraire.itiDepart[0].data.bean); return false;' style='cursor:pointer;text-decoration:underline;color:#0033CC;'>"+lieu.libelle+"</A>";}else{
gestionnaireItineraire.itiArrivee[0]=feature;
contenu+="&nbsp;<A href='javascript:void(0)' onClick='gestionnairePopup.affichePopupInfoAdresse(gestionnaireItineraire.itiArrivee[0].data.bean); return false;' style='cursor:pointer;text-decoration:underline;color:#0033CC;'>"+lieu.libelle+"</A>";}
for(var j=0;j<lieu.arrondissement.length;j++){
libArrondissement=lieu.arrondissement[j].libelle;
idArrondissement=lieu.arrondissement[j].id;
contenu+=", <A href='javascript:void(0)' onClick='gestionnaireCarte.zoomSurArrondissement("+idArrondissement+"); return false;' style='cursor:pointer;text-decoration:underline;color:#0033CC;'>"+libArrondissement+"</A>";}
if(feature.data.bean.type=="A"){
idAdresse="A"+feature.data.bean.identifiant;}else{
idAdresse="W"+feature.data.bean.identifiant;}
contenu+="<a onclick='gestionnairePopup.memoriserHome(\"" +  idAdresse + "\",\"" + removeQuote(lieu.libelle) +"\")'><img src='"+URL_ICONE_MEMORISER+"' /></a>";}
return contenu+"<br/>";}
this.choixDepartArriveeItineraire=function(itineraireBean){
var contenu="";
var max=itineraireBean.critereDepart.length;
if(itineraireBean.critereArrivee.length>max){
max=itineraireBean.critereArrivee.length;}
contenu+="<TABLE border='0'>";
contenu+="<TR> ";
contenu+="<TH>Départ</TH>";
contenu+="<TH> Arrivée </TH>";
contenu+="</TR>";
for(var i=0;i<max;i++){
contenu+="<TR>";
contenu+="<TD>";
if(i<itineraireBean.critereDepart.length){
contenu+="<INPUT type=radio name='itiDepart' value='"+i+"'";
if(i==0){
contenu+=" CHECKED ";
gestionnaireItineraire.choixDepart(0);}
contenu+="onclick='gestionnaireItineraire.choixDepart("+i+")'>&nbsp;"+itineraireBean.critereDepart[i].strDepart;}
contenu+="</TD>";
contenu+="<TD>";
if(i<itineraireBean.critereArrivee.length){
contenu+="<INPUT type=radio name='itiArrivee' value='"+i+"'";
if(i==0){
contenu+=" CHECKED ";
gestionnaireItineraire.choixArrivee(0);}
contenu+="onclick='gestionnaireItineraire.choixArrivee("+i+")'>&nbsp;"+itineraireBean.critereArrivee[i].strArrivee;}
contenu+="</TD>";
contenu+="</TR>";}
return contenu;}
function GestionnaireUrl(){
this.getUrl=function(){
var url=window.location.protocol+"//"+window.location.host+window.location.pathname;
url+="?"+this.getParam();
var extent=gestionnaireCarte.map.getExtent();
if(extent!=null){
var envelope=extent.left+","+extent.bottom+","+extent.right+","+extent.top;
url+="&envelope="+envelope;}
url=this.no_accent(url);
return url;};
this.getParam=function(){
var mapId=gestionnaireCarte.carteId;
url="mapId="+mapId;
url+=this.gestionUrlRecherche();
url+=this.gestionListeCategorie();
url+=this.gestionTransport();
url+=this.gestionPanneauLateral();
url+=this.gestionPopup();
url+=this.gestionUrltineraire();
return url;};
this.gestionUrltineraire=function(){
var url="";
if(gestionnaireItineraire.itineraireBean!=null){
if(gestionnaireItineraire.itineraireBean.critereDepart!=null&&gestionnaireItineraire.itineraireBean.critereArrivee!=null&&gestionnaireItineraire.itineraireBean.critereDepart.length==1&&gestionnaireItineraire.itineraireBean.critereArrivee.length==1){
url+="&from="+gestionnaireItineraire.itineraireBean.critereDepart[0].idDepart;
url+="&to="+gestionnaireItineraire.itineraireBean.critereArrivee[0].idArrivee;
if(gestionnaireItineraire.itineraireBean.idTypeDeplacement==gestionnaireItineraire.MODE_CAR){
url+="&vehicule=R";}else if(gestionnaireItineraire.itineraireBean.idTypeDeplacement==gestionnaireItineraire.MODE_FOOT){
url+="&vehicule=F";}else if(gestionnaireItineraire.itineraireBean.idTypeDeplacement==gestionnaireItineraire.MODE_CYCLE){
url+="&vehicule=C";}else if(gestionnaireItineraire.itineraireBean.idTypeDeplacement==gestionnaireItineraire.MODE_TRANSPORT){
url+="&vehicule=T";}}}
return url;};
this.gestionUrlRecherche=function(){
var url="";
var typeRecherche=gestionnaireRecherche.typeRechercheLancee;
if(!isEmptyStr(typeRecherche)){
url+="&typeRecherche="+typeRecherche;
if(typeRecherche=="A"){
url+="&adresse="+gestionnaireRecherche.parametreRechercheLancee[0];}else if(typeRecherche=="S"){
url+="&adresse="+gestionnaireRecherche.parametreRechercheLancee[0];
url+="&lieu="+gestionnaireRecherche.parametreRechercheLancee[1];}else{
if(!isEmptyStr(gestionnaireRecherche.parametreRechercheLancee)){
url+="&cat=";
for(var i=0;i<gestionnaireRecherche.parametreRechercheLancee[0].length;i++){
if(i>0)url+=",";
url+=gestionnaireRecherche.parametreRechercheLancee[0][i];}
url+="&cg="+gestionnaireRecherche.parametreRechercheLancee[1];
if(gestionnaireRecherche.parametreRechercheLancee[1]==1){
url+="&option1="+gestionnaireRecherche.parametreRechercheLancee[2][0];}else if(gestionnaireRecherche.parametreRechercheLancee[1]==2){
url+="&option1="+gestionnaireRecherche.parametreRechercheLancee[2][0];
url+="&option2="+gestionnaireRecherche.parametreRechercheLancee[2][1];}}
if(!isEmptyStr(gestionnaireRecherche.parametreRechercheLancee[3])){
url+="&ra_equipement="+gestionnaireRecherche.parametreRechercheLancee[3];}}}
if(!isEmptyStr(gestionnaireRecherche.adresseIdCliquee)){
url+="&idAClique="+gestionnaireRecherche.adresseIdCliquee;}
return url;};
this.gestionListeCategorie=function(){
var url="";
if(gestionnaireCarte.categories!=null&&gestionnaireCarte.categories.length>0){
var listeEquipement="";
for(var i=0;i<gestionnaireCarte.categories.length;i++){
if(i>0){
listeEquipement+=",";}
listeEquipement+=gestionnaireCarte.categories[i];}
url+="&equipement=C&equipementId="+listeEquipement;}
return url;};
this.gestionTransport=function(){
var url="";
if(gestionnaireCarte.transports!=null&&gestionnaireCarte.transports.length>0){
var listeTransport="";
for(var i=0;i<gestionnaireCarte.transports.length;i++){
if(i>0){
listeTransport+=",";}
if(gestionnaireCarte.transports[i]==1){
listeTransport+="V";}else if(gestionnaireCarte.transports[i]==2){
listeTransport+="C";}else if(gestionnaireCarte.transports[i]==3){
listeTransport+="M";}else if(gestionnaireCarte.transports[i]==4){
listeTransport+="B";}else if(gestionnaireCarte.transports[i]==5){
listeTransport+="T";}}
url+="&couche="+listeTransport;}
return url;};
this.gestionPanneauLateral=function(){
var etat="F";
if(gestionnairePanneauLateral.PANNEAU_OUVERT){
etat="O";}
var codePanneau="";
if(gestionnairePanneauLateral.indexPanneauCourant>=0){
codePanneau=gestionnairePanneauLateral.tableauCodePanneau[gestionnairePanneauLateral.indexPanneauCourant];}
var url="&etatPanneau="+etat+"&ongletPanneau="+codePanneau;
return url;};
this.gestionPopup=function(){
var url="";
if(gestionnaireCarte.popupInfo!=null&&gestionnaireCarte.popupInfo.map!=null){
url+="&popupInfo="+gestionnairePopup.idPopupCourant;}
return url;};
this.mailpage=function(){
chaine_mail="mailto:?subject= www.paris.fr - Plan de Paris";
var url=this.getUrl();
url=url.replace(/&/g,"%26");
chaine_mail+="&body= "+url;
location.href=chaine_mail;};
this.no_accent=function(my_string){
var new_string="";
var pattern_accent=new Array("é","è","ê","ë","ç","à","â","ä","î","ï","ù","ô","ó","ö");
var pattern_replace_accent=new Array("e","e","e","e","c","a","a","a","i","i","u","o","o","o");
if(my_string&&my_string!=""){
new_string=this.preg_replace(pattern_accent,pattern_replace_accent,my_string);}
return new_string;};
this.preg_replace=function(array_pattern,array_pattern_replace,my_string){
var new_string=String(my_string);
for(i=0;i<array_pattern.length;i++){
var reg_exp=RegExp(array_pattern[i],"gi");
var val_to_replace=array_pattern_replace[i];
new_string=new_string.replace(reg_exp,val_to_replace);}
return new_string;};}

function GestionnaireImpression(){
this.afficherPageImpression=function(itineraire){
var bean=new Object();
bean.mapId=gestionnaireCarte.carteId;
if(gestionnaireCarte.carteId==1){
bean.titreCarte="Vue aérienne";}else if(gestionnaireCarte.carteId==2){
bean.titreCarte="Plan simplifié";}else if(gestionnaireCarte.carteId==3){
bean.titreCarte="Plan détaillé";}else if(gestionnaireCarte.currentCarte.titreLong!=null){
bean.titreCarte=gestionnaireCarte.currentCarte.titreLong;}else{
bean.titreCarte="";}
bean.titreCarte=this.replaceAccent(bean.titreCarte);
var extent=gestionnaireCarte.map.getExtent();
bean.envelopeXmax=extent.right;
bean.envelopeXmin=extent.left;
bean.envelopeYmax=extent.top;
bean.envelopeYmin=extent.bottom;
var center=gestionnaireCarte.map.getCenter();
bean.centerX=center.lon;
bean.centerY=center.lat;
bean.zoom=gestionnaireCarte.map.getZoom();
var mergeLayers=gestionnaireCarte.currentCarte.aimsService;
mergeLayers+=";";
if(!isEmptyStr(gestionnaireCarte.currentCarte.aimsServiceOverlay)){
mergeLayers+=gestionnaireCarte.currentCarte.aimsServiceOverlay;}
mergeLayers+=";"+gestionnaireCarte.currentCarte.aimsServiceOverlayGeneral+gestionnaireCarte.getCouchesTransport();
mergeLayers+=";overlayEquipements";
bean.strMergeLayer=mergeLayers;
if(gestionnaireItineraire.itineraireBean!=null){
itineraire=true;}
if(!itineraire){
if(gestionnaireRecherche.beanAdressesRecherchees!=null){
bean.adressesRecherchees=gestionnaireRecherche.beanAdressesRecherchees.adresses;}
if(gestionnaireRecherche.beanEquipementsRecherches!=null){
bean.equipementsRecherchees=gestionnaireRecherche.beanEquipementsRecherches.equipements;}}
if(gestionnaireItineraire.itineraireBean!=null&&gestionnaireItineraire.itineraireBean.depart!=null&&gestionnaireItineraire.itineraireBean.arrivee!=null){
bean.itineraireRechercheesDepartX=gestionnaireItineraire.itineraireBean.depart.coordx;
bean.itineraireRechercheesDepartY=gestionnaireItineraire.itineraireBean.depart.coordy;
bean.itineraireRechercheesArriveeX=gestionnaireItineraire.itineraireBean.arrivee.coordx;
bean.itineraireRechercheesArriveeY=gestionnaireItineraire.itineraireBean.arrivee.coordy;}
if(!itineraire){
bean.htmlBasDePage=this.getBasDePageSansItineraire();}else{
bean.htmlBasDePage="<tr><td colspan='2'><div id='roadbook'>"+this.replaceAccent(gestionnaireItineraire.itineraireBean.strHtmlItineraire[4])+"</div></td></tr>";}
if(gestionnaireRecherche.adresseIdCliquee!=null){
bean.idAdresseCliquee=gestionnaireRecherche.adresseIdCliquee;}
if(gestionnaireCarte.currentCarte.strCategorieList!=null){
bean.strCategorieList=gestionnaireCarte.currentCarte.strCategorieList;}
if(gestionnaireCarte.currentCarte.strEquipementList!=null){
bean.strEquipementList=gestionnaireCarte.currentCarte.strEquipementList;}
ImpressionAjax.getFluxImpression(bean,callbackImpression);};
this.getBasDePageSansItineraire=function(){
var contenu="";
if(gestionnaireCarte.infoCategories!=null&&gestionnaireCarte.infoCategories.length>0){
contenu+="<tr align='left'>";
contenu+="<td colspan='2'><img src='/carto/images/trans.gif' alt=' ' height='4' width='20'> <big><b> Equipements : </b></big>";
contenu+="<table>";
contenu+="<tr height='4'>";
contenu+="<td colspan='3'></td>";
contenu+="</tr>";
for(var i=0;i<gestionnaireCarte.infoCategories.length;i++){
contenu+="<tr>";
contenu+="<td width='40'></td>";
contenu+="<td valign='middle'><img src='"+gestionnaireCarte.infoCategories[i].urlIcone+"'></td>";
contenu+="<td valign='middle'>"+this.replaceAccent(gestionnaireCarte.infoCategories[i].libelle)+"</td>";
contenu+="</tr>";}
contenu+="</table></td>";
contenu+="</tr>";
contenu+="<tr>";
contenu+="<td colspan='2' height='4'><img src='/carto/images/trans.gif' alt='' height='20' width='1'></td>";
contenu+="</tr>";}
if(gestionnaireRecherche.beanEquipementsRecherches!=null){
contenu+=this.rechercheEquipement();}
if(gestionnaireRecherche.beanAdressesRecherchees!=null){
contenu+=this.rechercheAdresse();}
return contenu;};
this.rechercheEquipement=function(){
var contenu="";
if(gestionnaireRecherche.beanEquipementsRecherches!=null&&gestionnaireRecherche.beanEquipementsRecherches.equipements!=null){
contenu=" <tr  align='left'>";
contenu+="<td colspan='2'><img src='/carto/images/trans.gif' alt=' ' height='4' width='20'> <big><b> Recherche d'un &eacute;quipement : ";
if(descriptifRecherche!=null){
contenu+="'"+this.replaceAccent(descriptifRecherche)+"'";}
contenu+="</b></big><br />";
contenu+="<img src='/carto/images/trans.gif' alt=' ' height='4' width='25'>";
contenu+=gestionnaireRecherche.beanEquipementsRecherches.equipements.length;
if(gestionnaireRecherche.beanEquipementsRecherches.equipements.length>1){
contenu+=" r&eacute;ponses trouv&eacute;es";}else{
contenu+=" r&eacute;ponse trouv&eacute;e";}
if(gestionnaireRecherche.beanEquipementsRecherches.equipements.length>gestionnaireRecherche.beanEquipementsRecherches.equipements.length){
contenu+=" <i>(seuls les "+gestionnaireRecherche.beanEquipementsRecherches.equipements.length+" premiers r&eacute;sultats sont affich&eacute;s) </i>";}
contenu+="<table>";
contenu+=" <tr height='4'>";
contenu+=" <td colspan='2'></td>";
contenu+=" </tr>";
for(var i=0;i<gestionnaireRecherche.beanEquipementsRecherches.equipements.length;i++){
contenu+="<tr>";
contenu+="<td width='40'></td>";
contenu+="<td valign='middle'>"+this.replaceAccent(gestionnaireRecherche.beanEquipementsRecherches.equipements[i].strNom)+"</B> ";
contenu+=this.replaceAccent(gestionnaireRecherche.beanEquipementsRecherches.equipements[i].adresseComplete);
contenu+=", "+this.replaceAccent(gestionnaireRecherche.beanEquipementsRecherches.equipements[i].libelleArrondissement);
contenu+="</td></tr>";}
contenu+="</TABLE>";
contenu+="</td></tr>";}
return contenu;};
this.rechercheAdresse=function(){
var contenu=" <tr  align='left'>";
contenu+="<td colspan='2'><img src='/carto/images/trans.gif' alt=' ' height='4' width='20'> <big><b> Recherche d'une adresse : '"+this.replaceAccent(descriptifRecherche)+"'</b></big><br />";
contenu+="<img src='/carto/images/trans.gif' alt=' ' height='4' width='25'>";
contenu+=gestionnaireRecherche.beanAdressesRecherchees.nbrResultatTotal;
if(gestionnaireRecherche.beanAdressesRecherchees.nbrResultatTotal>1){
contenu+=" r&eacute;ponses trouv&eacute;es";}else{
contenu+=" r&eacute;ponse trouv&eacute;e";}
if(gestionnaireRecherche.beanAdressesRecherchees.nbrResultatTotal>gestionnaireRecherche.beanAdressesRecherchees.adresses.length){
contenu+=" <i>(seul les "+gestionnaireRecherche.beanAdressesRecherchees.adresses.length+" premiers r&eacute;sultats sont affich&eacute;s) </i>";}
contenu+="<table>";
contenu+=" <tr height='4'>";
contenu+=" <td colspan='2'></td>";
contenu+=" </tr>";
var listeAdresseAffichee=[];
for(var i=0;i<gestionnaireRecherche.beanAdressesRecherchees.adresses.length;i++){
if(listeAdresseAffichee[gestionnaireRecherche.beanAdressesRecherchees.adresses[i].libelle]==null){
listeAdresseAffichee[gestionnaireRecherche.beanAdressesRecherchees.adresses[i].libelle]=true;
contenu+="<tr>";
contenu+="<td width='40'></td>";
contenu+="<td valign='middle'>"+this.replaceAccent(gestionnaireRecherche.beanAdressesRecherchees.adresses[i].libelle);
for(var j=0;j<gestionnaireRecherche.beanAdressesRecherchees.adresses[i].arrondissement.length;j++){
libArrondissement=this.replaceAccent(gestionnaireRecherche.beanAdressesRecherchees.adresses[i].arrondissement[j].libelle);
contenu+=", "+libArrondissement;}
contenu+="</td></tr>";}}
contenu+="</TABLE>";
contenu+="</td></tr>";
return contenu;};
this.replaceAccent=function(texte){
var output="";
if(texte!=null){
output=texte.replace(/'/g,'&rsquo;');
output=output.replace(/ô/g,'&ocirc;');
output=output.replace(/ï/g,'&iuml;');
output=output.replace(/ë/g,'&euml;');
output=output.replace(/ê/g,'&ecirc;');
output=output.replace(/é/g,'&eacute;');
output=output.replace(/è/g,'&egrave;');
output=output.replace(/ç/g,'&ccedil;');
output=output.replace(/â/g,'&acirc;');
output=output.replace(/à/g,'&agrave;');}
return output;};}
function callbackImpression(){
traceAccess("apercu_impression");
if(openWindow("./jsp/print.jsp","toolbar=0, location=0, directories=0, menuBar=1, scrollbars=1, resizable=1, width=700, height=1000"))
return;
alert("Votre navigateur semble bloquer l'ouverture de la fenêtre d'aperçu avant impression.");}
function initialisationImpression(){
gestionnaireCarteImpression=new GestionnaireCarteImpression();
gestionnaireCarteImpression.init();}

OpenLayers.Control.MdpLayerSwitcher=OpenLayers.Class(OpenLayers.Control,{
initialize:function(options){
OpenLayers.Control.prototype.initialize.apply(this,arguments);},
destroy:function(){
OpenLayers.Control.prototype.destroy.apply(this,arguments);},
changeCheckboxTransport:function(couchesTransport,coucheTransportActives){
for(var index=1;index<=5;index++){
var item=document.getElementById("c_ls_"+index);
if(item){
item.checked=false;
item.disabled=true;}}
for(var index=0;index<couchesTransport.length;index++){
var item=document.getElementById("c_ls_"+couchesTransport[index]);
if(item){
item.checked=true;}}
for(var index=0;index<coucheTransportActives.length;index++){
var item=document.getElementById("c_ls_"+coucheTransportActives[index]);
if(item){
item.disabled=false;}}},
draw:function(px){
OpenLayers.Control.prototype.draw.apply(this,arguments);
this.div.style.position="absolute";
this.div.style.top="0px";
this.div.style.right="0px";
this.div.style.left="";
this.div.style.fontFamily="Arial, Helvetica, sans-serif";
this.div.style.fontSize="smaller";
this.div.style.fontWeight="bold";
this.div.style.marginTop="0px";
this.div.style.marginLeft="3px";
this.div.style.marginBottom="3px";
this.div.style.color="white";
this.layersDiv=document.createElement("div");
this.layersDiv.id="layersDiv";
this.layersDiv.style.width="100%";
this.layersDiv.style.height="100%";
var contenu="";
contenu+="<table class='mapButtons' cellspacing='4' summary='boutons type carte'><tbody>";
contenu+="	<tr> ";
contenu+="	<td class='controleCarteInactif' id='ongletVueAerienne' onClick='gestionnaireOnglets.gestionOngletCarteGenerale(1)'><a style='width:100%;height:100%'>Vue aérienne</a></td>";
contenu+="	<td class='controleCarteInactif' id='ongletPlanSimplifie' onClick='gestionnaireOnglets.gestionOngletCarteGenerale(2)'><a style='width:100%;height:100%'>Plan simplifié</a></td>";
contenu+="	<td class='controleCarteInactif' id='ongletPlanDetaille' onClick='gestionnaireOnglets.gestionOngletCarteGenerale(3)'><a style='width:100%;height:100%'>Plan détaillé</a></td>";
contenu+="	<td class='controleCarteInactif'> ";
contenu+="<a onClick='gestionnaireOnglets.gestionOngletDeplacement()'> <img src='"+directoryImage+"deplacement.JPG'/>";
contenu+="&nbsp;Déplacement&nbsp;";
contenu+="<span id='ouvrirDeplacement'><img src='"+directoryImage+"listederoulante.gif'/></span>";
contenu+="<span id='fermerDeplacement' style='display: none;'><img src='"+directoryImage+"listederoulanteFermer.gif'</span>";
contenu+=" </a>";
contenu+="</td>";
contenu+="</tr>";
contenu+="<tr>";
contenu+="	<td></td>";
contenu+=" <td></td>";
contenu+=" <td></td>";
contenu+=" <td class='modesDeplacement'>";
contenu+=" <div class='controleCarteInactif' id='celluleDeplacement' style='display: none;' align='left'>";
if(DEBRANCHER_ON==1){
contenu+="	<input type='checkbox' class='cbModeDeplacement' id=\"c_ls_1\" onclick='gestionnaireCarte.gestionCheckBoxCarteGenerale(1, this)' align=\"left\">";
contenu+="	Stations Velib'";
contenu+="	<br />";
contenu+="	<input type='checkbox' class='cbModeDeplacement' id=\"c_ls_2\" onclick='gestionnaireCarte.gestionCheckBoxCarteGenerale(2, this)' align=\"left\">";
contenu+="	Pistes cyclables";
contenu+="	<br />";}
contenu+="	<input type='checkbox' class='cbModeDeplacement' id=\"c_ls_3\" onclick='gestionnaireCarte.gestionCheckBoxCarteGenerale(3, this)' align=\"left\">";
contenu+="	Stations de métro";
contenu+="	<br />";
contenu+="	<input type='checkbox' class='cbModeDeplacement' id=\"c_ls_4\" onclick='gestionnaireCarte.gestionCheckBoxCarteGenerale(4, this)' align=\"left\">";
contenu+="	Arrêts de bus";
contenu+="	<br />";
contenu+="	<input type='checkbox' class='cbModeDeplacement' id=\"c_ls_5\" onclick='gestionnaireCarte.gestionCheckBoxCarteGenerale(5, this)' align=\"left\">";
contenu+="	Bornes de taxi";
contenu+="	<br />";
contenu+="</div>";
contenu+="</td>";
contenu+="</tr> ";
contenu+="</tbody></table>";
var tableOnglet=document.createElement("div");
tableOnglet.innerHTML=contenu;
tableOnglet.style.marginTop="0px";
tableOnglet.style.marginLeft="3px";
tableOnglet.style.marginBottom="3px";
tableOnglet.align="right";
this.baseLayersDiv=document.createElement("div");
this.baseLayersDiv.style.paddingLeft="10px";
this.baseLayersDiv.style.marginLeft="10px";
this.dataLayersDiv=document.createElement("div");
this.dataLayersDiv.style.paddingLeft="10px";
this.layersDiv.appendChild(tableOnglet);
this.div.appendChild(this.layersDiv);
return this.div;},
CLASS_NAME:"OpenLayers.Control.MdpLayerSwitcher"});


OpenLayers.Control.MdpPanZoom=OpenLayers.Class(OpenLayers.Control,{
slideFactor:50,
buttons:null,
position:null,
initialize:function(options){
this.position=new OpenLayers.Pixel(OpenLayers.Control.MdpPanZoom.X,
OpenLayers.Control.MdpPanZoom.Y);
OpenLayers.Control.prototype.initialize.apply(this,arguments);},
destroy:function(){
OpenLayers.Control.prototype.destroy.apply(this,arguments);
while(this.buttons.length){
var btn=this.buttons.shift();
btn.map=null;
OpenLayers.Event.stopObservingElement(btn);}
this.buttons=null;
this.position=null;},
draw:function(px){
OpenLayers.Control.prototype.draw.apply(this,arguments);
px=new OpenLayers.Pixel(OpenLayers.Control.MdpPanZoom.X,OpenLayers.Control.MdpPanZoom.Y);
this.buttons=[];
var sz=new OpenLayers.Size(18,18);
var centered=new OpenLayers.Pixel(px.x+sz.w/2,px.y);
this._addButton("panup","north-mini.png",centered,sz);
px.y=centered.y+sz.h;
this._addButton("panleft","west-mini.png",px,sz);
this._addButton("panright","east-mini.png",px.add(sz.w,0),sz);
this._addButton("pandown","south-mini.png",
centered.add(0,sz.h*2),sz);
this._addButton("zoomin","zoom-plus-mini.png",
centered.add(0,sz.h*3+5),sz);
this._addButton("zoomworld","zoom-world-mini.png",
centered.add(0,sz.h*4+5),sz);
this._addButton("zoomout","zoom-minus-mini.png",
centered.add(0,sz.h*5+5),sz);
return this.div;},
_addButton:function(id,img,xy,sz){
var imgLocation=OpenLayers.Util.getImagesLocation()+img;
var btn=OpenLayers.Util.createAlphaImageDiv(
"OpenLayers_Control_MdpPanZoom_"+id,
xy,sz,imgLocation,"absolute");
this.div.appendChild(btn);
OpenLayers.Event.observe(btn,"mousedown",
OpenLayers.Function.bindAsEventListener(this.buttonDown,btn));
OpenLayers.Event.observe(btn,"dblclick",
OpenLayers.Function.bindAsEventListener(this.doubleClick,btn));
OpenLayers.Event.observe(btn,"click",
OpenLayers.Function.bindAsEventListener(this.doubleClick,btn));
btn.action=id;
btn.map=this.map;
btn.slideFactor=this.slideFactor;
this.buttons.push(btn);
return btn;},
doubleClick:function(evt){
OpenLayers.Event.stop(evt);
return false;},
buttonDown:function(evt){
if(!OpenLayers.Event.isLeftClick(evt))return;
switch(this.action){
case "panup":
this.map.pan(0,-50);
break;
case "pandown":
this.map.pan(0,50);
break;
case "panleft":
this.map.pan(-50,0);
break;
case "panright":
this.map.pan(50,0);
break;
case "zoomin":
this.map.zoomIn();
break;
case "zoomout":
this.map.zoomOut();
break;
case "zoomworld":
this.map.zoomToMaxExtent();
break;
default:
break;}
OpenLayers.Event.stop(evt);},
CLASS_NAME:"OpenLayers.Control.MdpPanZoom"});
OpenLayers.Control.MdpPanZoom.X=4;
OpenLayers.Control.MdpPanZoom.Y=4;


OpenLayers.Control.MdpExportRectangle=OpenLayers.Class(OpenLayers.Control,{
widthBorder:2,
color:'#FF7200',
format:'A3',
orientation:'paysage',
left:0,
bottom:0,
scale:1000,
widthPixel:0,
heightPixel:0,
initialize:function(options){
OpenLayers.Control.prototype.initialize.apply(this,arguments);},
destroy:function(){
OpenLayers.Control.prototype.destroy.apply(this,arguments);},
redraw:function(){
if(this.div!=null){
this.div.innerHTML="";}
this.draw();},
draw:function(px){
OpenLayers.Control.prototype.draw.apply(this,arguments);
this.div.className="export_rectangle";
this.div.id="export_rectangle";
this.div.style.border=this.widthBorder+"px solid "+this.color;
return this.div;},
update:function(){
var width;
var height;
if(this.format=='A3'){
if(this.orientation=='portrait'){
width=HEIGHT_A4;
height=WIDTH_A4*2;}
else if(this.orientation=='paysage'){
width=WIDTH_A4*2;
height=HEIGHT_A4;}}
else if(this.format=='A4'){
if(this.orientation=='portrait'){
width=WIDTH_A4;
height=HEIGHT_A4;}
else if(this.orientation=='paysage'){
width=HEIGHT_A4;
height=WIDTH_A4;}}
else return;
height=height-MARGE_PAGE-MARGE_FOOTER;
width=width-2*MARGE_PAGE;
var resolution=this.map.getResolution();
var echelle=this.getScale();
this.widthPixel=width*echelle/(resolution*100);
this.heightPixel=height*echelle/(resolution*100);
if(this.widthPixel>this.map.getSize().w||this.heightPixel>this.map.getSize().h){
gestionnaireExport.activateRecadrage();}
else
gestionnaireExport.desactivateRecadrage();
this.div.style.width=this.widthPixel+"px";
this.div.style.height=this.heightPixel+"px";
this.div.style.left=Math.floor((this.map.getSize().w-this.widthPixel)/2)+"px";
this.div.style.top=Math.floor((this.map.getSize().h-this.heightPixel)/2)+"px";
this.left=Math.floor((this.map.getSize().w-this.widthPixel)/2)+this.widthBorder;
this.bottom=Math.floor((this.map.getSize().h-this.heightPixel)/2+this.heightPixel)+this.widthBorder;
this.redraw();},
setFormat:function(valeur){
this.format=valeur;
this.update();},
setOrientation:function(valeur){
this.orientation=valeur;
this.update();},
setScale:function(valeur){
this.scale=valeur;
this.update();},
getScale:function(){
return this.scale;},
getExportBounds:function(){
var pxleftBottom=new OpenLayers.Pixel(this.left,this.bottom);
var leftBottom=gestionnaireCarte.map.getLonLatFromViewPortPx(pxleftBottom);
var pxRightTop=new OpenLayers.Pixel(this.left+this.widthPixel,this.bottom-this.heightPixel);
var rightTop=gestionnaireCarte.map.getLonLatFromViewPortPx(pxRightTop);
return new OpenLayers.Bounds(leftBottom.lon,leftBottom.lat,rightTop.lon,rightTop.lat);},
displayOn:function(){
$(this.div.id).style.display="block";
this.scale=gestionnaireCarte.currentCarte.echellesExport[0];
this.format='A3';
this.orientation='paysage';},
displayOff:function(){
$(this.div.id).style.display="none";},
displayIsOn:function(){
if($(this.div.id).style.display=="block"||$(this.div.id).style.display==""||$(this.div.id).style.display==null)
return true;
return false;},
CLASS_NAME:"OpenLayers.Control.MdpExportRectangle"});


OpenLayers.Control.MdpPanZoomBar=OpenLayers.Class(OpenLayers.Control.MdpPanZoom,{
zoomStopWidth:18,
zoomStopHeight:11,
slider:null,
sliderEvents:null,
zoomBarDiv:null,
divEvents:null,
initialize:function(){
OpenLayers.Control.MdpPanZoom.prototype.initialize.apply(this,arguments);},
destroy:function(){
this.div.removeChild(this.slider);
this.slider=null;
this.sliderEvents.destroy();
this.sliderEvents=null;
this.div.removeChild(this.zoombarDiv);
this.zoomBarDiv=null;
this.divEvents.destroy();
this.divEvents=null;
this.map.events.unregister("zoomend",this,this.moveZoomBar);
this.map.events.unregister("changebaselayer",this,this.redraw);
OpenLayers.Control.MdpPanZoom.prototype.destroy.apply(this,arguments);},
setMap:function(map){
OpenLayers.Control.MdpPanZoom.prototype.setMap.apply(this,arguments);
this.map.events.register("changebaselayer",this,this.redraw);},
redraw:function(){
if(this.div!=null){
this.div.innerHTML="";}
this.draw();},
draw:function(px){
OpenLayers.Control.prototype.draw.apply(this,arguments);
px=new OpenLayers.Pixel(OpenLayers.Control.MdpPanZoom.X,OpenLayers.Control.MdpPanZoom.Y);
this.buttons=[];
var sz=new OpenLayers.Size(18,18);
var centered=new OpenLayers.Pixel(px.x+sz.w/2,px.y);
this._addButton("panup","north-mini.png",centered,sz);
px.y=centered.y+sz.h;
this._addButton("panleft","west-mini.png",px,sz);
this._addButton("panright","east-mini.png",px.add(sz.w,0),sz);
this._addButton("pandown","south-mini.png",centered.add(0,sz.h*2),sz);
this._addButton("zoomin","zoom-plus-mini.png",centered.add(0,sz.h*3+5),sz);
centered=this._addZoomBar(centered.add(0,sz.h*4+5));
this._addButton("zoomout","zoom-minus-mini.png",centered,sz);
return this.div;},
_addZoomBar:function(centered){
var imgLocation=OpenLayers.Util.getImagesLocation();
var id="OpenLayers_Control_MdpPanZoomBar_Slider"+this.map.id;
var zoomsToEnd=this.map.getNumZoomLevels()-1-this.map.getZoom();
var slider=OpenLayers.Util.createAlphaImageDiv(id,
centered.add(-1,zoomsToEnd*this.zoomStopHeight),
new OpenLayers.Size(20,9),
imgLocation+"slider.png",
"absolute");
this.slider=slider;
this.sliderEvents=new OpenLayers.Events(this,slider,null,true);
this.sliderEvents.register("mousedown",this,this.zoomBarDown);
this.sliderEvents.register("mousemove",this,this.zoomBarDrag);
this.sliderEvents.register("mouseup",this,this.zoomBarUp);
sz=new OpenLayers.Size();
sz.h=this.zoomStopHeight*this.map.getNumZoomLevels();
sz.w=this.zoomStopWidth;
var div=null;
if(OpenLayers.Util.alphaHack()){
var id="OpenLayers_Control_MdpPanZoomBar"+this.map.id;
div=OpenLayers.Util.createAlphaImageDiv(id,centered,
new OpenLayers.Size(sz.w,
this.zoomStopHeight),
imgLocation+"zoombar.png",
"absolute",null,"crop");
div.style.height=sz.h;}else{
div=OpenLayers.Util.createDiv(
'OpenLayers_Control_MdpPanZoomBar_Zoombar'+this.map.id,
centered,
sz,
imgLocation+"zoombar.png");}
this.zoombarDiv=div;
this.divEvents=new OpenLayers.Events(this,div,null,true);
this.divEvents.register("mousedown",this,this.divDown);
this.divEvents.register("mousemove",this,this.passEventToSlider);
this.divEvents.register("click",this,this.divClick);
this.div.appendChild(div);
this.startTop=parseInt(div.style.top);
this.div.appendChild(slider);
this.map.events.register("zoomend",this,this.moveZoomBar);
centered=centered.add(0,
this.zoomStopHeight*this.map.getNumZoomLevels());
return centered;},/**Method:passEventToSlider*This function is used to pass events that happen on the div,or the map,*through to the slider,which then does its moving thing.**Parameters:*evt-{<OpenLayers.Event>}*/
passEventToSlider:function(evt){
this.sliderEvents.handleBrowserEvent(evt);},/**Method:divClick*Picks up on clicks directly on the zoombar div*and sets the zoom level appropriately.*/
divClick:function(evt){
var y=evt.xy.y;
var top=OpenLayers.Util.pagePosition(evt.object)[1];
var levels=Math.floor((y-top)/this.zoomStopHeight);
this.map.zoomTo((this.map.getNumZoomLevels()-1)-levels);
OpenLayers.Event.stop(evt);},
divDown:function(evt){
if(!OpenLayers.Event.isLeftClick(evt))return;
var y=evt.xy.y;
var top=OpenLayers.Util.pagePosition(evt.object)[1];
var levels=Math.floor((y-top)/this.zoomStopHeight);
OpenLayers.Event.stop(evt);},/**Method:zoomBarDown*event listener for clicks on the slider**Parameters:*evt-{<OpenLayers.Event>}*/
zoomBarDown:function(evt){
if(!OpenLayers.Event.isLeftClick(evt))return;
this.map.events.register("mousemove",this,this.passEventToSlider);
this.map.events.register("mouseup",this,this.passEventToSlider);
this.mouseDragStart=evt.xy.clone();
this.zoomStart=evt.xy.clone();
this.div.style.cursor="move";
this.zoombarDiv.offsets=null;
OpenLayers.Event.stop(evt);},/**Method:zoomBarDrag*This is what happens when a click has occurred,and the client is*dragging. Here we must ensure that the slider doesn't go beyond the*bottom/top of the zoombar div, as well as moving the slider to its new* visual location** Parameters:* evt-{<OpenLayers.Event>}*/
zoomBarDrag:function(evt){
if(this.mouseDragStart!=null){
var deltaY=this.mouseDragStart.y-evt.xy.y;
var offsets=OpenLayers.Util.pagePosition(this.zoombarDiv);
if((evt.clientY-offsets[1])>0&&(evt.clientY-offsets[1])<parseInt(this.zoombarDiv.style.height)-2){
var newTop=parseInt(this.slider.style.top)-deltaY;
this.slider.style.top=newTop+"px";}
this.mouseDragStart=evt.xy.clone();
OpenLayers.Event.stop(evt);}},/**Method:zoomBarUp*Perform cleanup when a mouseup event is received--discover new zoom*level and switch to it.**Parameters:*evt-{<OpenLayers.Event>}*/
zoomBarUp:function(evt){
if(!OpenLayers.Event.isLeftClick(evt))return;
if(this.zoomStart){
this.div.style.cursor="";
this.map.events.unregister("mouseup",this,this.passEventToSlider);
this.map.events.unregister("mousemove",this,this.passEventToSlider);
var deltaY=this.zoomStart.y-evt.xy.y;
this.map.zoomTo(this.map.zoom+Math.round(deltaY/this.zoomStopHeight));
this.moveZoomBar();
this.mouseDragStart=null;
OpenLayers.Event.stop(evt);}},/**Method:moveZoomBar*Change the location of the slider to match the current zoom level.*/
moveZoomBar:function(){
var newTop=((this.map.getNumZoomLevels()-1)-this.map.getZoom())*
this.zoomStopHeight+this.startTop+1;
this.slider.style.top=newTop+"px";},
CLASS_NAME:"OpenLayers.Control.MdpPanZoomBar"});


OpenLayers.Handler.MdpPointClick=OpenLayers.Class.create();
OpenLayers.Handler.MdpPointClick.prototype=
OpenLayers.Class.inherit(OpenLayers.Handler,{
lastDown:null,
initialize:function(control,callbacks,options){
OpenLayers.Handler.prototype.initialize.apply(this,arguments);},
mousedown:function(evt){
this.lastDown=evt.xy;
return true;},
click:function(evt){
if((Math.abs(this.lastDown.x-evt.xy.x)+Math.abs(this.lastDown.y-evt.xy.y))<4){
this.callback("clicked",[evt.xy]);
return false;}
return true;},
CLASS_NAME:"OpenLayers.Handler.MdpPointClick"});


function Node(id,pid,name,url,checkbox,checkboxMethode,checked,urlIcone,topNode,disabled){
this.id=id;
this.pid=pid;
this.name=name;
this.url=url;
this.checkbox=checkbox;
this.checkboxMethode=checkboxMethode;
this.checked=checked;
this.urlIcone=urlIcone;
this.topNode=topNode;
this.disabled=disabled;
this._io=false;
this._is=false;
this._ls=false;
this._hc=false;
this._ai=0;
this._p;}
function dTree(objName){
this.config={
target:null,
folderLinks:false,
useSelection:false,
useCookies:false,
useLines:true,
useIcons:false,
useStatusText:true,
closeSameLevel:false,
inOrder:false}
this.icon={
root:'imgTree/base.gif',
folder:'imgTree/folder.gif',
folderOpen:'imgTree/folderopen.gif',
node:'imgTree/page.gif',
empty:'imgTree/empty.gif',
line:'imgTree/line.gif',
join:'imgTree/join.gif',
joinBottom:'imgTree/joinbottom.gif',
plus:'imgTree/plus.gif',
plusBottom:'imgTree/plusbottom.gif',
minus:'imgTree/minus.gif',
minusBottom:'imgTree/minusbottom.gif',
nlPlus:'imgTree/nolines_plus.gif',
nlMinus:'imgTree/nolines_minus.gif'};
this.obj=objName;
this.aNodes=[];
this.aIndent=[];
this.root=new Node(-1);
this.selectedNode=null;
this.selectedFound=false;
this.completed=false;}
dTree.prototype.add=function(id,pid,name,url,checkbox,checkboxMethode,checked,urlIcone,topNode,disabled){
this.aNodes[this.aNodes.length]=new Node(id,pid,name,url,checkbox,checkboxMethode,checked,urlIcone,topNode,disabled);};
dTree.prototype.openAll=function(){
this.oAll(true);};
dTree.prototype.closeAll=function(){
this.oAll(false);};
dTree.prototype.toString=function(){
var str='<div class="dtree">\n';
if(document.getElementById){
if(this.config.useCookies)this.selectedNode=this.getSelected();
str+=this.addNode(this.root);}else str+='Browser not supported.';
str+='</div>';
if(!this.selectedFound)this.selectedNode=null;
this.completed=true;
return str;};
dTree.prototype.addNode=function(pNode){
var str='';
var n=0;
if(this.config.inOrder)n=pNode._ai;
for(n;n<this.aNodes.length;n++){
if(this.aNodes[n].pid==pNode.id){
var cn=this.aNodes[n];
cn._p=pNode;
cn._ai=n;
this.setCS(cn);
if(!cn.target&&this.config.target)cn.target=this.config.target;
if(cn._hc&&!cn._io&&this.config.useCookies)cn._io=this.isOpen(cn.id);
if(!this.config.folderLinks&&cn._hc)cn.url=null;
if(this.config.useSelection&&cn.id==this.selectedNode&&!this.selectedFound){
cn._is=true;
this.selectedNode=n;
this.selectedFound=true;}
str+=this.node(cn,n);
if(cn._ls)break;}}
return str;};
dTree.prototype.node=function(node,nodeId){
var str='<div class="dTreeNode">'+this.indent(node,nodeId);
if(this.config.useIcons){
if(this.root.id==node.pid){
node.icon=this.icon.root;
node.iconOpen=this.icon.root;}
str+='<img id="i'+this.obj+nodeId+'" src="'+((node._io)?node.iconOpen:node.icon)+'" alt="" />';}
if(node.url){
if(node.checkbox!=0){
if(node.checkbox==2){
str+="<input style=\"vertical-align:middle;\"  type='checkbox' id=\"c_" + this.obj + nodeId + "\" onClick=\"" + node.checkboxMethode + ";\" ";}else if(node.checkbox==1){
str+="<INPUT style=\"vertical-align:middle;\" TYPE='RADIO' NAME='radio_"+node.pid+"' onClick=\"" + node.checkboxMethode + ";\" ";}else if(node.checkbox==3){
str+="<INPUT style=\"vertical-align:middle;\" TYPE='RADIO' NAME='radio_unique' onClick=\"" + node.checkboxMethode + ";\" ";}
if(node.checked){
str+=" CHECKED ";}
if(node.disabled){
str+=" DISABLED ";}
str+="/>&nbsp;";
if(node.urlIcone!=null&&node.urlIcone!=""){
str+='<img align="top" src="'+node.urlIcone+'"/>&nbsp;';}}}
else if((!this.config.folderLinks||!node.url)&&node._hc&&node.pid!=this.root.id){
if(node.topNode)
str+='<b><a href="#" onclick="'+this.obj+'.o('+nodeId+'); return false;" class="node" >&nbsp;';
else
str+='<a href="#" onclick="'+this.obj+'.o('+nodeId+'); return false;" class="node">&nbsp;';}
str+=node.name;
if(node.url||((!this.config.folderLinks||!node.url)&&node._hc))str+='</a>';
if(node.topNode)
str+='</b>';
str+='</div>';
if(node._hc){
str+='<div id="d'+this.obj+nodeId+'" class="clip" style="display:'+((this.root.id==node.pid||node._io)?'block':'none')+';">';
str+=this.addNode(node);
str+='</div>';}
this.aIndent.pop();
return str;};
dTree.prototype.indent=function(node,nodeId){
var str='';
if(this.root.id!=node.pid){
for(var n=0;n<this.aIndent.length;n++)
str+='<img src="'+((this.aIndent[n]==1&&this.config.useLines)?this.icon.line:this.icon.empty)+'" alt="" />';(node._ls)?this.aIndent.push(0):this.aIndent.push(1);
if(node._hc){
str+='<a href="#" onclick="'+this.obj+'.o('+nodeId+'); return false;"><img id="j'+this.obj+nodeId+'" src="';
if(!this.config.useLines)str+=(node._io)?this.icon.nlMinus:this.icon.nlPlus;
else str+=((node._io)?((node._ls&&this.config.useLines)?this.icon.minusBottom:this.icon.minus):((node._ls&&this.config.useLines)?this.icon.plusBottom:this.icon.plus));
str+='" alt="" /></a>';}else str+='<img src="'+((this.config.useLines)?((node._ls)?this.icon.joinBottom:this.icon.join):this.icon.empty)+'" alt="" />';}
return str;};
dTree.prototype.setCS=function(node){
var lastId;
for(var n=0;n<this.aNodes.length;n++){
if(this.aNodes[n].pid==node.id)node._hc=true;
if(this.aNodes[n].pid==node.pid)lastId=this.aNodes[n].id;}
if(lastId==node.id)node._ls=true;};
dTree.prototype.getSelected=function(){
var sn=this.getCookie('cs'+this.obj);
return(sn)?sn:null;};
dTree.prototype.s=function(id){
if(!this.config.useSelection)return;
var cn=this.aNodes[id];
if(cn._hc&&!this.config.folderLinks)return;
if(this.selectedNode!=id){
if(this.selectedNode||this.selectedNode==0){
eOld=document.getElementById("s"+this.obj+this.selectedNode);
eOld.className="node";}
eNew=document.getElementById("s"+this.obj+id);
eNew.className="nodeSel";
this.selectedNode=id;
if(this.config.useCookies)this.setCookie('cs'+this.obj,cn.id);}};
dTree.prototype.o=function(id){
var cn=this.aNodes[id];
this.nodeStatus(!cn._io,id,cn._ls);
cn._io=!cn._io;
if(this.config.closeSameLevel)this.closeLevel(cn);
if(this.config.useCookies)this.updateCookie();};
dTree.prototype.oAll=function(status){
for(var n=0;n<this.aNodes.length;n++){
if(this.aNodes[n]._hc&&this.aNodes[n].pid!=this.root.id){
this.nodeStatus(status,n,this.aNodes[n]._ls)
this.aNodes[n]._io=status;}}
if(this.config.useCookies)this.updateCookie();};
dTree.prototype.openTo=function(nId,bSelect,bFirst){
if(!bFirst){
for(var n=0;n<this.aNodes.length;n++){
if(this.aNodes[n].id==nId){
nId=n;
break;}}}
var cn=this.aNodes[nId];
if(cn.pid==this.root.id||!cn._p)return;
cn._io=true;
cn._is=bSelect;
if(this.completed&&cn._hc)this.nodeStatus(true,cn._ai,cn._ls);
if(this.completed&&bSelect)this.s(cn._ai);
else if(bSelect)this._sn=cn._ai;
this.openTo(cn._p._ai,false,true);};
dTree.prototype.openNodes=function(tabIdNode){
for(var i=0;i<tabIdNode.length;i++){
node=this.aNodes[tabIdNode[i]];
this.openNode(node)}};
dTree.prototype.openNode=function(node){
if(node.id!=0){
this.nodeStatus(true,node.id,node._ls);
this.openNode(node._p);}};
dTree.prototype.closeLevel=function(node){
for(var n=0;n<this.aNodes.length;n++){
if(this.aNodes[n].pid==node.pid&&this.aNodes[n].id!=node.id&&this.aNodes[n]._hc){
this.nodeStatus(false,n,this.aNodes[n]._ls);
this.aNodes[n]._io=false;
this.closeAllChildren(this.aNodes[n]);}}};
dTree.prototype.closeAllChildren=function(node){
for(var n=0;n<this.aNodes.length;n++){
if(this.aNodes[n].pid==node.id&&this.aNodes[n]._hc){
if(this.aNodes[n]._io)this.nodeStatus(false,n,this.aNodes[n]._ls);
this.aNodes[n]._io=false;
this.closeAllChildren(this.aNodes[n]);}}};
dTree.prototype.nodeStatus=function(status,id,bottom){
eDiv=document.getElementById('d'+this.obj+id);
eJoin=document.getElementById('j'+this.obj+id);
if(this.config.useIcons){
eIcon=document.getElementById('i'+this.obj+id);
eIcon.src=(status)?this.aNodes[id].iconOpen:this.aNodes[id].icon;}
eJoin.src=(this.config.useLines)?((status)?((bottom)?this.icon.minusBottom:this.icon.minus):((bottom)?this.icon.plusBottom:this.icon.plus)):((status)?this.icon.nlMinus:this.icon.nlPlus);
eDiv.style.display=(status)?'block':'none';};
dTree.prototype.clearCookie=function(){
var now=new Date();
var yesterday=new Date(now.getTime()-1000*60*60*24);
this.setCookie('co'+this.obj,'cookieValue',yesterday);
this.setCookie('cs'+this.obj,'cookieValue',yesterday);};
dTree.prototype.setCookie=function(cookieName,cookieValue,expires,path,domain,secure){
document.cookie=
escape(cookieName)+'='+escape(cookieValue)+(expires?'; expires='+expires.toGMTString():'')+(path?'; path='+path:'')+(domain?'; domain='+domain:'')+(secure?'; secure':'');};
dTree.prototype.getCookie=function(cookieName){
var cookieValue='';
var posName=document.cookie.indexOf(escape(cookieName)+'=');
if(posName!=-1){
var posValue=posName+(escape(cookieName)+'=').length;
var endPos=document.cookie.indexOf(';',posValue);
if(endPos!=-1)cookieValue=unescape(document.cookie.substring(posValue,endPos));
else cookieValue=unescape(document.cookie.substring(posValue));}
return(cookieValue);};
dTree.prototype.updateCookie=function(){
var str='';
for(var n=0;n<this.aNodes.length;n++){
if(this.aNodes[n]._io&&this.aNodes[n].pid!=this.root.id){
if(str)str+='.';
str+=this.aNodes[n].id;}}
this.setCookie('co'+this.obj,str);};
dTree.prototype.isOpen=function(id){
var aOpen=this.getCookie('co'+this.obj).split('.');
for(var n=0;n<aOpen.length;n++)
if(aOpen[n]==id)return true;
return false;};
if(!Array.prototype.push){
Array.prototype.push=function array_push(){
for(var i=0;i<arguments.length;i++)
this[this.length]=arguments[i];
return this.length;}};
if(!Array.prototype.pop){
Array.prototype.pop=function array_pop(){
lastElement=this[this.length-1];
this.length=Math.max(this.length-1,0);
return lastElement;}};

function setActiveStyleSheet(title){
var i,a,main;
for(i=0;(a=document.getElementsByTagName("link")[i]);i++){
if(a.getAttribute("rel").indexOf("style")!=-1&&a.getAttribute("title")){
a.disabled=true;
if(a.getAttribute("title")==title)a.disabled=false;}}}

OpenLayers.Control.ScaleBar=OpenLayers.Class.create();
OpenLayers.Control.ScaleBar.prototype=
OpenLayers.Util.extend(new OpenLayers.Control(),{
id:"ScaleBar",
element:null,
scaleDenominator:1,
displaySystem:'metric',
minWidth:100,
maxWidth:200,
divisions:2,
subdivisions:2,
showMinorMeasures:false,
abbreviateLabel:false,
singleLine:false,
align:'center',
measurementProperties:{
english:{
units:['miles','feet','inches'],
abbr:['mi','ft','in'],
inches:[63360,12,1]},
metric:{
units:['mètres','centimètres'],
abbr:['m','cm'],
inches:[39.370079,0.393701]}},
initialize:function(options){
OpenLayers.Control.prototype.initialize.apply(this,[options]);
this.element=document.createElement('div');
this.element.className='olScaleBarWrapper';
this.labelContainer=document.createElement('div');
this.labelContainer.className='sbUnitsContainer';
this.labelContainer.style.position='absolute';
this.graphicsContainer=document.createElement('div');
this.graphicsContainer.style.position='absolute';
this.graphicsContainer.className='sbGraphicsContainer';
this.numbersContainer=document.createElement('div');
this.numbersContainer.style.position='absolute';
this.numbersContainer.className='sbNumbersContainer';
var classArray=['olScaleBarMarkerMajor','olScaleBarMarkerMinor','olScaleBarBar','olScaleBarBarAlt',
'olScaleBarNumbersBox','olScaleBarLabelBox','olScaleBarLabelBoxSingleLine'];
for(classIndex=0;classIndex<classArray.length;++classIndex){
var anElement=document.createElement('div');
anElement.className=classArray[classIndex];
this.graphicsContainer.appendChild(anElement);}},
draw:function(){
OpenLayers.Control.prototype.draw.apply(this,arguments);
this.xOffsetMarkerMajor=(this.styleValue('.olScaleBarMarkerMajor','borderLeftWidth')+
this.styleValue('.olScaleBarMarkerMajor','width')+
this.styleValue('.olScaleBarMarkerMajor','borderRightWidth'))/2;
this.xOffsetMarkerMinor=(this.styleValue('.olScaleBarMarkerMinor','borderLeftWidth')+
this.styleValue('.olScaleBarMarkerMinor','width')+
this.styleValue('.olScaleBarMarkerMinor','borderRightWidth'))/2;
this.xOffsetBar=(this.styleValue('.olScaleBarBar','borderLeftWidth')+
this.styleValue('.olScaleBarBar','borderRightWidth'))/2;
this.xOffsetBarAlt=(this.styleValue('.olScaleBarBarAlt','borderLeftWidth')+
this.styleValue('.olScaleBarBarAlt','borderRightWidth'))/2;
this.xOffsetNumbersBox=(this.styleValue('.olScaleBarNumbersBox','width'))/2;
if(!document.styleSheets){
this.xOffsetMarkerMajor=0.5;
this.xOffsetMarkerMinor=0.5;}
var classNames=['.olScaleBarBar','.olScaleBarBarAlt','.olScaleBarMarkerMajor','.olScaleBarMarkerMinor'];
if(this.singleLine){
classNames.push('.olScaleBarLabelBoxSingleLine');}
else{
classNames.push('.olScaleBarNumbersBox','.olScaleBarLabelBox');}
var vertDisp=0;
for(classIndex=0;classIndex<classNames.length;++classIndex){
var aClassName=classNames[classIndex];
vertDisp=Math.max(vertDisp,this.styleValue(aClassName,'top')+
this.styleValue(aClassName,'height'));}
this.element.style.height=vertDisp+'px';
this.xOffsetSingleLine=this.styleValue('.olScaleBarLabelBoxSingleLine','width')+
this.styleValue('.olScaleBarLabelBoxSingleLine','left');
this.div=this.element;
this.map.events.register('moveend',this,this.update);
this.update();
return this.div;},
update:function(){
if(this.map.baseLayer==null||!this.map.getResolution()){
return;}
this.scaleDenominator=this.map.baseLayer.getResolution()*OpenLayers.INCHES_PER_UNIT[this.map.baseLayer.units]*OpenLayers.DOTS_PER_INCH;
this.element.title='scale 1:'+this.formatNumber(this.scaleDenominator);
this.element.style.width=this.maxWidth+'px';
var comparisonArray=new Array();
for(var unitIndex=0;unitIndex<this.measurementProperties[this.displaySystem].units.length;++unitIndex){
comparisonArray[unitIndex]=new Object();
var pixelsPerDisplayUnit=OpenLayers.DOTS_PER_INCH*
this.measurementProperties[this.displaySystem].inches[unitIndex]/
this.scaleDenominator;
var minSDDisplayLength=((this.minWidth-this.xOffsetNumbersBox)/
pixelsPerDisplayUnit)/(this.divisions*this.subdivisions);
var maxSDDisplayLength=((this.maxWidth-this.xOffsetNumbersBox)/
pixelsPerDisplayUnit)/(this.divisions*this.subdivisions);
for(var valueIndex=0;valueIndex<(this.divisions*this.subdivisions);++valueIndex){
var minNumber=minSDDisplayLength*(valueIndex+1);
var maxNumber=maxSDDisplayLength*(valueIndex+1);
var niceNumber=new OpenLayers.Control.ScaleBar.HandsomeNumber(minNumber,maxNumber);
comparisonArray[unitIndex][valueIndex]={
value:(niceNumber.value/(valueIndex+1)),
score:0,
tieBreaker:0,
numDec:0,
displayed:0};
for(var valueIndex2=0;valueIndex2<(this.divisions*this.subdivisions);++valueIndex2){
displayedValuePosition=niceNumber.value*(valueIndex2+1)/(valueIndex+1);
niceNumber2=new OpenLayers.Control.ScaleBar.HandsomeNumber(displayedValuePosition,displayedValuePosition);
var isMajorMeasurement=((valueIndex2+1)%this.subdivisions==0);
var isLastMeasurement=((valueIndex2+1)==(this.divisions*
this.subdivisions));
if((this.singleLine&&isLastMeasurement)||(!this.singleLine&&(isMajorMeasurement||this.showMinorMeasures))){
comparisonArray[unitIndex][valueIndex].score+=niceNumber2.score;
comparisonArray[unitIndex][valueIndex].tieBreaker+=niceNumber2.tieBreaker;
comparisonArray[unitIndex][valueIndex].numDec=Math.max(comparisonArray[unitIndex][valueIndex].numDec,niceNumber2.numDec);
comparisonArray[unitIndex][valueIndex].displayed+=1;}
else{
comparisonArray[unitIndex][valueIndex].score+=niceNumber2.score/this.subdivisions;
comparisonArray[unitIndex][valueIndex].tieBreaker+=niceNumber2.tieBreaker/this.subdivisions;}}
var scoreAdjustment=(unitIndex+1)*
comparisonArray[unitIndex][valueIndex].tieBreaker/
comparisonArray[unitIndex][valueIndex].displayed;
comparisonArray[unitIndex][valueIndex].score*=scoreAdjustment;}}
var subdivisionDisplayLength=null;
var displayUnits=null;
var displayUnitsAbbr=null;
var subdivisionPixelLength=null;
var bestScore=Number.POSITIVE_INFINITY;
var bestTieBreaker=Number.POSITIVE_INFINITY;
var numDec=0;
for(var unitIndex=0;unitIndex<comparisonArray.length;++unitIndex){
for(valueIndex in comparisonArray[unitIndex]){
if((comparisonArray[unitIndex][valueIndex].score<bestScore)||((comparisonArray[unitIndex][valueIndex].score==bestScore)&&(comparisonArray[unitIndex][valueIndex].tieBreaker<bestTieBreaker))){
bestScore=comparisonArray[unitIndex][valueIndex].score;
bestTieBreaker=comparisonArray[unitIndex][valueIndex].tieBreaker;
subdivisionDisplayLength=comparisonArray[unitIndex][valueIndex].value;
numDec=comparisonArray[unitIndex][valueIndex].numDec;
displayUnits=this.measurementProperties[this.displaySystem].units[unitIndex];
displayUnitsAbbr=this.measurementProperties[this.displaySystem].abbr[unitIndex];
pixelsPerDisplayUnit=OpenLayers.DOTS_PER_INCH*
this.measurementProperties[this.displaySystem].inches[unitIndex]/
this.scaleDenominator;
subdivisionPixelLength=pixelsPerDisplayUnit*subdivisionDisplayLength;}}}
while(this.labelContainer.hasChildNodes()){
this.labelContainer.removeChild(this.labelContainer.firstChild);}
while(this.graphicsContainer.hasChildNodes()){
this.graphicsContainer.removeChild(this.graphicsContainer.firstChild);}
while(this.numbersContainer.hasChildNodes()){
this.numbersContainer.removeChild(this.numbersContainer.firstChild);}
var aMarker,aBarPiece,numbersBox,xOffset;
var alignmentOffset={
left:0+(this.singleLine?0:this.xOffsetNumbersBox),
center:(this.maxWidth/2)-(this.divisions*this.subdivisions*
subdivisionPixelLength/ 2)-(this.singleLine? this.xOffsetSingleLine/ 2:0),
right:this.maxWidth-(this.divisions*this.subdivisions*
subdivisionPixelLength)-(this.singleLine?this.xOffsetSingleLine:this.xOffsetNumbersBox)};
var xPosition=0+alignmentOffset[this.align];
var markerMeasure=0;
for(var divisionIndex=0;divisionIndex<this.divisions;++divisionIndex){
xPosition=divisionIndex*this.subdivisions*subdivisionPixelLength;
xPosition+=alignmentOffset[this.align];
markerMeasure=(divisionIndex==0)?
0:((divisionIndex*this.subdivisions)*
subdivisionDisplayLength).toFixed(numDec);
aMarker=document.createElement('div');
aMarker.className='olScaleBarMarkerMajor';
aMarker.style.position='absolute';
aMarker.style.overflow='hidden';
aMarker.style.left=Math.round(xPosition-this.xOffsetMarkerMajor)+'px';
aMarker.appendChild(document.createTextNode(' '));
this.graphicsContainer.appendChild(aMarker);
if(!this.singleLine){
numbersBox=document.createElement('div');
numbersBox.className='olScaleBarNumbersBox';
numbersBox.style.position='absolute';
numbersBox.style.overflow='hidden';
numbersBox.style.textAlign='center';
if(this.showMinorMeasures){
numbersBox.style.left=Math.round(xPosition-this.xOffsetNumbersBox)+'px';}
else{
numbersBox.style.left=Math.round(xPosition-this.xOffsetNumbersBox)+'px';}
numbersBox.appendChild(document.createTextNode(markerMeasure));
this.numbersContainer.appendChild(numbersBox);}
for(var subdivisionIndex=0;subdivisionIndex<this.subdivisions;++subdivisionIndex){
aBarPiece=document.createElement('div');
aBarPiece.style.position='absolute';
aBarPiece.style.overflow='hidden';
aBarPiece.style.width=Math.round(subdivisionPixelLength)+'px';
if((subdivisionIndex%2)==0){
aBarPiece.className='olScaleBarBar';
aBarPiece.style.left=Math.round(xPosition-this.xOffsetBar)+'px';}
else{
aBarPiece.className='olScaleBarBarAlt';
aBarPiece.style.left=Math.round(xPosition-this.xOffsetBarAlt)+'px';}
aBarPiece.appendChild(document.createTextNode(' '));
this.graphicsContainer.appendChild(aBarPiece);
if(subdivisionIndex<(this.subdivisions-1)){
xPosition=((divisionIndex*this.subdivisions)+(subdivisionIndex+1))*subdivisionPixelLength;
xPosition+=alignmentOffset[this.align];
markerMeasure=(divisionIndex*this.subdivisions+
subdivisionIndex+1)*subdivisionDisplayLength;
aMarker=document.createElement('div');
aMarker.className='olScaleBarMarkerMinor';
aMarker.style.position='absolute';
aMarker.style.overflow='hidden';
aMarker.style.left=Math.round(xPosition-this.xOffsetMarkerMinor)+'px';
aMarker.appendChild(document.createTextNode(' '));
this.graphicsContainer.appendChild(aMarker);
if(this.showMinorMeasures&&!this.singleLine){
numbersBox=document.createElement('div');
numbersBox.className='olScaleBarNumbersBox';
numbersBox.style.position='absolute';
numbersBox.style.overflow='hidden';
numbersBox.style.textAlign='center';
numbersBox.style.left=Math.round(xPosition-this.xOffsetNumbersBox)+'px';
numbersBox.appendChild(document.createTextNode(markerMeasure));
this.numbersContainer.appendChild(numbersBox);}}}}
xPosition=(this.divisions*this.subdivisions)*subdivisionPixelLength;
xPosition+=alignmentOffset[this.align];
markerMeasure=((this.divisions*this.subdivisions)*
subdivisionDisplayLength).toFixed(numDec);
aMarker=document.createElement('div');
aMarker.className='olScaleBarMarkerMajor';
aMarker.style.position='absolute';
aMarker.style.overflow='hidden';
aMarker.style.left=Math.round(xPosition-this.xOffsetMarkerMajor)+'px';
aMarker.appendChild(document.createTextNode(' '));
this.graphicsContainer.appendChild(aMarker);
if(!this.singleLine){
numbersBox=document.createElement('div');
numbersBox.className='olScaleBarNumbersBox';
numbersBox.style.position='absolute';
numbersBox.style.overflow='hidden';
numbersBox.style.textAlign='center';
if(this.showMinorMeasures){
numbersBox.style.left=Math.round(xPosition-
this.xOffsetNumbersBox)+'px';}
else{
numbersBox.style.left=Math.round(xPosition-
this.xOffsetNumbersBox)+'px';}
numbersBox.appendChild(document.createTextNode(markerMeasure));
this.numbersContainer.appendChild(numbersBox);}
var labelBox=document.createElement('div');
labelBox.style.position='absolute';
var labelText;
if(this.singleLine){
labelText=markerMeasure;
labelBox.className='olScaleBarLabelBoxSingleLine';
labelBox.style.left=(xPosition+
this.styleValue('.olScaleBarLabelBoxSingleLine','left'))+'px';}
else{
labelText='';
labelBox.className='olScaleBarLabelBox';
labelBox.style.textAlign='center';
labelBox.style.width=Math.round(this.divisions*this.subdivisions*
subdivisionPixelLength)+'px';
labelBox.style.overflow='hidden';}
if(this.abbreviateLabel){
labelText+=' '+displayUnitsAbbr;}
else{
labelText+=' '+displayUnits;}
labelBox.appendChild(document.createTextNode(labelText));
this.labelContainer.appendChild(labelBox);
if(!document.styleSheets){
var defaultStyle=document.createElement('style');
defaultStyle.type='text/css';
var styleText='.olScaleBarBar {top: 12px; background: #666666; height: 1px; border: 0;}';
styleText+='.olScaleBarBarAlt {top: 12px; background: #666666; height: 1px; border: 0;}';
styleText+='.olScaleBarMarkerMajor {top: 12px; height: 7px; width: 1px; background: #666666; border: 0;}';
styleText+='.olScaleBarMarkerMinor {top: 12px; height: 5px; width: 1px; background: #666666; border: 0;}';
styleText+='.olScaleBarLabelBox {top: -5px; height: 15px; font-size: 13px; color: #333333; font-variant: small-caps;}';
styleText+='.olScaleBarNumbersBox {top: 19px; font-size: 11px; width: 40px; height: 15px; color: #333333;}';
defaultStyle.appendChild(document.createTextNode(styleText));
document.getElementsByTagName('head').item(0).appendChild(defaultStyle);}
this.element.appendChild(this.graphicsContainer);
this.element.appendChild(this.labelContainer);
this.element.appendChild(this.numbersContainer);},
styleValue:function(aSelector,styleKey){
var aValue=0;
if(document.styleSheets){
for(var sheetIndex=document.styleSheets.length-2;sheetIndex>=0;--sheetIndex){
var aSheet=document.styleSheets[sheetIndex];
if(!aSheet.disabled){
var allRules;
if(typeof(aSheet.cssRules)=='undefined'){
if(typeof(aSheet.rules)=='undefined'){
return 0;}
else{
allRules=aSheet.rules;}}
else{
allRules=aSheet.cssRules;}
for(var ruleIndex=0;ruleIndex<allRules.length;++ruleIndex){
var aRule=allRules[ruleIndex];
if(aRule.selectorText&&(aRule.selectorText.toLowerCase()==aSelector.toLowerCase())){
if(aRule.style[styleKey]!=''){
aValue=parseInt(aRule.style[styleKey]);}}}}}}
return aValue?aValue:0;},
formatNumber:function(aNumber,numDecimals){
numDecimals=(numDecimals)?numDecimals:0;
var formattedInteger=''+Math.round(aNumber);
var thousandsPattern=/(-?[0-9]+)([0-9]{3})/;
while(thousandsPattern.test(formattedInteger)){
formattedInteger=formattedInteger.replace(thousandsPattern,'$1,$2');}
if(numDecimals>0){
var formattedDecimal=Math.floor(Math.pow(10,numDecimals)*(aNumber-Math.round(aNumber)));
if(formattedDecimal==0){
return formattedInteger;}
else{
return formattedInteger+'.'+formattedDecimal;}}
else{
return formattedInteger;}},
CLASS_NAME:"OpenLayers.Control.ScaleBar"});
OpenLayers.Control.ScaleBar.HandsomeNumber=OpenLayers.Class.create();
OpenLayers.Control.ScaleBar.HandsomeNumber.prototype={
initialize:function(smallUglyNumber,bigUglyNumber,sigFigs){
sigFigs=(sigFigs==null)?10:sigFigs;
var bestScore=Number.POSITIVE_INFINITY;
var bestTieBreaker=Number.POSITIVE_INFINITY;
var handsomeValue=smallUglyNumber;
var handsomeNumDec=3;
for(var halvingExp=0;halvingExp<3;++halvingExp){
var comelyMultiplicand=Math.pow(2,(-1*halvingExp));
var maxTensExp=Math.floor(Math.log(bigUglyNumber/
comelyMultiplicand)/Math.LN10);
for(var tensExp=maxTensExp;
tensExp>(maxTensExp-sigFigs+1);--tensExp){
var numDec=Math.max(halvingExp-tensExp,0);
var testMultiplicand=comelyMultiplicand*
Math.pow(10,tensExp);
if((testMultiplicand*Math.floor(bigUglyNumber/
testMultiplicand))>=smallUglyNumber){
if(smallUglyNumber%testMultiplicand==0){
var testMultiplier=smallUglyNumber/testMultiplicand;}
else{
var testMultiplier=Math.floor(smallUglyNumber/
testMultiplicand)+1;}
var testScore=testMultiplier+(2*halvingExp);
var testTieBreaker=(tensExp<0)?(Math.abs(tensExp)+1):tensExp;
if((testScore<bestScore)||((testScore==bestScore)&&(testTieBreaker<bestTieBreaker))){
bestScore=testScore;
bestTieBreaker=testTieBreaker;
handsomeValue=(testMultiplicand*
testMultiplier).toFixed(numDec);
handsomeNumDec=numDec;}}}}
this.value=handsomeValue;
this.score=bestScore;
this.tieBreaker=bestTieBreaker;
this.numDec=handsomeNumDec;}};
OpenLayers.Control.ScaleBar.HandsomeNumber.prototype.toString=function(){
return this.value.toString();};
OpenLayers.Control.ScaleBar.HandsomeNumber.prototype.valueOf=function(){
return this.value;};


OpenLayers.Control.MdpCopyright=OpenLayers.Class(OpenLayers.Control,{
initialize:function(options){
OpenLayers.Control.prototype.initialize.apply(this,arguments);},
destroy:function(){
OpenLayers.Control.prototype.destroy.apply(this,arguments);},
draw:function(px){
OpenLayers.Control.prototype.draw.apply(this,arguments);
this.div.className="copyright";
this.div.id="copyright";
return this.div;},
CLASS_NAME:"OpenLayers.Control.MdpCopyright"});


OpenLayers.Control.MasqueCarte=OpenLayers.Class(OpenLayers.Control,{
initialize:function(options){
OpenLayers.Control.prototype.initialize.apply(this,arguments);},
destroy:function(){
OpenLayers.Control.prototype.destroy.apply(this,arguments);},
draw:function(px){
OpenLayers.Control.prototype.draw.apply(this,arguments);
this.div.className="masqueCarte";
this.div.id="masqueCarte";
return this.div;},
CLASS_NAME:"OpenLayers.Control.MdpCopyright"});


function finGenerePdf(url){
gestionnaireExport.setPdfUrl(url);
gestionnaireExport.showPdfUrl();}
GestionnaireExport=function(){
this.fileUrl="";
this.pdfUrl="";
this.lastRequest=[];
this.setFormat=function(formulaire){
if(formulaire.checked)
gestionnaireCarte.exportRectangle.setFormat(formulaire.value);}
this.setOrientation=function(formulaire){
if(formulaire.checked)
gestionnaireCarte.exportRectangle.setOrientation(formulaire.value);}
this.setScale=function(formulaire){
gestionnaireCarte.exportRectangle.setScale(formulaire.options[formulaire.selectedIndex].value);}
this.checkSubmit=function(form){
if((gestionnaireCarte.currentCarte.licence==""||gestionnaireCarte.currentCarte.licence==null)||
$('licenseUtilisation').checked==true){
$('generateInfo').innerHTML="<img src='images/loading.gif' />";
this.generatePdfFile();}
else{
alert('Vous devez accepter les termes de la Licence d\'exploitation.');}
return false;}
this.generatePdfFile=function(){
var mapId=gestionnaireCarte.currentCarte.carteId;
var exportBounds=gestionnaireCarte.exportRectangle.getExportBounds().toArray();
var x=exportBounds[0];
var y=exportBounds[1];
var scale=gestionnaireCarte.exportRectangle.getScale();
var format="";
var orientation="";
var elements=document.getElementsByName('choixFormatExport');
for(var i=0;i<elements.length;i++){
if(elements[i].checked){
format=elements[i].value;
break;}}
var elements=document.getElementsByName('miseEnPage');
for(var i=0;i<elements.length;i++){
if(elements[i].checked){
orientation=elements[i].value;
break;}}
if(this.pdfUrl!=null&&this.isSameRequest(mapId,x,y,scale,format,orientation,finGenerePdf)){
this.showPdfUrl(true);}
else{
ExportAjax.generePdf(mapId,x,y,scale,format,orientation,finGenerePdf);
this.saveRequest(mapId,x,y,scale,format,orientation,finGenerePdf);}
traceAccess("action","export_pdf");}
this.licenceWindows=function(){
window.open(gestionnaireCarte.currentCarte.licence);}
this.setPdfUrl=function(url){
this.pdfUrl=url;}
this.showPdfUrl=function(isSame){
if(this.pdfUrl==""||this.pdfUrl==null){
$('generateInfo').innerHTML="Problème lors de la génération du pdf.";
this.showFailure();}
else{
$('generateInfo').innerHTML="<a target='_blank' href='"+this.pdfUrl+"'>Télécharger le fichier d'export</a>";
if(isSame){
this.showSuccess();}
else{
this.showSame();}}
if(this.fenetreExportExiste()){
YAHOO.mdp.fenetreExport.fenetre.show();}else{
new FenetreExport();}}
this.activateRecadrage=function(){
$('exportRecadrage').style.display="block";}
this.desactivateRecadrage=function(){
$('exportRecadrage').style.display="none";}
this.recadrer=function(){
gestionnaireCarte.map.zoomTo(gestionnaireCarte.map.getZoomForExtent(gestionnaireCarte.exportRectangle.getExportBounds())-1);}
this.saveRequest=function(mapId,x,y,scale,format,orientation,finGenerePdf){
this.lastRequest[0]=mapId;
this.lastRequest[1]=x;
this.lastRequest[2]=y;
this.lastRequest[3]=scale;
this.lastRequest[4]=format;
this.lastRequest[5]=orientation;
this.lastRequest[6]=finGenerePdf;}
this.isSameRequest=function(mapId,x,y,scale,format,orientation,finGenerePdf){
if(this.lastRequest.length!=0&&
this.lastRequest[0]==mapId&&
this.lastRequest[1]==x&&
this.lastRequest[2]==y&&
this.lastRequest[3]==scale&&
this.lastRequest[4]==format&&
this.lastRequest[5]==orientation&&
this.lastRequest[6]==finGenerePdf){
return true;}
return false;}
this.fenetreExportExiste=function(){
return(YAHOO!=null&&YAHOO.mdp!=null&&YAHOO.mdp.fenetreExport!=null&&YAHOO.mdp.fenetreExport.fenetre!=null);};
this.showSuccess=function(){
document.getElementById("fenetreVolanteExport").style.display="block";
document.getElementById("LienExportSuccess").href=this.pdfUrl;
document.getElementById("ExportSuccess").style.display="block";
document.getElementById("ExportFailure").style.display="none";
document.getElementById("ExportSame").style.display="none";}
this.showFailure=function(){
document.getElementById("fenetreVolanteExport").style.display="block";
document.getElementById("ExportSuccess").style.display="none";
document.getElementById("ExportFailure").style.display="block";
document.getElementById("ExportSame").style.display="none";}
this.showSame=function(){
document.getElementById("fenetreVolanteExport").style.display="block";
document.getElementById("LienExportSame").href=this.pdfUrl;
document.getElementById("ExportSuccess").style.display="none";
document.getElementById("ExportFailure").style.display="none";
document.getElementById("ExportSame").style.display="block";}}

function switchFondPlan(id){
parent.gestionnaireOnglets.gestionOngletThematique(id);}

GestionnaireMail=function(){
this.init=function(){};
this.redigerMail=function(){
gestionnairePopup.suppressionAncienPopup();
document.getElementById("fenetreVolanteMail").style.display="block";
if(this.fenetreMailExiste()){
YAHOO.mdp.fenetreMail.fenetre.show();}else{
new FenetreMail();}};
this.fenetreMailExiste=function(){
return(YAHOO!=null&&YAHOO.mdp!=null&&YAHOO.mdp.fenetreMail!=null&&YAHOO.mdp.fenetreMail.fenetre!=null);};
this.envoyerMail=function(){
mapUrl=gestionnaireUrl.getUrl();
authorMail=document.getElementById("envoiMailAuthorMail").value;
authorName=document.getElementById("envoiMailAuthorName").value;
destMail=document.getElementById("envoiMailDestMail").value;
message=document.getElementById("envoiMailMessage").value;
if((mapUrl=="")||(authorMail=="")||(authorName=="")||(destMail=="")||(message=="")){
alert("Veuillez completer tous les champs");
return;}
MailAjax.sendMail(mapUrl,authorMail,authorName,destMail,message,callbackSendMail);}};
function callbackSendMail(bean){
var element=document.getElementById("reponseEnvoiMail");
if(!element)
return;
if(bean==true){
element.className="success";
element.innerHTML="Le mail a bien été envoyé";}
else if(bean==false){
element.className="error";
element.innerHTML="Un problème est survenu lors de l'envoi de l'email";}
else{
element.className="error";
element.innerHTML=bean;}
element.style.display="block";}


function GestionnaireBandeau(){
this.init=function(){
var img=document.getElementById("logoBandeau");
if(img){
var mairie=BEAN_URL.mairie;
if(!isEmptyStr(mairie)&&mairie>0&&mairie<21){
img.innerHTML="<a href='http://www.mairie"+mairie+".paris.fr' class='logoTop'><img src='./contenu/bandeau_Mairies/mairie_"+mairie+".gif' alt='mairie' /></a>";}
else{
img.innerHTML="<a href='http://www.paris.fr' class='logoTop'><img src='./images/bandeau_signature.gif' alt='bandeau signature'></a>";}}};}
