Subversion Repositories Applications.gtt

Compare Revisions

Ignore whitespace Rev 94 → Rev 95

/trunk/actions/GttCtrlActionUtilisateur.class.php
File deleted
\ No newline at end of file
/trunk/actions/GttCtrlActionAdminCategorie.class.php
20,12 → 20,16
// Récupération des infos sur les categories existantes
$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;
}
if (false == $tab_pc) {
$aso_admin_categ['categories'] = false;
} else {
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;
}
}
}
// Modification des titres, légendes et bouton
$aso_admin_categ['form_legend'] = 'Ajouter une categorie';
79,9 → 83,6
$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->setAbreviation($_POST['caaj_abreviation']);
$ProjetCategorie->ajouter();
/trunk/actions/GttCtrlActionAdminProjet.class.php
24,10 → 24,14
// Récupération des projets
$tab_p = $Projet->consulter(Projet::GP_TOUS);
foreach ($tab_p as $Pr) {
$aso_projet['id'] = $Pr->getIdProjet();
$aso_projet['nom'] = $Pr->getNom();
$aso_admin_projet['projets'][] = $aso_projet;
if (false == $tab_p) {
$aso_admin_projet['projets'] = false;
} else {
foreach ($tab_p as $Pr) {
$aso_projet['id'] = $Pr->getIdProjet();
$aso_projet['nom'] = $Pr->getNom();
$aso_admin_projet['projets'][] = $aso_projet;
}
}
// Modification des titres, légendes et bouton
96,9 → 100,6
$Projet = new Projet();
$bool_existe = $Projet->consulter(Projet::GP_NOM, array($_POST['praj_nom']));
if ($bool_existe == false) {
$ProjetMax = $Projet->consulter(Projet::GP_ID_MAX);
$id_max = $ProjetMax->getIdProjet();
$Projet->setIdProjet(++$id_max);
$Projet->setCeCategorie($_POST['praj_ce_categorie']);
$Projet->setNom($_POST['praj_nom']);
$Projet->setDescription($_POST['praj_description']);
135,18 → 136,12
$bool_existe = $TravailProjet->consulter(TravailProjet::GTP_PROJET, array($_POST['prsu_id']));
if ($bool_existe == false) {
trigger_error('TravailProjet -> OK', E_USER_NOTICE);
// Vérif des taches
$ProjetTache = new ProjetTache();
$bool_existe = $ProjetTache->consulter(ProjetTache::GPT_PROJET, array($_POST['prsu_id']));
if ($bool_existe == false) {
trigger_error('ProjetTache -> OK', E_USER_NOTICE);
// Suppression du projet
$Projet = new Projet();
$Projet->setIdProjet($_POST['prsu_id']);
if ($Projet->supprimer()) {
$aso_admin_projet['message'] = "Le projet a été supprimé.";
}
}
// Suppression du projet
$Projet = new Projet();
$Projet->setIdProjet($_POST['prsu_id']);
if ($Projet->supprimer()) {
$aso_admin_projet['message'] = "Le projet a été supprimé.";
}
}
}
// Message d'erreur si le projet contient des données
/trunk/actions/GttCtrlActionPreferences.class.php
13,32 → 13,37
$this->getRegistre()->setTitre('Modifier mes préférences');
$Projet = new Projet();
$tab_projets = $Projet->consulter(Projet::GP_TOUS);
$aso_preferences['nbre_projets'] = count($tab_projets);
// Parcourt du tableau de projets
foreach ($tab_projets as $Projet) {
// Vérification de la présence du projet dans les préférences de l'utilisateur
$UtilisateurAProjet = new UtilisateurAProjet();
$cmd = UtilisateurAProjet::GUAP_ID;
$param = array($GLOBALS['_GTT_']['Utilisateur']->getIdUtilisateur(), $Projet->getIdProjet());
$coche = false;
if ($present = $UtilisateurAProjet->consulter($cmd, $param)) {
$coche = true;
}
 
// Récupération de la catégorie du projet
$ProjetCategorie = new ProjetCategorie();
$cmd = ProjetCategorie::GPC_ID;
$param = $Projet->getCeCategorie();
$Categorie = $ProjetCategorie->consulter($cmd, $param);
 
// Récupération de toutes les infos
$aso_preferences['preferences'][$Categorie->getLibelle()][] = array(
'id' => $Projet->getIdProjet(),
'valeur' => $Projet->getIdProjet(),
'nom' => $Projet->getNom(),
'coche' => $coche);
}
ksort($aso_preferences['preferences']);
if (false == $tab_projets) {
$aso_preferences['messages'][] = "Veuillez commencer par ajouter des catégories de projet et des projets !";
$aso_preferences['preferences'] = false;
} else {
$aso_preferences['nbre_projets'] = count($tab_projets);
// Parcourt du tableau de projets
foreach ($tab_projets as $Projet) {
// Vérification de la présence du projet dans les préférences de l'utilisateur
$UtilisateurAProjet = new UtilisateurAProjet();
$cmd = UtilisateurAProjet::GUAP_ID;
$param = array($GLOBALS['_GTT_']['Utilisateur']->getIdUtilisateur(), $Projet->getIdProjet());
$coche = false;
if ($present = $UtilisateurAProjet->consulter($cmd, $param)) {
$coche = true;
}
// Récupération de la catégorie du projet
$ProjetCategorie = new ProjetCategorie();
$Categorie = current($ProjetCategorie->consulter(ProjetCategorie::GPC_ID, $Projet->getCeCategorie()));
// Récupération de toutes les infos
$aso_preferences['preferences'][$Categorie->getLibelle()][] = array(
'id' => $Projet->getIdProjet(),
'valeur' => $Projet->getIdProjet(),
'nom' => $Projet->getNom(),
'coche' => $coche);
}
ksort($aso_preferences['preferences']);
}
//echo '<pre>'.print_r($aso_preferences, true).'</pre>';
$this->getRegistre()->ajouterDonnee('preferences', $aso_preferences);
}
50,13 → 55,15
$UtilisateurAProjet->setIdUtilisateur($GLOBALS['_GTT_']['Utilisateur']->getIdUtilisateur());
$UtilisateurAProjet->supprimer();
//echo '<pre>'.print_r($_POST, true).'</pre>';
foreach ($_POST['pr'] as $pr_id) {
$UtilisateurAProjet = new UtilisateurAProjet();
$UtilisateurAProjet->setIdUtilisateur($GLOBALS['_GTT_']['Utilisateur']->getIdUtilisateur());
$UtilisateurAProjet->setIdProjet($pr_id);
$UtilisateurAProjet->ajouter();
if (isset($_POST['pr'])) {
foreach ($_POST['pr'] as $pr_id) {
$UtilisateurAProjet = new UtilisateurAProjet();
$UtilisateurAProjet->setIdUtilisateur($GLOBALS['_GTT_']['Utilisateur']->getIdUtilisateur());
$UtilisateurAProjet->setIdProjet($pr_id);
$UtilisateurAProjet->ajouter();
}
}
 
// Action suivante
$this->setSuivant('__defaut__');
}
/trunk/actions/GttCtrlActionAdminUtilisateur.class.php
173,9 → 173,6
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']);
236,13 → 233,42
 
