Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 1764 → Rev 1765

/trunk/jrest/lib/RechercheObservation.php
20,16 → 20,16
$requete_selection_id = 'SELECT id_observation FROM cel_obs WHERE ordre ';
 
if (is_array($ordre)) {
$ordre = array_map(array($this,'proteger'), $ordre);
$ordre = array_map(array(Cel::db(),'proteger'), $ordre);
$requete_selection_id .= ' IN ('.implode(',',$ordre).') ';
} else {
$requete_selection_id .= ' = '.$this->proteger($ordre).' ';
$requete_selection_id .= ' = '.Cel::db()->proteger($ordre).' ';
}
 
$requete_selection_id .= ' AND ce_utilisateur = '.$this->proteger($id_utilisateur).
$requete_selection_id .= ' AND ce_utilisateur = '.Cel::db()->proteger($id_utilisateur).
' ORDER BY id_observation';
 
$resultat_ids = $this->executerRequete($requete_selection_id);
$resultat_ids = Cel::db()->executerRequete($requete_selection_id);
 
$ids = array();
if (is_array($resultat_ids)) {
45,7 → 45,7
$requete_selection_observations = 'SELECT * FROM cel_obs ';
 
if ($id_utilisateur != null) {
$requete_selection_observations .= 'WHERE ce_utilisateur = '.$this->proteger($id_utilisateur).' AND ';
$requete_selection_observations .= 'WHERE ce_utilisateur = '.Cel::db()->proteger($id_utilisateur).' AND ';
} else if(count($criteres) > 0) {
$requete_selection_observations .= 'WHERE ';
}
67,7 → 67,7
 
public function get() {
if(!$this->requete_selection_observations) return FALSE;
return $this->executerRequete($this->requete_selection_observations);
return Cel::db()->executerRequete($this->requete_selection_observations);
}
 
public function compterObservations($id_utilisateur = null, $criteres = array()) {
74,7 → 74,7
$requete_selection_observations = 'SELECT COUNT(*) as nb_obs FROM cel_obs ';
 
if ($id_utilisateur != null) {
$requete_selection_observations .= 'WHERE ce_utilisateur = '.$this->proteger($id_utilisateur).' AND ';
$requete_selection_observations .= 'WHERE ce_utilisateur = '.Cel::db()->proteger($id_utilisateur).' AND ';
} else if(count($criteres) > 0) {
$requete_selection_observations .= 'WHERE ';
}
85,7 → 85,7
$requete_selection_observations = rtrim($requete_selection_observations, 'AND ');
 
$nb_obs = '0';
$resultat_requete_nombre_observations = $this->executerRequete($requete_selection_observations);
$resultat_requete_nombre_observations = Cel::db()->executerRequete($requete_selection_observations);
 
if($resultat_requete_nombre_observations && is_array($resultat_requete_nombre_observations) && count($resultat_requete_nombre_observations) > 0) {
$nb_obs = $resultat_requete_nombre_observations[0]['nb_obs'];
128,10 → 128,10
}
 
public function obtenirCourrielUtilisateurPourIdObs($id_obs) {
$id_obs = $this->proteger($id_obs);
$id_obs = Cel::db()->proteger($id_obs);
$requete = "SELECT courriel_utilisateur FROM cel_obs WHERE id_observation = $id_obs";
 
$utilisateur_courriel = $this->executerRequete($requete . ' -- ' . __FILE__ . ':' . __LINE__);
$utilisateur_courriel = Cel::db()->executerRequete($requete . ' -- ' . __FILE__ . ':' . __LINE__);
 
$retour = false;
if (!empty($utilisateur_courriel) && isset($utilisateur_courriel[0]['courriel_utilisateur'])) {
144,7 → 144,7
$requete_selection_mots_cles = 'SELECT DISTINCT id_mot_cle_obs '.
'FROM cel_obs_mots_cles '.
"WHERE id_observation = $id_observation ";
return $this->executerRequete($requete_selection_mots_cles);
return Cel::db()->executerRequete($requete_selection_mots_cles);
}
 
// TODO: fonction temporaire
176,7 → 176,7
if ($valeur == "NULL") {
$sous_requete .= "(date_observation IS NULL OR year(date_observation) = 0000)" ;
} else {
$sous_requete .= "(year(date_observation) = ".$this->proteger($valeur).")" ;
$sous_requete .= "(year(date_observation) = ".Cel::db()->proteger($valeur).")" ;
}
$sous_requete .= ' AND ' ;
break;
184,7 → 184,7
if ($valeur == "NULL") {
$sous_requete .= "date_observation IS NULL OR month(date_observation) = 00" ;
} else {
$sous_requete .= "month(date_observation) = ".$this->proteger($valeur) ;
$sous_requete .= "month(date_observation) = ".Cel::db()->proteger($valeur) ;
}
$sous_requete .= ' AND ' ;
break;
192,7 → 192,7
if ($valeur == "NULL") {
$sous_requete .= "date_observation IS NULL OR day(date_observation) = 00" ;
} else {
$sous_requete .= "day(date_observation) = ".$this->proteger($valeur) ;
$sous_requete .= "day(date_observation) = ".Cel::db()->proteger($valeur) ;
}
$sous_requete .= ' AND ' ;
break;
204,11 → 204,11
$dpts = explode(',',$valeur);
$sous_requete .= '(';
foreach($dpts as $dpt) {
$sous_requete .= "ce_zone_geo LIKE ".$this->proteger('INSEE-C:'.$dpt.'___').' OR ';
$sous_requete .= "ce_zone_geo LIKE ".Cel::db()->proteger('INSEE-C:'.$dpt.'___').' OR ';
}
$sous_requete = rtrim($sous_requete,' OR ').') ';
} else {
$sous_requete .= "(ce_zone_geo LIKE ".$this->proteger('INSEE-C:'.$valeur.'___').')';
$sous_requete .= "(ce_zone_geo LIKE ".Cel::db()->proteger('INSEE-C:'.$valeur.'___').')';
}
}
$sous_requete .= ' AND ' ;
217,7 → 217,7
if ($valeur == "NULL") {
$sous_requete .= "(zone_geo IS NULL OR zone_geo = '')";
} else {
$sous_requete .= "(zone_geo = ".$this->proteger($valeur).')';
$sous_requete .= "(zone_geo = ".Cel::db()->proteger($valeur).')';
}
$sous_requete .= ' AND ' ;
break;
232,15 → 232,15
$sous_requete .= ' AND ';
break;
case 'date_debut':
$sous_requete .= 'date_observation >= '.$this->proteger($this->formaterEnDateMysql($valeur));
$sous_requete .= 'date_observation >= '.Cel::db()->proteger($this->formaterEnDateMysql($valeur));
$sous_requete .= ' AND ';
break;
case 'date_fin':
$sous_requete .= 'date_observation <= '.$this->proteger($this->formaterEnDateMysql($valeur));
$sous_requete .= 'date_observation <= '.Cel::db()->proteger($this->formaterEnDateMysql($valeur));
$sous_requete .= ' AND ';
break;
case 'taxon':
$valeur_protegee = $this->proteger($valeur."%");
$valeur_protegee = Cel::db()->proteger($valeur."%");
$sous_requete .= "( nom_sel LIKE ".$valeur_protegee." OR".
" nom_ret LIKE ".$valeur_protegee." OR".
" famille LIKE ".$valeur_protegee.
252,7 → 252,7
break;
default:
if (trim($nom) != '') {
$sous_requete .= $nom." = ".$this->proteger($valeur) ;
$sous_requete .= $nom." = ".Cel::db()->proteger($valeur) ;
$sous_requete .= ' AND ';
}
if (trim($nom) == 'NULL') {
276,7 → 276,7
 
private function fabriquerSousRequeteRechercheGenerale($id_utilisateur, $valeur) {
$valeur = str_replace("*","%",$valeur);
$valeur = $this->proteger('%'.$valeur.'%');
$valeur = Cel::db()->proteger('%'.$valeur.'%');
$sous_requete = "(nom_sel LIKE ".$valeur.
" OR courriel_utilisateur LIKE ".$valeur.
" OR prenom_utilisateur LIKE ".$valeur.
307,17 → 307,17
if (preg_match('/.*OU.*/', $mot_cle)) {
$mots_cles_tab = explode('OU',$mot_cle);
foreach($mots_cles_tab as $mot_cle_item) {
$requete .= '(mots_cles_texte LIKE '.$this->proteger('%'.$mot_cle_item.'%').') OR ';
$requete .= '(mots_cles_texte LIKE '.Cel::db()->proteger('%'.$mot_cle_item.'%').') OR ';
}
$requete = '('.rtrim($requete,'OR ').')';
} else if (preg_match('/.*ET.*/', $mot_cle)) {
$mots_cles_tab = explode('ET',$mot_cle);
foreach($mots_cles_tab as $mot_cle_item) {
$requete .= '(mots_cles_texte LIKE '.$this->proteger('%'.$mot_cle_item.'%').') AND ';
$requete .= '(mots_cles_texte LIKE '.Cel::db()->proteger('%'.$mot_cle_item.'%').') AND ';
}
$requete = '('.rtrim($requete, 'AND ').') ';
} else {
$requete = "(mots_cles_texte LIKE ".$this->proteger('%'.$mot_cle.'%').') ';
$requete = "(mots_cles_texte LIKE ".Cel::db()->proteger('%'.$mot_cle.'%').') ';
}
return $requete;
}
332,7 → 332,7
'jour' => 'date_observation',
'departement' => 'ce_zone_geo',
'commune' => 'zone_geo');
return $sous_requete .= $champs[$valeur]." = ".$this->proteger("");
return $sous_requete .= $champs[$valeur]." = ".Cel::db()->proteger("");
}
}
?>