91,9 → 91,9 |
|
public function getTout($params) { |
|
$emplacements = null; |
$emplacements = null; |
$concatenation_id = "CONCAT(IFNULL(latitude,''),IFNULL(longitude,''), IFNULL(wgs84_latitude,''),IFNULL(wgs84_longitude,'')) "; |
|
|
$requete = 'SELECT ce_zone_geo, zone_geo, station, '. |
"mots_cles_texte, ". |
"latitude, ". |
121,12 → 121,12 |
$this->construireWhereTag(). |
$this->construireWhereNombreDeJours(). |
' GROUP BY id_coord'; |
|
$resultats_emplacements = Cel::db()->executerRequete($requete); |
|
$resultats_emplacements = Cel::db()->requeter($requete); |
$emplacements = $this->traiterEmplacements($resultats_emplacements, $this->compterObservations($params)); |
return $emplacements; |
} |
|
|
private function afficherRequeteFormatee($requete) { |
$requete = str_replace(')',')<br />',$requete); |
$requete = str_replace('(',' <br /> (',$requete); |
158,7 → 158,7 |
$this->construireWhereTag(). |
$this->construireWhereNombreDeJours(); |
|
$resultats_nb_obs = Cel::db()->executerRequete($requete); |
$resultats_nb_obs = Cel::db()->requeter($requete); |
return $resultats_nb_obs[0]['nb']; |
} |
|
304,7 → 304,7 |
} |
return $sensible; |
} |
|
|
private function communeEstDemandee() { |
$station_infos = $this->decomposerParametreStation(); |
$commune_demandee = true; |
438,7 → 438,7 |
} |
return $observations; |
} |
|
|
private function ajouterAuteursAuxObs($observations) { |
$observateurs = $this->recupererUtilisateursIdentite(array_keys($observations['observateurs'])); |
unset($observations['observateurs']); |
536,7 → 536,7 |
} |
return $sql; |
} |
|
|
private function construireWhereCoordonneesSansSensibles() { |
$sql = '('; |
// Récupération des coordonnées depuis l'id station |
610,7 → 610,7 |
} |
return $sql; |
} |
|
|
private function construireWhereReferentiel() { |
$sql = ''; |
extract($this->parametres); |
754,7 → 754,7 |
'ORDER BY utilisateur ASC, ordre ASC'; |
//$this->debug[] = $requete; |
//die($requete); |
$resultats = Cel::db()->executerRequete($requete); |
$resultats = Cel::db()->requeter($requete); |
|
$observations = null; |
if ($resultats != false) { |
829,12 → 829,12 |
$sql = "( (latitude != 0 AND longitude != 0) ". |
" AND latitude BETWEEN $latMin AND $latMax ". |
" AND longitude BETWEEN $lngMin AND $lngMax )"; |
|
|
/*$sql = " MBRWithin(mon_point, GeomFromText('POLYGON((".$latMin.' '.$lngMin.','. |
$latMax.' '.$lngMin.','. |
$latMax.' '.$lngMax.','. |
$latMax.' '.$lngMin.','. |
$latMin.' '.$lngMin."))')) "; */ |
$latMin.' '.$lngMin."))')) "; */ |
} |
return $sql; |
} |
873,7 → 873,7 |
$sql = "( wgs84_longitude != 0 AND wgs84_latitude != 0 ". |
" AND wgs84_latitude BETWEEN $latMin AND $latMax ". |
" AND wgs84_longitude BETWEEN $lngMin AND $lngMax )"; |
|
|
/*$sql = " MBRWithin(point_commune, GeomFromText('POLYGON((".$latMin.' '.$lngMin.','. |
$latMax.' '.$lngMin.','. |
$latMax.' '.$lngMax.','. |
923,12 → 923,12 |
')'. |
' OR mots_cles_texte LIKE "%sensible%"'. |
') '; |
|
|
} |
return $sql; |
} |
|
|
|
|
private function construireWherePhotosSeulement() { |
$sql = ''; |
if (isset($this->parametres['photos']) && $this->parametres['photos'] == 1) { |
948,8 → 948,8 |
} |
return $sql; |
} |
|
|
|
|
private function construireWhereNumTaxon() { |
$sql = ''; |
// Récupération des coordonnées depuis l'id station |
960,7 → 960,7 |
} |
return $sql; |
} |
|
|
private function construireWhereNumTaxonAvecSousTaxons() { |
$sql = ''; |
// Récupération des coordonnées depuis l'id station |
981,7 → 981,7 |
} |
return $sql; |
} |
|
|
private function obtenirSousTaxons($nt) { |
$referentiel = 'bdtfx'; |
if(isset($this->parametres['referentiel']) && $this->parametres['referentiel'] != "" && $this->parametres['referentiel'] != '*') { |
1005,7 → 1005,7 |
} |
return $sql; |
} |
|
|
/** |
* Traitement de $projet pour construction du filtre dans la requête |
*/ |
1016,7 → 1016,7 |
} |
return $sql; |
} |
|
|
private function construireWhereTag() { |
$sql = ''; |
extract($this->parametres); |
1026,7 → 1026,7 |
} |
return $sql; |
} |
|
|
private function construireWhereNombreDeJours() { |
$sql = null; |
extract($this->parametres); |
1035,7 → 1035,7 |
} |
return $sql; |
} |
|
|
/** |
* Traitement de $tag pour construction du filtre dans la requête |
*/ |
1063,11 → 1063,11 |
'ORDER BY utilisateur ASC, ci.ordre ASC'; |
//$this->debug[] = $requete; |
//die($requete); |
$elements_tag = Cel::db()->executerRequete($requete); |
|
$elements_tag = Cel::db()->requeter($requete); |
|
$requete_tag = array(); |
if ($elements_tag != false && count($elements_tag) > 0) { |
|
|
$filtres = array(); |
foreach ($elements_tag as $occurence) { |
$utilisateur = $occurence['utilisateur']; |
1079,13 → 1079,13 |
$filtres[$utilisateur][$id_obs] = $id_obs; |
} |
} |
|
|
// Pré-construction du where de la requête |
$tpl_where = "(id_observation IN (%s))"; |
foreach ($filtres as $utilisateur => $id_obs) { |
$requete_tag[] = sprintf($tpl_where, implode(',', $id_obs)); |
} |
|
|
} else { |
$this->messages[] = "Aucune observation ne possède d'images avec ce mot-clé."; |
} |
1095,7 → 1095,7 |
} |
return $sql; |
} |
|
|
/** |
* Traitement de $tag pour construction du filtre dans la requête |
*/ |
1107,7 → 1107,7 |
//$this->debug[] = $sql; |
return $sql; |
} |
|
|
/** |
* Traitement de $tag pour construction du filtre dans la requête |
*/ |
1119,9 → 1119,9 |
$where_mots_cles_images = implode(' '.$mots_cles_encodes['type'].' ', $where_mots_cles_images); |
return $where_mots_cles_images; |
} |
|
|
private function decomposerParametreTag($tags) { |
|
|
$mots_cles = array('type' => null, 'motsCles' => null, 'motsClesEncodesProteges' => null); |
if (preg_match('/.+OU.+/', $tags)) { |
$mots_cles['type'] = 'OR'; |
1132,7 → 1132,7 |
} else { |
$mots_cles['motsCles'][] = $tags; |
} |
|
|
foreach ($mots_cles['motsCles'] as $mot) { |
$mots_cles['motsClesEncodesProteges'][] = Cel::db()->quote('%'.$mot.'%'); |
} |