Rev 102 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php
class GttCtrlActionAdminUtilisateurStatut extends aControlleurAction {
public function __construct(Registre $Registre)
{
$Registre->ajouterEspace('AdminUtilisateurStatut', 'admin_utilisateur_statut');
$Registre->ajouterSquelette('admin_utilisateur_statut', 'admin_utilisateur_statut.tpl.html');
$Registre->setTitre('Administrer les statuts des utilisateurs');
}
public function executer()
{
$aso_admin_us = array();
// Récupération des statuts d'utilisateur
$UtilisateurStatut = new UtilisateurStatut();
$tab_us = $UtilisateurStatut->consulter(UtilisateurStatut::GUS_TOUS);
foreach ($tab_us as $us) {
// Nous récupérons tous les statuts sauf le null (=0)
if ($us->getIdUtilisateurStatut() != 0) {
$aso_us['id'] = $us->getIdUtilisateurStatut();
$aso_us['libelle'] = $us->getLibelle();
$aso_admin_us['statuts'][] = $aso_us;
}
}
//echo '<pre>'.print_r($aso_admin_us, true).'</pre>';
$this->getRegistre()->ajouterDonnee('admin_utilisateur_statut', $aso_admin_us);
}
public function executerValiderAjouter()
{
// Ajout du statut d'utilisateur
$UtilisateurStatut = new UtilisateurStatut();
$bool_existe = $UtilisateurStatut->consulter(UtilisateurStatut::GUS_LIBELLE, array($_POST['usaj_libelle']));
if ($bool_existe == false) {
$UtilisateurStatutMax = $UtilisateurStatut->consulter(UtilisateurStatut::GUS_ID_MAX);
$id_max = $UtilisateurStatutMax->getIdUtilisateurStatut();
$UtilisateurStatut->setIdUtilisateurStatut(++$id_max);
$UtilisateurStatut->setLibelle($_POST['usaj_libelle']);
$UtilisateurStatut->ajouter();
} else {
$aso_admin_us['message'] = 'Ce statut d\'utilisateur existe déjà !';
$this->getRegistre()->ajouterDonnee('admin_utilisateur_statut', $aso_admin_us);
}
// Action suivante
$this->setSuivant('__defaut__');
}
public function executerValiderSupprimer()
{
// Suppression du statut d'utilisateur
$UtilisateurStatut = new UtilisateurStatut();
$UtilisateurStatut->setIdUtilisateurStatut($_POST['ussu_id']);
$UtilisateurStatut->supprimer();
// Mise à jour des utilisateurs possédant ce statut
$Utilisateur = new Utilisateur();
$tab_u = $Utilisateur->consulter(Utilisateur::GU_CE_STATUT, $_POST['ussu_id']);
if ($tab_u != false) {
if ($tab_u && count($tab_u) == 1) {
$tab_u = array($tab_u);
}
foreach ($tab_u as $u) {
$Ancien = clone $u;
$u->setCeStatut(0);
$u->modifier($Ancien);
}
}
// Action suivante
$this->setSuivant('__defaut__');
}
}
?>