Subversion Repositories Sites.obs-saisons.fr

Compare Revisions

Ignore whitespace Rev 70 → Rev 210

/trunk/applications/saisie/controleurs/Individu.php
41,6 → 41,10
public function getFormulaireSaisieIndividu($donnees = array()) {
if($donnees == array()) {
$donnees['individu_nom'] = '';
}
$donnees['id_station'] = $_GET['id_station'];
if(!isset($donnees['id_espece'])) {
52,9 → 56,22
$donnees['informations_espece'] = $espece_dao->getInformationsEspece($donnees['id_espece']);
return $this->getVue('formulaires/individu_saisie',$donnees);
}
// +---------------------------------------------------------------------------------------------------------------+
// METHODES GENERIQUES
public function afficherFormulaireModificationIndividu($donnees = array()) {
$individu_dao = new IndividuDao();
$id_individu = $_GET['id_individu'];
$donnees['infos_individu'] = $individu_dao->getInformationsIndividu($id_individu);
$donnees['id_station'] = $_GET['id_station'];
$donnees['id_espece'] = $_GET['id_espece'];
$espece_dao = new EspeceDao();
$donnees['informations_espece'] = $espece_dao->getInformationsEspece($donnees['id_espece']);
$this->setSortie(self::RENDU_CORPS,$this->getVue('formulaires/individu_modification',$donnees));
}
 
public function afficherListeIndividu() {
$this->setSortie(self::RENDU_CORPS, $this->getListeIndividu());
82,6 → 99,10
$observation = new Observation();
if(trim($individu['nom']) == '') {
$individu['nom'] = 'Individu sans nom';
}
$individu['observations'] = $observation->getListeObservationsPourIndividu($individu['id_individu']);
$individu['url'] = Liens::getUrlConsultationFicheIndividu($id_station, $id_espece, $individu['id_individu']);
}
94,7 → 115,7
return $this->getVue('listes/evenement_liste', $donnees);
}
public function afficherInformationsIndividu() {
public function afficherInformationsIndividu($donnees = array()) {
$id_individu = $_GET['id_individu'];
$id_espece = $_GET['id_espece'];
113,8 → 134,21
// METHODES DE VALIDATION DE FORMULAIRE
public function validerFormulaireSaisieIndividu() {
$valeurs_verifiees = $this->collecterValeursFormulaireSaisieIndividu();
$valeurs_collectees = $this->collecterValeursFormulaireSaisieIndividu();
$verification_ou_erreurs = $this->verifierValeursIndividu($valeurs_collectees);
if($verification_ou_erreurs !== true) {
$donnees = $valeurs_collectees;
$donnees['erreurs'] = $verification_ou_erreurs;
$this->afficherFormulaireSaisieIndividu($donnees);
return;
}
$valeurs_verifiees = $valeurs_collectees;
$individu_dao = new IndividuDao();
$retour_ajout_individu = $individu_dao->ajouterIndividu($valeurs_verifiees);
122,7 → 156,7
$this->afficherListeIndividu();
$this->setNavigation();
} else {
$this->afficherFormulaireSaisieIndividu();
$this->afficherFormulaireSaisieIndividu($donnees);
}
}
140,13 → 174,90
$valeurs_verifiees['id_station'] = $_POST['station'];
$valeurs_verifiees['id_espece'] = $_POST['espece'];
$valeurs_verifiees['individu_nom'] = $_POST['individu_nom'];
//TODO: verifier valeurs plus complètement
return $valeurs_verifiees;
}
private function collecterValeursFormulaireModificationIndividu() {
$valeurs_verifiees['id_station'] = $_POST['id_station'];
$valeurs_verifiees['id_espece'] = $_POST['id_espece'];
$valeurs_verifiees['individu_nom'] = $_POST['individu_nom'];
$valeurs_verifiees['id_individu'] = $_POST['id_individu'];
return $valeurs_verifiees;
}
private function verifierValeursIndividu($valeurs_a_verifier) {
$erreurs = array();
foreach($valeurs_a_verifier as $champ => $valeur) {
if(trim($valeur) == '') {
$erreurs[$champ] .= ' Ce champ ne peut pas être vide';
}
}
if(!empty($erreurs)) {
return $erreurs;
}
return true;
}
public function validerFormulaireModificationIndividu() {
$valeurs_collectees = $this->collecterValeursFormulaireModificationIndividu();
$verification_ou_erreurs = $this->verifierValeursIndividu($valeurs_collectees);
if($verification_ou_erreurs !== true) {
$donnees = $valeurs_collectees;
$donnees['erreurs'] = $verification_ou_erreurs;
$this->afficherFormulaireModificationIndividu($donnees);
return;
}
$valeurs_verifiees = $valeurs_collectees;
$id_individu = $valeurs_collectees['id_individu'];
$individu_dao = new IndividuDao();
$retour_modification_individu = $individu_dao->modifierIndividu($id_individu, $valeurs_verifiees);
$this->afficherInformationsIndividu();
}
public function supprimerIndividu() {
$id_individu_a_supprimer = $_POST['id_individu_a_supprimer'];
$observations_individu = $this->getObservationsPourIndividu($id_individu_a_supprimer);
if(count($observations_individu) > 0) {
$donnees = array();
$donnees['erreurs'] = 'Impossible de supprimer un individu pour lequel on a saisi des données';
$this->id_individu_en_cours = $id_individu_a_supprimer;
$this->afficherInformationsIndividu($donnees);
} else {
$individu_dao = new IndividuDao();
$individu_dao->supprimerIndividu($id_individu_a_supprimer);
$gestion_station = new Station();
$_GET['id_station'] = $_POST['id_station'];
$this->setSortie(self::RENDU_CORPS, $gestion_station->getFicheInformationsStation());
}
}
// +---------------------------------------------------------------------------------------------------------------+
// METHODES POUR FABRIQUER LE MENU
public function setNavigation() {