49,9 → 49,7 |
* Vérifier que le service est bien configuré |
* */ |
public function verifierConfiguration() { |
|
$erreurs = array(); |
$tableauImages = $this->conteneur->getParametre('mapping_masque'); |
|
if (empty($this->mappingFiltre)) { |
$erreurs[] = '- le fichier de configuration ne contient pas le tableau [mapping_masque] ou celui-ci est vide ;'; |
94,24 → 92,6 |
return $donnees; |
} |
|
private function creerCategorie($element) { |
$categorie = 'Commentaires'; |
$categorie = htmlentities($categorie); |
return $categorie; |
} |
|
private function creerUrlService() { |
$url_service = ''; |
if (count($_GET) > 0) { |
$parametres_get = array(); |
foreach ($_GET as $cle => $valeur) { |
$parametres_get[] = $cle.'='.$valeur; |
} |
$url_service .= '?'.implode('&', $parametres_get); |
} |
return $url_service; |
} |
|
private function construireDonneesCommunesAuFlux($infos) { |
$donnees = array(); |
$donnees['guid'] = ''; |
131,6 → 111,11 |
return $donnees; |
} |
|
private function creerUrlService() { |
$url_service = 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']; |
return $url_service; |
} |
|
private function construireDonneesCommunesAuxItems($info) { |
$item = array(); |
$date_modification_timestamp = strtotime($info['date']); |
148,16 → 133,6 |
return $item; |
} |
|
private function creerGuidItem($element) { |
$guid = sprintf($this->conteneur->getParametre('guidObsTpl'), $element['id_commentaire']); |
return $guid; |
} |
|
private function creerLienItem($element) { |
$lien = sprintf($this->conteneur->getParametre('delFicheObsTpl'), $element['dob_id_observation']); |
return $lien; |
} |
|
private function creerTitre($element) { |
$nomPropose = htmlspecialchars($element['nom_sel']); |
$intitule = ($element['nom_sel'] != '') ? "Proposition $nomPropose" : 'Commentaire'; |
170,46 → 145,93 |
return $titre; |
} |
|
private function creerAuteur($info) { |
return $info['utilisateur_prenom'].' '.$info['utilisateur_nom']; |
} |
|
private function creerGuidItem($element) { |
$guid = sprintf($this->conteneur->getParametre('guidObsTpl'), $element['id_commentaire']); |
return $guid; |
} |
|
private function creerLienItem($element) { |
$lien = sprintf($this->conteneur->getParametre('delFicheObsTpl'), $element['dob_id_observation']); |
return $lien; |
} |
|
private function creerCategorie($element) { |
$categorie = 'Commentaires'; |
$categorie = htmlentities($categorie); |
return $categorie; |
} |
|
private function creerDescription($donnees, $item) { |
$idCommentaire = $donnees['id_commentaire']; |
$idObs = $donnees['dob_id_observation']; |
$nomPropose = ($donnees['nom_sel'] != '') ? htmlspecialchars($donnees['nom_sel']) : ''; |
$dateCommentaire = htmlspecialchars(strftime('%A %d %B %Y à %H:%M', strtotime($donnees['date']))); |
$nomSelActuel = htmlspecialchars($donnees['dob_nom_sel']); |
$etreProposition = ($nomPropose != '') ? true : false; |
$intitule = ($etreProposition) ? 'Proposition' : 'Commentaire'; |
$txt = ($donnees['texte'] != '') ? htmlspecialchars($donnees['texte']) : ''; |
$auteur = htmlspecialchars($this->creerAuteur($donnees)). |
($this->fluxAdminDemande() ? ' ('.$donnees['utilisateur_courriel'].')' : ''); |
$zoneGeo = htmlspecialchars((($donnees['dob_zone_geo'] != '') ? $donnees['dob_zone_geo'] : '?')); |
$dateObs = htmlspecialchars(strftime('%d %B %Y', strtotime($donnees['dob_date_observation']))); |
$lieuObs = htmlspecialchars((($donnees['dob_zone_geo'] != '') ? $donnees['dob_zone_geo'] : '?')); |
$dateObs = htmlspecialchars(str_replace(' 00:00:00', '', $donnees['dob_date_observation'])); |
$observateur = htmlspecialchars($this->creerObservateur($donnees)); |
|
$contenu = "<li>Observation #$idObs : <em>$nomSelActuel</em></li>". |
"<li>Lieu observation : $zoneGeo</li>". |
"<li>Date observation : $dateObs</li>"; |
$contenuCommentaire = ''; |
if ($etreProposition) { |
$contenu .= "<li>Proposition #$idCommentaire : <em>$nomPropose</em></li>". |
((!empty($txt)) ? "<li>Argumentaire : $txt</li>" : ''). |
"<li>Auteur de la proposition : $auteur</li>"; |
$contenuCommentaire = |
'<li><span class="champ">'."Nom proposé :</span> <em>$nomPropose</em></li>". |
((!empty($txt)) ? '<li><span class="champ">'."Argumentaire :</span> $txt</li>" : ''). |
'<li><span class="champ">'."Auteur de la proposition :</span> $auteur</li>". |
'<li><span class="champ">'."Proposé le :</span> $dateCommentaire</li>"; |
} else { |
$contenu .= "<li>Commentaire #$idCommentaire : <pre>$txt</pre></li>". |
"<li>Auteur du commentaire : $auteur</li>"; |
$contenuCommentaire = |
'<li><span class="champ">'."Commentaire #$idCommentaire :</span> <pre>$txt</pre></li>". |
'<li><span class="champ">'."Auteur du commentaire :</span> $auteur</li>". |
'<li><span class="champ">'."Commenté le :</span> $dateCommentaire</li>"; |
} |
$description = "<ul>$contenu</ul>"; |
|
$description = '<style>.champ{color:grey} .gauche{float:left;padding:0 20px 0 0;} ul{list-style-type:none;padding:0;}</style>'. |
'<h2>'."$intitule identiPlante #$idCommentaire pour l'observation #$idObs".'</h2>'. |
'<div class="gauche">'. |
" <h3>Observation #$idObs</h3>". |
' <ul>'. |
' <li><span class="champ">'."Nom saisi actuel :</span> <em>$nomSelActuel</em></li>". |
' <li><span class="champ">'."Lieu :</span> $lieuObs</li>". |
' <li><span class="champ">'."Date :</span> $dateObs</li>". |
' <li><span class="champ">'."Auteur :</span> $observateur</li>". |
' </ul>'. |
'</div>'. |
'<div class="gauche">'. |
" <h3>$intitule #$idCommentaire</h3>". |
" <ul>$contenuCommentaire</ul>". |
'</div>'; |
return $description; |
} |
|
private function creerAuteur($info) { |
return $info['utilisateur_prenom'].' '.$info['utilisateur_nom']; |
private function creerObservateur($info) { |
$observateur = 'Anonyme'; |
if ($info['observateur_prenom'] != '' && $info['observateur_nom'] != '') { |
$observateur = $info['observateur_prenom'].' '.$info['observateur_nom']; |
} |
return $observateur; |
} |
|
private function getDerniersCommentaires() { |
$requete = 'SELECT DISTINCT dc.*, '. |
' dob.id_observation AS dob_id_observation, dob.ce_zone_geo AS dob_ce_zone_geo, '. |
' dob.zone_geo AS dob_zone_geo, dob.date_observation AS dob_date_observation, dob.nom_sel AS dob_nom_sel '. |
' dob.zone_geo AS dob_zone_geo, dob.date_observation AS dob_date_observation, dob.nom_sel AS dob_nom_sel, '. |
' duo.prenom AS observateur_prenom, duo.nom AS observateur_nom, duo.courriel AS observateur_courriel '. |
'FROM del_commentaire AS dc '. |
' INNER JOIN del_observation AS dob '. |
' ON dob.id_observation = dc.ce_observation '. |
' LEFT JOIN del_utilisateur AS duo '. |
' ON dob.ce_utilisateur = duo.id_utilisateur '. |
'WHERE ((dob.ce_utilisateur = dc.ce_utilisateur AND dob.nom_sel != dc.nom_sel) '. |
' OR (dob.ce_utilisateur != dc.ce_utilisateur)) '. |
' OR (dob.ce_utilisateur != dc.ce_utilisateur)) '.// Evite d'afficher les proposition initiale |
$this->chargerClauseWhere().' '. |
'ORDER BY dc.date DESC '. |
'LIMIT '.$this->navigation->getDepart().','.$this->navigation->getLimite().' '; |