New file |
0,0 → 1,74 |
<?php |
class GttCtrlActionAdminAbsenceMotif extends aControlleurAction { |
|
public function __construct(Registre $Registre) |
{ |
$Registre->ajouterEspace('AdminAbsenceMotif', 'admin_absence_motif'); |
$Registre->ajouterSquelette('admin_absence_motif', 'admin_absence_motif.tpl.html'); |
$Registre->setTitre('Administrer les motifs d\'absence'); |
} |
|
public function executer() |
{ |
$aso_admin_absence_motif = array(); |
|
// Récupération des catégories |
$AbsenceMotif = new AbsenceMotif(); |
$tab_am = $AbsenceMotif->consulter(AbsenceMotif::GAM_TOUS); |
foreach ($tab_am as $am) { |
if ($am->getIdAbsenceMotif() != 0) { |
$aso_motif['id'] = $am->getIdAbsenceMotif(); |
$aso_motif['libelle'] = $am->getLibelle(); |
$aso_admin_absence_motif['motifs'][] = $aso_motif; |
} |
} |
|
//echo '<pre>'.print_r($aso_admin_absence_motif, true).'</pre>'; |
$this->getRegistre()->ajouterDonnee('admin_absence_motif', $aso_admin_absence_motif); |
} |
|
public function executerValiderAjouter() |
{ |
// Ajout de la catégorie |
$AbsenceMotif = new AbsenceMotif(); |
$bool_existe = $AbsenceMotif->consulter(AbsenceMotif::GAM_LIBELLE, array($_POST['amaj_libelle'])); |
if ($bool_existe == false) { |
$AbsenceMotifMax = $AbsenceMotif->consulter(AbsenceMotif::GAM_ID_MAX); |
$id_max = $AbsenceMotifMax->getIdAbsenceMotif(); |
$AbsenceMotif->setIdAbsenceMotif(++$id_max); |
$AbsenceMotif->setLibelle($_POST['amaj_libelle']); |
$AbsenceMotif->ajouter(); |
} else { |
$aso_admin_absence_motif['message'] = 'Ce motif d\'absence existe déjà !'; |
$this->getRegistre()->ajouterDonnee('admin_absence_motif', $aso_admin_absence_motif); |
} |
// Action suivante |
$this->setSuivant('__defaut__'); |
} |
|
public function executerValiderSupprimer() |
{ |
// Suppression du motif d'absence |
$AbsenceMotif = new AbsenceMotif(); |
$AbsenceMotif->setIdAbsenceMotif($_POST['amsu_id']); |
$AbsenceMotif->supprimer(); |
|
// Mise à jour des absences possédant le motif supprimé |
$Absence = new Absence(); |
$tab_a = $Absence->consulter(Absence::GA_ID_ABSENCE_MOTIF, $_POST['amsu_id']); |
if ($tab_a != false) { |
if ($tab_a && count($tab_a) == 1) { |
$tab_a = array($tab_a); |
} |
foreach ($tab_a as $a) { |
$Ancien = clone $a; |
$a->setIdAbsenceMotif(0); |
$a->modifier($Ancien); |
} |
} |
|
// Action suivante |
$this->setSuivant('__defaut__'); |
} |
} |
?> |