167,16 → 167,19 |
* Retrouver les derniers votes image |
* */ |
private function getDerniersVotesImage() { |
$clauseWhere = $this->chargerClauseWhere(); |
$elements = array(); |
$idsTags = $this->getIdsDerniersVotesImage(); |
if (!empty($idsTags)) { |
$idsTagsConcat = implode(', ', $idsTags); |
$requete = 'SELECT DISTINCT id_tag, tag, date, '. |
' do.id_observation, do.nom_sel, do.zone_geo, do.date_observation, doi.id_image, '. |
' do.id_observation, do.nom_sel, do.zone_geo, do.date_observation, di.id_image, '. |
' duo.prenom AS auteur_prenom, duo.nom AS auteur_nom, duo.courriel AS auteur_courriel, '. |
' du.prenom AS tagueur_prenom, du.nom AS tagueur_nom, du.courriel AS tagueur_courriel '. |
'FROM del_image_tag AS dit '. |
' INNER JOIN del_obs_image AS doi '. |
' INNER JOIN del_image AS di '. |
' ON ce_image = id_image '. |
' INNER JOIN del_observation AS do '. |
' ON doi.id_observation = do.id_observation '. |
' ON di.ce_observation = do.id_observation '. |
' LEFT JOIN del_utilisateur AS duo '. |
' ON do.ce_utilisateur = duo.id_utilisateur '. |
' LEFT JOIN del_utilisateur AS du '. |
183,28 → 186,34 |
' ON if((CHAR_LENGTH(dit.ce_utilisateur) <> 32),CAST(dit.ce_utilisateur AS unsigned),0) '. |
' = du.id_utilisateur '. |
'WHERE actif = 1 '. |
($clauseWhere != '' ? "AND $clauseWhere " : ''). |
" AND id_tag IN ($idsTagsConcat) ". |
'ORDER BY date DESC '. |
'LIMIT '.$this->navigation->getDepart().','.$this->navigation->getLimite().' '. |
' -- '.__FILE__.' : '.__LINE__; |
$elements = $this->bdd->recupererTous($requete); |
} |
return $elements; |
} |
|
private function chargerClauseWhere() { |
$where = array(); |
$filtres = $this->navigation->getFiltre(); |
if (!empty($filtres)) { |
$filtrePossibles = $this->conteneur->getParametreTableau('syndication.tag_filtres'); |
foreach ($filtres as $cleFiltre => $valeur) { |
if (in_array($cleFiltre, $filtrePossibles)) { |
$champ = $this->mapping[$cleFiltre]; |
$valeurP = $this->bdd->proteger($valeur); |
$where[] = " $champ = $valeurP "; |
/** |
* Retrouver les ids des derniers votes image |
* */ |
private function getIdsDerniersVotesImage() { |
$requete = 'SELECT DISTINCT id_tag '. |
'FROM del_image_tag '. |
'WHERE actif = 1 '. |
// Pas de filtre pour ce service. Utiliser le principe des autres ws de syndication si on devait en rajouter. |
'ORDER BY date DESC '. |
'LIMIT '.$this->navigation->getDepart().','.$this->navigation->getLimite().' '. |
' -- '.__FILE__.' : '.__LINE__; |
$resultats = $this->bdd->recupererTous($requete); |
|
$idsTags = array(); |
if ($resultats != false && is_array($resultats)) { |
foreach ($resultats as $infos) { |
$idsTags[] = $infos['id_tag']; |
} |
} |
return $idsTags; |
} |
|
return (!empty($where)) ? implode('AND', $where) : ''; |
} |
} |
Property changes: |
Added: svnkit:entry:sha1-checksum |
+0aaf0e201a3d29d801b57d08d5878bb16dbdbb41 |
\ No newline at end of property |