/**
  * Affiche le detail de l'adresse avec le listing des événements associés
  *
  * @param unknown $idAdresse : Id de l'adresse a afficher
  *
  * @return HTML du contenu principal de la page
  */
 public function afficherDetailAdresse($idAdresse, $idEvenementGroupeAdresse)
 {
     /*
      * Etape :
      * Afficher la google map
      * Afficher le sommaire des evenements
      * Récupérer la liste des evenements et les afficher un par un
      *
      */
     //Template loading
     $this->messages->display();
     $t = new Template('modules/archi/templates/evenement');
     $t->set_filenames(array('index' => 'index.tpl'));
     $title = $this->displayTitle();
     //Init auth var to check furtherly user state (connected or not)
     $authentification = new archiAuthentification();
     //Setting idAdresse
     if (isset($idAdresse) && $idAdresse != '') {
         //Setting idEvenementGroupeAdresse
         if (isset($idEvenementGroupeAdresse) != 1 || $idEvenementGroupeAdresse == '') {
             $requete = "SELECT idEvenement FROM _adresseEvenement WHERE idAdresse = " . $idAdresse;
             $result = $this->connexionBdd->requete($requete);
             $fetch = mysql_fetch_assoc($result);
             $oldIdEvt = $idEvenementGroupeAdresse;
             $idEvenementGroupeAdresse = $fetch['idEvenement'];
         }
     }
     //Getting coordo for the current address
     $requete = "SELECT latitude , longitude FROM historiqueAdresse WHERE idAdresse = " . $idAdresse;
     $result = $this->connexionBdd->requete($requete);
     $fetch = mysql_fetch_assoc($result);
     $coordonnees['longitude'] = $fetch['longitude'];
     $coordonnees['latitude'] = $fetch['latitude'];
     //Displaying google map
     $e = new archiEvenement();
     //Should be moved to archiUtils
     $calqueGoogleMap = new calqueObject(array('idPopup' => 10));
     $contenuIFramePopup = $e->getContenuIFramePopupGoogleMap(array('idAdresseCourante' => $idAdresse, 'calqueObject' => $calqueGoogleMap, 'idEvenementGroupeAdresseCourant' => $idEvenementGroupeAdresse));
     $t->assign_block_vars('CarteGoogle', array('src' => $this->creerUrl('', 'afficheGoogleMapIframe', array('noHeaderNoFooter' => 1, 'longitude' => $coordonnees['longitude'], 'latitude' => $coordonnees['latitude'], 'archiIdAdresse' => $idAdresse, 'archiIdEvenementGroupeAdresse' => $idEvenementGroupeAdresse)), 'lienVoirCarteGrand' => "<a href='#' onclick=\"" . $calqueGoogleMap->getJsOpenPopupNoDraggableWithBackgroundOpacity() . "document.getElementById('iFrameDivPopupGM').src='" . $this->creerUrl('', 'afficheGoogleMapIframe', array('longitude' => $coordonnees['longitude'], 'latitude' => $coordonnees['latitude'], 'noHeaderNoFooter' => true, 'archiIdAdresse' => $idAdresse, 'archiIdEvenementGroupeAdresse' => $idEvenementGroupeAdresse, 'modeAffichage' => 'popupDetailAdresse')) . "';\" class='bigger' style='font-size:11px;'>" . _("Voir la carte en + grand") . "</a>", 'popupGoogleMap' => $calqueGoogleMap->getDivNoDraggableWithBackgroundOpacity(array('top' => 20, 'lienSrcIFrame' => '', 'contenu' => $contenuIFramePopup))));
     //Getting neighborhood addresses
     $arrayEncartAdresses = $this->getArrayEncartAdressesImmeublesAvantApres(array('idEvenementGroupeAdresse' => $idEvenementGroupeAdresse));
     $urlAutreBiens = $this->getArrayRetourLiensVoirBatiments($idAdresse);
     $t->assign_block_vars('listeAdressesVoisines', array('content' => $arrayEncartAdresses['html'], 'urlAutresBiensRue' => $urlAutreBiens['urlAutresBiensRue'], 'urlAutresBiensQuartier' => $urlAutreBiens['urlAutresBiensQuartier']));
     $t->assign_block_vars('sommaireEvenements', array());
     //Preparing the loop on all related event to the current address
     $requeteIdEvenements = "\n\t\t\t\tSELECT DISTINCT ee.idEvenementAssocie as idEvenement\n\t\t\t\tFROM _evenementEvenement ee\n\t\t\t\tLEFT JOIN positionsEvenements pe on pe.idEvenement = ee.idEvenementAssocie\n\t\t\t\tWHERE ee.idEvenement = {$idEvenementGroupeAdresse}\n\t\t\t\tORDER BY IF(pe.position IS NULL,0, pe.position) ASC\n\t\t\t\t";
     $resultIdEvenements = $this->connexionBdd->requete($requeteIdEvenements);
     //Add actions buttons
     //Ajouter sous evenement
     $t->assign_block_vars('actionsSommaire', array('urlAction' => $this->creerUrl('', 'ajouterSousEvenement', array('idAdresse' => $idAdresse, 'archiIdEvenement' => $idEvenementGroupeAdresse)), 'labelAction' => 'Ajouter un événement'));
     // Selection des images
     // Copy/paste code from old function
     $afficheSelectionImages = 1;
     if ($authentification->estConnecte() && isset($this->variablesGet['afficheSelectionImage']) && $this->variablesGet['afficheSelectionImage'] == '1') {
         $afficheSelectionImages = 0;
     }
     if ($authentification->estConnecte()) {
         if ($authentification->estAdmin()) {
             $t->assign_block_vars('actionsSommaire', array('urlAction' => $this->creerUrl('', 'evenement', array('idEvenement' => $idEvenementGroupeAdresse, 'archiIdAdresse' => $idAdresse, 'afficheSelectionImage' => $afficheSelectionImages)), 'labelAction' => 'Sélectionner des images'));
         }
     }
     // Selection de l'image principale
     $afficheSelectionImagePrincipale = 1;
     /*
     if ($authentification->estConnecte () && isset ( $this->variablesGet ['afficheSelectionImagePrincipale'] ) && $this->variablesGet ['afficheSelectionImagePrincipale'] == '1') {
     	$afficheSelectionImagePrincipale = 0;
     }
     */
     if ($authentification->estConnecte()) {
         if ($authentification->estAdmin()) {
             $t->assign_block_vars('actionsSommaire', array('urlAction' => $this->creerUrl('', 'evenement', array('idEvenement' => $idEvenementGroupeAdresse, 'archiIdAdresse' => $idAdresse, 'afficheSelectionImagePrincipale' => $afficheSelectionImagePrincipale)), 'labelAction' => 'Sélectionner l\'image principale'));
         }
     }
     // Selection du titre
     $afficheSelectionTitre = 1;
     /*
     if ($authentification->estConnecte () && isset ( $this->variablesGet ['afficheSelectionTitre'] ) && $this->variablesGet ['afficheSelectionTitre'] == '1') {
     	$afficheSelectionTitre = 0;
     }
     */
     if ($authentification->estConnecte()) {
         if ($authentification->estAdmin()) {
             $t->assign_block_vars('actionsSommaire', array('urlAction' => $this->creerUrl('', 'evenement', array('idEvenement' => $idEvenementGroupeAdresse, 'archiIdAdresse' => $idAdresse, 'afficheSelectionTitre' => $afficheSelectionTitre)), 'labelAction' => 'Sélectionner un titre'));
         }
     }
     // Repositionner les evenements
     $affichePositionnementEvenements = 1;
     if ($authentification->estConnecte() && isset($this->variablesGet['affichePositionnementEvenements']) && $this->variablesGet['affichePositionnementEvenements'] == '1') {
         $affichePositionnementEvenements = 0;
         $a = new archiEvenement();
         $imageObject = new imageObject();
         // objet image du framework
         $a->addToJsHeader($imageObject->getJSFunctionsDragAndDrop(array('withBalisesScript' => true)));
         // rajoute les fonctions de deplacement d'elements dans le header du formulaire
     }
     if ($authentification->estConnecte()) {
         if ($authentification->estAdmin()) {
             $t->assign_block_vars('actionsSommaire', array('urlAction' => $this->creerUrl('', 'evenement', array('archiIdAdresse' => $idAdresse, 'idEvenement' => $idEvenementGroupeAdresse, 'archiIdAdresse' => $idAdresse, 'affichePositionnementEvenements' => $affichePositionnementEvenements)), 'labelAction' => 'Repositionner les événements'));
         }
     }
     //Loop on all evenet related to this idAdresse specified in argument of this function
     while ($fetch = mysql_fetch_assoc($resultIdEvenements)) {
         //Getting all the infos with this method
         $evenement = $e->getEventInfos($fetch['idEvenement']);
         $result = $e->displaySingleEvent($evenement);
         $t->assign_block_vars('event', array('content' => $result));
         //Filling the template with the infos
         $t->assign_block_vars('evenement', $evenement['evenementData']);
         $titre = stripslashes($evenement['evenementData']['titre']);
         if (isset($evenement['evenementData']['titre']) && $evenement['evenementData']['titre'] != "") {
             $titre .= " - ";
         }
         $ancre = "#evenement" . $evenement['evenementData']['idEvenement'];
         $t->assign_block_vars('sommaireEvenements.sommaireItem', array('ancre' => $ancre, 'titre' => $titre, 'date' => $evenement['evenementData']['dates']));
     }
     //Getting all the miscellaneous images (vueSur / prisDepuis)
     $image = new archiImage();
     $idVueSur = $image->getIdImageVueSur($idEvenementGroupeAdresse);
     $idPrisDepuis = $image->getidImagePrisDepuis($idEvenementGroupeAdresse);
     if (!empty($idVueSur)) {
         $evenementVueSur = $image->getEventInfosMiscImage($idVueSur, $idAdresse, "Autres vues sur");
         $t->assign_block_vars('evenement', $evenementVueSur);
     }
     if (!empty($idPrisDepuis)) {
         $evenementPrisDepuis = $image->getEventInfosMiscImage($idPrisDepuis, $idAdresse, "Vues prises depuis");
         $t->assign_block_vars('evenement', $evenementPrisDepuis);
     }
     $listeCommentaires = $this->getListeCommentaires($idEvenementGroupeAdresse);
     $formulaireCommentaire = $e->getFormComment($idEvenementGroupeAdresse, $this->getCommentairesFields(), '');
     $s = new archiSource();
     $t->assign_vars(array('title' => $title, 'listeCommentairesAdresse' => $listeCommentaires, 'formulaireCommentaireAdresse' => $formulaireCommentaire, 'popupDescriptionSource' => $s->getPopupDescriptionSource()));
     ob_start();
     $t->pparse('index');
     $html .= ob_get_contents();
     ob_end_clean();
     return $html;
 }