Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 3929 Rev 3956
Line 108... Line 108...
108
	}
108
	}
Line 109... Line 109...
109
 
109
 
110
	public function compterImages($id_utilisateur = null, $criteres = array()) {
110
	public function compterImages($id_utilisateur = null, $criteres = array()) {
Line 111... Line 111...
111
		$requete_recherche_images = 'SELECT COUNT(*) AS nb_images ';
111
		$requete_recherche_images = 'SELECT COUNT(*) AS nb_images ';
112
 
112
 
Line 113... Line 113...
113
		$requete_recherche_images .= $this->fabriquerRequeteJointureObs();
113
		$requete_recherche_images .= $this->fabriquerRequeteJointureObs($criteres);
Line 114... Line 114...
114
		$requete_recherche_images .= ($id_utilisateur != null) ? 'AND co.ce_utilisateur = '.Cel::db()->proteger($id_utilisateur) : '';
114
		$requete_recherche_images .= ($id_utilisateur != null) ? 'AND co.ce_utilisateur = '.Cel::db()->proteger($id_utilisateur) : '';
Line 132... Line 132...
132
		$criteres_obs = array('zone_geo','ce_zone_geo','taxon','transmission','recherche');
132
		$criteres_obs = array('zone_geo','ce_zone_geo','taxon','transmission','recherche');
133
		return count(array_intersect(array_keys($criteres),$criteres_obs)) > 0 ||
133
		return count(array_intersect(array_keys($criteres),$criteres_obs)) > 0 ||
134
				(!empty($tri) && in_array($tri, $tris_obs));
134
				(!empty($tri) && in_array($tri, $tris_obs));
135
	}
135
	}
Line 136... Line 136...
136
 
136
 
-
 
137
	private function fabriquerRequeteJointureObs($criteres) {
137
	private function fabriquerRequeteJointureObs() {
138
	    if (isset($criteres['standard']) && $criteres['standard'] = 0 ) {
138
		$requete = 'FROM cel_images_export ci '.
139
    		$requete = 'FROM cel_images_export ci '.
139
			'LEFT JOIN cel_export_total co '.
140
    			'LEFT JOIN cel_export_total co '.
-
 
141
    				'ON ci.ce_observation = co.id_observation '.
-
 
142
    				'WHERE co.transmission = '.Cel::db()->proteger($criteres['transmission']); 
-
 
143
	    } else {
-
 
144
	        $requete = 'FROM cel_images_export ci '.
-
 
145
	   	        'LEFT JOIN cel_export co '.
140
				'ON ci.ce_observation = co.id_observation '.
146
	   	        'ON ci.ce_observation = co.id_observation '.
-
 
147
	   	        'WHERE 1 '; 
141
			'WHERE 1 ';
148
	    }
142
		return $requete;
149
		return $requete;
Line 143... Line 150...
143
	}
150
	}
-
 
151
	
144
	
152
	private function fabriquerRequeteJointureDblObs() {
145
	private function fabriquerRequeteJointureDblObs() {
153
	    if (isset($criteres['standard']) && $criteres['standard'] = 0 ) {
-
 
154
	        $requete = 'FROM cel_images_export ci '.
-
 
155
	   	        'JOIN cel_export_total co '.
-
 
156
	   	        'ON ci.ce_observation = co.id_observation '.
-
 
157
	   	        'WHERE co.transmission = '.Cel::db()->proteger($criteres['transmission']);
-
 
158
	    } else {
146
	    $requete = 'FROM cel_images_export ci '.
159
	        $requete = 'FROM cel_images_export ci '.
147
	   	    'JOIN cel_export_total co '.
160
	   	        'JOIN cel_export co '.
-
 
161
	   	        'ON ci.ce_observation = co.id_observation '.
148
	   	    'ON ci.ce_observation = co.id_observation '.
162
	   	        'WHERE 1 '; 
149
	   	    'WHERE 1 ';
163
	    }
Line 150... Line 164...
150
	    return $requete;
164
	    return $requete;
151
	}
165
	}
Line 217... Line 231...
217
					break;
231
					break;
218
				case "recherche":
232
				case "recherche":
219
					$sous_requete .= $this->fabriquerSousRequeteRechercheGenerale($id_utilisateur, $valeur);
233
					$sous_requete .= $this->fabriquerSousRequeteRechercheGenerale($id_utilisateur, $valeur);
220
					$sous_requete .= ' AND ';
234
					$sous_requete .= ' AND ';
221
					break;
235
					break;
222
				case "transmission":
236
				/*case "transmission":
223
					$sous_requete .= 'co.transmission = '.Cel::db()->proteger($valeur) ;
237
					$sous_requete .= 'co.transmission = '.Cel::db()->proteger($valeur) ;
224
					$sous_requete .= ' AND ';
238
					$sous_requete .= ' AND ';
225
					break;
239
					break;
226
				case "standard":
240
				case "standard":
227
				    $sous_requete .= 'co.donnees_standard = '.Cel::db()->proteger($valeur) ;
241
				    $sous_requete .= 'co.donnees_standard = '.Cel::db()->proteger($valeur) ;
228
				    $sous_requete .= ' AND ';
242
				    $sous_requete .= ' AND ';
229
				    break;
243
				    break;*/
230
				case "referentiel":
244
				case "referentiel":
231
				    $sous_requete .= 'co.nom_referentiel = '.Cel::db()->proteger($valeur) ;
245
				    $sous_requete .= 'co.nom_referentiel = '.Cel::db()->proteger($valeur) ;
232
				    $sous_requete .= ' AND ';
246
				    $sous_requete .= ' AND ';
233
				    break;
247
				    break;
234
				case "taxon":
248
				case "taxon":