Display html details of a single event

@param unknown $idEvenement : id of the event to display
@return string : html of the detail event
346247
public function getEventInfos($idEvenement, $params = array())
    {
        $authentification = new archiAuthentification();
        $evenements = array();
        /*
		 * Data processing
		*/

        $requete = 'SELECT

				hE.idEvenement,
				hE.titre,
				hE.idSource,
				hE.idTypeStructure,
				hE.idTypeEvenement,
				hE.description,
				hE.dateDebut,
				hE.dateFin,
				hE.dateDebut,
				hE.dateFin,
				tE.nom AS nomTypeEvenement,
				tS.nom AS nomTypeStructure,
				s.nom AS nomSource,
				u.nom AS nomUtilisateur,
				u.prenom as prenomUtilisateur,
				tE.groupe,
				hE.ISMH ,
				hE.MH,
				date_format(hE.dateCreationEvenement,"'._("%e/%m/%Y à %kh%i").'") as dateCreationEvenement,
				hE.isDateDebutEnviron as isDateDebutEnviron,
				u.idUtilisateur as idUtilisateur,
				hE.numeroArchive as numeroArchive,
				ae.idAdresse,
				ha.idVille,
				ee.idEvenement as idEvenementGroupeAdresse

				FROM evenements hE
				LEFT JOIN source s      ON s.idSource = hE.idSource
				LEFT JOIN typeStructure tS  ON tS.idTypeStructure = hE.idTypeStructure
				LEFT JOIN typeEvenement tE  ON tE.idTypeEvenement = hE.idTypeEvenement
				LEFT JOIN utilisateur u     ON u.idUtilisateur = hE.idUtilisateur

				LEFT JOIN _evenementEvenement ee on ee.idEvenementAssocie ='. $idEvenement.'
				LEFT JOIN _adresseEvenement ae on ae.idEvenement = ee.idEvenement
				LEFT JOIN historiqueAdresse ha on ha.idAdresse= ae.idAdresse

				WHERE hE.idEvenement='.$idEvenement.'
				ORDER BY hE.idEvenement DESC
				LIMIT 1'

        ;

        if ($params['type'] == 'historique') {
            $requete = 'SELECT

				hE.idEvenement,
				hE.titre,
				hE.idSource,
				hE.idTypeStructure,
				hE.idTypeEvenement,
				hE.description,
				hE.dateDebut,
				hE.dateFin,
				hE.dateDebut,
				hE.dateFin,
				tE.nom AS nomTypeEvenement,
				tS.nom AS nomTypeStructure,
				s.nom AS nomSource,
				s.description as descriptionSource,
				u.nom AS nomUtilisateur,
				u.prenom as prenomUtilisateur,
				tE.groupe,
				hE.ISMH ,
				hE.MH,
				date_format(hE.dateCreationEvenement,"'._("%e/%m/%Y à %kh%i").'") as dateCreationEvenement,
				hE.isDateDebutEnviron as isDateDebutEnviron,
				u.idUtilisateur as idUtilisateur,
				hE.numeroArchive as numeroArchive,
				ae.idAdresse,
				ha.idVille,
				ee.idEvenement as idEvenementGroupeAdresse

				FROM historiqueEvenement hE
				LEFT JOIN source s      ON s.idSource = hE.idSource
				LEFT JOIN typeStructure tS  ON tS.idTypeStructure = hE.idTypeStructure
				LEFT JOIN typeEvenement tE  ON tE.idTypeEvenement = hE.idTypeEvenement
				LEFT JOIN utilisateur u     ON u.idUtilisateur = hE.idUtilisateur

				LEFT JOIN _evenementEvenement ee on ee.idEvenementAssocie = hE.idEvenement
				LEFT JOIN _adresseEvenement ae on ae.idEvenement = ee.idEvenement
				LEFT JOIN historiqueAdresse ha on ha.idAdresse= ae.idAdresse

				WHERE hE.idHistoriqueEvenement='.$idEvenement.'
				ORDER BY hE.idHistoriqueEvenement DESC';
        }
        $result = $this->connexionBdd->requete($requete);


        $fetch = mysql_fetch_assoc($result);
        $idEvenementGroupeAdresse = $fetch['idEvenementGroupeAdresse'];

        //History processing

        $requeteHistory ="SELECT idHistoriqueEvenement from historiqueEvenement where idEvenement = ".$idEvenement;
        $resultHistory = $this->connexionBdd->requete($requeteHistory);

        if (mysql_num_rows($resultHistory)>1) {
            $txtEnvoi = "modifié";
        } else {
            $txtEnvoi="envoyé";
        }
        $lienHistoriqueEvenementCourant=$this->creerUrl('', 'consultationHistoriqueEvenement', array('archiIdEvenement'=>$idEvenement));
        $labelHistoriqueEvenement = '(Consulter l\'historique)';

        //Image processing
        $images = new archiImage();
        $arrayImagesVuesSurByDate=array();
        $imagesHTML = $images->afficherFromEvenement($idEvenement, array('withoutImagesVuesSurPrisesDepuis'=>true,'imagesVuesSurLinkedByDate'=>$arrayImagesVuesSurByDate,'idGroupeAdresseEvenementAffiche'=>$idEvenementGroupeAdresse));

        if ($params['type'] == 'historique') {
            $req = "
								SELECT e.dateDebut, ae1.idAdresse
								FROM _adresseEvenement ae1,_adresseEvenement ae2
								LEFT JOIN historiqueEvenement e on e.idEvenement= ae2.idEvenement
								WHERE ae1.idAdresse= ae2.idAdresse
								AND e.idHistoriqueEvenement =".$idEvenement."
										ORDER BY e.idEvenement DESC LIMIT 1
									";
        } else {
            $req = "
								SELECT e.dateDebut, ae1.idAdresse
								FROM _adresseEvenement ae1,_adresseEvenement ae2
								LEFT JOIN evenements e on e.idEvenement= ae2.idEvenement
								WHERE ae1.idAdresse= ae2.idAdresse
								AND ae1.idEvenement =".$idEvenement."
										ORDER BY e.idEvenement DESC LIMIT 1
									";
        }
        $res = $this->connexionBdd->requete($req);
        $date2 =mysql_fetch_object($res);
        $idAdresse = $fetch['idAdresse'];
        $linkedEventsHTML=archiPersonne::displayEvenementsLies($idPerson, $dateDebut, $date2->dateDebut);

        //Personne processing
        if ($params['type'] == 'historique') {
            $rep = $this->connexionBdd->requete('
						SELECT  p.idPersonne, m.nom as metier, p.nom, p.prenom
						FROM _evenementPersonne _eP
						LEFT JOIN personne p ON p.idPersonne = _eP.idPersonne
						LEFT JOIN metier m ON m.idMetier = p.idMetier
						LEFT JOIN historiqueEvenement he on he.idEvenement = _eP.idEvenement
						WHERE he.idHistoriqueEvenement='.$idEvenement.'
						ORDER BY p.nom DESC');
        } else {
            $rep = $this->connexionBdd->requete('
						SELECT  p.idPersonne, m.nom as metier, p.nom, p.prenom
						FROM _evenementPersonne _eP
						LEFT JOIN personne p ON p.idPersonne = _eP.idPersonne
						LEFT JOIN metier m ON m.idMetier = p.idMetier
						WHERE _eP.idEvenement='.$idEvenement.'
						ORDER BY p.nom DESC');
        }

        $metier="";
        $arrayPersonne = array();
        while ($res = mysql_fetch_object($rep)) {
            $personne=array();
            if (isset($res->metier) && $res->metier!='') {
                $metier = $res->metier.' : ';
            }

            $arrayPersonne[]= array(
                    'evenement.pers', array(
                            'urlDetail'    => $this->creerUrl('', 'personne', array('idPersonne' => $res->idPersonne)),
                            'urlEvenement' => $this->creerUrl('', 'evenementListe', array('selection' => 'personne', 'id' => $res->idPersonne)),
                            'nom' => ucfirst(stripslashes($res->nom)),
                            'prenom' => ucfirst(stripslashes($res->prenom)),
                            'metier' => ucfirst(stripslashes($metier)),
                            'idPerson' => $res->idPersonne,
                            'idEvent' => $idEvenement
                    )
            );
        }


        /*
		 *  COURANTS ARCHI
		*/
        $rep = $this->connexionBdd->requete('
						SELECT  cA.idCourantArchitectural, cA.nom
						FROM _evenementCourantArchitectural _eA
						LEFT JOIN courantArchitectural cA  ON cA.idCourantArchitectural  = _eA.idCourantArchitectural
						WHERE _eA.idEvenement='.$idEvenement.'
						ORDER BY cA.nom ASC');
        $arrayCourantArchi = array();
        if (mysql_num_rows($rep)>0) {
            $arrayCourantArchi[] = array('evenement.isCourantArchi',array());
            while ($res = mysql_fetch_object($rep)) {
                $arrayCourantArchi[] = array('evenement.isCourantArchi.archi' , array(
                        'url' => $this->creerUrl('', 'evenementListe', array('selection' => 'courant', 'id' => $res->idCourantArchitectural)),
                        'nom' => $res->nom));
            }
        }

        //Commentaires
        $formulaireCommentaire=$this->getFormComment($idEvenement, $this->getCommentairesFields('evenement'), 'evenement');
        $listeCommentaires = $this->getListCommentairesEvenements($idEvenement);


        //Adresses liees processing
        $adressesLieesHTML = $this->getAdressesLieesAEvenement(array('modeRetour'=>'affichageSurDetailEvenement','idEvenement'=>$idEvenementGroupeAdresse));
        if ($adressesLieesHTML!='') {
            $adressesLieesHTML="<b>"._("Liste des adresses liées :")."</b> <br>".$adressesLieesHTML;
        }
        //Date processing
        $dateTxt = $this->getDateAsString($fetch);

        if (!empty($fetch['description']) && $fetch['description']!='') {
            //Description processing : BBCode parsing
            $bbCode = new bbCodeObject();
            $description = $bbCode->convertToDisplay(array('text'=>$fetch['description'],'idEvenement'=>$idEvenement));
            $description = empty($description)?"":"<div itemprop='description' class='desc'>".$description."</div>";
        }

        //User
        $idUtilisateur = $fetch['idUtilisateur'];
        $utilisateur = "<a href='".$this->creerUrl('', 'detailProfilPublique', array('archiIdUtilisateur'=>$idUtilisateur,'archiIdEvenementGroupeAdresseOrigine'=>$idEvenementGroupeAdresse))."'>".$fetch['prenomUtilisateur']." ".$fetch['nomUtilisateur']."</a>";

        //Event type
        $urlTypeEvenement = $this->creerUrl('', 'evenementListe', array('selection' => 'typeEvenement', 'id' => $fetch['idTypeEvenement']));
        $nomTypeEvenement = $fetch['nomTypeEvenement'];
        $lienTypeEvenement = "<a href=$urlTypeEvenement>$nomTypeEvenement</a>";

        //Structure type
        $urlTypeStructure = $this->creerUrl('', 'listeStructure', array('idTypeStructure'=>$fetch['idTypeStructure']));
        $nomTypeStructure = $fetch['nomTypeStructure'];
        $typeStructure = "<a href=\"$urlTypeStructure\">$nomTypeStructure</a> ";


        //Source
        $source="";
        if (isset($fetch['nomSource']) && $fetch['nomSource'] != '') {
            $source="Source : <a href='".
            $this->creerUrl(
                '',
                'listeAdressesFromSource',
                array(
                            'source'=>$fetch['idSource'],
                            'submit'=>'Rechercher')
            )."' onmouseover=\"document.getElementById('calqueDescriptionSource').style.top=(getScrollHeight()+150)+'px';
							document.getElementById('calqueDescriptionSource').style.display='block';
							document.getElementById('iframe').src='".$this->creerUrl('', 'descriptionSource', array('archiIdSource'=>$fetch['idSource'],'noHeaderNoFooter'=>1))."';\"
									>".
            stripslashes($fetch['nomSource'])."
					</a><br>";
        }


        //Info used for menu display
        $cityId = $fetch['idVille'];
        $isModerateur = true;
        $isAdmin = true;
        $u = new archiUtilisateur();
        $userId = $authentification->getIdUtilisateur();
        $urlProfilPic = $u->getImageAvatar(array('idUtilisateur'=>$idUtilisateur));
        $isModerateur = $u->isModerateurFromVille($userId, $cityId, 'idVille');
        $isAdmin = ($u->getIdProfil($userId)=='4');


        $urlMenuAction = array(
                'ajouterImage'     => $this->creerUrl('', 'ajoutImageEvenement', array('archiIdEvenement'=>$idEvenement)),
                'modifierImage'    => $this->creerUrl('', 'modifierImageEvenement', array('archiIdEvenement'=>$idEvenement)),
                'modifierEvenement'=>$this->creerUrl('', 'modifierEvenement', array('archiIdEvenement' => $idEvenement,'archiIdEvenementGroupeAdresse'=>$fetch['idEvenementGroupeAdresse'],'archiIdAdresse'=>$fetch['idAdresse'])),
                'supprimerEvenement' =>  $this->creerUrl('supprimerEvenement', '', array('archiIdEvenement'=>$idEvenement)),

                'urlImporterImage'=>"#",
                'onClickImporterImage'=>"document.getElementById('formulaireEvenement').action='".$this->creerUrl('deplacerImagesSelectionnees', 'evenement', array('idEvenement'=>$idEvenement))."&deplacerVersIdEvenement=".$res->idEvenement."';document.getElementById('actionFormulaireEvenement').value='deplacerImages';if(confirm('Voulez-vous vraiment déplacer ces images ?')){document.getElementById('formulaireEvenement').submit();}",
                'onClickSupprimerImage'=>"document.getElementById('formulaireEvenement').action='".$this->creerUrl('supprimerImagesSelectionnees', 'evenement', array('idEvenement'=>$idEvenement))."';document.getElementById('actionFormulaireEvenement').value='supprimerImages';if(confirm('Voulez-vous vraiment supprimer ces images ?')){document.getElementById('formulaireEvenement').submit();}",
                'lierAdresse'=>$this->creerUrl('', 'afficheFormulaireEvenementAdresseLiee', array('idEvenement'=>$idEvenement)),
                'versAdresse'=>$this->creerUrl('deplacerEvenementVersNouveauGA', 'evenement', array('idEvenement'=>$idEvenement)),
                'plusCreer' => $this->creerUrl('deplacerEvenementVersNouveauGA', 'evenement', array('idEvenement'=>$idEvenement))
        );

        $numeroArchive = "";
        if ($fetch['numeroArchive']!='') {
            // modif fabien du 15/04/2011 suite mail directrice Archives de Strasbourg Mme Perry Laurence
            $numeroArchive = "Cote Archives de Strasbourg : ".$fetch['numeroArchive']."";
        }

        // si on est en mode de deplacement d'image
        // ou de selection de titre
        // on rajoute le formulaire sur la page
        if ($authentification->estConnecte() && ((isset($this->variablesGet['afficheSelectionImage']) && $this->variablesGet['afficheSelectionImage']=='1')||(isset($this->variablesGet['afficheSelectionTitre']) && $this->variablesGet['afficheSelectionTitre']=='1') )) {
            $arrayFormEvenement = array('formEvenement', array());
        }
        /*
		 * Template filling
		*/

        //Unset some stuff for historic
        if ($params['type'] == 'historique') {
            unset($listeCommentaires);
            unset($formulaireCommentaire);
            unset($lienHistoriqueEvenementCourant);
            unset($labelHistoriqueEvenement);
        }




        $evenementData = array(
                'titre' => stripslashes($fetch['titre']),
                'infoTitre'=> $utilisateur . " a ".$txtEnvoi." un événement",
                'txtEnvoi' => $txtEnvoi." le",
                'utilisateur' => $fetch['prenomUtilisateur'].' '.$fetch['nomUtilisateur'],
                'urlProfilPic' => $urlProfilPic,
                'dateEnvoi' =>$fetch['dateCreationEvenement'],
                'lienHistoriqueEvenementCourant' => $lienHistoriqueEvenementCourant,
                'labelLienHistorique'=>$labelHistoriqueEvenement,
                'dates'=>$dateTxt,
                'source'=>$source,
                'labelStructure' =>"Structure  : ",
                'typeStructure'=>$typeStructure,
                'labelTypeEvenement' => 'Type d\'Événement : ',
                'urlTypeEvenement'=>$this->creerUrl('', 'evenementListe', array('selection' => 'typeEvenement', 'id' => $fetch['idTypeEvenement'])),
                'lienTypeEvenement'=> $lienTypeEvenement,
                'typeEvenement'=>$fetch['nomTypeEvenement'],
                'numeroArchive'=>$numeroArchive,
                'description'=>$description,
                'imagesLiees'=>$imagesHTML,
                'evenementsParents'=>'',
                'listeAdressesLiees'=>$adressesLieesHTML,
                'evenementsLiesPersonne' =>$linkedEventsHTML,
                'idEvenement' =>$idEvenement,
                'listeCommentaireEvenement' => $listeCommentaires,
                'formulaireCommentaireEvenement' => $formulaireCommentaire

        );

        //}//End while($fetch = mysql_fetch_assoc($result))

        $evenements[]=$evenementData;
        /*
		 * Useless now, but might be need futher if
		*	this function is reused and should not display menu action
		*/
        $afficherMenu=$authentification->estConnecte();
        $allowSuppressImage = false; //Set to false now, image suppression isn't implemented
        if ($params['type'] == 'historique') {
            $afficherMenu=false;
        }
        $menuArray = array();


        if ($afficherMenu) {
            $menuArray[] = array('evenement.menuAction', array());
            $menuArray[] = array('evenement.menuAction.rowName', array(
                    'actionName'=>'Ajouter',
                    'urlAction'=>$urlMenuAction['ajouterImage'],
                    'actionTarget'=>'Image'
            ));

            $menuArray[] = array('evenement.menuAction.rowName', array(
                    'actionName'=>'Modifier',
                    'urlAction'=>$urlMenuAction['modifierImage'],
                    'actionTarget'=>'Image'
            ));

            $menuArray[] = array('evenement.menuAction.rowName.secondAction', array(
                    'urlAction'=>$urlMenuAction['modifierEvenement'],
                    'actionTarget'=>'Événement'
            ));
        }

        if ($isModerateur || $isAdmin) {
            $menuArray[] = array('evenement.menuAction.rowName', array(
                    'actionName'=>'Supprimer',
                    'urlAction'=>'#',
                    'actionTarget'=>'Événement'
            ));

            $menuArray[] = array('evenement.menuAction.rowName.confirmMessage', array(
                    'message'=>'Voulez vous vraiment supprimer cet événement ?',
                    'url'=>$urlMenuAction['supprimerEvenement']
            ));

            if ($isAdmin && $allowSuppressImage) {
                $menuArray[] = array('evenement.menuAction.rowName.secondAction', array(
                        'urlAction'=>'#',
                        'actionTarget'=>'Image'
                ));

                $menuArray[] = array('evenement.menuAction.rowName.secondAction.confirmMessage', array(
                        'message'=>'Voulez vous vraiment supprimer cette image ?',
                        'url'=>$urlMenuAction['onClickSupprimerImage']
                ));
            }
            if ($isAdmin) {
                $menuArray[] = array('evenement.menuAction.rowName', array(
                        'actionName'=>'Lier',
                        'urlAction'=>$urlMenuAction['lierAdresse'],
                        'actionTarget'=>'Adresses'
                ));

                $menuArray[] = array('evenement.menuAction.rowName', array(
                        'actionName'=>'Déplacer',
                        'urlAction'=>$urlMenuAction['versAdresse'],
                        'actionTarget'=>'Vers adresse'
                ));

                $menuArray[] = array('evenement.menuAction.rowName.secondAction', array(
                        'urlAction'=>$urlMenuAction['plusCreer'],
                        'actionTarget'=>'+Créer'
                ));
            }
        }
        return array('evenementData' => $evenementData, 'menuArray' => $menuArray, 'arrayPersonne'=>$arrayPersonne,'arrayFormEvent' => $arrayFormEvenement,'arrayCourantArchi' => $arrayCourantArchi);
    }
1329363
public function render(ElementInterface $element)
    {
        $captcha = $element->getCaptcha();

        if ($captcha === null || !$captcha instanceof CaptchaAdapter) {
            throw new Exception\DomainException(sprintf(
                '%s requires that the element has a "captcha" attribute implementing Zend\Captcha\AdapterInterface',
                __METHOD__
            ));
        }

        $name = $element->getName();
        $id = $element->getAttribute('id') ? $element->getAttribute('id') : $name;

        $captchaPattern = '<div %s></div>';

        $captchaAttributes = $this->createAttributesString(array(
            'class' => 'g-recaptcha '.$element->getAttribute('class'),
            'data-sitekey' => $captcha->getSiteKey(),
            'data-theme' => $captcha->getTheme(),
            'data-type' => $captcha->getType(),
            'data-size' => $captcha->getSize(),
            'data-callback' => $captcha->getCallback(),
        ));


        $captchaElement = sprintf($captchaPattern, $captchaAttributes);
        $input = $this->renderHiddenInput($id, $name);
        $js = $this->renderJsCallback($captcha->getCallback(), $id);

        return $captchaElement . $input . $js;
    }
648050
public function html($client=null)
	{
		$this->setRendered(true);
		$id = self::idPrefix.$this->id;
		$return  = '<div class="'.self::elementClass."\" id=\"{$id}_container\">";
		$return .= "<label for=\"{$id}\">{$this->title}:</label>";
		$return .= "<div class=\"input\">";
		$return .= "<div class=\"input-append\">";
		if(!empty($this->value))
		{
			$view = $this->value;
			$xView = true;
			if(is_array($this->source))
			{
				foreach($this->source as $item)
				{
					$item = (object) $item;
					if($item->id==$this->value)
					{
						$view = $item->label;
						$xView = true;
						break;
					}
				}
			}
			else
			{
				$proxy = $this->getContext()->getModel('Proxy');
				$response = $proxy->requestJson('admin/forms/selectables.json', HTTP_Request2::METHOD_GET, array(
					'field' => $this->id,
					'workflow' => AgaviConfig::get('Nosazin.workflow'),
					'filter' => array(
						'id' => $this->value
					)
				));
				if(is_object($response) and $response->success)
				{
					foreach($response->result as $item)
					{
						if($item->id==$this->value)
						{
							$view = $item->label;
							$xView = true;
							break;
						}
					}
				}
			}
			$return .= "<input type=\"text\" name=\"{$this->name}_view\" ".
				"id=\"{$id}_view\" value=\"{$view}\" ".
				($this->readonly===true?'readonly="readonly" ':'').
				($this->disabled===true?'disabled="disabled" ':'').
				"/>";
			$return .= "<input type=\"hidden\" name=\"{$this->name}\" ".
				"id=\"{$id}\" value=\"{$this->value}\" />";
		}
		else
			$return .= "<input type=\"text\" name=\"{$this->name}\" ".
				"id=\"{$id}\" value=\"{$this->value}\" ".
				($this->readonly===true?'readonly="readonly" ':'').
				($this->disabled===true?'disabled="disabled" ':'').
				"/>";
		$return .= "<label class=\"add-on\">↓</label>".
			"</div></div></div>";
		if(!is_null($client) and is_callable(array($this, $client)))
		{
			$return = $this->{$client}($return);
		}
		return $return;
	}
1092764
protected function getHtmlMessage($exception)
    {
        $title = 'Application Error';
        
        if ($this->options['display_details']) {
            $html = '<p>The application could not run because of the following error:</p>';
            $html .= '<h2>Details</h2>';
            $html .= $this->getItemHtmlMessage($exception);
            
            while ($exception = $exception->getPrevious()) {
                $html .= '<h2>Previous exception</h2>';
                $html .= $this->getItemHtmlMessage($exception);
            }
        } else {
            $html = '<p>A website error has occurred. Sorry for the temporary inconvenience.</p>';
        }
        
        $output = sprintf(
            "<html><head><meta http-equiv='Content-Type' content='text/html; charset=utf-8'>" .
            "<title>%s</title><style>body{margin:0;padding:30px;font:14px/1.5 Helvetica,Arial,Verdana," .
            "sans-serif;}h1{margin:0;font-size:48px;font-weight:normal;line-height:48px;}strong{" .
            "display:inline-block;width:65px;}</style></head><body><h1>%s</h1>%s</body></html>",
            $title,
            $title,
            $html
            );
        
        return $output;
    }
753597
public function getInputHtml($value, ElementInterface $element = null): string
    {
        // Get our id and namespace
        $id = Craft::$app->getView()->formatInputId($this->handle);
        $namespacedId = Craft::$app->getView()->namespaceInputId($id);

        // Render the input template
        return Craft::$app->getView()->renderTemplate(
            'preparse-field/_components/fields/_input',
            [
                'name' => $this->handle,
                'value' => $value,
                'field' => $this,
                'id' => $id,
                'namespacedId' => $namespacedId,
            ]
        );
    }
555855
public function supprimer($idEvenement, $idHistoriqueEvenement = '')
    {
        $html = '';
        $idEvenementGroupeAdresse = 0;
        if ($idHistoriqueEvenement !='') {
            $adresse = new archiAdresse();
            $reqRecupIdEvenementGroupeAdresse = "
					SELECT DISTINCT ee.idEvenement as idEvenementGroupeAdresse
					FROM evenements he
					LEFT JOIN _evenementEvenement ee ON ee.idEvenementAssocie = he.idEvenement
					WHERE idEvenement ='".$idHistoriqueEvenement."'";
            //debug($reqRecupIdEvenementGroupeAdresse);
            $resRecupIdEvenementGroupeAdresse = $this->connexionBdd->requete($reqRecupIdEvenementGroupeAdresse);
            $fetchRecupIdEvenementGroupeAdresse = mysql_fetch_assoc($resRecupIdEvenementGroupeAdresse);
            $idEvenementGroupeAdresse = $fetchRecupIdEvenementGroupeAdresse['idEvenementGroupeAdresse'];



            // recup d'idAdresse pour l'affichage du detail de l'adresse a la fin de la suppression
            $reqSuppHistorique = "DELETE FROM evenements WHERE idEvenement = '".idEvenement."'";
            //debug($reqSuppHistorique);
            $resSupprHistorique = $this->connexionBdd->requete($reqSuppHistorique);


            // maj des position au cas ou , meme si dans ce cas en principe ce n'est pas la peine (a moins que ce ne soit le dernier historique du groupe d'adresse
            $this->majPositionsEvenements(array('idEvenementGroupeAdresse'=>$idEvenementGroupeAdresse,'refreshAfterDelete'=>true));


            $idAdresse = $adresse->getIdAdresseFromIdEvenementGroupeAdresse($idEvenementGroupeAdresse);
        } else {
            $image = new archiImage();
            $personne = new archiPersonne();
            $courant = new archiCourantArchitectural();
            $adresse = new archiAdresse();

            // suppression d'un evenement
            // verification que l'evenement est le seul ou pas lié au groupe d'adresse
            $idEvenementGroupeAdresse = $this->getParent($idEvenement);


            foreach ($_SESSION['lastVisited'] as $key => $lastVisit) {
                if ($lastVisit['idEvenementGroupeAdresse'] == $idEvenementGroupeAdresse) {
                    unset($_SESSION['lastVisited'][$key]);
                }
            }

            //debug($idEvenementGroupeAdresse);
            // on verifie que l'evenement n'a qu'un seul parent
            $reqVerifParent = "
					SELECT idEvenement
					FROM _evenementEvenement
					WHERE idEvenementAssocie = '".$idEvenement."'
							";
            //debug($reqVerifParent);

            $resVerifParent = $this->connexionBdd->requete($reqVerifParent);
            if (mysql_num_rows($resVerifParent)==1) {
            // on verifie que l'evenement parent est bien un groupe d'adresse ( pour le jour ou on ajoutera les sous sous evenements)
                if ($this->isEvenementGroupeAdresse($idEvenementGroupeAdresse)) {
                // comptage du nombre d'elements du groupe d'adresse
                    $req = "select idEvenementAssocie from _evenementEvenement where idEvenement = '".$idEvenementGroupeAdresse."'";
                    //debug($req);
                    $res = $this->connexionBdd->requete($req);

                    if (mysql_num_rows($res)==1) {
                    // un seul element a supprimer , on supprime aussi le groupe d'adresse dans un deuxieme temps , voir plus bas, et donc les commentaires lies a ce groupe d'adresse

                        // evenement images
                        $image->deleteImagesFromIdEvenement($idEvenement);
                        // personnes
                        $personne->deleteLiaisonsPersonneFromIdEvenement($idEvenement);
                        // courant architectural
                        $courant->deleteLiaisonsCourantFromIdEvenement($idEvenement);
                        // commentaires
                        $adresse->deleteCommentairesFromIdEvenement($idEvenementGroupeAdresse);
                        // adresses liees à l'evenement , on supprime la liaison
                        $this->deleteLiaisonsAdressesLieesSurEvenement($idEvenement);

                        // quand il y aura des sous sous evenements , il faudra aussi les supprimer
                        // ...
                        $reqDeleteEvenement = "DELETE FROM evenements WHERE idEvenement = '".$idEvenement."'";
                        //debug($reqDeleteEvenement);
                        $resDeleteEvenement = $this->connexionBdd->requete($reqDeleteEvenement);

                        $reqDeleteEvenementGroupeEvenement = "DELETE FROM evenements WHERE idEvenement = ( SELECT idEvenement FROM _evenementEvenement WHERE idEvenementAssocie = '".$idEvenement."' )";
                        $reqDeleteEvenementEvenement = "DELETE FROM _evenementEvenement WHERE idEvenementAssocie = '".$idEvenement."'";
                        //debug($reqDeleteEvenementEvenement);
                        $resDeleteEvenementEvenement = $this->connexionBdd->requete($reqDeleteEvenementEvenement);

                        // maj des position
                        $this->majPositionsEvenements(array('idEvenementGroupeAdresse'=>$idEvenementGroupeAdresse,'refreshAfterDelete'=>true)); // dans ce cas la fonction va se charger de supprimer les positions des evenements du groupe d'adresse supprimé
                    } elseif (mysql_num_rows($res)>1) {
                        $image = new archiImage();
                        $personne = new archiPersonne();
                        $courant = new archiCourantArchitectural();
                        // plusieurs elements , on supprime simplement l'evenement passé en parametre de la fonction

                        // evenement images
                        $image->deleteImagesFromIdEvenement($idEvenement);
                        // personnes
                        $personne->deleteLiaisonsPersonneFromIdEvenement($idEvenement);
                        // courant architectural
                        $courant->deleteLiaisonsCourantFromIdEvenement($idEvenement);
                        // quand il y aura des sous sous evenements , il faudra aussi les supprimer
                        // ...
                        // adresses liees à l'evenement , on supprime la liaison
                        $this->deleteLiaisonsAdressesLieesSurEvenement($idEvenement);

                        $reqDeleteEvenementEvenement = "DELETE FROM _evenementEvenement WHERE idEvenementAssocie = '".$idEvenement."'";
                        //debug($reqDeleteEvenementEvenement);
                        $resDeleteEvenementEvenement = $this->connexionBdd->requete($reqDeleteEvenementEvenement);

                        //supression de l'evenement
                        $reqDeleteEvenement = "DELETE FROM evenements WHERE idEvenement = '".$idEvenement."'";
                        //debug($reqDeleteEvenement);
                        $resDeleteEvenement = $this->connexionBdd->requete($reqDeleteEvenement);

                        $this->majPositionsEvenements(array('idEvenementGroupeAdresse'=>$idEvenementGroupeAdresse,'refreshAfterDelete'=>true)); // dans ce cas la fonction va mettre a jour les positions des evenements pour que ceux ci se suivent, et supprimera la liaison vers l'evenement qui n'existe plus
                    } elseif (mysql_num_rows($res)==0) {
                    // probleme , il n'y a pas d'evenements fils correspondant a l'idEvenementGroupeAdresse
                        echo "l'événement n'existe plus. Veuillez contacter l'administrateur.<br>";
                    }
                } else {
                    echo "L'événement parent n'est pas de type groupe d'adresse : veuillez contactez l'administrateur.<br>";
                }
            } elseif (mysql_num_rows($resVerifParent)>1) {
                echo "Erreur : l'evenement appartient a plusieurs groupes d'adresses : contactez l'administrateur<br>";
            } else {
                echo "Erreur : l'evenement n'appartient a aucun groupe d'adresse : contactez l'administrateur<br>";
            }



            // pour l'affichage de retour : on recupere l'adresse
            $idAdresse = $adresse->getIdAdresseFromIdEvenementGroupeAdresse($idEvenementGroupeAdresse); // attention si l'evenement groupe adresse a ete supprimé precedemment


            $nbEvenementLiesAuGroupeAdresse = $this->getNbEvenementsFromGroupeAdresse($idEvenementGroupeAdresse);

            if ($nbEvenementLiesAuGroupeAdresse==0 && $idEvenementGroupeAdresse!='' && $idEvenementGroupeAdresse !='0') {
            // s'il n'y a aucun evenement lié au groupe d'adresses , on peut supprimer le groupe d'adresse et les liaisons vers celui ci
                $reqDeleteGroupeAdresseHistorique = "DELETE FROM evenements WHERE idEvenement = '".$idEvenementGroupeAdresse."'";
                //debug($reqDeleteGroupeAdresseHistorique);
                $resDeleteGroupeAdresseHistorique = $this->connexionBdd->requete($reqDeleteGroupeAdresseHistorique);

                $reqDeleteAdresseGroupeAdresse = "DELETE FROM _adresseEvenement WHERE idEvenement = '".$idEvenementGroupeAdresse."'";
                //debug($reqDeleteAdresseGroupeAdresse);
                $resDeleteAdresseGroupeAdresse = $this->connexionBdd->requete($reqDeleteAdresseGroupeAdresse);

                // on supprime aussi les liaisons vers le groupe d'adresse dans les adresses liés
                $reqDeleteLiaisonsAdressesLiees = "DELETE FROM _evenementAdresseLiee WHERE idEvenementGroupeAdresse='".$idEvenementGroupeAdresse."'";
                //debug($reqDeleteLiaisonsAdressesLiees);
                $resDeleteAdresseGroupeAdresse = $this->connexionBdd->requete($reqDeleteLiaisonsAdressesLiees);

                // supprimons aussi les liaisons vueSur et prisDepuis sur le groupe d'adresse
                $reqDeleteVueSurPrisDepuis = "DELETE FROM _adresseImage WHERE idEvenementGroupeAdresse = '".$idEvenementGroupeAdresse."' AND (vueSur='1' OR prisDepuis='1')";
                //debug($reqDeleteVueSurPrisDepuis);
                $resDeleteVueSurPrisDepuis = $this->connexionBdd->requete($reqDeleteVueSurPrisDepuis);

                // suppression des liaisons entre evenement et evenement groupe d'adresse
                $reqDeleteEvenementGAEvenementAssocie = "DELETE FROM _evenementEvenement WHERE idEvenement='".$idEvenementGroupeAdresse."'";
                //debug($reqDeleteEvenementGAEvenementAssocie);
                $resDeleteEvenementGAEvenementAssocie = $this->connexionBdd->requete($reqDeleteEvenementGAEvenementAssocie);
                $idEvenementGroupeAdresse=0;
            }
        }
        if ($idPerson=archiPersonne::isPerson($idEvenementGroupeAdresse)) {
            header("Location: ".$this->creerUrl('', '', array('archiAffichage'=>'evenementListe', 'selection'=>"personne", 'id'=>$idPerson), false, false));
        }
        if ($idEvenementGroupeAdresse == 0) {
            header("Location: index.php");
        } else {
            header("Location: ".$this->creerUrl('', '', array('archiAffichage'=>'adresseDetail', 'archiIdAdresse'=>$idAdresse, 'archiIdEvenementGroupeAdresse'=>$idEvenementGroupeAdresse), false, false));
        }
    }
203811
private function getEventDetailsHtml(&$details) {
    $html = '<h4>Event Goal</h4><pre>' .
            'Use Event Value = ' . $details->getUseEventValue();

    // Get all the event goal conditions.
    $conditions = $details->getEventConditions();

    // String condition types.
    $stringTypes = array('CATEGORY', 'ACTION', 'LABEL');

    foreach ($conditions as &$condition) {
      $html .= "Event Type = $condition->getEventType()";

      $eventType = $condition->getType();
      if (in_array($eventType, $stringTypes)) {
        // Process CATEGORY, ACTION, LABEL.
        $html .= "Match Type = $condition->getMatchType()" .
                 "Expression = $condition->getExpression()";
      } else {
        // Process VALUE.
        $html .= "Comparison Type  = $condition->getComparisonType()" .
                 "Comparison Value = $condition->getComparisonValue()";
      }
    }

    return $html . '</pre>';
  }
999469
public function getGroupeFromTypeEvenement($idTypeEvenement = 0)
    {
        $req = "select groupe from typeEvenement where idTypeEvenement = '".$idTypeEvenement."'";
        $res = $this->connexionBdd->requete($req);
        $fetch = mysql_fetch_assoc($res);

        return $fetch['groupe'];
    }
1080381
public function detailsJSON($lang, $id)
    {
        // check if user has permissions to access this link
        if(!User::hasAccess('Menu', 'read')) {
            return $this->noPermission();
        }
        // get selected menu
        $menu = Menu::findByID($id);

        // TODO me i marr te dhanat e menu linkave prej cachit
        $this->existingMenuLinks = MenuLink::where('menuID', $id)->orderBy("order", "ASC")->get()->toArray();
        $convertedMenuLinks = $this->convertToParentChild($this->existingMenuLinks);
        $convertedMenuLinks = $this->filterParents($convertedMenuLinks);

        $final = array(
            'list' => $convertedMenuLinks,
            'menu' => $menu,
            'languages' => Language::all()
        );

        // Fire event
        $final['events'] = Event::fire('menu:pre_update', [$final]);

        return $final;
    }
651912
protected function _getHtml( $id )
	{
		$context = $this->_getContext();
		$cache = $context->getCache();
		$key = md5( $id . 'product:detail-seen' );

		if( ( $html = $cache->get( $key ) ) === null )
		{
			$expire = null;
			$tags = array();
			$view = $this->getView();
			$config = $context->getConfig();

			$default = array( 'media', 'price', 'text' );
			$domains = $config->get( 'client/html/catalog/domains', $default );

			/** client/html/catalog/detail/seen/domains
			 * A list of domain names whose items should be available in the last seen view template for the product
			 *
			 * The templates rendering product details usually add the images,
			 * prices and texts, etc. associated to the product
			 * item. If you want to display additional or less content, you can
			 * configure your own list of domains (attribute, media, price, product,
			 * text, etc. are domains) whose items are fetched from the storage.
			 * Please keep in mind that the more domains you add to the configuration,
			 * the more time is required for fetching the content!
			 *
			 * @param array List of domain names
			 * @since 2014.07
			 * @category Developer
			 * @see client/html/catalog/domains
			 * @see client/html/catalog/list/domains
			 * @see client/html/catalog/detail/domains
			 */
			$domains = $config->get( 'client/html/catalog/detail/seen/domains', $domains );

			$view->seenProductItem = MShop_Factory::createManager( $context, 'product' )->getItem( $id, $domains );

			$this->_addMetaItem( $view->seenProductItem, 'product', $expire, $tags );
			$this->_addMetaList( $view->seenProductItem->getId(), 'product', $expire );

			$output = '';
			foreach( $this->_getSubClients() as $subclient ) {
				$output .= $subclient->setView( $view )->getBody( '', $tags, $expire );
			}
			$view->seenBody = $output;

			/** client/html/catalog/detail/seen/default/template-body
			 * Relative path to the HTML body template of the catalog detail seen client.
			 *
			 * The template file contains the HTML code and processing instructions
			 * to generate the result shown in the body of the frontend. The
			 * configuration string is the path to the template file relative
			 * to the layouts directory (usually in client/html/layouts).
			 *
			 * You can overwrite the template file configuration in extensions and
			 * provide alternative templates. These alternative templates should be
			 * named like the default one but with the string "default" replaced by
			 * an unique name. You may use the name of your project for this. If
			 * you've implemented an alternative client class as well, "default"
			 * should be replaced by the name of the new class.
			 *
			 * @param string Relative path to the template creating code for the HTML page body
			 * @since 2014.03
			 * @category Developer
			 * @see client/html/catalog/detail/seen/default/template-header
			 */
			$tplconf = 'client/html/catalog/detail/seen/default/template-body';
			$default = 'catalog/detail/seen-body-default.html';

			$html = $view->render( $this->_getTemplate( $tplconf, $default ) );

			$cache->set( $key, $html, $tags, $expire );
		}

		return $html;
	}
1269546
public function view($id, GeneratorListener $listener)
    {
        $model = Report::where('id', $id)->first();
        if (is_null($model)) {
            return $listener->viewFailed();
        }
        return $this->presenter->publishHtml($model);
    }
853004
private function getUrlDestinationDetailsHtml(&$details) {
    $html = '<h4>Url Destination Goal</h4>';
    $html .= <<<HTML
<pre>
Goal URL            = {$details->getUrl()}
Case Sensitive      = {$details->getCaseSensitive()}
Match Type          = {$details->getMatchType()}
First Step Required = {$details->getFirstStepRequired()}
</pre>
HTML;

  $html .= '<h4>Destination Goal Steps</h4>';
  $steps = $details->getSteps();
  if (count($steps) == 0) {
    $html .= '<p>No Steps Configured</p>';

  } else {
    foreach ($steps as &$step) {
      $html .= <<<HTML
<pre>
Step Number = {$step->getNumber()}
Step Name   = {$step->getName()}
Step URL    = {$step->getUrl()}
</pre>
HTML;
    }
  }

  return $html;
  }
389662
public function getFormulaireCommentaires($idEvenementGroupeAdresse = 0, $fieldsCommentaires = array())
    {
        $html="";
        $e = new archiEvenement();
        $idEvenementGroupeAdresse = $e->getIdEvenementGroupeAdresseFromIdEvenement($idEvenementGroupeAdresse);


        $fieldsCommentaires["idEvenementGroupeAdresse"]['default'] = $idEvenementGroupeAdresse;

        // si un utilisateur est connecté , on renseigne directement ces infos , mais on lui laisse la possibilité de modifier
        $authentification = new archiAuthentification();

        if ($authentification->estConnecte()) {
            $idUtilisateur = $authentification->getIdUtilisateur();
            $utilisateur = new archiUtilisateur();
            $fetchUtilisateur = $utilisateur->getArrayInfosFromUtilisateur($idUtilisateur);
            // patchs pour que l'on reaffiche les nom prenom et mail une fois le formulaire validé et le commentaire enregistré
            if (isset($this->variablesPost['nom'])) {
                unset($this->variablesPost['nom']);
                unset($_POST['nom']);
            }
            if (isset($this->variablesPost['prenom'])) {
                unset($this->variablesPost['prenom']);
                unset($_POST['prenom']);
            }
            if (isset($this->variablesPost['email'])) {
                unset($this->variablesPost['email']);
                unset($_POST['email']);
            }
            $fieldsCommentaires['nom']['default']=stripslashes($fetchUtilisateur['nom']);
            $fieldsCommentaires['prenom']['default']=stripslashes($fetchUtilisateur['prenom']);
            $fieldsCommentaires['email']['default']=$fetchUtilisateur['mail'];


            $fieldsCommentaires['nom']['type']='hidden';
            $fieldsCommentaires['prenom']['type']='hidden';
            $fieldsCommentaires['email']['type']='hidden';

            unset($fieldsCommentaires['captcha']); // pas de captcha quand on est connecté
        }

        $help = $this->getHelpMessages('helpEvenement');

        $bbMiseEnFormBoutons= "<div style=''><input type=\"button\" value=\"b\" style=\"width:50px;font-weight:bold\" onclick=\"bbcode_ajout_balise('b', 'formAjoutCommentaire', 'commentaire');bbcode_keyup(this,'apercu');\" onMouseOver=\"getContextHelp('".$help["msgGras"]."');\" onMouseOut=\"closeContextHelp();\"/>
    <input type=\"button\" value=\"i\" style=\"width:50px;font-style:italic\" onclick=\"bbcode_ajout_balise('i', 'formAjoutCommentaire', 'commentaire');bbcode_keyup(this,'apercu');\" onMouseOver=\"getContextHelp('".$help["msgItalic"]."');\" onMouseOut=\"closeContextHelp();\"/>
    <input type=\"button\" value=\"u\" style=\"width:50px;text-decoration:underline;\" onclick=\"bbcode_ajout_balise('u', 'formAjoutCommentaire', 'commentaire');bbcode_keyup(this,'apercu');\" onMouseOver=\"getContextHelp('".$help["msgUnderline"]."');\" onMouseOut=\"closeContextHelp();\"/>
    <input type=\"button\" value=\"quote\" style=\"width:50px\" onclick=\"bbcode_ajout_balise('quote', 'formAjoutCommentaire', 'commentaire');bbcode_keyup(this,'apercu');\" onMouseOver=\"getContextHelp('".$help["msgQuotes"]."');\" onMouseOut=\"closeContextHelp();\"/>
    <!--<input type=\"button\" value=\"code\" style=\"width:50px\" onclick=\"bbcode_ajout_balise('code', 'formAjoutCommentaire', 'commentaire');bbcode_keyup(this,'apercu');\" onMouseOver=\"getContextHelp('{msgCode}');\" onMouseOut=\"closeContextHelp();\" onkeyup=\"bbcode_keyup(this,'apercu');\"/>-->
    <input type=\"button\" value=\"url interne\"  style=\"width:75px\" onclick=\"bbcode_ajout_balise('url',  'formAjoutCommentaire', 'commentaire');bbcode_keyup(this,'apercu');\" onMouseOver=\"getContextHelp('Insérer une adresse WEB interne à archi-strasbourg.org');\" onMouseOut=\"closeContextHelp();\" onkeyup=\"bbcode_keyup(this,'apercu');\"/>
    <input type=\"button\" value=\"url externe\"  style=\"width:80px\" onclick=\"bbcode_ajout_balise('urlExterne',  'formAjoutCommentaire', 'commentaire');bbcode_keyup(this,'apercu');\" onMouseOver=\"getContextHelp('Insérer une adresse WEB externe à archi-strasbourg.org');\" onMouseOut=\"closeContextHelp();\" onkeyup=\"bbcode_keyup(this,'apercu');\"/></div>";

        $fieldsCommentaires['commentaire']['htmlCodeBeforeField'] = $bbMiseEnFormBoutons;

        $tabCommentaires = array(   'titrePage'=>_("Ajouter un commentaire concernant l'adresse"),
                                    'formName'=>'formAjoutCommentaire',
                                    'formAction'=>$this->creerUrl('enregistreCommentaire', '', array()),
                                    'tableHtmlCode'=>" class='formAjoutCommentaire'",
                                    'codeHtmlInFormAfterFields'=>_("Prévisualisation :")."<div id='apercu'></div><div id='helpCalque' style='background-color:#FFFFFF; border:2px solid #000000;padding:10px;float:left;display:none;'><img src='images/aide.jpg' style='float:left;padding-right:3px;' valign='middle'><div id='helpCalqueTxt' style='padding-top:7px;'></div></div><script type='text/javascript' >
                                    bbcode_keyup(document.forms['formAjoutCommentaire'].elements['commentaire'], 'apercu');setTimeout('majDescription()',1000);
                                    function majDescription()
                                    {
                                        bbcode_keyup(document.getElementById('commentaire'), 'apercu');
        								setTimeout('majDescription()',500);
                                    }</script>",
                                    'fields'=>$fieldsCommentaires);


        $formulaire = new formGenerator();


        $bbCode = new bbCodeObject();

        $html.= $formulaire->afficherFromArray($tabCommentaires);

        return $html;
    }
1372940
def get_event_display_settings(self, id, **data):
        
        
        return self.get("/events/{0}/display_settings/".format(id), data=data)
97971
public function render(ElementInterface $element): string
    {
        if (! $element instanceof ErrorAwareInterface) {
            throw new InvalidClassException(
                sprintf(
                    'The given element "%s" does not implement "%s"',
                    $element->name(),
                    ErrorAwareInterface::class
                )
            );
        }

        $errors = $element->errors();
        if (count($errors) < 1) {
            return '';
        }

        $html = array_reduce(
            $errors,
            function ($html, $error): string {
                $html .= sprintf(
                    $this->options['error'],
                    $error
                );

                return $html;
            },
            ''
        );

        return sprintf(
            $this->options['wrapper'],
            $html
        );
    }
1129222
public function showInputView()
	{
        $template=$this->parent->templateFilePath('View');
        if( !file_exists($template) ){
            $this->parent->showView();
        }
        
        if($this->element->getId()){
            $nextStep = $this->encodeURL('makeSelection', array($this->element->getId()));
            $href = htmlentities(
					$this->element->encodeURL(
							array(),
							'showUpdate',
							array(
								'',
								$this->element->encodeURL(
										array(),
										'processUpdate',
										array($nextStep)
								)
							)
					)
			);
			return '<div class="SimplOn actions">
                        <a class="SimplOn lightbox" href="'.$href.'">Edit</a>
                        <a class="SimplOn delete" href="#">X</a>
                    </div>
                    <div class="SimplOn view">'.$this->element->showView($template, true).'</div>
            ';
        }else{
            return '';
        }
	}
656620
public function getIdEvenementGroupeAdresseFromIdEvenement($idEvenement = 0)
    {
        $retour = 0;

        if ($this->isEvenementGroupeAdresse($idEvenement)) {
            $retour = $idEvenement;
        } else {
            $req = "SELECT idEvenement FROM _evenementEvenement WHERE idEvenementAssocie = '".$idEvenement."' LIMIT 1";
            $res = $this->connexionBdd->requete($req);
            if (mysql_num_rows($res)>0) {
                $fetch = mysql_fetch_assoc($res);
                $retour = $fetch['idEvenement'];
            }
        }

        return $retour;
    }