Rev 5 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php
/**
* PHP Version 5
*
* @category PHP
* @package annuaire
* @author aurelien <aurelien@tela-botanica.org>
* @copyright 2010 Tela-Botanica
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @version SVN: <svn_id>
* @link /doc/annuaire/
*/
class OntologieControleur extends Controleur {
public function preTraiterDonnees($donnees) {
$donnees['base_url'] = Registre::getInstance()->get('base_url_application');
return $donnees;
}
/**--------Fonctions de gestion des ontologies --------------------------------*/
public function chargerListeListe() {
$this->chargerModele('OntologieModele');
$data['ontologie'] = $this->OntologieModele->chargerListeListes();
$data['titre'] = 'Liste des listes';
$this->chargerVue('liste_des_listes', $data);
return $this->liste_des_listes;
}
public function chargerListeOntologie($identifiant) {
$this->chargerModele('OntologieModele');
// On charge les informations de la liste (nom description etc...)
$data['informations'] = $this->OntologieModele->chargerInformationsOntologie($identifiant);
$data['ontologie'] = $this->OntologieModele->chargerListeOntologie($identifiant);
$this->chargerVue('liste_ontologie', $data);
return $this->liste_ontologie;
}
/**
* Affiche le formulaire d'ajout de liste ontologie
*/
public function afficherFormulaireAjoutListeOntologie($valeurs) {
if(!isset($valeurs['amo_nom'])) {
$valeurs['amo_nom'] = '';
}
if(!isset($valeurs['amo_abreviation'])) {
$valeurs['amo_abreviation'] = '';
}
if(!isset($valeurs['amo_description'])) {
$valeurs['amo_description'] = '';
}
if(!isset($valeurs['amo_ce_parent'])) {
$valeurs['amo_ce_parent'] = '';
}
$this->chargerVue('liste_ontologie_ajout', $valeurs);
return $this->liste_ontologie_ajout;
}
/**
* Affiche le formulaire de modification de liste ontologie
*/
public function afficherFormulaireModificationListeOntologie($valeurs) {
if(isset($valeurs['amo_id_ontologie'])) {
$this->chargerModele('OntologieModele');
$data['valeurs'] = $this->OntologieModele->chargerInformationsOntologie($valeurs['amo_id_ontologie']);
$this->chargerVue('liste_ontologie_modification', $data);
return $this->liste_ontologie_modification;
}
}
/**
* Ajoute une nouvelle liste d'ontologie
*/
public function ajouterNouvelleListeOntologie($valeurs) {
if(isset($valeurs['amo_nom'])
&& isset($valeurs['amo_abreviation'])
&& isset($valeurs['amo_description'])
&& isset($valeurs['amo_ce_parent'])) {
$this->chargerModele('OntologieModele');
$this->OntologieModele->ajouterNouvelleListeOntologie($valeurs);
} else {
return $this->afficherFormulaireAjoutListeOntologie($valeurs);
}
return $this->chargerListeListe();
}
/**
* Affiche le formulaire d'ajout ou de modification de liste ontologie
*/
public function modifierListeOntologie($valeurs) {
if(isset($valeurs['amo_nom']) &&isset($valeurs['amo_abreviation']) && isset($valeurs['amo_description'])) {
$this->chargerModele('OntologieModele');
$this->OntologieModele->modifierListeOntologie($valeurs);
} else {
// TODO: afficher une erreur si la modification n'a pas fonctionné
return $this->afficherFormulaireListeOntologie($valeurs, true);
}
return $this->chargerListeListe();
}
/**
* Affiche le formulaire d'ajout ou de modification de liste ontologie
*/
public function supprimerListeOntologie($valeurs) {
if(isset($valeurs['amo_nom']) &&isset($valeurs['amo_abreviation']) && isset($valeurs['amo_description'])) {
$this->chargerModele('OntologieModele');
$this->OntologieModele->supprimerListeOntologie($valeurs);
} else {
// TODO: afficher une erreur si la suppression n'a pas fonctionné
return $this->chargerListeListe();
}
return $this->chargerListeListe();
}
}
?>