166,7 → 166,7 |
$ok = array_key_exists($this->parametres['retour.format'], $formats); |
return $ok; |
} |
|
|
private function verifierValeurParametreTri() { |
return in_array($this->parametres['retour.tri'], $this->tris_supportes); |
} |
200,7 → 200,7 |
} |
} |
|
|
|
//+---------------------------------------- REQUETES ---------------------------------------------------------------+ |
private function obtenirIdImageAuHasard() { |
$refTax = self::CODE_REFTAX_DEFAUT; |
226,7 → 226,7 |
$id_image_hasard = $resultat[array_rand($resultat)]['id_image']; |
return $id_image_hasard; |
} |
|
|
private function obtenirIdPremiereImage() { |
$refTax = self::CODE_REFTAX_DEFAUT; |
$numNom = $this->Bdd->proteger($this->ref_tax_demande[$refTax][0]); |
239,19 → 239,19 |
'WHERE co.transmission = 1 '. |
" AND co.num_nom_ret IN ($numNom) ". |
' AND ci.ci_meta_date != "0000-00-00" ORDER BY ci.ci_meta_date ASC'; |
|
|
$resultat = $this->Bdd->recupererTous($requete); |
|
|
if (!is_array($resultat) || count($resultat) <= 0) { |
$message = "Aucune image ne correspond au numéro numenclatural $refTax:$numNom"; |
$code = RestServeur::HTTP_CODE_RESSOURCE_INTROUVABLE; |
throw new Exception($message, $code); |
} |
|
|
$id_image_hasard = $resultat[0]['id_image']; |
return $id_image_hasard; |
} |
|
|
private function chargerInfosImage() { |
$requete = 'SELECT SQL_CALC_FOUND_ROWS '. |
' ci.ci_id_image AS id_img, co.id AS id_obs, '. |
265,7 → 265,7 |
' LEFT JOIN cel_inventory AS co '. |
' ON (coi.coi_ce_observation = co.ordre AND coi.coi_ce_utilisateur = co.identifiant) '. |
'WHERE ci.ci_id_image = '.$this->ressources[0]; |
|
|
$this->infosImages = $this->Bdd->recupererTous($requete); |
} |
|
274,14 → 274,12 |
$numNomListe = implode(',', $this->ref_tax_demande[$refTax]); |
$depart = $this->parametres['navigation.depart']; |
$limite = $this->parametres['navigation.limite']; |
|
|
//TODO: modifier la requete lors du passage à la nouvelle base de données pour faire quelque chose |
// du numéro nomenclatural + modifier les champs appelés pour le nouveau format + supprimer table annuaire |
$annuaireTable = $this->config['annuaire']['table']; |
// du numéro nomenclatural + modifier les champs appelés pour le nouveau format |
$requete = 'SELECT SQL_CALC_FOUND_ROWS '. |
' ci.ci_id_image AS id_img, co.id AS id_obs, '. |
' identifiant AS utilisateur_courriel, '. |
' an.u_id AS utilisateur_id, '. |
' nom_sel, num_nom_sel, '. |
' location, id_location, lieudit, station, milieu, '. |
' ci.ci_meta_date AS date '. |
290,16 → 288,14 |
' ON (coi.coi_ce_image = ci.ci_id_image) '. |
' LEFT JOIN cel_inventory AS co '. |
' ON (coi.coi_ce_observation = co.ordre AND coi.coi_ce_utilisateur = co.identifiant) '. |
" LEFT JOIN $annuaireTable AS an ". |
' ON (co.identifiant = an.u_mail) '. |
$this->formerRequeteConditions($numNomListe). |
' GROUP BY id_img '. |
$this->formerRequeteTri(). |
"LIMIT $depart,$limite "; |
|
|
$this->infosImages = $this->Bdd->recupererTous($requete); |
} |
|
|
private function formerRequeteConditions($numNomListe) { |
$where[] = " co.transmission = 1 AND co.num_nom_ret IN ($numNomListe) "; |
if (isset($this->parametres['retour.tri']) && $this->parametres['retour.tri'] == 'date') { |
307,7 → 303,7 |
} |
return ' WHERE '.implode(' AND ', $where); |
} |
|
|
private function formerRequeteTri() { |
$order = ""; |
if (isset($this->parametres['retour.tri']) && $this->parametres['retour.tri'] == 'date') { |
315,15 → 311,15 |
} |
return $order; |
} |
|
|
|
|
private function chargerNbreImagesTotal() { |
$requete = 'SELECT FOUND_ROWS() AS nbre '; |
$resultats = $this->Bdd->recuperer($requete); |
$this->nbreImages = (int) $resultats['nbre']; |
} |
|
|
|
//+---------------------------------------CHEMIN ET CONVERSION--------------------------------------------------------+ |
private function recupererImageBinaire($id_image) { |
$image = ''; |
363,8 → 359,8 |
$codeImage .= '_'.$format; |
return $codeImage; |
} |
|
|
|
|
//+------------------------------------FORMATAGE LISTE----------------------------------------------------------------+ |
private function formaterListeImages() { |
$entete = $this->construireEntete(); |
451,8 → 447,7 |
$info = array(); |
$info['date'] = $img['date']; |
$info['mime'] = self::MIME_JPEG; |
$info['auteur.libelle'] = $this->formaterAuteur($img); |
$info['auteur.id'] = $img['utilisateur_id']; |
$info['auteur'] = $this->formaterAuteur($img); |
$info['binaire.href'] = $this->formaterUrlImage($img); |
$info['determination.libelle'] = $this->formaterDetermination($img); |
$info['determination.nom_sci'] = $img['nom_sel']; |
460,7 → 455,7 |
$info = array_merge($info, $this->formaterStation($img)); |
return $info; |
} |
|
|
private function extraireIntitulesAuteurs() { |
$courriels = array(); |
foreach ($this->infosImages as $img) { |