Line 92... |
Line 92... |
92 |
private function chargerListeDesFlux() {
|
92 |
private function chargerListeDesFlux() {
|
93 |
$this->setFlux('simple', 'Nouvelles images liées à une observation dans le CEL',
|
93 |
$this->setFlux('simple', 'Nouvelles images liées à une observation dans le CEL',
|
94 |
"Ce flux fournit l'url des nouvelles images du CEL liées à une observation.");
|
94 |
"Ce flux fournit l'url des nouvelles images du CEL liées à une observation.");
|
95 |
$this->setFlux('complet', 'Nouvelles images liées à une observation dans le CEL (détails)',
|
95 |
$this->setFlux('complet', 'Nouvelles images liées à une observation dans le CEL (détails)',
|
96 |
"Ce flux fournit les informations sur les nouvelles images du CEL liées à une observation.");
|
96 |
"Ce flux fournit les informations sur les nouvelles images du CEL liées à une observation.");
|
97 |
$this->setFlux('par-mots-cles', 'Flux de syndication des nouvelles images liées à une observation publique du CEL ".
|
97 |
$this->setFlux('par-mots-cles', 'Flux de syndication obsolète',
|
98 |
"filtrées par mots clés',
|
- |
|
99 |
"Ce flux fournit des informations sur les nouvelles images du CEL liées à une observation du CEL filtrées par ".
|
98 |
"Ce flux est désormais accessible via le flux multicriteres/atom/M?tag='mot-cle'.");
|
100 |
"mots-clés. Il nécessite d'être paramétré en indiquant en dernier position de l'url le mot-clé à rechercher.");
|
- |
|
101 |
$this->setFlux('par-commune','Flux de syndication des nouvelles images liées à une observation publique du CEL ".
|
99 |
$this->setFlux('par-commune','Flux de syndication obsolète',
|
102 |
"filtrées par commune',
|
- |
|
103 |
"Ce flux fournit des informations sur les nouvelles images liées à une observation du CEL filtrées par commune. ".
|
100 |
"Ce flux est désormais accessible via le flux multicriteres/atom/M?commune='commune'.");
|
104 |
"Il nécessite d'être paramétré en indiquant en dernier position de l'url le nom de la commune à rechercher.");
|
- |
|
105 |
$this->setFlux('multicriteres','Flux de syndication des nouvelles images liées à une observation publique du CEL '.
|
101 |
$this->setFlux('multicriteres','Flux de syndication des nouvelles images liées à une observation publique du CEL '.
|
106 |
'filtrées par un ou plusieurs critères',
|
102 |
'filtrées par un ou plusieurs critères',
|
107 |
"Ce flux fournit des informations sur les nouvelles images liées à une observation du CEL filtrées par ".
|
103 |
"Ce flux fournit des informations sur les nouvelles images liées à une observation du CEL filtrées par ".
|
108 |
"auteur (mail), commune (nom), departement (code postal), taxon (nom scientifique), commentaire, mots-clés ".
|
104 |
"auteur (mail), commune (nom), departement (code postal), taxon (nom scientifique), commentaire, tag ".
|
109 |
"et/ou date. Il nécessite d'être
|
105 |
"et/ou date.");
|
110 |
paramétré en indiquant en dernier position de l'url le nom de la commune à rechercher.");
|
- |
|
111 |
}
|
106 |
}
|
Line 112... |
Line 107... |
112 |
|
107 |
|
113 |
private function setFlux($nom, $titre, $description) {
|
108 |
private function setFlux($nom, $titre, $description) {
|
114 |
$url_base = $this->config['settings']['baseURLAbsoluDyn'].'CelSyndicationImage/';
|
109 |
$url_base = $this->config['settings']['baseURLAbsoluDyn'].'CelSyndicationImage/';
|
Line 635... |
Line 630... |
635 |
$description = $this->nettoyerTexte($description);
|
630 |
$description = $this->nettoyerTexte($description);
|
636 |
return $description;
|
631 |
return $description;
|
637 |
}
|
632 |
}
|
Line 638... |
Line 633... |
638 |
|
633 |
|
639 |
private function getServiceParMotsCles() {
|
634 |
private function getServiceParMotsCles() {
|
640 |
$contenu = '';
|
- |
|
641 |
$mot_cle = $this->parametres[0];
|
- |
|
642 |
|
635 |
$infos=array();
|
643 |
if (isset($mot_cle)) {
|
- |
|
644 |
$mot_cle_encode = $this->bdd->quote($this->encoderMotCle($mot_cle));
|
- |
|
645 |
|
- |
|
646 |
// Construction de la requête
|
- |
|
647 |
$requete = 'SELECT cmc_id_mot_cle_utilisateur, cmc_id_proprietaire '.
|
- |
|
648 |
'FROM cel_mots_cles_images '.
|
636 |
$infos[0]['num_nom_sel'] = '';
|
649 |
"WHERE cmc_id_mot_cle_general = $mot_cle_encode ";
|
637 |
$infos[0]['ci_meta_date_ajout'] = '2011-06-28';
|
650 |
$elements = $this->executerRequete($requete);
|
- |
|
651 |
|
- |
|
652 |
if ($elements != false && count($elements) > 0) {
|
- |
|
653 |
// Pré-construction du where de la requête
|
- |
|
654 |
$tpl_where = '(ci_meta_mots_cles LIKE "%%%s%%" AND ci_ce_utilisateur = %s )';
|
- |
|
655 |
$requete_where = array();
|
638 |
$donnees = $this->construireDonneesCommunesAuFlux($infos);
|
656 |
foreach ($elements as $occurence) {
|
- |
|
657 |
$requete_where[] = sprintf($tpl_where, $occurence['cmc_id_mot_cle_utilisateur'], $this->bdd->quote($occurence['cmc_id_proprietaire']));
|
- |
|
658 |
}
|
- |
|
659 |
|
- |
|
660 |
// Construction de la requête
|
- |
|
661 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' ci.*, '.
|
- |
|
662 |
' ci_id_image, ci_ce_utilisateur, ci_nom_original, ci_meta_date_ajout, ci_meta_mots_cles, ci_meta_comment, ci_note_image '.
|
- |
|
663 |
'FROM cel_images AS cim '.
|
- |
|
664 |
' LEFT JOIN cel_obs_images AS coi '.
|
- |
|
665 |
' ON (coi.coi_ce_image = cim.ci_id_image AND coi.coi_ce_utilisateur = cim.ci_ce_utilisateur) '.
|
- |
|
666 |
' LEFT JOIN cel_inventory AS ci '.
|
639 |
$donnees['items'][0]['guid'] = 0;
|
667 |
' ON (coi.coi_ce_observation = ci.ordre AND coi.coi_ce_utilisateur = ci.identifiant) '.
|
- |
|
668 |
'WHERE '.implode(" \nOR ", $requete_where).' '.
|
- |
|
669 |
' '.(($this->etreFluxAdmin()) ? '' : 'AND ci.transmission = 1').' '.
|
640 |
$donnees['items'][0]['description'] = 'Ce flux est devenu obsolète. Veuillez utiliser le flux '.
|
670 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'ci_meta_date_ajout DESC').' '.
|
641 |
'<b>http://www.tela-botanica.org/eflore/cel2/jrest/CelSyndicationImage/multicriteres/atom?tag=';
|
671 |
"LIMIT $this->start, $this->limit ";
|
- |
|
672 |
$elements = $this->executerRequete($requete);
|
- |
|
673 |
|
- |
|
674 |
// Création du contenu
|
- |
|
675 |
$contenu = $this->executerService($elements);
|
- |
|
676 |
} else {
|
642 |
if (isset($this->parametres[0])) {
|
677 |
$this->messages[] = "Aucune image ne correspond à ce mot clé.";
|
- |
|
678 |
}
|
643 |
$donnees['items'][0]['description'] .= $this->parametres[0].'</b>';
|
679 |
} else {
|
644 |
} else {
|
680 |
$this->messages[] = "Le service demandé nécessite d'indiquer un mot-clé en dernier paramêtre.";
|
645 |
$donnees['items'][0]['description'] .= '</b>';
|
- |
|
646 |
}
|
- |
|
647 |
$donnees['items'][0]['titre'] = '';
|
681 |
}
|
648 |
$contenu = Cel::traiterSquelettePhp($this->squelette, $donnees);
|
682 |
return $contenu;
|
649 |
return $contenu;
|
Line 683... |
Line 650... |
683 |
}
|
650 |
}
|
684 |
|
651 |
|
685 |
private function getServiceParCommune() {
|
- |
|
686 |
$contenu = '';
|
652 |
private function getServiceParCommune() {
|
687 |
$commune = $this->parametres[0];
|
653 |
$infos=array();
|
688 |
if (isset($commune)) {
|
- |
|
689 |
$commune = $this->bdd->quote($commune);
|
- |
|
690 |
|
654 |
$infos[0]['num_nom_sel'] = '';
|
691 |
// Construction de la requête
|
- |
|
692 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' ci.*, '.
|
- |
|
693 |
' ci_id_image, ci_ce_utilisateur, ci_nom_original, ci_meta_date_ajout, ci_meta_mots_cles, ci_meta_comment, ci_note_image '.
|
655 |
$infos[0]['ci_meta_date_ajout'] = '2011-06-28';
|
694 |
'FROM cel_images AS cim '.
|
- |
|
695 |
' LEFT JOIN cel_obs_images AS coi '.
|
- |
|
696 |
' ON (coi.coi_ce_image = cim.ci_id_image AND coi.coi_ce_utilisateur = cim.ci_ce_utilisateur) '.
|
656 |
$donnees = $this->construireDonneesCommunesAuFlux($infos);
|
697 |
' LEFT JOIN cel_inventory AS ci '.
|
- |
|
698 |
' ON (coi.coi_ce_observation = ci.ordre AND coi.coi_ce_utilisateur = ci.identifiant) '.
|
- |
|
699 |
"WHERE ci.location = $commune ".
|
657 |
$donnees['items'][0]['guid'] = 0;
|
700 |
' '.(($this->etreFluxAdmin()) ? '' : 'AND ci.transmission = 1').' '.
|
658 |
$donnees['items'][0]['description'] = 'Ce flux est devenu obsolète. Veuillez utiliser le flux '.
|
701 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'ci_meta_date_ajout DESC').' '.
|
- |
|
702 |
"LIMIT $this->start,$this->limit ";
|
- |
|
703 |
$elements = $this->executerRequete($requete);
|
- |
|
704 |
|
- |
|
705 |
// Création du contenu
|
- |
|
706 |
if ($elements != false && count($elements) > 0) {
|
- |
|
707 |
$contenu = $this->executerService($elements);
|
659 |
'<b>http://www.tela-botanica.org/eflore/cel2/jrest/CelSyndicationImage/multicriteres/atom?commune=';
|
708 |
} else {
|
- |
|
709 |
$this->messages[] = "Aucune image ne correspond à cette commune.";
|
660 |
if (isset($this->parametres[0])) {
|
710 |
}
|
661 |
$donnees['items'][0]['description'] .= $this->parametres[0].'</b>';
|
711 |
} else {
|
662 |
} else {
|
- |
|
663 |
$donnees['items'][0]['description'] .= '</b>';
|
- |
|
664 |
}
|
712 |
$this->messages[] = "Le service demandé nécessite d'indiquer une nom de commune en dernier paramêtre.";
|
665 |
$donnees['items'][0]['titre'] = '';
|
713 |
}
|
666 |
$contenu = Cel::traiterSquelettePhp($this->squelette, $donnees);
|
714 |
return $contenu;
|
667 |
return $contenu;
|
715 |
}
|
668 |
}
|