101,11 → 101,16 |
} |
|
private function getInfosImages() { |
// Traitement du champ mots clés text à part pour éviter un écrasement des mots |
// clés img par ceux de l'obs |
// TODO: gérer ce problème pour tous les champs où ça peut arriver |
$mot_cles_texte_concat = "di.mots_cles_texte as mots_cles_texte_img"; |
|
$obsChamps = $this->sql->getAliasDesChamps($this->mappings['observations'], null, 'do'); |
$imgChamps = $this->sql->getAliasDesChamps($this->mappings['images'], null, 'di'); |
$idImgsConcat = implode(',', $this->idsImagesOrdonnees); |
|
$requete = "SELECT $obsChamps, $imgChamps ". |
$requete = "SELECT $obsChamps, $imgChamps, $mot_cles_texte_concat ". |
'FROM del_image AS di '. |
' LEFT JOIN del_observation AS do ON (di.ce_observation = do.id_observation) '. |
"WHERE di.id_image IN ($idImgsConcat) ". |
124,13 → 129,13 |
$id = $infos['id_image']; |
// ainsi nous utilisons deux tableaux: le final, indexé par couple d'id(image-obs) |
// et celui indexé par simple id_image qui est fort utile pour mapVotesToImages() |
// mais tout deux partage leur référence à "protocole" |
// mais tout deux partage leur référence à "protocole" |
$image = array( |
'id_image' => $id, |
'binaire.href' => sprintf($urlImgTpl, $infos['id_image'], $imageFormat), |
'mots_cles_texte' => isset($infos['mots_cles_texte']) ? $infos['mots_cles_texte'] : null, |
'mots_cles_texte' => isset($infos['mots_cles_texte_img']) ? $infos['mots_cles_texte_img'] : null, |
); |
unset($infos['id_image'], $infos['mots_cles_texte']); |
unset($infos['id_image'], $infos['mots_cles_texte'], $infos['mots_cles_texte_img']); |
|
$obsFormatees[$id] = $image; |
$obsFormatees[$id]['observation'] = $infos; |