public function executerSupprimer()
{
// Suppression du statut d'utilisateur
$aso_admin_utilisateur = array();
// Vérif du nombre d'utilisateur admin (doit être supérieur à 1)
$Utilisateur = new Utilisateur();
$Utilisateur->setIdUtilisateur($_POST['utsu_id']);
$Utilisateur->supprimer();
$nbre_admin = $Utilisateur->consulter(Utilisateur::GU_ADMIN);
if (count($nbre_admin) > 1) {
trigger_error('Utilisateur admin > 1 -> OK', E_USER_NOTICE);
// Vérif des travail_projets
$TravailProjet = new TravailProjet();
$bool_existe = $TravailProjet->consulter(TravailProjet::GTP_UTILISATEUR, array($_POST['utsu_id']));
if ($bool_existe == false) {
trigger_error('TravailProjet -> OK', E_USER_NOTICE);
// Vérif des absences
$Absence = new Absence();
$bool_existe = $Absence->consulter(Absence::GA_ID_UTILISATEUR, array($_POST['utsu_id']));
if ($bool_existe == false) {
trigger_error('Absence -> OK', E_USER_NOTICE);
// Suppression de l'utilisateur
$Utilisateur = new Utilisateur();
$Utilisateur->setIdUtilisateur($_POST['utsu_id']);
if ($Utilisateur->supprimer()) {
$aso_admin_utilisateur['messages'][] = "L'utilisateur a été supprimé.";
}
}
}
} else {
$aso_admin_utilisateur['messages'][] = "Il n'est pas possible de supprimer le seul administrateur!";
}
// Message d'erreur si l'utilisateur contient des données
if (isset($bool_existe) && $bool_existe != false) {
$aso_admin_utilisateur['messages'][] = "Il n'est pas possible de supprimer un utilisateur contenant des données!";
}
 
// TODO : Suppression des données de cet utilisateur
 
// Enregistrement du message
$this->getRegistre()->ajouterDonnee('admin_utilisateur', $aso_admin_utilisateur);
// Action suivante
$this->setSuivant('__defaut__');
}
/trunk/actions/GttCtrlActionAdminUtilisateurStatut.class.php
34,9 → 34,6
$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 {
/trunk/actions/GttCtrlActionGestion.class.php
154,9 → 154,7
// Récupération de la catégorie du projet
$ProjetCategorie = new ProjetCategorie();
$cmd = ProjetCategorie::GPC_ID;
$param = $Projet->getCeCategorie();
$Categorie = $ProjetCategorie->consulter($cmd, $param);
$Categorie = current($ProjetCategorie->consulter(ProjetCategorie::GPC_ID, $Projet->getCeCategorie()));
// Nous vérifions le temps de travail pour ce projet pour la semaine courrante
$aso_tps_w = $aso_tps_w_vide;
/trunk/actions/GttCtrlActionStatTableauGlobal.class.php
39,13 → 39,25
$aso_stat['mois']['annee'] = $Month->thisYear();
$mois_courant_j1 = $Month->thisYear().'-'.sprintf("%02s", $Month->thisMonth()).'-'.sprintf("%02s", $Month->thisDay()).' 00:00:00';
$mois_courant_j36 = date('Y-m-d H:i:s', mktime(0, 0, 0, $NMonth->thisMonth(), 0, $NMonth->thisYear()));
 
//+-------------------------------------------------------------------------------------------------+
// GESTION D'INFO GLOBALES
//+-------------------------------------------------------------------------------------------------+
// Récupération des infos sur les utilisateurs
$DaoUtilsateur = new Utilisateur();
$utilisateurs = $DaoUtilsateur->consulter(Utilisateur::GU_TOUS_AFFICHABLE);
if (is_object($utilisateurs)) {
$utilisateurs[0] = $utilisateurs;
// Récupération des motifs d'absence
$AbsenceMotif = new AbsenceMotif();
$cmd = AbsenceMotif::GAM_TOUS;
$tab_am = $AbsenceMotif->consulter($cmd);
if (false == $tab_am) {
$aso_stat['absences'] = false;
$aso_stat['messages'][] = "Aucun motif d'absence de renseigné";
}
// Pour chaque utilisateur nous récupérons les infos
foreach ($utilisateurs as $Utilisateur) {
$aso_gestion = array();
//+-------------------------------------------------------------------------------------------------+
61,7 → 73,10
$UtilsateurAProjet = new UtilisateurAProjet();
$tab_uap = $UtilsateurAProjet->consulter(UtilisateurAProjet::GUAP_UTILISATEUR, $Utilisateur->getIdUtilisateur());
if (is_array($tab_uap) && count($tab_uap) > 0) {
if (false == $tab_uap) {
$aso_stat['projets'] = false;
$aso_stat['messages'][] = "Aucune information sur le travail de ${aso_gestion['prenom_nom']}";
} else {
//echo '<pre>la'.print_r($tab_uap, true).'</pre>';
$tab_projet_id = array();
foreach ($tab_uap as $uap) {
73,9 → 88,6
$cmd = TravailProjet::GTP_ID_UTILISATEUR_DATE_DEB_FIN;
$param = array($Utilisateur->getIdUtilisateur(), $mois_courant_j1, $mois_courant_j36);
$tab_tp = $TravailProjet->consulter($cmd, $param);
if ($tab_tp && count($tab_tp) == 1) {
$tab_tp = array($tab_tp);
}
// Récupération des infos sur les projets de l'utilisateur
$aso_gestion['totaux'] = 0;
114,32 → 126,24
$aso_stat['projets'][$Categorie->getLibelle()][$Projet->getIdProjet()] = $Projet->getNom();
}
}
 
//+-------------------------------------------------------------------------------------------------+
// GESTION DES ABSENCES
//+-------------------------------------------------------------------------------------------------+
// Récupération des motifs d'absence
$AbsenceMotif = new AbsenceMotif();
$cmd = AbsenceMotif::GAM_TOUS;
$tab_am = $AbsenceMotif->consulter($cmd);
if ($tab_am && count($tab_am) == 1) {
$tab_am = array($tab_am);
}
// Récupération des absences pour un utilisateur à une date donnée
$Absence = new Absence();
$cmd = Absence::GA_ID_UTILISATEUR_DATE_DEB_FIN;
$param = array($Utilisateur->getIdUtilisateur(), $mois_courant_j1, $mois_courant_j36);
$tab_a = $Absence->consulter($cmd, $param);
if ($tab_a && count($tab_a) == 1) {
$tab_a = array($tab_a);
}
$aso_gestion['ab_total'] = '';
if ($tab_am) {
foreach ($tab_am as $AM) {
$aso_stat['absences'][$AM->getIdAbsenceMotif()] = $AM->getLibelle();
//$aso_gestion['ab'][$AM->getIdAbsenceMotif()] = 0;
if ($tab_a) {
if (false == $tab_a) {
$aso_stat['absences'] = false;
$aso_stat['messages'][] = "Aucune information sur les absences de ${aso_gestion['prenom_nom']}";
} else {
if (false != $tab_am) {
foreach ($tab_am as $AM) {
$aso_stat['absences'][$AM->getIdAbsenceMotif()] = $AM->getLibelle();
//$aso_gestion['ab'][$AM->getIdAbsenceMotif()] = 0;
foreach ($tab_a as $A) {
if ($A->getIdAbsenceMotif() == $AM->getIdAbsenceMotif() && $A->getDuree() != 0) {
$aso_gestion['ab'][$AM->getIdAbsenceMotif()] = $A->getDuree();
152,7 → 156,7
}
$aso_stat['utilisateurs'][] = $aso_gestion;
}
 
//trigger_error('<pre>'.print_r($aso_stat, true).'</pre>', E_USER_NOTICE);
$this->getRegistre()->ajouterDonnee('stat_tableau_global', $aso_stat);
}