25,6 → 25,9 |
const TAILLE_IMG_DEFAUT = 'M'; |
const MIME_JPEG = 'image/jpeg'; |
const MIME_JSON = 'application/json'; |
|
private $config = array(); |
private $cheminImagesBase = ''; |
private $formats_supportes = array(self::MIME_JPEG, self::MIME_JSON); |
private $ref_tax_demande = array(); |
private $infosImages = array(); |
31,13 → 34,18 |
private $nbreImages = 0; |
private $Utilisateurs = null; |
private $intitulesAuteurs = array(); |
private $UrlNavigation = null; |
|
public function __construct(Bdd $bdd = null, Utilisateurs $utilisateurs = null) { |
public function __construct(Bdd $bdd = null, Array $config = null, Utilisateurs $utilisateurs = null, Url $url = null) { |
$this->config = is_null($config) ? Config::get('Images') : $config; |
$this->Bdd = is_null($bdd) ? new Bdd() : $bdd; |
$this->Utilisateurs = is_null($utilisateurs) ? new Utilisateurs() : $utilisateurs; |
$this->UrlNavigation = is_null($url) ? new Url($this->config['urlService']) : $url; |
$this->cheminImagesBase = $this->config['chemin']; |
} |
|
public function consulter($ressources, $parametres) { |
//$tpsDebut = microtime(true); |
$this->parametres = $parametres; |
$this->ressources = $ressources; |
|
53,6 → 61,8 |
$this->chargerListeImages(); |
$this->chargerNbreImagesTotal(); |
$resultat->corps = $infos = $this->formaterListeImages(); |
//$tpsFin = microtime(true); |
//$resultat->corps['entete']['execution.tps'] = $tpsFin - $tpsDebut; |
} |
$resultat->mime = $this->parametres['retour']; |
|
166,14 → 176,14 |
|
private function analyserMasqueNn() { |
$nn = $this->parametres['masque.nn']; |
if (is_numeric($nn)) { |
$this->ref_tax_demande['bdtfx'] = $nn; |
if (is_int($nn)) { |
$this->ref_tax_demande[self::CODE_REFTAX_DEFAUT] = $nn; |
} else { |
// ceci contient potentiellement des formes ref_tax1:nn1,nn2;ref_tax2:nn3,nn4 |
$projetsListeEtNumNoms = explode(';', $nn); |
if (count($projetsListeEtNumNoms) > 0) { |
foreach ($projetsListeEtNumNoms as $projetEtNumNoms) { |
$projetEtNumNoms = (strpos($projetEtNumNoms, ':')) ? $projetEtNumNoms : 'bdtfx:'.$projetEtNumNoms; |
$projetEtNumNoms = (strpos($projetEtNumNoms, ':')) ? $projetEtNumNoms : self::CODE_REFTAX_DEFAUT.':'.$projetEtNumNoms; |
list($projet, $numNoms) = explode(':', $projetEtNumNoms); |
$this->ref_tax_demande[$projet] = explode(',', $numNoms); |
} |
233,8 → 243,7 |
private function convertirIdImageVersChemin($idImage) { |
$codeImage = $this->construireCodeImage($idImage); |
list($dossierNiveau1, $dossierNiveau2, $idFichier, $format) = explode('_', $codeImage); |
$chemin_base = Config::get('Images.chemin'); |
$chemin_sur_serveur = $chemin_base.'/'.$dossierNiveau1.'/'.$dossierNiveau2.'/'.$format; |
$chemin_sur_serveur = $this->cheminImagesBase.'/'.$dossierNiveau1.'/'.$dossierNiveau2.'/'.$format; |
return $chemin_sur_serveur; |
} |
|
334,7 → 343,6 |
} |
|
private function obtenirUrlNavigation($depart, $limite) { |
$urlNavigation = new Url(Config::get('serviceImageUrl')); |
$parametres = array( |
'navigation.depart' => $depart, |
'navigation.limite' => $limite); |
341,8 → 349,8 |
if (isset($this->parametres['masque.nn'])) { |
$parametres['masque.nn'] = $this->parametres['masque.nn']; |
} |
$urlNavigation->setRequete($parametres); |
$url = $urlNavigation->getURL(); |
$this->UrlNavigation->setRequete($parametres); |
$url = $this->UrlNavigation->getURL(); |
return $url; |
} |
|