Subversion Repositories Sites.obs-saisons.fr

Rev

Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

<?php
// declare(encoding='UTF-8');
/**
 * Classe d'administration de l'application
 *
 * @package     Collection
 * @category    Php 5.2
 * @author      Aurélien PERONNET <aurelien@tela-botanica.org>
 * @copyright   2013 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: Espece.php 152 2010-09-06 16:19:12Z jpm $
 */
class Administration extends aControleur {
        
        public function __construct()  {
                parent::__construct();
                $this->initialiser();
        }
        
        public function initialiser() { 

        }
        
        public function afficherListeEspecesAdministrables() {
                $espece_dao = new EspeceDao();
                $donnees['especes'] = $espece_dao->getListeEspecesAdminParType();
                $liste = $this->getVue('listes/espece_liste_administration',$donnees);
                $this->setSortie(self::RENDU_CORPS, $liste);    
        }
        
        public function afficherFormulaireModificationEspeceAdmin($valeurs_precedentes = array()) {
                $id_espece = $_GET['id_espece'];        
                $espece_dao = new EspeceDao();
                $erreurs = isset($valeurs_precedentes['erreurs']) ? $valeurs_precedentes['erreurs'] : array();
                $valeurs_precedentes['erreurs'];
                $donnees['espece'] = $espece_dao->getInformationsEspece($id_espece);
                $donnees['espece'] = array_merge($donnees['espece'], $valeurs_precedentes);
                $donnees['erreurs'] = $erreurs;
                $formulaire = $this->getVue('formulaires/espece_modification_administration',$donnees);
                $this->setSortie(self::RENDU_CORPS, $formulaire);
        }
        
// +---------------------------------------------------------------------------------------------------------------+
    // METHODES DE VALIDATION DE FORMULAIRE 
        public function validerFormulaireModificationEspeceAdmin() {
                $donnees = $_POST;
            $verification_ou_erreurs = $this->verifierValeursEspece($donnees);
        if($verification_ou_erreurs !== true) {                 
                $donnees['erreurs'] = $verification_ou_erreurs;
                $this->afficherFormulaireModificationEspeceAdmin($donnees);
                return;
        }
        
        if(isset($donnees['espece_active'])) {
                $donnees['espece_active'] = 1; 
        } else {
                $donnees['espece_active'] = 0;
        }
        
        $espece_dao = new EspeceDao();
        $id_espece = $donnees['id_espece'];
        unset($donnees['id_espece']);
        $retour_modif_espece = $espece_dao->modifierEspece($id_espece, $donnees);
        
        if($retour_modif_espece) {
                $this->afficherListeEspecesAdministrables();
        } else {         
                $this->afficherFormulaireModificationEspeceAdmin($donnees);
        }
    }
    
    private function verifierValeursEspece($donnees) {
        $erreurs = array();
        
        foreach($donnees as $champ => $valeur) {
                if(trim($valeur) == '') {
                        $erreurs[$champ] .= ' Ce champ ne peut pas ĂȘtre vide'; 
                }
        }
        
        if(!empty($erreurs)) {
                return $erreurs;
        }
        
        return true;
    }
}
?>