Subversion Repositories eFlore/Applications.del

Rev

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

Rev 1455 Rev 1464
Line 197... Line 197...
197
							'ORDER BY moyenne_votes';
197
							'ORDER BY moyenne_votes';
198
		$requeteLiaisons .= $this->gestionBdd->getLimitSql();
198
		$requeteLiaisons .= $this->gestionBdd->getLimitSql();
Line 199... Line 199...
199
 
199
 
200
		return $this->bdd->recupererTous($requeteLiaisons);
200
		return $this->bdd->recupererTous($requeteLiaisons);
-
 
201
	}
-
 
202
 
-
 
203
	private function chargerLiaisons2() {
-
 
204
		$champs = array('di.id_observation as id_observation', 'nom_ret', 'nom_ret_nn', 'nt', 'famille', 'ce_zone_geo', 'zone_geo', 
-
 
205
						'lieudit', 'station', 'milieu', 'date_observation', 'di.mots_cles_texte as mots_cles_texte', 'di.commentaire as commentaire', 
-
 
206
						'di.mots_cles_texte as mots_cles_texte_image ', 'date_transmission', 'di.id_image as id_image', 'di.ce_utilisateur as ce_utilisateur', 
-
 
207
						'prenom', 'nom', 'courriel', 'di.nom_utilisateur', 'di.prenom_utilisateur', 'di.courriel_utilisateur', 'nom_original');
-
 
208
		
-
 
209
        $where = array();
-
 
210
        if(@$this->parametres['masque.protocole']) $where[] = 'ds.ce_protocole = ' . intval($this->parametres['masque.protocole']);
-
 
211
        if(@intval($this->parametres['masque.valeur_vote_min'])) $where[] = 'moyenne >= ' . intval($this->parametres['masque.valeur_vote_min']);
-
 
212
 
-
 
213
        $limite = min(intval($this->parametres['navigation.limite']), 1000);
-
 
214
        $limite = $limite ? $limite : 10; // 0 => 10
-
 
215
 
-
 
216
		$requeteLiaisons = sprintf(
-
 
217
            'SELECT SQL_CALC_FOUND_ROWS %s ce_protocole, moyenne, nb_votes, nb_tags'
-
 
218
            . ' FROM v_del_image di LEFT JOIN del_utilisateur du ON du.id_utilisateur = di.ce_utilisateur'
-
 
219
            . ' LEFT JOIN del_image_stat ds ON di.id_image = ds.ce_image'
-
 
220
            . ' WHERE %s GROUP BY id_image /* car plusieurs image pour obs, see PHP */ ORDER BY moyenne LIMIT %d, %d -- %s:%d',
-
 
221
 
-
 
222
            implode(', ',$champs),
-
 
223
            implode(' AND ', $where),
-
 
224
            intval($this->parametres['navigation.depart']),
-
 
225
            $limite,
-
 
226
            __FILE__, __LINE__);
-
 
227
 
-
 
228
        // GROUP BY (très couteux) car multiples observations associées à une image
-
 
229
        // eg: 16150,16185,16245,16246,118995,129989
-
 
230
 
-
 
231
		return $this->bdd->recupererTous($requeteLiaisons);
Line 201... Line 232...
201
	}
232
	}
202
	
233
	
203
	private function doitJoindreTableVotes() {
234
	private function doitJoindreTableVotes() {