Line 330... |
Line 330... |
330 |
$this->format_image = $this->parametres[0];
|
330 |
$this->format_image = $this->parametres[0];
|
331 |
}
|
331 |
}
|
Line 332... |
Line 332... |
332 |
|
332 |
|
333 |
// Construction de la requête
|
333 |
// Construction de la requête
|
334 |
$requete = (isset($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' ci.*, '.
|
334 |
$requete = (isset($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' ci.*, '.
|
335 |
' cim.id_image, cim.ce_utilisateur, nom_original, cim.date_creation, cim.mots_cles_texte as mots_cles_texte_images,
|
335 |
' cim.id_image, cim.ce_utilisateur, nom_original, cim.date_creation, cim.mots_cles_texte AS mots_cles_texte_images, '.
|
336 |
ci.mots_cles_texte as mots_cles_texte_images_obs, cim.commentaire, note_qualite, nom_referentiel '.
|
- |
|
337 |
'FROM cel_obs_images AS coi '.
|
- |
|
338 |
'LEFT JOIN cel_obs AS ci '.
|
336 |
' ci.mots_cles_texte AS mots_cles_texte_images_obs, cim.commentaire, note_qualite, nom_referentiel '.
|
339 |
'ON (coi.id_observation = ci.id_observation) '.
|
- |
|
340 |
'LEFT JOIN cel_images AS cim '.
|
- |
|
341 |
'ON (coi.id_image = cim.id_image) '.
|
337 |
'FROM cel_obs AS ci LEFT JOIN cel_images AS cim ON (ci.id_observation = cim.ce_observation) '.
|
342 |
'WHERE ci.transmission = 1 '.
|
338 |
'WHERE ci.transmission = 1 '.
|
343 |
' AND ci.ce_utilisateur = cim.ce_utilisateur '.
|
339 |
' AND ci.ce_utilisateur = cim.ce_utilisateur '.
|
344 |
'ORDER BY '.(isset($this->orderby) && (!is_null($this->orderby)) ? $this->orderby : 'cim.date_creation DESC').' '.
|
340 |
'ORDER BY '.(isset($this->orderby) && (!is_null($this->orderby)) ? $this->orderby : 'cim.date_creation DESC').' '.
|
Line 369... |
Line 365... |
369 |
|
365 |
|
Line 370... |
Line 366... |
370 |
private function getServiceComplet() {
|
366 |
private function getServiceComplet() {
|
371 |
|
367 |
|
372 |
// Construction de la requête
|
368 |
// Construction de la requête
|
373 |
$requete = (isset($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' ci.*, '.
|
369 |
$requete = (isset($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' ci.*, '.
|
374 |
' cim.id_image, ci.ce_utilisateur, nom_original, cim.date_creation, cim.mots_cles_texte as mots_cles_texte_images, '.
|
370 |
' cim.id_image, ci.ce_utilisateur, nom_original, cim.date_creation, cim.mots_cles_texte AS mots_cles_texte_images, '.
|
375 |
' ci.mots_cles_texte as mots_cles_texte_obs, cim.commentaire as commentaire_img, note_qualite, nom_referentiel, '.
|
371 |
' ci.mots_cles_texte AS mots_cles_texte_obs, cim.commentaire AS commentaire_img, note_qualite, nom_referentiel, '.
|
376 |
' ci.commentaire as commentaire_obs '.
|
- |
|
377 |
'FROM cel_images AS cim '.
|
- |
|
378 |
' LEFT JOIN cel_obs_images AS coi '.
|
372 |
' ci.commentaire AS commentaire_obs '.
|
379 |
' ON (coi.id_image = cim.id_image) '.
|
373 |
'FROM cel_images AS cim '.
|
380 |
' LEFT JOIN cel_obs AS ci '.
|
374 |
' LEFT JOIN cel_obs AS ci '.
|
381 |
' ON (coi.id_observation = ci.id_observation) '.
|
375 |
' ON (cim.ce_observation = ci.id_observation) '.
|
382 |
(($this->etreFluxAdmin()) ? '' : 'WHERE ci.transmission = 1 ').
|
376 |
(($this->etreFluxAdmin()) ? '' : 'WHERE ci.transmission = 1 ').
|
383 |
'ORDER BY '.(isset($this->orderby) && (!is_null($this->orderby)) ? $this->orderby : 'cim.date_creation DESC').' '.
|
377 |
'ORDER BY '.(isset($this->orderby) && (!is_null($this->orderby)) ? $this->orderby : 'cim.date_creation DESC').' '.
|
384 |
"LIMIT $this->start, $this->limit ";
|
378 |
"LIMIT $this->start, $this->limit ";
|
Line 429... |
Line 423... |
429 |
// Première sous requete pour que le limite se fasse d'abord sur les images
|
423 |
// Première sous requete pour que le limite se fasse d'abord sur les images
|
430 |
// et pas la jointure de toutes les tables
|
424 |
// et pas la jointure de toutes les tables
|
431 |
$sous_requete = 'SELECT * '.
|
425 |
$sous_requete = 'SELECT * '.
|
432 |
'FROM cel_images c '.
|
426 |
'FROM cel_images c '.
|
433 |
'WHERE id_image '.
|
427 |
'WHERE id_image '.
|
434 |
' IN (SELECT id_image FROM cel_obs_images a '.
|
428 |
' IN (SELECT id_image FROM cel_images a '.
|
435 |
(($this->etreFluxAdmin()) ? '' : 'INNER JOIN cel_obs b ON b.id_observation = a.id_observation AND b.transmission = 1 ').
|
429 |
(($this->etreFluxAdmin()) ? '' : 'INNER JOIN cel_obs b ON a.ce_observation = b.id_observation AND b.transmission = 1 ').
|
436 |
') ';
|
430 |
') ';
|
437 |
$sous_requete .= ' ORDER BY '.(isset($this->orderby) && (!is_null($this->orderby)) ? $this->orderby : 'c.date_creation DESC').' '.
|
431 |
$sous_requete .= ' ORDER BY '.(isset($this->orderby) && (!is_null($this->orderby)) ? $this->orderby : 'c.date_creation DESC').' '.
|
438 |
"LIMIT $this->start,$this->limit ";
|
432 |
"LIMIT $this->start,$this->limit ";
|
Line 439... |
Line 433... |
439 |
|
433 |
|
440 |
// Construction de la requête
|
434 |
// Construction de la requête
|
441 |
$requete = 'SELECT *, b.mots_cles_texte as mots_cles_texte_obs, c.mots_cles_texte as mots_cles_texte_images, '.
|
435 |
$requete = 'SELECT *, b.mots_cles_texte AS mots_cles_texte_obs, c.mots_cles_texte AS mots_cles_texte_images, '.
|
442 |
' b.commentaire as commentaire_obs, c.commentaire as commentaire_img, nom_referentiel '.
|
436 |
' b.commentaire AS commentaire_obs, c.commentaire AS commentaire_img, nom_referentiel '.
|
443 |
'FROM ('.$sous_requete.') as c '.
|
- |
|
444 |
' INNER JOIN cel_obs_images AS a '.
|
- |
|
445 |
' ON (a.id_image = c.id_image) '.
|
437 |
'FROM ('.$sous_requete.') AS c '.
|
446 |
' INNER JOIN cel_obs AS b '.
|
438 |
' INNER JOIN cel_obs AS b '.
|
447 |
' ON (a.id_observation = b.id_observation) AND b.ce_utilisateur = c.ce_utilisateur ';
|
439 |
' ON (c.ce_observation = b.id_observation) AND b.ce_utilisateur = c.ce_utilisateur ';
|
448 |
//echo $requete;
|
440 |
//echo $requete;
|
449 |
return $requete;
|
441 |
return $requete;
|
Line 450... |
Line 442... |
450 |
}
|
442 |
}
|
451 |
|
443 |
|
452 |
private function creerRequeteAvecParametres() {
|
444 |
private function creerRequeteAvecParametres() {
|
453 |
// Construction de la requête
|
445 |
// Construction de la requête
|
454 |
$requete = 'SELECT *, b.mots_cles_texte as mots_cles_texte_obs, c.mots_cles_texte as mots_cles_texte_images, '.
|
446 |
$requete = 'SELECT *, b.mots_cles_texte as mots_cles_texte_obs, c.mots_cles_texte as mots_cles_texte_images, '.
|
455 |
' b.commentaire as commentaire_obs, c.commentaire as commentaire_img, nom_referentiel '.
|
447 |
' b.commentaire as commentaire_obs, c.commentaire as commentaire_img, nom_referentiel '.
|
456 |
'FROM cel_obs_images AS a '.
|
448 |
'FROM cel_images AS c '.
|
457 |
' INNER JOIN cel_obs AS b '.
|
- |
|
458 |
' ON (a.id_observation = b.id_observation) '.
|
- |
|
459 |
' INNER JOIN cel_images AS c '.
|
449 |
' INNER JOIN cel_obs AS b '.
|
460 |
' ON (a.id_image = c.id_image) '.
|
450 |
' ON (c.ce_observation = b.id_observation) '.
|
461 |
'WHERE b.ce_utilisateur = c.ce_utilisateur '.
|
451 |
'WHERE b.ce_utilisateur = c.ce_utilisateur '.
|
Line 462... |
Line 452... |
462 |
(($this->etreFluxAdmin()) ? '' : 'AND b.transmission = 1 ').
|
452 |
(($this->etreFluxAdmin()) ? '' : 'AND b.transmission = 1 ').
|