Subversion Repositories eFlore/Applications.cel

Rev

Rev 2035 | Rev 2042 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2035 Rev 2039
Line 13... Line 13...
13
 * @link      /doc/jrest/
13
 * @link      /doc/jrest/
14
 */
14
 */
15
class RechercheObservation extends Cel {
15
class RechercheObservation extends Cel {
Line 16... Line 16...
16
 
16
 
-
 
17
	public $requete_selection_observations;
-
 
18
	public static $tris_possibles = array(
-
 
19
		"nom_referentiel",
-
 
20
		"nom_sel",
-
 
21
		"certitude",
-
 
22
		"nom_ret",
-
 
23
		"famille",
-
 
24
		"abondance",
-
 
25
		"phenologie",
-
 
26
		"transmission",
-
 
27
		"ce_zone_geo",
-
 
28
		"altitude",
-
 
29
		"date_observation",
-
 
30
		"ordre"
Line 17... Line 31...
17
	public $requete_selection_observations;
31
	);
18
 
32
 
Line 19... Line 33...
19
	public function obtenirIdObservationsPourOrdre($id_utilisateur, $ordre) {
33
	public function obtenirIdObservationsPourOrdre($id_utilisateur, $ordre) {
Line 48... Line 62...
48
			$requete_selection_observations .= 'WHERE ce_utilisateur = '.Cel::db()->proteger($id_utilisateur).' AND ';
62
			$requete_selection_observations .= 'WHERE ce_utilisateur = '.Cel::db()->proteger($id_utilisateur).' AND ';
49
		} else if(count($criteres) > 0) {
63
		} else if(count($criteres) > 0) {
50
			$requete_selection_observations .= 'WHERE ';
64
			$requete_selection_observations .= 'WHERE ';
51
		}
65
		}
Line 52... Line 66...
52
 
66
 
53
		$tri = (isset($criteres['tri'])) ? $criteres['tri'] : 'ordre';
67
		$tri = (isset($criteres['tri']) && in_array($criteres['tri'], self::$tris_possibles)) ? $criteres['tri'] : 'ordre';
54
		unset($criteres['tri']);
68
		unset($criteres['tri']);
55
		$tri_dir = (isset($criteres['tri_dir'])) ? $criteres['tri_dir'] : 'ASC';
69
		$tri_dir = (isset($criteres['tri_dir']) && in_array($criteres['tri_dir'], array('ASC', 'DESC'))) ? $criteres['tri_dir'] : 'ASC';
Line 56... Line 70...
56
		unset($criteres['tri_dir']);
70
		unset($criteres['tri_dir']);
57
		
71
		
58
		// très mauvaise solution, mais qui permet au moins d'effectuer des requêtes complexes, sans modifier l'API
72
		// très mauvaise solution, mais qui permet au moins d'effectuer des requêtes complexes, sans modifier l'API