33,7 → 33,7 |
|
// Gestion des données de la requête |
if (!isset($_GET['id'])) { |
|
|
} else { |
// Récupération des données |
$this->donnees['id'] = $_GET['id']; |
51,6 → 51,8 |
$this->traiterDonneesCollectionInventaire($this->donnees['info']); |
$this->traiterDonneesCollectionACommentaire($this->donnees['commentaires']); |
$this->postraiterDonnees($this->donnees); |
|
$this->donnees['info'] = $this->formaterMetaDonneesSpecifiques($this->donnees['info']); |
$this->donnees['metadonnees'] = $this->traiterMetaDonnees($this->donnees['info']); |
|
// Création des méta-données de la page |
57,7 → 59,7 |
$titre = $this->donnees['info']['cc_nom']; |
$description = $this->donnees['info']['cc_description']; |
$tags = "Collection, id:{$this->donnees['id']}, {$this->donnees['info']['_guid_']}"; |
|
|
// Envoie à la sortie |
//Debug::printr($this->donnees); |
$this->setSortie(self::META_TITRE, $titre); |
68,6 → 70,29 |
} |
} |
|
private function formaterMetaDonneesSpecifiques($donnees_info) { |
// TODO: ceci cause trois appels de web services supplémentaires |
// l'idéal serait d'avoir un service qui renvoie tout ça une fois |
// (après l'appel n'est pas très couteux en temps et performance) |
$sources = $this->collectionDao->getPublicationsSourcesLiees($this->donnees['id']); |
$experts = $this->collectionDao->getPersonnesLieesExpertes($this->donnees['id']); |
$contributeurs = $this->collectionDao->getPersonnesLieesContributrices($this->donnees['id']); |
|
$donnees_info['contributeur'] = $this->formaterTableauMetadonnees($contributeurs, 'cp_fmt_nom_complet'); |
$donnees_info['expert'] = $this->formaterTableauMetadonnees($experts, 'cp_fmt_nom_complet'); |
$donnees_info['cmhl_source'] = $this->formaterTableauMetadonnees($sources, 'cpu_fmt_nom_complet'); |
|
return $donnees_info; |
} |
|
private function formaterTableauMetadonnees(&$donnees, $champ_a_extraire) { |
$donnees_fmt = array(); |
foreach($donnees as &$donnee) { |
$donnees_fmt[] = $donnee[$champ_a_extraire]; |
} |
return implode(', ', $donnees_fmt); |
} |
|
private function creerPaginationPersonnes($id_collection) { |
// Gestion du nombre de résultats |
$donnees_total = $this->collectionDao->getNbrePersonnesLiees($id_collection); |