| Line 44... |
Line 44... |
| 44 |
'groupby' => array(),
|
44 |
'groupby' => array(),
|
| 45 |
'orderby' => array());
|
45 |
'orderby' => array());
|
| Line 46... |
Line 46... |
| 46 |
|
46 |
|
| 47 |
private $champsPrenom = array('prenom_utilisateur');
|
47 |
private $champsPrenom = array('prenom_utilisateur');
|
| 48 |
private $champsNom = array('nom_utilisateur');
|
48 |
private $champsNom = array('nom_utilisateur');
|
| Line 49... |
Line 49... |
| 49 |
private $champsSousRequeteObs = array('masque.genre', 'masque.famille', 'masque.ns', 'masque.commune', 'masque.milieu', 'masque.pays');
|
49 |
private $champsSousRequeteObs = array('masque.standard','masque.genre', 'masque.famille', 'masque.ns', 'masque.commune', 'masque.milieu', 'masque.pays');
|
| 50 |
|
50 |
|
| 51 |
public function __construct(Conteneur $conteneur) {
|
51 |
public function __construct(Conteneur $conteneur) {
|
| 52 |
$this->conteneur = $conteneur;
|
52 |
$this->conteneur = $conteneur;
|
| Line 108... |
Line 108... |
| 108 |
}
|
108 |
}
|
| 109 |
}
|
109 |
}
|
| Line 110... |
Line 110... |
| 110 |
|
110 |
|
| 111 |
public function getWhere() {
|
111 |
public function getWhere() {
|
| - |
|
112 |
// Sous-requete spéciale pour éviter de rechercher dans la table obs jointe à img depuis Pictoflora...
|
| 112 |
// Sous-requete spéciale pour éviter de rechercher dans la table obs jointe à img depuis Pictoflora...
|
113 |
//print_r($this->requete);
|
| 113 |
if (isset($this->requete['where']['OR_SOUS_REQUETE']) && count($this->requete['where']['OR_SOUS_REQUETE']) > 0) {
|
114 |
if (isset($this->requete['where']['OR_SOUS_REQUETE']) && count($this->requete['where']['OR_SOUS_REQUETE']) > 0) {
|
| 114 |
$clauseWhereSousRequete = implode(' OR ', $this->requete['where']['OR_SOUS_REQUETE']);
|
115 |
$clauseWhereSousRequete = implode(' OR ', $this->requete['where']['OR_SOUS_REQUETE']);
|
| 115 |
$sousRequete = 'di.ce_observation IN '.
|
116 |
$sousRequete = 'di.ce_observation IN '.
|
| 116 |
"(SELECT id_observation FROM del_observation AS do WHERE $clauseWhereSousRequete ) ";
|
117 |
"(SELECT id_observation FROM del_observation AS do WHERE $clauseWhereSousRequete ) ";
|
| Line 160... |
Line 161... |
| 160 |
/**
|
161 |
/**
|
| 161 |
* @param $p les paramètres (notamment de masque) passés par l'URL et déjà traités/filtrés (sauf quotes)
|
162 |
* @param $p les paramètres (notamment de masque) passés par l'URL et déjà traités/filtrés (sauf quotes)
|
| 162 |
* @param $req le tableau, passé par référence représentant les composants de la requête à bâtir
|
163 |
* @param $req le tableau, passé par référence représentant les composants de la requête à bâtir
|
| 163 |
*/
|
164 |
*/
|
| 164 |
public function ajouterContraintes() {
|
165 |
public function ajouterContraintes() {
|
| - |
|
166 |
$this->ajouterContrainteStandard();
|
| 165 |
$this->ajouterContrainteAuteur();
|
167 |
$this->ajouterContrainteAuteur();
|
| 166 |
$this->ajouterContrainteDate();
|
168 |
$this->ajouterContrainteDate();
|
| 167 |
$this->ajouterContraintePays();
|
169 |
$this->ajouterContraintePays();
|
| 168 |
$this->ajouterContrainteDepartement();
|
170 |
$this->ajouterContrainteDepartement();
|
| 169 |
$this->ajouterContrainteIdZoneGeo();
|
171 |
$this->ajouterContrainteIdZoneGeo();
|
| Line 174... |
Line 176... |
| 174 |
$this->ajouterContrainteReferentiel();
|
176 |
$this->ajouterContrainteReferentiel();
|
| 175 |
$this->ajouterContrainteCommune();
|
177 |
$this->ajouterContrainteCommune();
|
| 176 |
$this->ajouterContraintePnInscrits();
|
178 |
$this->ajouterContraintePnInscrits();
|
| 177 |
}
|
179 |
}
|
| Line -... |
Line 180... |
| - |
|
180 |
|
| - |
|
181 |
private function ajouterContrainteStandard() {
|
| - |
|
182 |
if (isset($this->parametres['masque.standard'])) {
|
| - |
|
183 |
$donnees_standard = $this->parametres['masque.standard'];
|
| - |
|
184 |
$this->addWhere('masque.standard', "do.donnees_standard = $donnees_standard");
|
| - |
|
185 |
$this->ajouterJoinObsSiNecessaire();
|
| - |
|
186 |
}
|
| - |
|
187 |
}
|
| 178 |
|
188 |
|
| 179 |
private function ajouterContrainteAuteur() {
|
189 |
private function ajouterContrainteAuteur() {
|
| 180 |
if (isset($this->parametres['masque.auteur'])) {
|
190 |
if (isset($this->parametres['masque.auteur'])) {
|
| 181 |
$auteur = $this->parametres['masque.auteur'];
|
191 |
$auteur = $this->parametres['masque.auteur'];
|
| 182 |
// id du poster de l'obs
|
192 |
// id du poster de l'obs
|
| Line 850... |
Line 860... |
| 850 |
}
|
860 |
}
|
| Line 851... |
Line 861... |
| 851 |
|
861 |
|
| 852 |
private function getCombinaisonChampsDateMax() {
|
862 |
private function getCombinaisonChampsDateMax() {
|
| 853 |
return "GREATEST(IFNULL(dc.date,0), IFNULL(dcv.date,0), IFNULL(do.date_observation,0), IFNULL(dcp.date_validation,0), IFNULL(dcpr.date,0))";
|
863 |
return "GREATEST(IFNULL(dc.date,0), IFNULL(dcv.date,0), IFNULL(do.date_observation,0), IFNULL(dcp.date_validation,0), IFNULL(dcpr.date,0))";
|
| 854 |
}
|
- |
|
| 855 |
}
|
864 |
}
|
| - |
|
865 |
}
|