public function getIntituleAdresseAccueil($fetch = array(), $params = array())
 {
     $titre = "";
     $sqlGA = "";
     $classCSS = "";
     if (isset($fetch['idEvenementGroupeAdresse']) && $fetch['idEvenementGroupeAdresse'] != '' && $fetch['idEvenementGroupeAdresse'] != '0') {
         $sqlGA = "AND ae.idEvenement = " . $fetch['idEvenementGroupeAdresse'];
     }
     if (isset($params['displayFirstTitreAdresse']) && $params['displayFirstTitreAdresse'] == true || isset($params['ifTitreAfficheTitreSeulement']) && $params['ifTitreAfficheTitreSeulement'] == true) {
         $classCSS = '';
         if (isset($params['classCSSTitreAdresse'])) {
             $classCSS = "class='" . $params['classCSSTitreAdresse'] . "'";
         }
         // avec ce parametre , on va aller chercher le premier titre rencontré sur la liste des evenements du groupe d'adresse de l'adresse
         $idAdresse = $fetch['idAdresse'];
         $trouve = false;
         // on regarde d'abord s'il existe un titre pour le groupe d'adresse
         // vu qu'un evenement groupe d'adresse est unique , on ne va pas grouper dans la requete
         $reqVerif = "\n\t\t\tSELECT idEvenementRecuperationTitre\n\t\t\tFROM evenements he\n\t\t\tLEFT JOIN _adresseEvenement ae ON ae.idAdresse = {$idAdresse}\n\t\t\tWHERE he.idEvenement = ae.idEvenement\n\t\t\t{$sqlGA}\n\t\t\t";
         $resVerif = $this->connexionBdd->requete($reqVerif);
         if (mysql_num_rows($resVerif) > 0) {
             $fetchVerif = mysql_fetch_assoc($resVerif);
             if ($fetchVerif['idEvenementRecuperationTitre'] == '0') {
                 $trouve = false;
             } elseif ($fetchVerif['idEvenementRecuperationTitre'] == '-1') {
                 $params['ifTitreAfficheTitreSeulement'] = true;
                 $titre = '';
                 $trouve = true;
             } elseif ($fetchVerif['idEvenementRecuperationTitre'] != '0' && $fetchVerif['idEvenementRecuperationTitre'] != '-1') {
                 $reqTitre = "\n\t\t\t\t\t\t\tSELECT he1.titre as titre\n\t\t\t\t\t\t\tFROM evenements he2, evenements he1\n\t\t\t\t\t\t\tWHERE he2.idEvenement = he1.idEvenement\n\t\t\t\t\t\t\tAND he1.idEvenement = '" . $fetchVerif['idEvenementRecuperationTitre'] . "'\n\t\t\t\t\t\t\t\t\tGROUP BY he1.idEvenement\n\t\t\t\t\t\t\t\t\t";
                 $resTitre = $this->connexionBdd->requete($reqTitre);
                 $fetchTitre = mysql_fetch_assoc($resTitre);
                 $titre = "<span {$classCSS}>" . stripslashes($fetchTitre['titre']) . "</span> ";
                 $trouve = true;
             }
         }
         if (!$trouve) {
             $reqTitre = "\n\t\t\t\t\t\tSELECT he1.titre as titre\n\t\t\t\t\t\tFROM _adresseEvenement ae\n\t\t\t\t\t\tLEFT JOIN _evenementEvenement ee ON ee.idEvenement = ae.idEvenement\n\t\t\t\t\t\tLEFT JOIN evenements he1 ON he1.idEvenement = ee.idEvenementAssocie\n\t\t\t\t\t\tLEFT JOIN evenements he2 ON he2.idEvenement = he1.idEvenement\n\t\t\t\t\t\tWHERE he1.titre!=''\n\t\t\t\t\t\tAND he1.idTypeEvenement <>'6'\n\t\t\t\t\t\tAND ae.idAdresse = '" . $idAdresse . "'\n\t\t\t\t\t\t{$sqlGA}\n\t\t\t\t\t\tGROUP BY he1.idEvenement\n\t\t\t\t\t\tORDER BY he1.dateDebut,he1.idEvenement\n\t\t\t\t\t\tLIMIT 1\n\n\t\t\t\t\t\t";
             $resTitre = $this->connexionBdd->requete($reqTitre);
             if (mysql_num_rows($resTitre) == 1) {
                 $fetchTitre = mysql_fetch_assoc($resTitre);
                 $titre = "<span {$classCSS}>" . stripslashes($fetchTitre['titre']) . "</span> ";
             }
         }
     }
     $nomAdresse = "";
     if (isset($fetch['numero']) && $fetch['numero'] != '' && $fetch['numero'] != '0') {
         $nomAdresse .= $fetch['numero'];
     }
     // recherche de l'indicatif
     if (isset($fetch['idIndicatif']) && $fetch['idIndicatif'] != '0') {
         $reqIndicatif = "SELECT nom FROM indicatif WHERE idIndicatif='" . $fetch['idIndicatif'] . "'";
         $resIndicatif = $this->connexionBdd->requete($reqIndicatif);
         $fetchIndicatif = mysql_fetch_assoc($resIndicatif);
         $nomAdresse .= $fetchIndicatif['nom'];
     }
     if (isset($fetch['prefixeRue'])) {
         if (pia_substr($fetch['prefixeRue'], 0, pia_strlen($fetch['prefixeRue'])) == "'") {
             $nomAdresse .= ' ' . $fetch['prefixeRue'] . ucfirst($fetch['nomRue']);
         } else {
             $nomAdresse .= ' ' . $fetch['prefixeRue'] . ' ' . ucfirst($fetch['nomRue']);
         }
     }
     if ((!isset($params['noQuartier']) || $params['noQuartier'] == false) && $fetch['nomRue'] == '') {
         if (isset($fetch['nomQuartier']) && $fetch['nomQuartier'] != 'autre') {
             if (isset($params['noQuartierCentreVille']) && $params['noQuartierCentreVille'] == true && pia_strtolower($fetch['nomQuartier']) == "centre ville") {
                 //$nomAdresse .= ' '.ucfirst($fetch['nomQuartier']);
             } else {
                 $nomAdresse .= ' ' . ucfirst($fetch['nomQuartier']);
             }
         }
     }
     if ((!isset($params['noSousQuartier']) || $params['noSousQuartier'] == false) && $fetch['nomRue'] == '') {
         if (isset($fetch['nomSousQuartier']) && $fetch['nomSousQuartier'] != 'autre') {
             $nomAdresse .= ' ' . ucfirst($fetch['nomSousQuartier']);
         }
     }
     if (isset($fetch['nomVille']) && $fetch['nomRue'] == '') {
         //  && $fetch['nomVille']!='Strasbourg'
         $nomAdresse .= ' ' . ucfirst($fetch['nomVille']);
     }
     $nomAdresse = trim($nomAdresse);
     $retour = "";
     if (isset($params['ifTitreAfficheTitreSeulement']) && $params['ifTitreAfficheTitreSeulement'] == true && $titre != '' && $titre != "<span {$classCSS}></span> ") {
         $retour = $titre;
     } else {
         if ($titre == "<span {$classCSS}></span> ") {
             $titre = "";
         }
         $retour = $titre . $nomAdresse;
     }
     return $retour;
 }
 public function getIntituleAdresse($fetch = array(), $params = array())
 {
     $idAdresse = 0;
     // pour pouvoir afficher plusieurs adresses d'un meme groupe d'adresse si c'est le cas , on verifie si le parametre est precisé, sinon on garde le parametre d'origine en le placant juste dans un tableau
     if (isset($params['arrayIdAdressesSurMemeGroupeAdresse']) && count($params['arrayIdAdressesSurMemeGroupeAdresse']) > 0) {
         $arrayFetch = $params['arrayIdAdressesSurMemeGroupeAdresse'];
     } else {
         $arrayFetch[] = $fetch;
     }
     if (isset($params['idAdresseReference']) && $params['idAdresseReference'] != 0) {
         // si on passe une adresse de reference en parametres (idAdresse de la page courante par exemple) , on a la regle suivante
         // si le quartier et la ville sont les memes que ceux de l'adresse de reference on affiche pas le quartier et la ville de l'adresse en sortie
         $arrayAdresse = $this->getArrayAdresseFromIdAdresse($params['idAdresseReference']);
         $idSousQuartierAdresseReference = $arrayAdresse['idSousQuartier'];
         $idQuartierAdresseReference = $arrayAdresse['idQuartier'];
         $idVilleAdresseReference = $arrayAdresse['idVille'];
     }
     $separatorAfterTitle = '';
     if (isset($params['setSeparatorAfterTitle'])) {
         $separatorAfterTitle = $params['setSeparatorAfterTitle'];
     }
     $titre = "";
     $styleCSSTitre = 'font-weight:bold;';
     $styleCSSAdresse = '';
     $classCSS = '';
     if (isset($params['classCSSTitreAdresse'])) {
         $classCSS = "class='" . $params['classCSSTitreAdresse'] . "'";
     }
     if (isset($params['styleCSSTitreAdresse'])) {
         $styleCSSTitre = $params['styleCSSTitreAdresse'];
     }
     if (isset($params['styleCSSAdresse'])) {
         $styleCSSAdresse = $params['styleCSSAdresse'];
     }
     if (isset($params['displayFirstTitreAdresse']) && $params['displayFirstTitreAdresse'] == true || isset($params['ifTitreAfficheTitreSeulement']) && $params['ifTitreAfficheTitreSeulement'] == true || isset($params['afficheTitreSiTitreSinonRien']) && $params['afficheTitreSiTitreSinonRien'] == true) {
         $sqlGroupeAdresse = "";
         if (isset($params['idEvenementGroupeAdresse']) && $params['idEvenementGroupeAdresse'] != '' && $params['idEvenementGroupeAdresse'] != '0') {
             $sqlGroupeAdresse = " AND ae.idEvenement = '" . $params['idEvenementGroupeAdresse'] . "' ";
             $idAdresse = $this->getIdAdresseFromIdEvenementGroupeAdresse($params['idEvenementGroupeAdresse']);
         }
         if (isset($arrayFetch[0]['idAdresse'])) {
             $idAdresse = $arrayFetch[0]['idAdresse'];
             // on prend le premier idAdresse trouvé , en principe c'est toujours le cas
         }
         $trouve = false;
         // on regarde d'abord s'il existe un titre pour le groupe d'adresse
         // vu qu'un evenement groupe d'adresse est unique , on ne va pas grouper dans la requete
         $reqVerif = "\n\t\t\tSELECT idEvenementRecuperationTitre\n\t\t\tFROM evenements he\n\t\t\tLEFT JOIN _adresseEvenement ae ON ae.idAdresse = '{$idAdresse}'\n\t\t\tWHERE he.idEvenement = ae.idEvenement\n\t\t\t{$sqlGroupeAdresse}\n\t\t\t";
         $resVerif = $this->connexionBdd->requete($reqVerif);
         if (mysql_num_rows($resVerif) > 0) {
             $fetchVerif = mysql_fetch_assoc($resVerif);
             if ($fetchVerif['idEvenementRecuperationTitre'] == '0') {
                 $trouve = false;
             } elseif ($fetchVerif['idEvenementRecuperationTitre'] == '-1') {
                 $params['ifTitreAfficheTitreSeulement'] = true;
                 $titre = '';
                 $trouve = true;
             } elseif ($fetchVerif['idEvenementRecuperationTitre'] != '0') {
                 $reqTitre = "\n\t\t\t\t\t\t\tSELECT he1.titre as titre\n\t\t\t\t\t\t\tFROM evenements he2, evenements he1\n\t\t\t\t\t\t\tWHERE he2.idEvenement = he1.idEvenement\n\t\t\t\t\t\t\tAND he1.idEvenement = '" . $fetchVerif['idEvenementRecuperationTitre'] . "'\n\t\t\t\t\t\t\t\t\tGROUP BY he1.idEvenement\n\t\t\t\t\t\t\t\t\t";
                 $resTitre = $this->connexionBdd->requete($reqTitre);
                 $fetchTitre = mysql_fetch_assoc($resTitre);
                 if (isset($params["noHTML"])) {
                     $titre = stripslashes($fetchTitre['titre']);
                 } else {
                     $titre = "<span {$classCSS} style='{$styleCSSTitre}'>" . stripslashes($fetchTitre['titre']) . "</span> ";
                 }
                 if (trim($fetchTitre['titre']) != '') {
                     $trouve = true;
                 } else {
                     $trouve = true;
                     // meme si pas de titre , ceci va permettre d'afficher l'adresse
                     $titre = '';
                 }
             }
         }
         if (!$trouve) {
             // avec ce parametre , on va aller chercher le premier titre rencontré sur la liste des evenements du groupe d'adresse de l'adresse
             $reqTitre = "\n\t\t\t\t\t\tSELECT he1.titre as titre\n\t\t\t\t\t\tFROM _adresseEvenement ae\n\t\t\t\t\t\tLEFT JOIN _evenementEvenement ee ON ee.idEvenement = ae.idEvenement\n\t\t\t\t\t\tLEFT JOIN evenements he1 ON he1.idEvenement = ee.idEvenementAssocie\n\t\t\t\t\t\tLEFT JOIN evenements he2 ON he2.idEvenement = he1.idEvenement\n\t\t\t\t\t\tWHERE he1.titre!=''\n\t\t\t\t\t\tAND ae.idAdresse = '" . $idAdresse . "'\n\t\t\t\t\t\t{$sqlGroupeAdresse}\n\t\t\t\t\t\tAND he1.idTypeEvenement <>'6'\n\t\t\t\t\t\tGROUP BY he1.idEvenement\n\t\t\t\t\t\tORDER BY he1.dateDebut\n\t\t\t\t\t\tLIMIT 1\n\n\t\t\t\t\t\t";
             $resTitre = $this->connexionBdd->requete($reqTitre);
             if (mysql_num_rows($resTitre) == 1) {
                 $fetchTitre = mysql_fetch_assoc($resTitre);
                 if (isset($params["noHTML"])) {
                     $titre = stripslashes($fetchTitre['titre']);
                 } else {
                     $titre = "<b {$classCSS}>" . stripslashes($fetchTitre['titre']) . "</b> ";
                 }
                 if (trim($fetchTitre['titre']) == '') {
                     $noTitreDetected = true;
                     $titre = '';
                 }
             }
         }
     }
     $arrayNomAdresse = array();
     $arrayNomRue = array();
     $arrayNomSousQuartier = array();
     $arrayNomQuartier = array();
     $arrayNomVille = array();
     $arrayNomAdresseSansQuartierSsQuartierVilleRue = array();
     $arrayNomAdresseSansQuartierSsQuartierVille = array();
     $arrayAdressesRegroupees = array();
     $arrayNomQuartiersRegroupes = array();
     $arrayNomVillesRegroupes = array();
     $arrayNomSousQuartiersRegroupes = array();
     $htmlStyleDebut = "";
     $htmlStyleFin = "";
     $i = 0;
     foreach ($arrayFetch as $indice => $fetch) {
         if (isset($params['displayLibelleAdresseFromGroupeAdresseOnlyIdAdresse']) && $params['displayLibelleAdresseFromGroupeAdresseOnlyIdAdresse'] == $fetch['idAdresse'] || !isset($params['displayLibelleAdresseFromGroupeAdresseOnlyIdAdresse'])) {
             $nomAdresse = "";
             if (isset($fetch['numero']) && $fetch['numero'] != '' && $fetch['numero'] != '0') {
                 $nomAdresse .= $fetch['numero'];
             }
             // recherche de l'indicatif
             if (isset($fetch['idIndicatif']) && $fetch['idIndicatif'] != '0') {
                 $reqIndicatif = "SELECT nom FROM indicatif WHERE idIndicatif='" . $fetch['idIndicatif'] . "'";
                 $resIndicatif = $this->connexionBdd->requete($reqIndicatif);
                 $fetchIndicatif = mysql_fetch_assoc($resIndicatif);
                 $nomAdresse .= $fetchIndicatif['nom'];
                 $fetch['indicatif'] = $fetchIndicatif['nom'];
                 // pour le regroupement , pour avoir l'indicatif
             } else {
                 $fetch['indicatif'] = '';
             }
             $arrayNomAdresseSansQuartierSsQuartierVilleRue[$i] = $nomAdresse;
             if (isset($fetch['prefixeRue'])) {
                 if (pia_substr($fetch['prefixeRue'], 0, pia_strlen($fetch['prefixeRue'])) == "'") {
                     $nomAdresse .= ' ' . stripslashes($fetch['prefixeRue']) . stripslashes(ucfirst($fetch['nomRue']));
                 } else {
                     $nomAdresse .= ' ' . stripslashes($fetch['prefixeRue']) . ' ' . stripslashes(ucfirst($fetch['nomRue']));
                 }
                 $arrayNomRue[$i] = stripslashes($fetch['prefixeRue']) . ' ' . stripslashes(ucfirst($fetch['nomRue']));
             }
             $arrayNomAdresseSansQuartierSsQuartierVille[$i] = $nomAdresse;
             if (!isset($params['noSousQuartier']) || $params['noSousQuartier'] == false) {
                 if (isset($fetch['nomSousQuartier']) && $fetch['nomSousQuartier'] != 'autre') {
                     if (isset($params['idAdresseReference']) && $params['idAdresseReference'] != 0 && $idSousQuartierAdresseReference == $fetch['idSousQuartier']) {
                         // on ne precise pas le sous quartier si c'est le meme que l'adresse de reference
                     } else {
                         $sousquartier = true;
                         if (!empty($fetch['nomSousQuartier'])) {
                             $nomAdresse .= ' (' . ucfirst($fetch['nomSousQuartier']);
                         }
                         $arrayNomSousQuartier[$i] = ucfirst($fetch['nomSousQuartier']);
                     }
                 }
             }
             if (isset($fetch['idSousQuartier'])) {
                 $arrayNomSousQuartiersRegroupes[$fetch['idSousQuartier'] . $fetch['nomSousQuartier']][] = 1;
             }
             if (!isset($params['noQuartier']) || $params['noQuartier'] == false || (isset($params['noQuartier']) && $params['noQuartier'] == true && (!isset($fetch['idSousQuartier']) || $fetch['idSousQuartier'] == '0') || (!isset($fetch['idRue']) || $fetch['idRue'] == '0') && isset($fetch['idQuartier']) && $fetch['idQuartier'] != '0')) {
                 if (isset($fetch['nomQuartier']) && $fetch['nomQuartier'] != 'autre') {
                     if (isset($params['noQuartierCentreVille']) && $params['noQuartierCentreVille'] == true && pia_strtolower($fetch['nomQuartier']) == "centre ville") {
                         //$nomAdresse .= ' '.ucfirst($fetch['nomQuartier']);
                         if ($fetch['nomSousQuartier'] == "autre") {
                             $nomAdresse .= " - ";
                         } else {
                             $nomAdresse .= ") ";
                         }
                     } else {
                         if (isset($params['idAdresseReference']) && $params['idAdresseReference'] != 0 && $idQuartierAdresseReference == $fetch['idQuartier']) {
                             // on ne precise pas le quartier si c'est le meme que l'adresse de reference ( si celle ci est précisée)
                             if (!isset($fetch['idRue']) || $fetch['idRue'] == '0') {
                                 // sauf s'il n'y a pas d'idRue , sinon on afficherait rien
                                 $nomAdresse .= ' ' . ucfirst($fetch['nomQuartier']);
                                 $arrayNomQuartier[$i] = ucfirst($fetch['nomQuartier']);
                             } elseif ($fetch['nomSousQuartier'] != "Ellipse insulaire") {
                                 //$nomAdresse .=") ";
                             }
                         } else {
                             if (!empty($fetch['nomQuartier'])) {
                                 if (!empty($fetch['nomSousQuartier'])) {
                                     $nomAdresse .= isset($sousquartier) ? ' - ' : ' (';
                                 } else {
                                     $nomAdresse .= ' (';
                                 }
                                 $nomAdresse .= ucfirst($fetch['nomQuartier']) . ")";
                             }
                             $arrayNomQuartier[$i] = ucfirst($fetch['nomQuartier']);
                         }
                     }
                 }
             }
             if (isset($fetch['idQuartier'])) {
                 $arrayNomQuartiersRegroupes[$fetch['idQuartier'] . $fetch['nomQuartier']][] = 1;
             }
             if (!isset($params['noVille']) || $params['noVille'] == false) {
                 if (isset($fetch['nomVille'])) {
                     //  && $fetch['nomVille']!='Strasbourg'
                     if (isset($params['idAdresseReference']) && $params['idAdresseReference'] != 0 && $idVilleAdresseReference == $fetch['idVille']) {
                         // on ne precise pas la ville si c'est la meme que la ville de l'adresse de reference
                     } else {
                         $nomAdresse .= ' ' . ucfirst($fetch['nomVille']);
                         $arrayNomVille[$i] = ucfirst($fetch['nomVille']);
                     }
                 }
             }
             if (isset($fetch['idVille'])) {
                 $arrayNomVillesRegroupes[$fetch['idVille'] . $fetch['nomVille']][] = 1;
             }
             if (isset($params['isAfficheAdresseStyle']) && $titre != '' && !isset($noTitreDetected)) {
                 $nomAdresse = "<span {$styleCSSAdresse}>" . $nomAdresse . "</span>";
                 $htmlStyleDebut = "<span {$styleCSSAdresse}>";
                 $htmlStyleFin = "</span>";
             }
             $arrayNomAdresse[$i] = $nomAdresse;
             if (isset($arrayNomRue[$i])) {
                 $arrayAdressesRegroupees[$arrayNomRue[$i]][] = $fetch;
             }
             $i++;
         }
     }
     $retour = "";
     if (isset($params['afficheTitreSiTitreSinonRien']) && $params['afficheTitreSiTitreSinonRien'] == true) {
         $retour = $titre;
     } else {
         if (isset($params['ifTitreAfficheTitreSeulement']) && $params['ifTitreAfficheTitreSeulement'] == true && $titre != '') {
             $retour = $titre;
         } else {
             // on regarde si tous les quartiers et sous quartiers et villes des adresses du groupe d'adresse sont les memes , s'il y a plusieurs adresses , on factorises le quartier le sous quartier et la ville
             if (count($arrayNomAdresse) > 1) {
                 $nomQuartierFactorise = "";
                 $nomVilleFactorise = "";
                 $nomSousQuartierFactorise = "";
                 foreach ($arrayAdressesRegroupees as $intituleRue => $fetchRues) {
                     foreach ($fetchRues as $indice => $fetchRue) {
                         if ($fetchRue['numero'] == '0' || $fetchRue['numero'] == '') {
                             $retour .= '';
                         } else {
                             $retour .= $fetchRue['numero'] . $fetchRue['indicatif'] . "-";
                         }
                     }
                     $retour = pia_substr($retour, 0, -pia_strlen("-"));
                     $retour .= " ";
                     // ici on rajoute le quartier et le sous quartier
                     $retour .= $intituleRue . " ";
                     if ($fetchRue['nomSousQuartier'] != '' && $fetchRue['nomSousQuartier'] != 'autre' && count($arrayNomSousQuartiersRegroupes) > 1) {
                         $retour .= $fetchRue['nomSousQuartier'] . " ";
                     } else {
                         $nomSousQuartierFactorise = "";
                         if (isset($fetchRue['idSousQuartier']) && $fetchRue['nomSousQuartier'] != '' && $fetchRue['nomSousQuartier'] != 'autre') {
                             $nomSousQuartierFactorise = "(" . $fetch['nomSousQuartier'] . " ";
                         }
                     }
                     if ($fetchRue['nomQuartier'] != '' && $fetchRue['nomQuartier'] != 'autre' && count($arrayNomQuartiersRegroupes) > 1) {
                         $retour .= $fetchRue['nomQuartier'];
                     } else {
                         $nomQuartierFactorise = "";
                         if ($fetchRue['nomQuartier'] != '' && $fetchRue['nomQuartier'] != 'autre') {
                             $nomQuartierFactorise = empty($nomSousQuartierFactorise) ? "(" : "- ";
                             $nomQuartierFactorise .= $fetchRue['nomQuartier'] . ") ";
                         } else {
                             $nomQuartierFactorise = ")";
                         }
                     }
                     if ($fetchRue['nomVille'] != '' && count($arrayNomVillesRegroupes) > 1) {
                         $retour .= $fetchRue['nomVille'] . " ";
                     } else {
                         $nomVilleFactorise = $fetchRue['nomVille'] . " ";
                     }
                     $retour .= "/ ";
                 }
                 $retour = pia_substr($retour, 0, -pia_strlen("/ "));
                 if (count($arrayNomSousQuartiersRegroupes) == 1) {
                     $retour .= $nomSousQuartierFactorise;
                 }
                 if (count($arrayNomQuartiersRegroupes) == 1) {
                     $retour .= $nomQuartierFactorise;
                 }
                 if (count($arrayNomVillesRegroupes) == 1) {
                     $retour .= $nomVilleFactorise;
                 }
                 $retour .= "";
                 if ($titre != '') {
                     $retour = "<span style='{$styleCSSTitre}'>" . $titre . "</span>" . $separatorAfterTitle . $htmlStyleDebut . $retour . $htmlStyleFin;
                 } else {
                     // retour = retour
                 }
             } else {
                 if ($titre != '') {
                     $retour = "<span style='{$styleCSSTitre}'>" . $titre . "</span>" . $separatorAfterTitle . implode("/", $arrayNomAdresse);
                 } else {
                     $retour = implode("/", $arrayNomAdresse);
                 }
             }
         }
     }
     return $retour;
 }
 public function modifier()
 {
     $authentification = new archiAuthentification();
     $majOK = false;
     $formulaire = new formGenerator();
     $mail = new mailObject();
     $avatarFile = new fileObject();
     $image = new imageObject();
     // suppression de l'avatar si la checkbox est cochée
     if (isset($this->variablesPost['supprFichierAvatar']) && $this->variablesPost['supprFichierAvatar'] == '1') {
         if (file_exists($this->getCheminPhysique() . "images/avatar/" . $this->variablesPost['idUtilisateurModif'] . "/avatar.jpg")) {
             unlink($this->getCheminPhysique() . "images/avatar/" . $this->variablesPost['idUtilisateurModif'] . "/avatar.jpg");
         }
         if (file_exists($this->getCheminPhysique() . "images/avatar/" . $this->variablesPost['idUtilisateurModif'] . "/original.jpg")) {
             unlink($this->getCheminPhysique() . "images/avatar/" . $this->variablesPost['idUtilisateurModif'] . "/original.jpg");
         }
     }
     // gestion de l'image de l'avatar
     if (isset($this->variablesPost['idUtilisateurModif']) && $this->variablesPost['idUtilisateurModif'] != '' && isset($_FILES['fichierAvatar']['name']) && $_FILES['fichierAvatar']['name'] != '') {
         if (pia_strtolower($avatarFile->getExtensionFromFile($_FILES['fichierAvatar']['name'])) == 'jpg') {
             if (!file_exists($this->getCheminPhysique() . "images/avatar/" . $this->variablesPost['idUtilisateurModif'] . "/")) {
                 if (!$avatarFile->creerRepertoire($this->getCheminPhysique() . "images/avatar/" . $this->variablesPost['idUtilisateurModif'] . "/")) {
                     echo "archiUtilisateur::modifier => erreur de création du répertoire pour l'image avatar<br>";
                 }
             }
             $avatarFile->handleUploadedFileSimpleMoveTo(array('inputFileName' => 'fichierAvatar', 'renameFileTo' => 'original.jpg', 'repertoireDestination' => $this->getCheminPhysique() . "images/avatar/" . $this->variablesPost['idUtilisateurModif'] . "/"));
             // ensuite on redimensionne l'image
             $image->redimension($this->getCheminPhysique() . "images/avatar/" . $this->variablesPost['idUtilisateurModif'] . "/original.jpg", 'jpg', $this->getCheminPhysique() . "images/avatar/" . $this->variablesPost['idUtilisateurModif'] . "/avatar.jpg", 120);
         } else {
             echo "Le fichier de l'avatar doit être au format jpg.";
         }
     }
     // gestion infos du compte
     if ($authentification->estConnecte()) {
         if ($authentification->estAdmin()) {
             // cas d'un utilisateur connecté et admin et dans l'admin
             if (isset($this->variablesGet['modeAffichage']) && $this->variablesGet['modeAffichage'] == 'utilisateurDetail') {
                 $tabForm = $this->getUtilisateurFieldsForAdmin();
             } elseif (isset($this->variablesGet['modeAffichage']) && $this->variablesGet['modeAffichage'] == 'profil') {
                 $tabForm = $this->getUtilisateurFieldsForAdminProfil();
             }
             $errors = $formulaire->getArrayFromPost($tabForm);
             if (count($errors) == 0) {
                 $sqlChampDisplayNumeroArchiveField = "";
                 $sqlChampDisplayDateFinField = "";
                 if (isset($this->variablesGet['modeAffichage']) && $this->variablesGet['modeAffichage'] == 'utilisateurDetail') {
                     $sqlChampDisplayNumeroArchiveField = ", displayNumeroArchiveFieldInSaisieEvenement=\"" . $tabForm['displayNumeroArchiveField']['value'] . "\"";
                     $sqlChampDisplayDateFinField = ", displayDateFinFieldInSaisieEvenement=\"" . $tabForm['displayDateFinField']['value'] . "\"";
                 }
                 // test sur le mot de passe
                 if ($tabForm['mdp1']['value'] != '') {
                     // un mot de passe a ete entré ,  donc si pas d'erreur ,  on peut faire l'ajout a la base
                     $reqUpdate = 'update utilisateur 
                             set nom="' . $tabForm['nom']['value'] . '", 
                                 prenom="' . $tabForm['prenom']['value'] . '", 
                                 mail="' . $tabForm['mail']['value'] . '", 
                                 motDePasse="' . md5($tabForm['mdp1']['value']) . '", 
                                 urlSiteWeb="' . $tabForm['urlSiteWeb']['value'] . '", 
                                 idProfil="' . $tabForm['idProfil']['value'] . '", 
                                 alerteMail="' . $tabForm['alerteMail']['value'] . '", 
                                 idVilleFavoris="' . $tabForm['ville']['value'] . '", 
                                 canCopyright="' . $tabForm['canCopyright']['value'] . '", 
                                 canModifyTags="' . $tabForm['canModifyTags']['value'] . '", 
                                 canAddWithoutStreet="' . $tabForm['canAddWithoutStreet']['value'] . '", 
                                 alerteCommentaires="' . $tabForm['alerteCommentaires']['value'] . '", 
                                 idPeriodeEnvoiMailsRegroupes="' . $tabForm['idPeriodeEnvoiMailsRegroupes']['value'] . '", 
                                 alerteAdresses="' . $tabForm['alerteAdresses']['value'] . '", 
                                 displayProfilContactForm="' . $tabForm['afficheFormulaireContactPersoProfilPublic']['value'] . '"
                                 ' . $sqlChampDisplayNumeroArchiveField . '
                                 ' . $sqlChampDisplayDateFinField . '
                             where idUtilisateur="' . $this->variablesPost['idUtilisateurModif'] . '"
                         ';
                     if ($resUpdate = $this->connexionBdd->requete($reqUpdate)) {
                         $majOK = true;
                     }
                 } else {
                     //aucun mot de passe entré ,  on ne le met pas a jour
                     $reqUpdate = 'update utilisateur 
                             set nom="' . $tabForm['nom']['value'] . '", 
                                 prenom="' . $tabForm['prenom']['value'] . '", 
                                 mail="' . $tabForm['mail']['value'] . '", 
                                 urlSiteWeb="' . $tabForm['urlSiteWeb']['value'] . '", 
                                 idProfil="' . $tabForm['idProfil']['value'] . '", 
                                 alerteMail="' . $tabForm['alerteMail']['value'] . '", 
                                 idVilleFavoris="' . $tabForm['ville']['value'] . '", 
                                 canCopyright="' . $tabForm['canCopyright']['value'] . '", 
                                 canModifyTags="' . $tabForm['canModifyTags']['value'] . '", 
                                 canAddWithoutStreet="' . $tabForm['canAddWithoutStreet']['value'] . '", 
                                 idPeriodeEnvoiMailsRegroupes="' . $tabForm['idPeriodeEnvoiMailsRegroupes']['value'] . '", 
                                 alerteCommentaires="' . $tabForm['alerteCommentaires']['value'] . '", 
                                 alerteAdresses="' . $tabForm['alerteAdresses']['value'] . '", 
                                 displayProfilContactForm="' . $tabForm['afficheFormulaireContactPersoProfilPublic']['value'] . '"
                                 ' . $sqlChampDisplayNumeroArchiveField . '
                                 ' . $sqlChampDisplayDateFinField . '
                             where idUtilisateur="' . $this->variablesPost['idUtilisateurModif'] . '"
                         ';
                     if ($resUpdate = $this->connexionBdd->requete($reqUpdate)) {
                         $majOK = true;
                     }
                 }
                 if (isset($this->variablesGet['modeAffichage']) && $this->variablesGet['modeAffichage'] == 'utilisateurDetail') {
                     // Si un utilisateur est banni,  on inactive son compte et on met le champs compteBanni à 1
                     $this->majBannissementUtilisateur(array('idUtilisateur' => $this->variablesPost['idUtilisateurModif'], 'champsBanissementApresValidationFormulaire' => $tabForm['bannirUtilisateur']['value']));
                 }
             }
         } elseif ($this->getIdProfilFromUtilisateur($authentification->getIdUtilisateur()) == '3') {
             // cas d'un utilisateur connecté moderateurs
             $tabForm = $this->getUtilisateurFieldsForModerators();
             $errors = $formulaire->getArrayFromPost($tabForm);
             if (count($errors) == 0) {
                 // test sur le mot de passe
                 if ($tabForm['mdp1']['value'] != '') {
                     // un mot de passe a ete entré ,  donc si pas d'erreur ,  on peut faire l'ajout a la base
                     $reqUpdate = 'update utilisateur 
                             set nom="' . $tabForm['nom']['value'] . '", 
                                 prenom="' . $tabForm['prenom']['value'] . '", 
                                 mail="' . $tabForm['mail']['value'] . '", 
                                 motDePasse="' . md5($tabForm['mdp1']['value']) . '", 
                                 urlSiteWeb="' . $tabForm['urlSiteWeb']['value'] . '", 
                                 idVilleFavoris="' . $tabForm['ville']['value'] . '", 
                                 idPeriodeEnvoiMailsRegroupes="' . $tabForm['idPeriodeEnvoiMailsRegroupes']['value'] . '", 
                                 alerteCommentaires="' . $tabForm['alerteCommentaires']['value'] . '", 
                                 alerteAdresses="' . $tabForm['alerteAdresses']['value'] . '", 
                                 alerteMail="' . $tabForm['alerteMail']['value'] . '", 
                                 displayProfilContactForm="' . $tabForm['afficheFormulaireContactPersoProfilPublic']['value'] . '"
                             where idUtilisateur="' . $this->variablesPost['idUtilisateurModif'] . '"
                         ';
                     if ($resUpdate = $this->connexionBdd->requete($reqUpdate)) {
                         $majOK = true;
                     }
                 } else {
                     //aucun mot de passe entré ,  on ne le met pas a jour
                     $reqUpdate = 'update utilisateur 
                             set nom="' . $tabForm['nom']['value'] . '", 
                                 prenom="' . $tabForm['prenom']['value'] . '", 
                                 mail="' . $tabForm['mail']['value'] . '", 
                                 idVilleFavoris="' . $tabForm['ville']['value'] . '", 
                                 urlSiteWeb="' . $tabForm['urlSiteWeb']['value'] . '", 
                                 alerteCommentaires="' . $tabForm['alerteCommentaires']['value'] . '", 
                                 alerteAdresses="' . $tabForm['alerteAdresses']['value'] . '", 
                                 idPeriodeEnvoiMailsRegroupes="' . $tabForm['idPeriodeEnvoiMailsRegroupes']['value'] . '", 
                                 alerteMail="' . $tabForm['alerteMail']['value'] . '", 
                                 displayProfilContactForm="' . $tabForm['afficheFormulaireContactPersoProfilPublic']['value'] . '"
                             where idUtilisateur="' . $this->variablesPost['idUtilisateurModif'] . '"
                         ';
                     if ($resUpdate = $this->connexionBdd->requete($reqUpdate)) {
                         $majOK = true;
                     }
                 }
             }
         } else {
             // cas d'un utilisateur connecté non admin
             $tabForm = $this->getUtilisateurFieldsNotAdmin();
             $errors = $formulaire->getArrayFromPost($tabForm);
             if (count($errors) == 0) {
                 // test sur le mot de passe
                 if ($tabForm['mdp1']['value'] != '') {
                     // un mot de passe a ete entré ,  donc si pas d'erreur ,  on peut faire l'ajout a la base
                     $reqUpdate = 'update utilisateur 
                             set nom="' . $tabForm['nom']['value'] . '", 
                                 prenom="' . $tabForm['prenom']['value'] . '", 
                                 mail="' . $tabForm['mail']['value'] . '", 
                                 urlSiteWeb="' . $tabForm['urlSiteWeb']['value'] . '", 
                                 motDePasse="' . md5($tabForm['mdp1']['value']) . '", 
                                 idVilleFavoris="' . $tabForm['ville']['value'] . '", 
                                 alerteCommentaires="' . $tabForm['alerteCommentaires']['value'] . '", 
                                 alerteAdresses="' . $tabForm['alerteAdresses']['value'] . '", 
                                 alerteMail="' . $tabForm['alerteMail']['value'] . '", 
                                 displayProfilContactForm="' . $tabForm['afficheFormulaireContactPersoProfilPublic']['value'] . '"
                             where idUtilisateur="' . $this->variablesPost['idUtilisateurModif'] . '"
                         ';
                     if ($resUpdate = $this->connexionBdd->requete($reqUpdate)) {
                         $majOK = true;
                     }
                 } else {
                     //aucun mot de passe entré ,  on ne le met pas a jour
                     $reqUpdate = 'update utilisateur 
                             set nom="' . $tabForm['nom']['value'] . '", 
                                 prenom="' . $tabForm['prenom']['value'] . '", 
                                 mail="' . $tabForm['mail']['value'] . '", 
                                 urlSiteWeb="' . $tabForm['urlSiteWeb']['value'] . '", 
                                 idVilleFavoris="' . $tabForm['ville']['value'] . '", 
                                 alerteCommentaires="' . $tabForm['alerteCommentaires']['value'] . '", 
                                 alerteAdresses="' . $tabForm['alerteAdresses']['value'] . '", 
                                 alerteMail="' . $tabForm['alerteMail']['value'] . '", 
                                 displayProfilContactForm="' . $tabForm['afficheFormulaireContactPersoProfilPublic']['value'] . '"
                             where idUtilisateur="' . $this->variablesPost['idUtilisateurModif'] . '"
                         ';
                     if ($resUpdate = $this->connexionBdd->requete($reqUpdate)) {
                         $majOK = true;
                     }
                 }
             }
         }
     } else {
         echo "Vous n'êtes pas connecté.<br>";
     }
     if ($majOK && !$authentification->estAdmin()) {
         echo "La mise à jour a été effectuée";
         // envoi d'un mail a l'admin
         $message = "";
         $message .= "Un utilisateur a modifié son compte ,  pour vérifier : <a href='" . $this->creerUrl('', 'utilisateurDetail', array('idUtilisateur' => $this->variablesPost['idUtilisateurModif'])) . "'>Cliquez ici</a>";
         $mail->sendMailToAdministrators($mail->getSiteMail(), "Un utilisateur a modifié son compte", $message, '', true);
         $this->ajouteMailEnvoiRegroupesAdministrateurs(array('contenu' => $message, 'idTypeMailRegroupement' => 7, 'criteres' => ""));
         // on met a jour la session contenant la ville favorite ,  si on est soi meme l'utilisateur courant
         if ($this->variablesPost['idUtilisateurModif'] == $authentification->getIdUtilisateur()) {
             $this->session->addToSession("idVilleFavoris", $tabForm['ville']['value']);
         }
     } elseif ($authentification->estAdmin()) {
         echo "La mise à jour a été effectuée";
         if ($this->variablesPost['idUtilisateurModif'] == $authentification->getIdUtilisateur()) {
             $this->session->addToSession("idVilleFavoris", $tabForm['ville']['value']);
         }
     } else {
         echo "La mise à jour n'a pas pu être effectuée.";
     }
     //echo $this->afficher($tabForm, $this->variablesPost['idUtilisateurModif']);
 }
 public function removeSpecialCharFromFileName($texte, $params = array())
 {
     $caractereDefault = "_";
     if (isset($params['setCaractereDefault'])) {
         $caractereDefault = $params['setCaractereDefault'];
     }
     $texte = str_replace("&nbsp;", "_", $texte);
     $texte = strip_tags($texte);
     $texte = pia_strtolower($texte);
     $texte = pia_ereg_replace("[\\ |\\']", $caractereDefault, $texte);
     $texte = str_replace(array("ô", "à", "â", "û", "î", "é", "è", "ê", "&", ";", "(", ")", "ä"), array("o", "a", "a", "u", "i", "e", "e", "e", "et", $caractereDefault, $caractereDefault, $caractereDefault, "a"), $texte);
     $texte = str_replace(array(utf8_encode("ô"), utf8_encode("à"), utf8_encode("â"), utf8_encode("û"), utf8_encode("î"), utf8_encode("é"), utf8_encode("è"), utf8_encode("ê"), "&", ";", "(", ")", utf8_encode("ä")), array("o", "a", "a", "u", "i", "e", "e", "e", "et", $caractereDefault, $caractereDefault, $caractereDefault, "a"), $texte);
     return $texte;
 }
 /**
  * Affiche la liste des rue pour l'administration
  * 
  * @return string HTML
  * */
 public function getAdminListeSousQuartiers()
 {
     $html = "";
     $a = new archiAuthentification();
     $u = new archiUtilisateur();
     $sqlWhere = "";
     // si l'utilisateur est un moderateur on le limite a la gestion des rues des villes qu'il modere
     if ($a->getIdProfil() == 3) {
         $arrayVillesFromModerateur = $u->getArrayVillesModereesPar($a->getIdUtilisateur());
         if (count($arrayVillesFromModerateur) > 0) {
             $sqlWhere = " AND sq.idQuartier in (SELECT idQuartier FROM quartier WHERE idVille in (" . implode(",", $arrayVillesFromModerateur) . ")) ";
         } else {
             $sqlWhere = " AND sq.idQuartier='0' ";
         }
     }
     // recherche
     $objetDeLaRecherche = "";
     $sqlRecherche = "";
     if (isset($this->variablesPost['validationFormulaireAdministration']) && $this->variablesPost['validationFormulaireAdministration'] == 'rechercheAdministration' && $this->variablesPost['rechercheFormulaireAdministration'] != '') {
         $objetDeLaRecherche = stripslashes($this->variablesPost['rechercheFormulaireAdministration']);
         $sqlRecherche = " AND LOWER(CONCAT_WS(' ',sq.nom,q.nom,v.nom)) LIKE \"%" . pia_strtolower($objetDeLaRecherche) . "%\" ";
     }
     // suppression
     // on verifie les dependances
     if (isset($this->variablesPost['validationFormulaireAdministration']) && $this->variablesPost['validationFormulaireAdministration'] == 'suppression') {
         // gestion de la suppression
         if (isset($this->variablesPost['selection']) && count($this->variablesPost['selection']) > 0) {
             //nom de champ identifiant
             $champIdentifiant = "idSousQuartier";
             $dependances[0] = array('table' => 'rue', 'champLie' => 'idSousQuartier', 'message' => "Attention il existe des dépendances au niveau de la table des rues");
             $dependances[1] = array('table' => 'historiqueAdresse', 'champLie' => 'idSousQuartier', 'message' => "Attention il existe des dépendances au niveau de la table historiqueAdresse");
             $erreurObj = new objetErreur();
             if (count($dependances) > 0) {
                 foreach ($dependances as $indice => $dependance) {
                     $reqVerifDependance = "SELECT * FROM " . $dependance['table'] . " WHERE " . $dependance['champLie'] . " in (" . implode(",", $this->variablesPost['selection']) . ")";
                     $resVerifDependance = $this->connexionBdd->requete($reqVerifDependance);
                     if (mysql_num_rows($resVerifDependance) > 0) {
                         $erreurObj->ajouter($dependance['message']);
                     }
                 }
                 if ($erreurObj->getNbErreurs() > 0) {
                     $erreurObj->ajouter("La suppression n'a pu être effectuée, veuillez contacter l'administrateur de la base de données");
                 }
                 $html .= $erreurObj->afficher();
             }
             if ($erreurObj->getNbErreurs() == 0) {
                 $reqDelete = "delete from sousQuartier where " . $champIdentifiant . " in (" . implode(",", $this->variablesPost['selection']) . ")";
                 $resDelete = $this->connexionBdd->requete($reqDelete);
                 echo "suppression effectuée<br>";
             }
         }
     }
     $reqCount = "SELECT sq.nom as nomSousQuartier, q.nom as nomQuartier,v.nom as nomVille\n            FROM sousQuartier sq\n            LEFT JOIN quartier q ON q.idQuartier = sq.idQuartier\n            LEFT JOIN ville v ON v.idVille = q.idVille\n            WHERE 1=1\n            {$sqlWhere}\n            {$sqlRecherche}\n            ";
     $resCount = $this->connexionBdd->requete($reqCount);
     $nbLignesTotales = mysql_num_rows($resCount);
     // pagination
     $nbEnregistrementsParPage = 20;
     $pagination = new paginationObject();
     $arrayPagination = $pagination->pagination(array('nomParamPageCourante' => 'pageCourantePagination', 'nbEnregistrementsParPage' => $nbEnregistrementsParPage, 'nbEnregistrementsTotaux' => $nbLignesTotales, 'typeLiens' => 'formulaire', 'idFormulaire' => 'formListe', 'champPageCourante' => 'pageCourantePagination', 'nomChampActionFormulaireOnSubmit' => 'validationFormulaireAdministration', 'nomActionFormulaireOnSubmit' => 'rechercheAdministration'));
     $req = "\n        \n            SELECT sq.idSousQuartier as idSousQuartier,sq.nom as nomSousQuartier, q.nom as nomQuartier,v.nom as nomVille\n            FROM sousQuartier sq\n            LEFT JOIN quartier q ON q.idQuartier = sq.idQuartier\n            LEFT JOIN ville v ON v.idVille = q.idVille\n            WHERE 1=1 {$sqlWhere} {$sqlRecherche}\n            LIMIT " . $arrayPagination['limitSqlDebut'] . "," . $nbEnregistrementsParPage;
     $res = $this->connexionBdd->requete($req);
     $tableau = new tableau();
     $tableau->addValue("Sélection");
     $tableau->addValue("idSousQuartier");
     $tableau->addValue("nom du sous quartier");
     $tableau->addValue("localisation");
     while ($fetch = mysql_fetch_assoc($res)) {
         $tableau->addValue("<input type='checkbox' name='selection[]' value='" . $fetch['idSousQuartier'] . "'>");
         $tableau->addValue("<a href='" . $this->creerUrl('', 'adminAdresseDetail', array('tableName' => 'sousQuartier', 'idModification' => $fetch['idSousQuartier'])) . "'>" . $fetch['idSousQuartier'] . "</a>");
         $tableau->addValue(stripslashes($fetch['nomSousQuartier']));
         $localisation = array();
         if ($fetch['nomQuartier'] != '' && $fetch['nomQuartier'] != 'autre') {
             $localisation[] = $fetch['nomQuartier'];
         }
         if ($fetch['nomVille'] != '' && $fetch['nomVille'] != 'autre') {
             $localisation[] = $fetch['nomVille'];
         }
         $tableau->addValue(stripslashes(implode(" - ", $localisation)));
     }
     $html .= "<form name='formListe' id='formListe' enctype='multipart/form-data' method='POST'>";
     $html .= "Recherche : <input type='text' name='rechercheFormulaireAdministration' id='rechercheFormulaireAdministration' value='" . $objetDeLaRecherche . "'>";
     $html .= "<input type='submit' onclick=\"document.getElementById('validationFormulaireAdministration').value='rechercheAdministration';\"><br>";
     $html .= $arrayPagination['html'] . '<br>';
     $html .= "<input type='hidden' name='pageCourantePagination' id='pageCourantePagination' value=''>";
     $html .= "<input type='hidden' name='validationFormulaireAdministration' id='validationFormulaireAdministration' value=''>";
     $html .= $tableau->createHtmlTableFromArray(4);
     $html .= "<input type='submit' value='Supprimer la selection' onclick=\"document.getElementById('validationFormulaireAdministration').value='suppression';\" name='supprimer'>";
     $html .= "<input type='button' name='ajouter' value='ajouter' onclick=\"location.href='" . $this->creerUrl('', 'ajoutNouvelleAdresse', array('typeNew' => 'newSousQuartier')) . "';\">";
     $html .= "</form>";
     return $html;
 }
 /**
  * Permet de convertir une chaine afin qu'elle passe a l'url rewriting
  * (pour les adresses par exemple)
  * 
  * @param string $texte  Texte à convertir
  * @param array  $params Paramètres
  * 
  * @return string
  * */
 public function convertStringToUrlRewrite($texte, $params = array())
 {
     $caractereDefault = "_";
     if (isset($params['setCaractereDefault'])) {
         $caractereDefault = $params['setCaractereDefault'];
     }
     $texte = str_replace("&nbsp;", "_", $texte);
     $texte = strip_tags($texte);
     $texte = pia_strtolower($texte);
     $texte = Pia_eregreplace("[\\ |\\']", $caractereDefault, $texte);
     $texte = str_replace(array("ô", "à", "â", "û", "î", "é", "è", "ê", "&", ";", "(", ")", "ä", "/"), array("o", "a", "a", "u", "i", "e", "e", "e", "et", $caractereDefault, $caractereDefault, $caractereDefault, "a", $caractereDefault), $texte);
     $texte = str_replace(array(utf8_encode("ô"), utf8_encode("à"), utf8_encode("â"), utf8_encode("û"), utf8_encode("î"), utf8_encode("é"), utf8_encode("è"), utf8_encode("ê"), "&", ";", "(", ")", utf8_encode("ä")), array("o", "a", "a", "u", "i", "e", "e", "e", "et", $caractereDefault, $caractereDefault, $caractereDefault, "a"), $texte);
     return urlencode($texte);
 }