public function getLatestModification($nbElts) { $interest = new archiInterest(); $auth = new ArchiAuthentification(); $whereSimple = "WHERE ae.idAdresse IS NOT NULL "; $whereSimpleArray = array(); if ($auth->estConnecte()) { $arrayInterest = $interest->getFavorisByCategories(); if (!empty($arrayInterest)) { if (isset($arrayInterest['rue'])) { $fieldRue = implode(',', $arrayInterest['rue']); $subClause[] = "ha.idRue in ({$fieldRue})"; foreach ($arrayInterest['rue'] as $idRue) { $whereSimpleArray[] = "ha.idRue = " . $idRue . " "; } } if (isset($arrayInterest['sousQuartier'])) { $fieldSousQuartier = implode(',', $arrayInterest['sousQuartier']); $subClause[] = "ha.idSousQuartier in ({$fieldSousQuartier})"; foreach ($arrayInterest['sousQuartier'] as $idSousQuartier) { $whereSimpleArray[] = " ha.idSousQuartier = " . $idSousQuartier . " "; } } if (isset($arrayInterest['quartier'])) { $fieldQuartier = implode(',', $arrayInterest['quartier']); $subClause[] = "ha.idQuartier in ({$fieldQuartier})"; foreach ($arrayInterest['quartier'] as $idQuartier) { $whereSimpleArray[] = " ha.idQuartier = " . $idQuartier . " "; } } if (isset($arrayInterest['ville'])) { $fieldVille = implode(',', $arrayInterest['ville']); $subClause[] = "ha.idVille in ({$fieldVille})"; foreach ($arrayInterest['ville'] as $idVille) { $whereSimpleArray[] = " ha.idVille = " . $idVille . " "; } } if (isset($arrayInterest['pays'])) { $fieldPays = implode(',', $arrayInterest['pays']); $subClause[] = "ha.idPays in ({$fieldPays})"; foreach ($arrayInterest['pays'] as $idPays) { $whereSimpleArray[] = " ha.idPays = " . $idPays . " "; } } if (!empty($subClause)) { $whereClause .= " AND (" . implode(' OR ', $subClause) . ")"; } if (!empty($whereSimpleArray)) { $whereSimple .= " AND (" . implode(' OR ', $whereSimpleArray) . ")"; } $leftjoinCondition = "AND " . implode(' AND ', $whereSimpleArray); } } $requeteElements = "select * from (\n \t\t\t\t\t SELECT\n\t\t\t\t\t ee.idEvenement as idEvenementGroupeAdresse,\n\t\t\t\t\tevt.idEvenement AS idEvenement,\n\t\t\t\t\tae.idAdresse,\n\t\t\t\t\tnull as idPersonne,\n\t\t\t\t\tevt.idEvenementRecuperationTitre ,\n\t\t\t\t\tevt.idImagePrincipale AS idHistoriqueImage,\n\t\t\t\t\tte.nom as typeEvenement,\n\t\t\t\t\tdate_format(evt.dateCreationEvenement," . _('"%e/%m/%Y"') . ") as dateCreationEvenement,\n\t\t\t\t\tDATE_FORMAT(evt.dateCreationEvenement, '%Y%m%d%H%i%s') as DateTri,\n\t\t\t\t\tevt.description,\n\t\t\t\t\t'adresse' as type\n\t\t\n\t\t\t\t\tFROM evenements evt\n\t\t\t\t\tLEFT JOIN _evenementEvenement ee on ee.idEvenementAssocie = evt.idEvenement\n\t\t\t\t\tLEFT JOIN _adresseEvenement ae ON ae.idEvenement = ee.idEvenement\n\t\t\t\t\tLEFT JOIN historiqueAdresse ha on ha.idAdresse = ae.idAdresse\n\t\t\t\t\tLEFT JOIN typeEvenement te ON te.idTypeEvenement = evt.idTypeEvenement\n\t\t\n\t\t\t\t\tWHERE ae.idAdresse IS NOT NULL\n\t\t \t\t\t" . $whereClause . "\n\t\t\n\t\t\t\t UNION\n\t\t\t\t SELECT\n\t\t\t\t ee.idEvenement as idEvenementGroupeAdresse,\n\t\t\t\t evt.idEvenement AS idEvenement,\n\t\t\t\t\tNULL as idAdresse,\n\t\t\t\t\tp.idPersonne,\n\t\t\t\t evt.idEvenementRecuperationTitre ,\n\t\t\t\t evt.idImagePrincipale AS idHistoriqueImage,\n\t\t\t\t 'Personne' as typeEvenement,\n\t\t\t\t\tdate_format(evt.dateCreationEvenement," . _('"%e/%m/%Y"') . ") as dateCreationEvenement,\n\t\t\t\t\tDATE_FORMAT(evt.dateCreationEvenement, '%Y%m%d%H%i%s') as DateTri,\n\t\t\t\t evt.description,\n\t\t\t\t 'personne' as type\n\t\t\n\t\t\t\t FROM evenements evt\n\t\t\t\t LEFT JOIN _evenementEvenement ee on ee.idEvenementAssocie = evt.idEvenement\n\t\t\t\t LEFT JOIN _personneEvenement pe ON pe.idEvenement = ee.idEvenement\n\t\t\t\t LEFT JOIN personne p on p.idPersonne = pe.idPersonne\n\t\t\t\t\tLEFT JOIN _evenementPersonne ep on ep.idPersonne = p.idPersonne\n\t\t\t\t\tLEFT JOIN _evenementEvenement ee2 on ee2.idEvenementAssocie = ep.idEvenement\n\t\t\t\t\tLEFT JOIN _adresseEvenement ae on ae.idEvenement = ee2.idEvenement\n\t\t\t\t\tLEFT JOIN historiqueAdresse ha on ha.idAdresse = ae.idAdresse\n\t\t\n\t\t\t\t WHERE p.idPersonne IS NOT NULL\n\t\t\t\t\t" . $whereClause . "\n\t\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\n\t\t\t\t) as tmp\n\t\t\n\t\t\t\tWHERE tmp.DateTri = (\n\t\t\t\t SELECT max(DATE_FORMAT(evt2.dateCreationEvenement, '%Y%m%d%H%i%s'))\n\t\t\t\t FROM evenements evt2\n\t\t\t\t LEFT JOIN _evenementEvenement ee2 on ee2.idEvenementAssocie = evt2.idEvenement\n\t\t\t\t WHERE ee2.idEvenement = tmp.idEvenementGroupeAdresse\n\t\t\t\t)\n\t\t\t\tGROUP BY tmp.idEvenement\n\t\t\t\tORDER BY tmp.DateTri DESC\n\t\t\t\tLIMIT 8\n\t\t\n\t\t\t\t"; $resultIdAdresse = $this->connexionBdd->requete($requeteElements); $arrayIdEvenement = array(); $arrayEvenement = array(); while ($lastModif = mysql_fetch_assoc($resultIdAdresse)) { $tmp = $lastModif; if ($lastModif['type'] == 'adresse') { $requeteTitre = "SELECT e1.titre , e2.idImagePrincipale\n\t\t\t\t\t\tFROM evenements e1,evenements e2\n\t\t\t\t\t\tWHERE e2.idEvenement = " . $lastModif['idEvenementGroupeAdresse'] . "\n\t\t\t\t\t\tAND e1.idEvenement = e2.idEvenementRecuperationTitre\n\t\t\t\t\t\t\t\t"; $restitre = $this->connexionBdd->requete($requeteTitre); $titreArray = mysql_fetch_assoc($restitre); $evenement = new archiEvenement(); $idTitre = $evenement->getIdEvenementTitre($lastModif); $requeteTitreLegacy = "SELECT titre from evenements where idEvenement = {$idTitre}"; $resTitreLegacy = $this->connexionBdd->requete($requeteTitreLegacy); $titreArray = mysql_fetch_assoc($resTitreLegacy); $tmp['titre'] = $titreArray['titre']; $idImagePrincipale = $titreArray['idImagePrincipale']; if (isset($idImagePrincipale) && !empty($idImagePrincipale)) { $requeteIdHistoImage = "\n\t\t\t\t\t\t\tSELECT idHistoriqueImage\n\t\t\t\t\t\t\tFROM historiqueImage hi \n\t\t\t\t\t\t\tWHERE idImage = {$idImagePrincipale}\n\t\t\t\t\t\t\tORDER BY idHistoriqueImage DESC\n\t\t\t\t\t\t\tLIMIT 1\n\t\t\t\t\t\t\t"; $resIdImg = $this->connexionBdd->requete($requeteIdHistoImage); $arrayIdHistoImg = mysql_fetch_assoc($resIdImg); $tmp['idHistoriqueImage'] = $arrayIdHistoImg['idHistoriqueImage']; } } else { $p = new ArchiPersonne($tmp['idPersonne']); $tmp['titre'] = $p->getPersonneLibelle($tmp['idPersonne']); } $arrayLastModif[] = $tmp; } return $arrayLastModif; }
public function getPrivateProfil() { $auth = new ArchiAuthentification(); if ($auth->estConnecte()) { $userId = $auth->getIdUtilisateur(); } else { $this->messages->addError("Identifiant d'utilisateur incorrect"); $this->messages->display(); return false; } //Utilisateur banni if (!$this->isUtilisateurBanni(array('idUtilisateur' => $idUtilisateur))) { $t = new Template('modules/archi/templates/utilisateur'); $t->set_filenames(array('general' => 'profile.tpl', 'userStats' => 'statistics.tpl')); //Presentation $presentation = $this->getUserPresentation($userId); //Statistics $statistics = $this->getProfileStatistics($userId); foreach ($statistics as $stat) { $t->assign_block_vars('statistic', $stat); } //Informations $info = $this->getUserInfos($userId); //Formulaire $form = $this->getUserForm(); //Get contributions $contributions = $this->getAllContribution($userId); $t->assign_vars(array('userPresentation' => $presentation, 'userFormInfo' => $form, 'userInformations' => $info, 'userContributions' => $contributions)); $t->assign_var_from_handle('userStatistics', 'userStats'); $t->pparse('general'); } else { $this->messages->addWarning("Cet utilisateur est banni"); $this->messages->display(); return false; } }
/** * Get the form for comment * * * @param unknown $idEvenement * @param unknown $fields * @param string $ty : type of comment * @return string */ public function getFormComment($idEvenement, $fields, $ty = '') { $t = new Template('modules/archi/templates/'); $labelButton = "Ajouter un commentaire"; $type = $ty == '' ? 0 : $ty; $classButton = 'addCommentButtonWrapper'; $auth = new ArchiAuthentification(); if ($auth->estConnecte()) { $t->set_filenames(array('formComment' => 'comment/comment.tpl')); $url = ""; $userId = $auth->getIdUtilisateur(); $utilisateur = new archiUtilisateur(); $utilisateur->setUserId($userId); $nom = $utilisateur->getNom(); $prenom = $utilisateur->getPrenom(); $email = $utilisateur->getEmail(); $urlProfilePic = $utilisateur->getImageAvatar(array('idUtilisateur' => $userId)); $profileAlt = $prenom . " " . $nom; if ($ty == '') { $array_type = array(); $url = $this->creerUrl('enregistreCommentaire', '', array()); $labelButton .= " sur l'adresse"; $classButton .= " addCommentAdresseButtonWrapper"; } else { $array_type = array('type' => array('id' => 'type', 'type' => 'hidden', 'value' => $type)); $url = $this->creerUrl('enregistreCommentaireEvenement', '', array()); } $inputs = array('nom' => array('id' => 'nom', 'type' => 'hidden', 'value' => $nom), 'prenom' => array('id' => 'prenom', 'type' => 'hidden', 'value' => $prenom), 'email' => array('id' => 'email', 'type' => 'hidden', 'value' => $email), 'idEvenementGroupeAdresse' => array('id' => 'idEvenementGroupeAdresse', 'type' => 'hidden', 'value' => $idEvenement)); $inputs = array_merge($inputs, $array_type); foreach ($inputs as $input) { $t->assign_block_vars('input', $input); } $t->assign_vars(array('urlRedirect' => $url, 'name' => 'formAjoutCommentaire', 'urlProfilePic' => $urlProfilePic, 'profileAlt' => $profileAlt, 'labelButton' => $labelButton, 'classButton' => $classButton, 'idEvenement' => $idEvenement)); } else { $t->set_filenames(array('formComment' => 'comment/notconnected.tpl')); $urlConnexion = $this->creerUrl('', 'authentification'); $urlInscription = $this->creerUrl('', 'inscription'); if ($ty == '') { $labelButton .= " sur l'adresse"; $classButton .= " addCommentAdresseButtonWrapper"; } $t->assign_vars(array('urlInscription' => $urlInscription, 'urlConnexion' => $urlConnexion, 'labelButton' => $labelButton, 'classButton' => $classButton, 'idEvenement' => $idEvenement)); } //Setting CSS class for opening the form if (isset($this->variablesGet['commentFormActive']) && $this->variablesGet['commentFormActive']) { if ($this->variablesGet['commentFormActive'] == $idEvenement) { $t->assign_var('classWrappingDiv', 'active'); } } ob_start(); $t->pparse('formComment'); $html .= ob_get_contents(); ob_end_clean(); return $html; }
public function getFavorisByCategories() { $returnArray = array(); $auth = new ArchiAuthentification(); if (!$auth->estConnecte()) { $this->messages->addError('Impossible de récupérer vos favoris, vous n\'êtes pas connecté.'); $this->messages->display(); return false; } $userId = $auth->getIdUtilisateur(); //Rues $requete = "\n\t\tSELECT idRue\n\t\tFROM _interetRue\n\t\tWHERE idUtilisateur = {$userId}\n\t\t"; $result = $this->connexionBdd->requete($requete); $array = array(); while ($row = mysql_fetch_assoc($result)) { $array[] = $row['idRue']; } if (!empty($array)) { $returnArray['rue'] = $array; } //Sous-quartier $requete = "\n\t\tSELECT idSousQuartier\n\t\tFROM _interetSousQuartier\n\t\tWHERE idUtilisateur = {$userId}\n\t\t"; $result = $this->connexionBdd->requete($requete); $array = array(); while ($row = mysql_fetch_assoc($result)) { $array[] = $row['idSousQuartier']; } if (!empty($array)) { $returnArray['sousQuartier'] = $array; } //Quartier $requete = "\n\t\tSELECT idQuartier\n\t\tFROM _interetQuartier\n\t\tWHERE idUtilisateur = {$userId}\n\t\t"; $result = $this->connexionBdd->requete($requete); $array = array(); while ($row = mysql_fetch_assoc($result)) { $array[] = $row['idQuartier']; } if (!empty($array)) { $returnArray['quartier'] = $array; } //Villes $requete = "\n\t\tSELECT idVille\n\t\tFROM _interetVille\n\t\tWHERE idUtilisateur = {$userId}\n\t\t"; $result = $this->connexionBdd->requete($requete); $array = array(); while ($row = mysql_fetch_assoc($result)) { $array[] = $row['idVille']; } if (!empty($array)) { $returnArray['ville'] = $array; } //Pays $requete = "\n\t\tSELECT idPays\n\t\tFROM _interetPays\n\t\tWHERE idUtilisateur = {$userId}\n\t\t"; $result = $this->connexionBdd->requete($requete); $array = array(); while ($row = mysql_fetch_assoc($result)) { $array[] = $row['idPays']; } if (!empty($array)) { $returnArray['pays'] = $array; } return $returnArray; }