/trunk/actions/GttCtrlActionAdminUtilisateur.class.php |
---|
New file |
0,0 → 1,235 |
<?php |
class GttCtrlActionAdminUtilisateur extends aControlleurAction { |
public function __construct(Registre $Registre) |
{ |
$Registre->ajouterEspace('AdminUtilisateur', 'admin_utilisateur'); |
$Registre->ajouterSquelette('admin_utilisateur', 'admin_utilisateur.tpl.html'); |
$Registre->setTitre('Administrer les utilisateurs'); |
} |
public function executer() |
{ |
$aso_admin_utilisateur = array(); |
// Récupération des utilisateur |
$Utilisateur = new Utilisateur(); |
// Vérification si l'utilisateur est admin |
$aso_admin_utilisateur['bool_mark_admin'] = false; |
if ($Utilisateur->getMarkAdmin() == 1) { |
$aso_admin_utilisateur['bool_mark_admin'] = true; |
} |
// Vérification si l'utilisateur doit apparaître dans le récapitulatif |
$aso_admin_utilisateur['bool_mark_recapitulatif'] = false; |
if ($Utilisateur->getMarkRecapitulatif() == 1) { |
$aso_admin_utilisateur['bool_mark_recapitulatif'] = true; |
} |
// Utilisateur vide par défaut |
$aso_admin_utilisateur['Utilisateur'] = clone $Utilisateur; |
// Recherche des utilisateurs existant |
$tab_u = $Utilisateur->consulter(Utilisateur::GU_TOUS); |
foreach ($tab_u as $u) { |
// Nous récupérons tous les statuts sauf le null (=0) |
if ($u->getIdUtilisateur() != 0) { |
$aso_utilisateur['id'] = $u->getIdUtilisateur(); |
$aso_utilisateur['libelle'] = $u->getPrenom().' '.$u->getNom(); |
$aso_admin_utilisateur['utilisateurs'][] = $aso_utilisateur; |
} |
} |
// Recherche des statuts des utilisateurs |
$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_utilisateur['utilisateur_statuts'][] = $aso_us; |
} |
} |
// Modification des titres, légendes et bouton |
$aso_admin_utilisateur['form_legend'] = 'Ajouter un utilisateur'; |
$aso_admin_utilisateur['form_bouton_value'] = 'Ajouter'; |
$aso_admin_utilisateur['form_bouton_id'] = 'btn_utilisateur_ajouter'; |
$aso_admin_utilisateur['form_url'] = 'index.php?action=admin-utilisateur_valider-ajouter'; |
//echo '<pre>'.print_r($aso_admin_utilisateur, true).'</pre>'; |
$this->getRegistre()->ajouterDonnee('admin_utilisateur', $aso_admin_utilisateur); |
} |
public function executerValiderAjouter() |
{ |
if (isset($_POST['btn_utilisateur_annuler'])) { |
// Action suivante |
$this->setSuivant('__defaut__'); |
} else if (isset($_POST['btn_utilisateur_ajouter'])) { |
// Vérification de l'utilisateur à ajouter |
$bool_ajouter = true; |
$Utilisateur = new Utilisateur(); |
$UtMail = $Utilisateur->consulter(Utilisateur::GU_MAIL, array($_POST['ut_email'])); |
if ((is_array($UtMail) && count($UtMail) > 1) || $UtMail instanceof Utilisateur) { |
$aso_admin_utilisateur['messages'][] = 'Un utilisateur avec le même courriel existe déjà !'; |
$bool_ajouter = false; |
} |
$this->verifierChampsCommuns(&$aso_admin_utilisateur, &$bool_ajouter); |
if ($bool_ajouter) { |
// Action suivante |
$this->setSuivant('ajouter'); |
} else { |
// Action suivante |
$this->setSuivant('__defaut__'); |
$this->getRegistre()->ajouterDonnee('admin_utilisateur', $aso_admin_utilisateur); |
} |
} |
} |
public function executerValiderModifier() |
{ |
if (isset($_POST['btn_utilisateur_annuler'])) { |
// Action suivante |
$this->setSuivant('__defaut__'); |
} else if (isset($_POST['btn_utilisateur_modifier'])) { |
// Vérification de l'utilisateur à modifier |
$bool_modifier = true; |
$Utilisateur = new Utilisateur(); |
$UtMail = $Utilisateur->consulter(Utilisateur::GU_MAIL, array($_POST['ut_email'])); |
if ((is_array($UtMail) && count($UtMail) > 1) || ($UtMail instanceof Utilisateur && $UtMail->getIdUtilisateur() != $_POST['ut_id_utilisateur'])) { |
$aso_admin_utilisateur['messages'][] = 'Un utilisateur avec le même courriel existe déjà !'; |
$bool_modifier = false; |
} |
$this->verifierChampsCommuns(&$aso_admin_utilisateur, &$bool_modifier); |
if ($bool_modifier) { |
// Action suivante |
$this->setSuivant('modifier'); |
} else { |
// Action suivante |
$_POST['btn_utilisateur_modifier'] = 'btn_utilisateur_modifier'; |
$_POST['utsu_id'] = $_POST['ut_id_utilisateur']; |
$this->setSuivant('editer'); |
$this->getRegistre()->ajouterDonnee('admin_utilisateur', $aso_admin_utilisateur); |
} |
} |
} |
public function verifierChampsCommuns(&$aso_admin_utilisateur, &$bool) |
{ |
if (!preg_match('/^\w{6,}$/', $_POST['ut_mot_de_passe'])) { |
$aso_admin_utilisateur['messages'][] = 'Le mot de passe doit contenir au moins 6 caractères !'; |
$bool = false; |
} |
if ($_POST['ut_mot_de_passe'] != $_POST['ut_mot_de_passe_confirmation']) { |
$aso_admin_utilisateur['messages'][] = 'Les mots de passe saisies ne sont pas identique !'; |
$bool = false; |
} |
if ($_POST['ut_temps_de_travail'] > 24) { |
$aso_admin_utilisateur['messages'][] = 'Il est impossible que le temps de travail soit supérieur à 24h !'; |
$bool = false; |
} |
$aso_champs_obligatoires = array('ut_nom' => 'Nom', 'ut_prenom' => 'Prénom', 'ut_email' => 'Courriel', 'ut_mot_de_passe' => 'Mot de passe'); |
foreach ($aso_champs_obligatoires as $champ_id => $libelle) { |
if (empty($_POST[$champ_id])) { |
$aso_admin_utilisateur['messages'][] = "Le champ $libelle ne doit pas être vide !"; |
$bool = false; |
} |
} |
} |
public function executerEditer() |
{ |
// Ajout du statut d'utilisateur |
if (isset($_POST['btn_utilisateur_modifier'])) { |
// Récupération des données de l'utilisateur à modifier |
$Utilisateur = new Utilisateur(); |
$Utilisateur->consulter(Utilisateur::GU_ID, $_POST['utsu_id'], true); |
$aso_admin_utilisateur['Utilisateur'] = $Utilisateur; |
// Vérification si l'utilisateur est admin |
$aso_admin_utilisateur['bool_mark_admin'] = false; |
if ($Utilisateur->getMarkAdmin() == 1) { |
$aso_admin_utilisateur['bool_mark_admin'] = true; |
} |
// Vérification si l'utilisateur doit apparaître dans le récapitulatif |
$aso_admin_utilisateur['bool_mark_recapitulatif'] = false; |
if ($Utilisateur->getMarkRecapitulatif() == 1) { |
$aso_admin_utilisateur['bool_mark_recapitulatif'] = true; |
} |
// Modification des titres, légendes et bouton |
$aso_admin_utilisateur['form_legend'] = 'Modifier un utilisateur'; |
$aso_admin_utilisateur['form_bouton_value'] = 'Modifier'; |
$aso_admin_utilisateur['form_bouton_id'] = 'btn_utilisateur_modifier'; |
$aso_admin_utilisateur['form_url'] = 'index.php?action=admin-utilisateur_valider-modifier'; |
$this->getRegistre()->ajouterDonnee('admin_utilisateur', $aso_admin_utilisateur); |
} else if (isset($_POST['btn_utilisateur_supprimer'])) { |
// Action suivante |
$this->setSuivant('supprimer'); |
} |
} |
public function executerAjouter() |
{ |
$Utilisateur = new Utilisateur(); |
$UtilisateurMax = $Utilisateur->consulter(Utilisateur::GU_ID_MAX); |
$id_max = $UtilisateurMax->getIdUtilisateur(); |
$Utilisateur->setIdUtilisateur(++$id_max); |
$Utilisateur->setNom($_POST['ut_nom']); |
$Utilisateur->setPrenom($_POST['ut_prenom']); |
$Utilisateur->setAdresse($_POST['ut_adresse']); |
$Utilisateur->setVille($_POST['ut_ville']); |
$Utilisateur->setCodePostal($_POST['ut_code_postal']); |
$Utilisateur->setTelephone($_POST['ut_telephone']); |
$Utilisateur->setEmail($_POST['ut_email']); |
$Utilisateur->setPassword($_POST['ut_mot_de_passe']); |
//$Utilisateur->setCeStatut($_POST['ut_statut']); |
$Utilisateur->setCongesPayes($_POST['ut_conges_payes']); |
$Utilisateur->setTempsDeTravail($_POST['ut_temps_de_travail']); |
$Utilisateur->setQuotaHeuresSupp($_POST['ut_quota_heures_supp']); |
$Utilisateur->setMarkAdmin($_POST['ut_mark_admin']); |
$Utilisateur->setMarkRecapitulatif($_POST['ut_mark_recapitulatif']); |
$Utilisateur->ajouter(); |
// Action suivante |
$this->setSuivant('__defaut__'); |
} |
public function executerModifier() |
{ |
$Utilisateur = new Utilisateur(); |
$Utilisateur->setIdUtilisateur($_POST['ut_id_utilisateur']); |
$Utilisateur->setNom($_POST['ut_nom']); |
$Utilisateur->setPrenom($_POST['ut_prenom']); |
$Utilisateur->setAdresse($_POST['ut_adresse']); |
$Utilisateur->setVille($_POST['ut_ville']); |
$Utilisateur->setCodePostal($_POST['ut_code_postal']); |
$Utilisateur->setTelephone($_POST['ut_telephone']); |
$Utilisateur->setEmail($_POST['ut_email']); |
$Utilisateur->setPassword($_POST['ut_mot_de_passe']); |
//$Utilisateur->setCeStatut($_POST['ut_statut']); |
$Utilisateur->setCongesPayes($_POST['ut_conges_payes']); |
$Utilisateur->setTempsDeTravail($_POST['ut_temps_de_travail']); |
$Utilisateur->setQuotaHeuresSupp($_POST['ut_quota_heures_supp']); |
$Utilisateur->setMarkAdmin($_POST['ut_mark_admin']); |
$Utilisateur->setMarkRecapitulatif($_POST['ut_mark_recapitulatif']); |
$Utilisateur->modifier(); |
// Action suivante |
$this->setSuivant('__defaut__'); |
} |
public function executerSupprimer() |
{ |
// Suppression du statut d'utilisateur |
$Utilisateur = new Utilisateur(); |
$Utilisateur->setIdUtilisateur($_POST['utsu_id']); |
$Utilisateur->supprimer(); |
// TODO : Suppression des données de cet utilisateur |
// Action suivante |
$this->setSuivant('__defaut__'); |
} |
} |
?> |
/trunk/actions/GttCtrlActionAdminAbsenceMotif.class.php |
---|
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__'); |
} |
} |
?> |
/trunk/actions/GttCtrlActionAdminUtilisateurStatut.class.php |
---|
New file |
0,0 → 1,76 |
<?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__'); |
} |
} |
?> |
/trunk/actions/GttCtrlActionGestion.class.php |
---|
313,7 → 313,6 |
$bool_ajouter = false; |
if ($A->getDuree() != $ab_duree) { |
echo 'ici'.$ab_duree; |
if (empty($ab_duree)) { |
$A->supprimer(); |
} else { |
/trunk/actions/GttCtrlActionIdentification.class.php |
---|
17,16 → 17,14 |
'cryptype' => 'md5', |
'db_fields' => '*'); |
// Création de l'objet auth |
$a = new Auth('DB', $params, null, false); |
$a->setSessionname(GTT_AUTH_SESSION_NOM); |
$a->setExpire(time()+(int)GTT_AUTH_SESSION_DUREE); |
$a->start(); |
$GLOBALS['_GTT_']['auth'] = $a; |
$GLOBALS['_GTT_']['identification'] = new Auth('DB', $params, null, false); |
$GLOBALS['_GTT_']['identification']->setSessionname(GTT_AUTH_SESSION_NOM); |
$GLOBALS['_GTT_']['identification']->setExpire(time()+(int)GTT_AUTH_SESSION_DUREE); |
$GLOBALS['_GTT_']['identification']->start(); |
setcookie(session_name(),session_id(), time()+(int)GTT_AUTH_SESSION_DUREE, "/"); |
if ($GLOBALS['_GTT_']['auth']->getAuth()) { |
require_once GTT_CHEMIN_METIER.'Utilisateur.class.php'; |
$GLOBALS['_GTT_']['Utilisateur'] = new Utilisateur(Utilisateur::GU_MAIL, array($a->getUserName())); |
if ($GLOBALS['_GTT_']['identification']->getAuth()) { |
require_once GTT_CHEMIN_METIER.'Utilisateur.class.php'; |
$GLOBALS['_GTT_']['Utilisateur'] = new Utilisateur(Utilisateur::GU_MAIL, array($GLOBALS['_GTT_']['identification']->getUserName())); |
$aso_identification['nom'] = $GLOBALS['_GTT_']['Utilisateur']->getNom(); |
$aso_identification['prenom'] = $GLOBALS['_GTT_']['Utilisateur']->getPrenom(); |
$this->getRegistre()->ajouterSquelette('identification', 'identite.tpl.html'); |
44,7 → 42,7 |
$this->getRegistre()->ajouterSquelette('identification', 'connexion.tpl.html'); |
// Création de l'url de réponse du formulaire |
$aso_connexion['url'] = 'index.php?action='.GTT_ACTION_CONNEXION; |
$GLOBALS['_GTT_']['auth']->logout(); |
$GLOBALS['_GTT_']['identification']->logout(); |
//echo '<pre>'.print_r($aso_connexion, true).'</pre>'; |
$this->getRegistre()->ajouterDonnee('identification', $aso_connexion); |
/trunk/actions/GttCtrlActionAdminCategorie.class.php |
---|
5,16 → 5,71 |
{ |
$Registre->ajouterEspace('AdminCategorie', 'admin_categorie'); |
$Registre->ajouterSquelette('admin_categorie', 'admin_categorie.tpl.html'); |
$Registre->setTitre('Administrer les catégories des projets'); |
} |
public function executer() |
{ |
$aso_admin_categ = array(); |
$this->getRegistre()->setTitre('Administrer les catégories des projets'); |
// Récupération des catégories |
$ProjetCategorie = new ProjetCategorie(); |
$tab_pc = $ProjetCategorie->consulter(ProjetCategorie::GPC_TOUS); |
foreach ($tab_pc as $pc) { |
if ($pc->getIdCategorie() != 0) { |
$aso_categ['id'] = $pc->getIdCategorie(); |
$aso_categ['libelle'] = $pc->getLibelle(); |
$aso_admin_categ['categories'][] = $aso_categ; |
} |
} |
//echo '<pre>'.print_r($aso_admin_categ, true).'</pre>'; |
$this->getRegistre()->ajouterDonnee('admin_categorie', $aso_admin_categ); |
} |
public function executerValiderAjouter() |
{ |
// Ajout de la catégorie |
$ProjetCategorie = new ProjetCategorie(); |
$bool_existe = $ProjetCategorie->consulter(ProjetCategorie::GPC_LIBELLE, array($_POST['caaj_libelle'])); |
if ($bool_existe == false) { |
$ProjetCategorieMax = $ProjetCategorie->consulter(ProjetCategorie::GPC_ID_MAX); |
$id_max = $ProjetCategorieMax->getIdCategorie(); |
$ProjetCategorie->setIdCategorie(++$id_max); |
$ProjetCategorie->setLibelle($_POST['caaj_libelle']); |
$ProjetCategorie->ajouter(); |
} else { |
$aso_admin_categ['message'] = 'Cette catégorie existe déjà !'; |
$this->getRegistre()->ajouterDonnee('admin_categorie', $aso_admin_categ); |
} |
// Action suivante |
$this->setSuivant('__defaut__'); |
} |
public function executerValiderSupprimer() |
{ |
// Suppression de la catégorie |
$ProjetCategorie = new ProjetCategorie(); |
$ProjetCategorie->setIdCategorie($_POST['casu_id']); |
$ProjetCategorie->supprimer(); |
// Mise à jour des projets appartenant à la catégorie |
$Projet = new Projet(); |
$tab_p = $Projet->consulter(Projet::GP_CE_CATEGORIE, $_POST['casu_id']); |
if ($tab_p != false) { |
if ($tab_p && count($tab_p) == 1) { |
$tab_p = array($tab_p); |
} |
foreach ($tab_p as $p) { |
$Ancien = clone $p; |
$p->setCeCategorie(0); |
$p->modifier($Ancien); |
} |
} |
// Action suivante |
$this->setSuivant('__defaut__'); |
} |
} |
?> |