77,7 → 77,7 |
// del/services/0.1/images?navigation.depart=0&navigation.limite=12&tri=votes&ordre=desc&protocole=3 |
// del/services/0.1/images?navigation.depart=0&navigation.limite=12&tri=votes&ordre=desc&protocole=3&masque=plop |
|
class ListeImages2 { |
class ListeImages { |
|
// TODO: PHP-x.y, ces variables devrait être des "const" |
static $format_image_possible = array('O','CRX2S','CRS','CXS','CS','XS','S','M','L','XL','X2L','X3L'); |
166,6 → 166,11 |
Lorsqu'on utilise masque.tag* pour chercher des tags, ils sont |
postulés comme séparés par des virgule, et l'un au moins des tags doit matcher. */ |
$params_pf['masque.tag_cel'] = DelTk::buildTagsAST(@$parametres['masque.tag_cel'], 'OR', ','); |
|
|
if(!isset($parametres['masque.tag_pictoflora']) && isset($parametres['masque.tag'])) { |
$parametres['masque.tag_pictoflora'] = $parametres['masque.tag']; |
} |
$params_pf['masque.tag_pictoflora'] = DelTk::buildTagsAST(@$parametres['masque.tag_pictoflora'], 'OR', ','); |
|
$params = array_merge( |
174,9 → 179,9 |
$params_ip, // les paramètres passés, traités par Identiplante |
$params_pf); // les paramètres passés, traités par PictoFlora |
|
// XXX: temp tweak |
/* $this->conteneur->setParametre('url_images', sprintf($this->conteneur->getParametre('images.url_images'), |
"%09d", $params['format']));*/ |
if(isset($parametres['format'])) { |
$params['format'] = $parametres['format']; |
} |
|
// création des contraintes (génériques de DelTk) |
DelTk::sqlAddConstraint($params, $db, $req); |
209,7 → 214,6 |
$total = $db->recuperer('SELECT FOUND_ROWS() AS c'); $total = intval($total['c']); |
|
$liaisons = self::chargerImages($db, $idobs); |
|
/* |
// Q&D |
$images = array(); |
223,7 → 227,6 |
$this->conteneur->getParametre('images.url_images'), |
$params['format']); |
|
|
// on charge les votes pour ces images et pour *tous* les protocoles |
$votes = Observation::chargerVotesImage($db, $liaisons, NULL); |
|
435,7 → 438,8 |
|
// puis: |
$ids = @array_map(create_function('$e', 'return $e["ce_image"];'), $ids); |
if($ids) $req['where'][] = sprintf("vdi.id_image IN (%s)", implode(',', $ids)); |
$ids = !empty($ids) ? implode(',', $ids) : 'SELECT ce_image FROM del_image_tag WHERE false'; |
$req['where'][] = sprintf("vdi.id_image IN (%s)", $ids); |
|
} |
else { |
446,7 → 450,8 |
$db->proteger(implode('|', $p['masque.tag_pictoflora']['OR'])))); |
|
$ids = @array_map(create_function('$e', 'return $e["ce_image"];'), $ids); |
if($ids) $req['where'][] = sprintf("vdi.id_image IN (%s)", implode(',', $ids)); |
$ids = !empty($ids) ? implode(',', $ids) : 'SELECT ce_image FROM del_image_tag WHERE false'; |
$req['where'][] = sprintf("vdi.id_image IN (%s)", $ids); |
} |
} |
|
468,7 → 473,6 |
$req['orderby'], |
|
$p['navigation.depart'], $p['navigation.limite'], __FILE__ . ':' . __LINE__)); |
|
} |
|
static function chargerImages($db, $idImg) { |