Rev 271 | Rev 325 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php// declare(encoding='UTF-8');/*** Classe Controleur du module Accueil.* Affichage les infos sur l'ensemble des référentiels disponibles.** @package Referentiel* @category Php5.2* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>* @copyright 2010 Tela-Botanica* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL* @version SVN: $Id$*/class Informations extends AppliControleur {private $referentiel = null;private $referentielDao = null;private $traitementDao = null;private $resultatDao = null;public function __construct() {parent::__construct();// Récupération de paramêtresif (isset($_GET['ref'])) { // code du projet courrant$this->referentiel = strtolower(strip_tags($_GET['ref']));}// Chargement des DAO nécessaires$this->resultatDao = new ResultatDao();$this->traitementDao = new TraitementDao();$this->referentielDao = new ReferentielDao();}//+----------------------------------------------------------------------------------------------------------------+// Méthodes/*** Fonction d'affichage par défaut*/public function executerActionParDefaut() {return $this->afficherDetail();}/*** Affiche le détail d'un référentiel et la liste des actions possibles*/public function afficherDetail() {$donnees = array();$this->definirCommeModulePrincipal('Informations');// Traitement de l'info sur le code du référentielif (isset($this->referentiel)) {$this->construireMenu($this->referentiel);$this->construireFilAriane($this->referentiel);$donnees['referentiel'] = $this->referentiel;$donnees['nom_referentiel'] = $this->referentielDao->getNom($this->referentiel);$donnees['url_menu_test'] = $this->obtenirUrlMenuTest($this->referentiel);$donnees['url_menu_versionnage'] = $this->obtenirUrlMenuVersionnage($this->referentiel);$donnees['url_menu_consultation'] = $this->obtenirUrlMenuConsultation($this->referentiel);$donnees['infos_telechargements'] = $this->afficherTelechargementsReferentiels();} else {$this->addMessage("Aucun code de projet de référentiel n'est indiqué (Ex. bdtfx).");}$donnees['messages'] = $this->getMessages();$this->traiterEsperluette($donnees);$this->setSortie(self::RENDU_CORPS, $this->getVue('detail_referentiel', $donnees), false);}private function afficherTelechargementsReferentiels() {$infos_telechargements = array();// Recherche des traitements déjà effectué$resultat = $this->traitementDao->getTraitementsTermines($this->referentiel, 'versionnage');if (is_array($resultat)) {foreach ($resultat as &$traitement) {$infos_traitement = $this->traitementDao->getInfos($traitement['id_traitement']);if ($infos_traitement != false) {// Recherche des fichiers disponibles$infos_zip = $this->obtenirUrlsZipPourTraitement($infos_traitement);$infos_telechargements[] = array('infos_traitement' => $traitement,'description' => $this->creerDescriptionTelechargement($traitement),'urls_zip' => $infos_zip);}}}return $infos_telechargements;}private function creerDescriptionTelechargement($traitement) {return strftime('%e %B %Y', strtotime($traitement['meta_date_creation'])).' ('.$this->referentielDao->getNom($this->referentiel).') ';}}?>