$motsCle = ", " . implode(", ", $tabMotsCleNettoye); } // description if ($titreFirstEvenement == '') { $description = $titre; } else { $aRemplacer = array("\n\r", "\r\n", "\n", "\r", "\""); $remplacerPar = array("", "", "", "", "'"); // s'il y a un titre au premier evenement, on affiche le titre et les 100 premiers mot de la description $description = $titreFirstEvenement . " " . $string->coupureTexte(strip_tags($string->sansBalises(str_replace($aRemplacer, $remplacerPar, stripslashes($descriptionFirstEvenement)))), 100); } } // referencement - description - titre de la page dans le cas de l'affichage de la page detail d'une image if (isset($_GET['archiAffichage']) && $_GET['archiAffichage'] == 'imageDetail' && isset($_GET['archiIdImage']) && $_GET['archiIdImage'] != '' && $_GET['archiIdImage'] != '0') { $e = new archiEvenement(); if (!archiPersonne::isPerson($e->getIdEvenementGroupeAdresseFromIdEvenement($_GET['archiRetourIdValue']))) { $resAdresses = $image->getIdAdressesFromIdImage($_GET['archiIdImage']); if ($fetchAdresses = mysql_fetch_assoc($resAdresses)) { $resGroupeAdresses = $adresse->getIdEvenementsFromAdresse($fetchAdresses['idAdresse']); $fetchGroupeAdresses = mysql_fetch_assoc($resGroupeAdresses); $titreFirstEvenement = $evenement->getTitreFromFirstChildEvenement($fetchGroupeAdresses['idEvenement']); $titre = "Photo : " . $titreFirstEvenement; $resAdresse = $adresse->getAdressesFromEvenementGroupeAdresses($fetchGroupeAdresses['idEvenement']); $fetchAdresse = mysql_fetch_assoc($resAdresse); $idAdresse = $fetchAdresse['idAdresse']; $intituleAdresse = $adresse->getIntituleAdresseFrom($idAdresse, "idAdresse", array('afficheSousQuartier' => false, 'noQuartierCentreVille' => true)); $titre = str_replace("\"", "'", $titre . " - " . $intituleAdresse); } else { $titre = "Photo - " . $titre; } }
* */ ?> <!DOCTYPE HTML> <html> <head> <meta charset="UTF-8" /> <title>Archi-Strasbourg - Éléments orphelins</title> </head> <body> <ul> <?php require_once "includes/framework/config.class.php"; require_once "modules/archi/includes/archiEvenement.class.php"; $config = new ArchiConfig(); $req = "\nSELECT idEvenement, titre\nFROM historiqueEvenement\nGROUP BY idEvenement;"; $res = $config->connexionBdd->requete($req); $e = new archiEvenement(); while ($event = mysql_fetch_object($res)) { if (!$e->getIdEvenementGroupeAdresseFromIdEvenement($event->idEvenement)) { if (!empty($event->titre)) { $titre = $event->titre; } else { $titre = '(sans titre)'; } echo '<li><a href="index.php?archiAffichage=adresseDetail' . '&archiIdEvenementGroupeAdresse=' . $event->idEvenement . '&modeAffichage=simple">' . $titre . '</a></li>'; } } ?> </ul> </body> </html>
private function displayTitle($idAdresse) { // attention s'il y a plusieurs evenement distinct (pas associes entre eux) reliés a l'adresse on les affichera a la suite if (isset($_GET["archiIdAdresse"])) { $address = $this->getArrayAdresseFromIdAdresse($_GET["archiIdAdresse"]); } $reqTitre = "\n\t\t\t\tSELECT he1.titre as titre\n\t\t\t\tFROM _adresseEvenement ae\n\t\t\t\tLEFT JOIN evenements he1 ON he1.idEvenement = ae.idEvenement\n\t\t\t\tWHERE he1.titre!=''\n\t\t\t\tAND ae.idAdresse = '" . $idAdresse . "'\n\t\t\t\tAND he1.idTypeEvenement <>'6'\n\t\t\t\tGROUP BY he1.idEvenement\n\t\t\t\tORDER BY he1.dateDebut\n\t\t\t\tLIMIT 1\n\n\t\t\t\t"; $resTitre = $this->connexionBdd->requete($reqTitre); if (mysql_num_rows($resTitre) == 1) { $fetchTitre = mysql_fetch_assoc($resTitre); $titre = stripslashes($fetchTitre['titre']); if (trim($fetchTitre['titre']) == '') { $noTitreDetected = true; $titre = ''; } } // } $e = new archiEvenement(); $archiIdEvenementGroupeAdresse = isset($_GET['archiIdEvenementGroupeAdresse']) ? $_GET['archiIdEvenementGroupeAdresse'] : $e->getIdEvenementGroupeAdresseFromIdEvenement($_GET["archiIdEvenement"]); $titre = $intituleAdresse = $this->getIntituleAdresseFrom($archiIdEvenementGroupeAdresse, "idEvenementGroupeAdresse", array("afficheTitreSiTitreSinonRien" => true, "noHTML" => true)); if (isset($titre) && !empty($titre)) { if (isset($_GET['archiAffichage']) && $_GET['archiAffichage'] == 'adresseDetail') { $html .= "<span itemprop='name'>"; } $html .= $titre; if (isset($_GET['archiAffichage']) && $_GET['archiAffichage'] == 'adresseDetail') { $html .= "</span>"; } if (!empty($address["nomRue"])) { $html .= " - "; } } if (isset($address)) { if (isset($_GET['archiAffichage']) && $_GET['archiAffichage'] == 'adresseDetail') { $html .= "<span itemprop='address' itemscope itemtype='http://schema.org/PostalAddress'><span itemprop='streetAddress'>"; } if ($address["numero"] . " " != 0) { $html .= $address["numero"]; if (isset($address['nomIndicatif'])) { $html .= $address["nomIndicatif"]; } $html .= ' '; } $html .= $address["prefixeRue"] . " " . $address["nomRue"]; if (isset($_GET['archiAffichage']) && $_GET['archiAffichage'] == 'adresseDetail') { $html .= "</span>\n\t\t\t\t\t\t<meta itemprop='addressLocality' content='" . $address["nomVille"] . "'/>\n\t\t\t\t\t\t<meta itemprop='addressCountry' content='" . $address["nomPays"] . "'/>\n\t\t\t\t\t\t</span>"; } } return $html; }
public function getIdVilleFrom($id = 0, $type = '') { $idVille = 0; switch ($type) { case 'idImage': $idAdresseFromImage = ""; // recherche de la ville correspondante a l'image $reqAdresse = "\n\t\t\t\tSELECT ha1.idRue as idRue,ha1.idQuartier as idQuartier,ha1.idSousQuartier as idSousQuartier,ha1.idVille as idVille\n\t\t\t\tFROM historiqueAdresse ha1\n\t\t\t\tLEFT JOIN historiqueAdresse ha2 ON ha2.idAdresse = ha1.idAdresse\n\t\t\t\tLEFT JOIN _evenementImage ei ON ei.idImage = '{$id}'\n\t\t\t\tLEFT JOIN _evenementEvenement ee ON ee.idEvenementAssocie = ei.idEvenement\n\t\t\t\tLEFT JOIN _adresseEvenement ae ON ae.idEvenement = ee.idEvenement\n\t\t\t\tWHERE ha1.idAdresse = ae.idAdresse\n\t\t\t\tGROUP BY ha1.idAdresse,ha1.idHistoriqueAdresse\n\t\t\t\tHAVING ha1.idHistoriqueAdresse = max(ha2.idHistoriqueAdresse)\n\t\t\t\t"; $resAdresse = $this->connexionBdd->requete($reqAdresse); while ($fetchAdresse = mysql_fetch_assoc($resAdresse)) { if ($fetchAdresse['idVille'] != '0') { $idVille = $fetchAdresse['idVille']; } if ($fetchAdresse['idRue'] != '0') { $reqRue = "\n\t\t\t\t\t\t\t\tSELECT idVille\n\t\t\t\t\t\t\t\tFROM quartier\n\t\t\t\t\t\t\t\tWHERE idQuartier IN\n\t\t\t\t\t\t\t\t(SELECT idQuartier FROM sousQuartier WHERE idSousQuartier IN\n\t\t\t\t\t\t\t\t(SELECT idSousQuartier FROM rue WHERE idRue='" . $fetchAdresse['idRue'] . "')\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t"; $resRue = $this->connexionBdd->requete($reqRue); $fetchRue = mysql_fetch_assoc($resRue); $idVille = $fetchRue['idVille']; } if ($fetchAdresse['idQuartier'] != '0') { $reqQuartier = "\n\t\t\t\t\t\t\t\tSELECT idVille FROM quartier WHERE idQuartier ='" . $fetchAdresse['idQuartier'] . "'\n\t\t\t\t\t\t\t\t\t\t"; $resQuartier = $this->connexionBdd->requete($reqQuartier); $fetchQuartier = mysql_fetch_assoc($resQuartier); $idVille = $fetchQuartier['idVille']; } if ($fetchAdresse['idSousQuartier'] != '0') { $reqSousQuartier = "SELECT idVille FROM quartier WHERE idQuartier IN (SELECT idQuartier FROM sousQuartier WHERE idSousQuartier='" . $fetchAdresse['idSousQuartier'] . "')"; $resSousQuartier = $this->connexionBdd->requete($reqSousQuartier); $fetchSousQuartier = mysql_fetch_assoc($resSousQuartier); $idVille = $fetchSousQuartier['idVille']; } } break; case 'idAdresse': // recherche de la ville correspondante a l'idAdresse $reqAdresse = "\n\t\t\t\tSELECT ha1.idRue as idRue,ha1.idQuartier as idQuartier,ha1.idSousQuartier as idSousQuartier,ha1.idVille as idVille\n\t\t\t\tFROM historiqueAdresse ha1\n\t\t\t\tLEFT JOIN historiqueAdresse ha2 ON ha2.idAdresse = ha1.idAdresse\n\t\t\t\tWHERE ha1.idAdresse = '{$id}'\n\t\t\t\tGROUP BY ha1.idAdresse,ha1.idHistoriqueAdresse\n\t\t\t\tHAVING ha1.idHistoriqueAdresse = max(ha2.idHistoriqueAdresse)\n\t\t\t\t"; $resAdresse = $this->connexionBdd->requete($reqAdresse); while ($fetchAdresse = mysql_fetch_assoc($resAdresse)) { if ($fetchAdresse['idVille'] != '0') { $idVille = $fetchAdresse['idVille']; } if ($fetchAdresse['idRue'] != '0') { $reqRue = "\n\t\t\t\t\t\t\t\tSELECT idVille\n\t\t\t\t\t\t\t\tFROM quartier\n\t\t\t\t\t\t\t\tWHERE idQuartier IN\n\t\t\t\t\t\t\t\t(SELECT idQuartier FROM sousQuartier WHERE idSousQuartier IN\n\t\t\t\t\t\t\t\t(SELECT idSousQuartier FROM rue WHERE idRue='" . $fetchAdresse['idRue'] . "')\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t"; $resRue = $this->connexionBdd->requete($reqRue); $fetchRue = mysql_fetch_assoc($resRue); $idVille = $fetchRue['idVille']; } if ($fetchAdresse['idQuartier'] != '0') { $reqQuartier = "\n\t\t\t\t\t\t\t\tSELECT idVille FROM quartier WHERE idQuartier ='" . $fetchAdresse['idQuartier'] . "'\n\t\t\t\t\t\t\t\t\t\t"; $resQuartier = $this->connexionBdd->requete($reqQuartier); $fetchQuartier = mysql_fetch_assoc($resQuartier); $idVille = $fetchQuartier['idVille']; } if ($fetchAdresse['idSousQuartier'] != '0') { $reqSousQuartier = "SELECT idVille FROM quartier WHERE idQuartier IN (SELECT idQuartier FROM sousQuartier WHERE idSousQuartier='" . $fetchAdresse['idSousQuartier'] . "')"; $resSousQuartier = $this->connexionBdd->requete($reqSousQuartier); $fetchSousQuartier = mysql_fetch_assoc($resSousQuartier); $idVille = $fetchSousQuartier['idVille']; } } break; case 'idEvenementGroupeAdresse': case 'idEvenement': $evenement = new archiEvenement(); $idEvenementGroupeAdresse = $evenement->getIdEvenementGroupeAdresseFromIdEvenement($id); $idAdresse = $this->getIdAdresseFromIdEvenementGroupeAdresse($idEvenementGroupeAdresse); // recherche de la ville correspondante a l'idAdresse $reqAdresse = "\n\t\t\t\t\t\tSELECT ha1.idRue as idRue,ha1.idQuartier as idQuartier,ha1.idSousQuartier as idSousQuartier,ha1.idVille as idVille\n\t\t\t\t\t\tFROM historiqueAdresse ha1\n\t\t\t\t\t\tLEFT JOIN historiqueAdresse ha2 ON ha2.idAdresse = ha1.idAdresse\n\t\t\t\t\t\tWHERE ha1.idAdresse = '" . $idAdresse . "'\n\t\t\t\t\t\t\t\tGROUP BY ha1.idAdresse,ha1.idHistoriqueAdresse\n\t\t\t\t\t\t\t\tHAVING ha1.idHistoriqueAdresse = max(ha2.idHistoriqueAdresse)\n\t\t\t\t\t\t\t\t"; $resAdresse = $this->connexionBdd->requete($reqAdresse); while ($fetchAdresse = mysql_fetch_assoc($resAdresse)) { if ($fetchAdresse['idVille'] != '0') { $idVille = $fetchAdresse['idVille']; } if ($fetchAdresse['idRue'] != '0') { $reqRue = "\n\t\t\t\t\t\t\t\tSELECT idVille\n\t\t\t\t\t\t\t\tFROM quartier\n\t\t\t\t\t\t\t\tWHERE idQuartier IN\n\t\t\t\t\t\t\t\t(SELECT idQuartier FROM sousQuartier WHERE idSousQuartier IN\n\t\t\t\t\t\t\t\t(SELECT idSousQuartier FROM rue WHERE idRue='" . $fetchAdresse['idRue'] . "')\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t"; $resRue = $this->connexionBdd->requete($reqRue); $fetchRue = mysql_fetch_assoc($resRue); $idVille = $fetchRue['idVille']; } if ($fetchAdresse['idQuartier'] != '0') { $reqQuartier = "\n\t\t\t\t\t\t\t\tSELECT idVille FROM quartier WHERE idQuartier ='" . $fetchAdresse['idQuartier'] . "'\n\t\t\t\t\t\t\t\t\t\t"; $resQuartier = $this->connexionBdd->requete($reqQuartier); $fetchQuartier = mysql_fetch_assoc($resQuartier); $idVille = $fetchQuartier['idVille']; } if ($fetchAdresse['idSousQuartier'] != '0') { $reqSousQuartier = "SELECT idVille FROM quartier WHERE idQuartier IN (SELECT idQuartier FROM sousQuartier WHERE idSousQuartier='" . $fetchAdresse['idSousQuartier'] . "')"; $resSousQuartier = $this->connexionBdd->requete($reqSousQuartier); $fetchSousQuartier = mysql_fetch_assoc($resSousQuartier); $idVille = $fetchSousQuartier['idVille']; } } break; case 'idRue': $req = "\n\t\t\t\t\t\tSELECT v.idVille as idVille\n\t\t\t\t\t\tFROM ville v\n\t\t\t\t\t\tLEFT JOIN quartier q ON q.idVille = v.idVille\n\t\t\t\t\t\tLEFT JOIN sousQuartier sq ON sq.idQuartier = q.idQuartier\n\t\t\t\t\t\tLEFT JOIN rue r ON r.idSousQuartier = sq.idSousQuartier\n\t\t\t\t\t\tWHERE r.idRue = '" . $id . "'\n\t\t\t\t\t\t\t\t"; $res = $this->connexionBdd->requete($req); if (mysql_num_rows($res) == 1) { $fetch = mysql_fetch_assoc($res); $idVille = $fetch['idVille']; } break; case 'idSousQuartier': $req = "\n\t\t\t\t\t\tSELECT v.idVille as idVille\n\t\t\t\t\t\tFROM ville v\n\t\t\t\t\t\tLEFT JOIN quartier q ON q.idVille = v.idVille\n\t\t\t\t\t\tLEFT JOIN sousQuartier sq ON sq.idQuartier = q.idQuartier\n\t\t\t\t\t\tWHERE sq.idSousQuartier = '" . $id . "'\n\n\t\t\t\t\t\t\t\t"; $res = $this->connexionBdd->requete($req); if (mysql_num_rows($res) == 1) { $fetch = mysql_fetch_assoc($res); $idVille = $fetch['idVille']; } break; case 'idQuartier': $req = "\n\t\t\t\t\t\tSELECT v.idVille as idVille\n\t\t\t\t\t\tFROM ville v\n\t\t\t\t\t\tLEFT JOIN quartier q ON q.idVille = v.idVille\n\t\t\t\t\t\tWHERE q.idQuartier = '" . $id . "'\n\t\t\t\t\t\t\t\t"; $res = $this->connexionBdd->requete($req); if (mysql_num_rows($res) == 1) { $fetch = mysql_fetch_assoc($res); $idVille = $fetch['idVille']; } break; } return $idVille; }
/** * Fonction permettant a l'administrateur de visualiser l'historique de l'image * * @param int $idImage ID de l'image * * @return string HTML * */ public function afficheHistoriqueImage($idImage = 0) { $u = new archiUtilisateur(); $html = ""; $req = "SELECT idHistoriqueImage, dateUpload, idImage, idUtilisateur, description, dateCliche, isDateClicheEnviron, idSource FROM historiqueImage WHERE idImage='" . $idImage . "'"; $res = $this->connexionBdd->requete($req); $t = new tableau(); $d = new dateObject(); $bb = new bbCodeObject(); $s = new archiSource(); $authentification = new archiAuthentification(); $droitsObject = new droitsObject(); $idProfilUtilisateur = $u->getIdProfilFromUtilisateur($authentification->getIdUtilisateur()); $isRegenerationPossible = false; if ($droitsObject->isAuthorized('image_regenerer', $idProfilUtilisateur)) { $isRegenerationPossible = true; } while ($fetch = mysql_fetch_assoc($res)) { //$html.="<img src='".$this->getUrlImage("moyen").$fetch['dateUpload']."/".$fetch['idHistoriqueImage'].".jpg"."'><br>"; $t->addValue("<img src='" . $this->getUrlImage("moyen") . $fetch['dateUpload'] . "/" . $fetch['idHistoriqueImage'] . ".jpg" . "'>", "valign=top"); $arrayInfosUtilisateur = $u->getArrayInfosFromUtilisateur($fetch['idUtilisateur'], array('listeChamps' => 'nom, prenom')); $libelleUtilisateur = $arrayInfosUtilisateur['nom'] . " " . $arrayInfosUtilisateur['prenom']; $dateCliche = " - "; if ($fetch['dateCliche'] != '0000-00-00') { $environ = ""; if ($fetch['isDateClicheEnviron'] == '1') { $environ = "Environ "; } $dateCliche = $environ . $d->toFrenchAffichage($fetch['dateCliche']); } $libelleSource = $s->getSourceLibelle($fetch['idSource']); if ($libelleSource != '') { $libelleSource = "<tr><td><b>source : </b>" . $libelleSource . "</td></tr>"; } $description = ""; if ($fetch['description'] != '') { $description = "<tr><td><b>description :</b><br>" . $bb->convertToDisplay(array('text' => $fetch['description'])) . "</td></tr>"; } $detailHistoriqueImage = "<table><tr><td>de <a href='" . $this->creerUrl('', 'detailProfilPublique', array('archiIdUtilisateur' => $fetch['idUtilisateur'])) . "'>" . $libelleUtilisateur . "</a> (le " . $d->toFrenchAffichage($fetch['dateUpload']) . ")</td></tr><tr><td><b>date cliché : </b>" . $dateCliche . "</td></tr>" . $description . "" . $libelleSource . "</table>"; $t->addValue($detailHistoriqueImage); if ($isRegenerationPossible) { $reqRegenerationAvailable = "SELECT idHistoriqueImage , idImage , cheminImageUploadee FROM imagesUploadeesPourRegeneration WHERE idHistoriqueImage = '" . $fetch['idHistoriqueImage'] . "' AND idImage='" . $idImage . "'"; $resRegenerationAvailable = $this->connexionBdd->requete($reqRegenerationAvailable); if (mysql_num_rows($resRegenerationAvailable) > 0) { $fetchRegenerationAvailable = mysql_fetch_assoc($resRegenerationAvailable); if (file_exists($this->getCheminPhysique() . "/images/uploadMultiple/" . $fetchRegenerationAvailable['cheminImageUploadee'])) { $t->addValue("<input type='button' name='regenere' value='régéréner les photos à partir de la source' onclick=\"location.href='" . $this->creerUrl('regenereImageFromUploadDir', 'imageDetail', array('archiIdHistoriqueImage' => $fetch['idHistoriqueImage'], 'archiIdImage' => $idImage)) . "';\">"); } else { $t->addValue("Enregistrement trouvé, mais fichier source de régénération inexistant."); } } else { $t->addValue("Pas de régénération possible"); } } } // En principe cette variable represente un idEvenement, a changer pour l'id evenementGroupeAdresse if (isset($this->variablesGet['archiRetourIdValue']) && $this->variablesGet['archiRetourIdValue'] != '') { $adresse = new archiAdresse(); $evenement = new archiEvenement(); $idEvenementGroupeAdresse = $evenement->getIdEvenementGroupeAdresseFromIdEvenement($this->variablesGet['archiRetourIdValue']); $html .= $adresse->afficherRecapitulatifAdresses($idEvenementGroupeAdresse); } $html .= "<h2>Historique de l'image {$idImage}</h2>"; if ($isRegenerationPossible) { $html .= $t->createHtmlTableFromArray(3, '', '', ''); } else { $html .= $t->createHtmlTableFromArray(2, '', '', ''); } return $html; }
/** * Affiche la liste des personnes liées à une source * * @param int $idSource ID de la source * * @return void * */ public static function getPersonsFromSource($idSource) { global $config; $req = "SELECT idEvenement\n FROM `historiqueEvenement`\n WHERE `idSource` =" . $idSource; $res = $config->connexionBdd->requete($req); $e = new archiEvenement(); while ($event = mysql_fetch_object($res)) { $idEvenementGroupeAdresse = $e->getIdEvenementGroupeAdresseFromIdEvenement($event->idEvenement); if ($idPerson = archiPersonne::isPerson($idEvenementGroupeAdresse)) { $person = new archiPersonne($idPerson); $people[] = $person->getInfosPersonne($idPerson); } } if (isset($people)) { $already = array(); print "<b>Voici la liste des personnes auxquelles cette source est attachée</b>"; print '<table class="results">'; foreach ($people as $person) { if (!in_array($person['idPersonne'], $already)) { $already[] = $person['idPersonne']; print '<tr class="listAddressItem"> <td><a href="' . $config->creerUrl("", "evenementListe", array("selection" => "personne", "id" => $person['idPersonne'])) . '"><img src="' . archiPersonne::getImage($person['idPersonne'], "mini", false) . '" border=0 alt=""></a> <span><br/><a href="' . $config->creerUrl("", "evenementListe", array("selection" => "personne", "id" => $person['idPersonne'])) . '" >' . stripslashes($person['prenom'] . " " . $person['nom']) . '</a></span><br/><span style="font-size:11px;">' . $person['nomMetier'] . '</span></td> </tr>'; } } print '</table>'; } }