/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__'); |
} |
} |
?> |
/trunk/gtt_config.inc.php |
---|
44,6 → 44,21 |
define('GTT_ABSCENCE_ID_MALADIE', 3); |
define('GTT_ABSCENCE_ID_GREVE', 4); |
// +------------------------------------------------------------------------------------------------------+ |
// Débogage |
/** Constante stockant si oui ou non on veut afficher le débogage.*/ |
define('GTT_DEBOGAGE', false); |
/** Constante stockant si oui ou non on veut afficher le débogage des fichiers PEAR.*/ |
define('GTT_DEBOGAGE_PEAR', false); |
/** Constante stockant la chaine permettant de repérer en se basabt sur le chemin, les fichiers provenant de la bibliothèque PEAR.*/ |
define('GTT_DEBOGAGE_PEAR_CHAINE', '/lib/php/'); |
/** Constante stockant si oui ou non on veut afficher le contexte de débogage.*/ |
define('GTT_DEBOGAGE_CONTEXTE', false); |
/** Constante stockant une valeur correspondant au niveau d'erreur à employer pour le code PHP.*/ |
define('GTT_DEBOGAGE_NIVEAU', 2048);// Voir le manuel de PHP pour les différents niveaux disponibles. |
/** Constante stockant si oui ou nom on veut afficher le tableau de chronométrage de l'application.*/ |
define('GTT_DEBOGAGE_CHRONO', false); |
//==================================== GTT v3 ================================== |
/* definition des chemins d'acces */ |
define ("CHEMIN",''); |
/trunk/presentation/gtt.css |
---|
13,7 → 13,21 |
a:hover{ |
background-color:#eff4fa; |
color:#036;} |
/* Presentation des informations */ |
.information{ |
margin: 0 25% 0 25%; |
text-align:center; |
font-size:1.2em; |
line-height:1.5em; |
font-weight:bold; |
color:white; |
background:#74C054; |
border-color:red; |
border-width:4px; |
border-style:outset;} |
/* Presentation des formulaires */ |
form ul li { |
list-style-type:none;} |
/* Presentation des listes de definitions */ |
dl {width:100%;} |
dt { |
/trunk/presentation/menu.tpl.html |
---|
6,7 → 6,10 |
<?php if ($bool_admin) : ?> |
<li>Administration |
<ul> |
<li><a href="index.php?action=admin-categorie">Categorie des projets</a></li> |
<li><a href="index.php?action=admin-categorie">Categories des projets</a></li> |
<li><a href="index.php?action=admin-absence-motif">Motifs des absences</a></li> |
<li><a href="index.php?action=admin-utilisateur-statut">Statuts des utilisateurs</a></li> |
<li><a href="index.php?action=admin-utilisateur">Utilisateurs</a></li> |
</ul> |
</li> |
<?php endif; ?> |
/trunk/presentation/admin_absence_motif.tpl.html |
---|
New file |
0,0 → 1,34 |
<?php if (isset($message)) : ?> |
<p class="information"><?=$message;?></p> |
<?php endif; ?> |
<form id="admin_absence_motif_ajouter" name="admin_absence_motif_ajouter" action="http://localhost/gestion/index.php?action=admin-absence-motif_valider-ajouter" method="post"> |
<fieldset> |
<legend>Ajouter un motif d'absence</legend> |
<ul> |
<li> |
Libellé: |
<input size="30" name="amaj_libelle" type="text" /> |
<span class="symbole_obligatoire">*</span> |
</li> |
<li> |
<input size="5" id="btn_absence_motif_ajouter" name="btn_absence_motif_ajouter" value="Ajouter" type="submit" /></li> |
<li><span class="symbole_obligatoire">*</span> =champs obligatoires</li> |
</ul> |
</fieldset> |
</form> |
<form id="admin_absence_motif_supprimer" name="admin_absence_motif_supprimer" action="http://localhost/gestion/index.php?action=admin-absence-motif_valider-supprimer" method="post"> |
<fieldset> |
<legend>Supprimer un motif d'absence</legend> |
<ul> |
<li> |
Catégorie : |
<select id="amsu_id" name="amsu_id"> |
<?php foreach ($motifs as $motif) : ?> |
<option value="<?=$motif['id'];?>"><?=$motif['libelle'];?></option> |
<?php endforeach; ?> |
</select> |
</li> |
<li><input id="btn_absence_motif_supprimer" name="btn_absence_motif_supprimer" value="Supprimer" type="submit" onclick="javascript:return confirm('Êtes vous sûr de vouloir supprimer ce motif ?');"/></li> |
</ul> |
</fieldset> |
</form> |
/trunk/presentation/admin_utilisateur_statut.tpl.html |
---|
New file |
0,0 → 1,34 |
<?php if (isset($message)) : ?> |
<p class="information"><?=$message;?></p> |
<?php endif; ?> |
<form id="admin_us_ajouter" name="admin_us_ajouter" action="http://localhost/gestion/index.php?action=admin-utilisateur-statut_valider-ajouter" method="post"> |
<fieldset> |
<legend>Ajouter un statut d'utilisateur</legend> |
<ul> |
<li> |
Libelle: |
<input size="30" id="usaj_libelle" name="usaj_libelle" type="text" /> |
<span class="symbole_obligatoire">*</span> |
</li> |
<li> |
<input size="5" id="btn_us_ajouter" name="btn_us_ajouter" value="Ajouter" type="submit" /></li> |
<li><span class="symbole_obligatoire">*</span> =champs obligatoires</li> |
</ul> |
</fieldset> |
</form> |
<form id="admin_us_supprimer" name="admin_us_supprimer" action="http://localhost/gestion/index.php?action=admin-utilisateur-statut_valider-supprimer" method="post"> |
<fieldset> |
<legend>Supprimer un statut d'utilisateur</legend> |
<ul> |
<li> |
Statut d'utilisateur : |
<select id="ussu_id" name="ussu_id"> |
<?php foreach ($statuts as $statut) : ?> |
<option value="<?=$statut['id'];?>"><?=$statut['libelle'];?></option> |
<?php endforeach; ?> |
</select> |
</li> |
<li><input id="btn_us_supprimer" name="btn_us_supprimer" value="Supprimer" type="submit" onclick="javascript:return confirm('Êtes vous sûr de vouloir supprimer cet statut d\'utilisateur ?');" /></li> |
</ul> |
</fieldset> |
</form> |
/trunk/presentation/gestion.tpl.html |
---|
36,8 → 36,7 |
</tbody> |
</table> |
<form id="gestion" name="gestion" action=" |
<?=$url_gestion_valider;?>" method="post"> |
<form id="gestion" name="gestion" action="<?=$url_gestion_valider;?>" method="post"> |
<table> |
<caption> |
<a href="<?=$url_semaine_precedente;?>"><<</a> |
/trunk/presentation/admin_categorie.tpl.html |
---|
1,3 → 1,6 |
<?php if (isset($message)) : ?> |
<p class="information"><?=$message;?></p> |
<?php endif; ?> |
<form id="admin_categorie_ajouter" name="admin_categorie_ajouter" action="http://localhost/gestion/index.php?action=admin-categorie_valider-ajouter" method="post"> |
<fieldset> |
<legend>Ajouter une catégorie</legend> |
4,25 → 7,28 |
<ul> |
<li> |
Libelle: |
<input class="AJOUTER_CATEGORIE" size="30" name="champ_nom_cat" type="text" /> |
<input size="30" id="caaj_libelle" name="caaj_libelle" type="text" /> |
<span class="symbole_obligatoire">*</span> |
</li> |
<li> |
<input class="AJOUTER_CATEGORIE" size="5" name="champ_valider_cat" value="Ajouter" type="submit" /></li> |
<input size="5" id="btn_categorie_ajouter" name="btn_categorie_ajouter" value="Ajouter" type="submit" /></li> |
<li><span class="symbole_obligatoire">*</span> =champs obligatoires</li> |
</ul> |
</fieldset> |
</form> |
<form id="admin_categorie_supprimer" name="admin_categorie_supprimer" action="http://localhost/gestion/index.php?action=valider-supprimer" method="post"> |
<form id="admin_categorie_supprimer" name="admin_categorie_supprimer" action="http://localhost/gestion/index.php?action=admin-categorie_valider-supprimer" method="post"> |
<fieldset> |
<legend>Supprimer une catégorie</legend> |
<ul> |
<li> |
Categorie : |
<select class="SUPPRIMER_CATEGORIE" name="champ_cat_supprimer"> |
<select id="casu_id" name="casu_id"> |
<?php foreach ($categories as $categorie) : ?> |
<option value="<?=$categorie['id'];?>"><?=$categorie['libelle'];?></option> |
<?php endforeach; ?> |
</select> |
</li> |
<li><input class="SUPPRIMER_CATEGORIE" name="btn_supprimer_cat" value="Supprimer" type="submit" /></li> |
<li><input name="btn_categorie_supprimer" name="btn_categorie_supprimer" value="Supprimer" type="submit" onclick="javascript:return confirm('Êtes vous sûr de vouloir supprimer cette catégorie ?');" /></li> |
</ul> |
</fieldset> |
</form> |
/trunk/presentation/principal.tpl.html |
---|
9,6 → 9,9 |
<h1 id="titre_principal"><?=$titre;?></h1> |
<div id="zone_contenu_principal"><?=$zone_contenu;?></div> |
<div id="zone_identification"><?=$zone_identification;?></div> |
<div id="zone_menu"><?=$zone_menu;?></div> |
<div id="zone_menu"><?=$zone_menu;?></div> |
<div id="zone_erreur"> |
<?=(EF_DEBOGAGE) ? $GLOBALS['_GTT_']['erreur']->retournerErreur():'';?> |
</div> |
</body> |
</html> |
/trunk/presentation/admin_utilisateur.tpl.html |
---|
New file |
0,0 → 1,98 |
<?php if (isset($messages)) : ?> |
<?php foreach ($messages as $message) : ?> |
<p class="information"><?=$message;?></p> |
<?php endforeach; ?> |
<?php endif; ?> |
<form id="admin_utilisateur_ajouter" name="admin_utilisateur_ajouter" action="<?=$form_url;?>" method="post"> |
<fieldset> |
<legend><?=$form_legend;?></legend> |
<ul> |
<li> |
Nom: |
<input size="50" name="ut_nom" type="text" value="<?=$Utilisateur->getNom();?>"/><span class="symbole_obligatoire">*</span> |
</li> |
<li> |
Prenom: |
<input size="50" name="ut_prenom" type="text" value="<?=$Utilisateur->getPrenom();?>"/><span class="symbole_obligatoire">*</span> |
</li> |
<li> |
Adresse: |
<input size="100" name="ut_adresse" type="text" value="<?=$Utilisateur->getAdresse();?>"/> |
</li> |
<li> |
Ville: |
<input size="50" name="ut_ville" type="text" value="<?=$Utilisateur->getVille();?>"/> |
</li> |
<li> |
Code postal: |
<input size="5" name="ut_code_postal" value="0" type="text" value="<?=$Utilisateur->getCodePostal();?>"/> |
</li> |
<li> |
Téléphone: |
<input size="10" name="ut_telephone" value="0" type="text" value="<?=$Utilisateur->getTelephone();?>"/> |
</li> |
<li> |
Courriel: |
<input size="50" name="ut_email" type="text" value="<?=$Utilisateur->getEmail();?>"/><span class="symbole_obligatoire">*</span> |
</li> |
<li> |
Mot de passe: |
<input size="20" name="ut_mot_de_passe" type="password"/><span class="symbole_obligatoire">*</span></li> |
<li> |
Confirmer mot de passe: |
<input size="20" name="ut_mot_de_passe_confirmation" type="password"/><span class="symbole_obligatoire">*</span> |
</li> |
<li> |
Statut: |
<select id="ut_statut" name="ut_statut"> |
<?php foreach ($utilisateur_statuts as $statut) : ?> |
<option value="<?=$statut['id'];?>"><?=$statut['libelle'];?></option> |
<?php endforeach; ?> |
</select> |
</li> |
<li> |
Congés payés initiaux: |
<input size="3" name="ut_conges_payes" type="text" value="<?=$Utilisateur->getCongesPayes();?>"/> |
</li> |
<li> |
Temps journalier de travail: |
<input size="3" name="ut_temps_de_travail" type="text" value="<?=$Utilisateur->getTempsDeTravail();?>"/> |
</li> |
<li> |
Heures supplémentaires initiales: |
<input size="3" name="ut_quota_heures_supp" type="text" value="<?=$Utilisateur->getQuotaHeuresSupp();?>"/> |
</li> |
<li> |
Adminitrateur: |
<input id="ut_mark_admin" name="ut_mark_admin" type="checkbox" value="<?=$Utilisateur->getMarkAdmin();?>" <?=($bool_mark_admin)?'checked="checked"':'';?>/> |
</li> |
<li> |
Cet utilisateur ne doit pas apparaître dans les divers récapitulatif: |
<input id="ut_mark_recapitulatif" name="ut_mark_recapitulatif" type="checkbox" value="<?=$Utilisateur->getMarkRecapitulatif();?>" <?=($bool_mark_recapitulatif)?'checked="checked"':'';?>/> |
</li> |
<li> |
<input name="ut_id_utilisateur" type="hidden" value="<?=$Utilisateur->getIdUtilisateur();?>"/> |
<input id="<?=$form_bouton_id;?>" name="<?=$form_bouton_id;?>" value="<?=$form_bouton_value;?>" type="submit" /> |
<input id="btn_utilisateur_annuler" name="btn_utilisateur_annuler" value="Annuler" type="submit" /> |
</li> |
<li><span class="symbole_obligatoire">*</span> =champs obligatoires</li> |
</ul> |
</fieldset> |
</form> |
<form id="admin_utilisateur_editer" name="admin_utilisateur_editer" action="http://localhost/gestion/index.php?action=admin-utilisateur_editer" method="post"> |
<fieldset> |
<legend>Éditer un utilisateur</legend> |
<ul> |
<li> |
Utilisateur : |
<select id="utsu_id" name="utsu_id"> |
<?php foreach ($utilisateurs as $utilisateur) : ?> |
<option value="<?=$utilisateur['id'];?>"><?=$utilisateur['libelle'];?></option> |
<?php endforeach; ?> |
</select> |
</li> |
<li><input id="btn_utilisateur_supprimer" name="btn_utilisateur_supprimer" value="Supprimer" type="submit" onclick="javascript:return confirm('Êtes vous sûr de vouloir supprimer cet utilisateur ?');" /></li> |
<li><input id="btn_utilisateur_modifier" name="btn_utilisateur_modifier" value="Modifier" type="submit" /></li> |
</ul> |
</fieldset> |
</form> |
/trunk/classes/Registre.class.php |
---|
88,7 → 88,12 |
} |
public function ajouterDonnee($cle, $val) |
{ |
$this->donnees[$cle] = $val; |
if (is_array($val) && isset($this->donnees[$cle])) { |
$this->donnees[$cle] = array_merge((array)$this->donnees[$cle], $val); |
trigger_error('Fusion de données pour la clé : '. $cle, E_USER_NOTICE); |
} else { |
$this->donnees[$cle] = $val; |
} |
} |
public function getDonnees($cle = null) |
{ |
/trunk/classes/GestionnaireErreur.class.php |
---|
1,5 → 1,5 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.0.4 | |
// +------------------------------------------------------------------------------------------------------+ |
25,8 → 25,8 |
/** |
* Classe de gestion des erreurs. |
* |
* |
* |
* |
*@package eFlore |
*@subpackage Debogage |
//Auteur original : |
50,133 → 50,202 |
/** |
* Classe GestionnaireErreur |
* |
* |
* Gérer les erreurs PHP et SQL. |
*/ |
class GestionnaireErreur |
{ |
class GestionnaireErreur { |
/*** Attributes: ***/ |
/** |
* Contient la liste des erreurs. |
* @access private |
*/ |
* Contient la liste des erreurs. |
* @access private |
*/ |
private $erreurs; |
/** |
* Permet de savoir si on veut faire apparaître ou pas le contexte de l'erreur, |
* c'est à dire le contenu des variables. |
* @access private |
*/ |
* Permet de savoir si on veut faire apparaître ou pas le contexte de l'erreur, |
* c'est à dire le contenu des variables. |
* @access private |
*/ |
private $contexte; |
/** |
* Contient le niveau d'erreur courrant. Celui que l'on donne à la fonction |
* error_reporting(). |
* @access private |
*/ |
* Permet de savoir si on veut faire apparaître ou pas les erreurs Pear. |
* @access private |
*/ |
private $pear; |
/** |
* Chaine de caractères permettant d'identifier les erreurs de la bibliothèque Pear. |
* @access private |
*/ |
private $pear_chaine; |
/** |
* Contient le niveau d'erreur courrant. Celui que l'on donne à la fonction |
* error_reporting(). |
* @access private |
*/ |
private $niveau_erreur_courrant; |
/*** Constructeur: ***/ |
/** |
* Construit le gestionnaire d'erreur. |
* |
* @return void |
* @access public |
*/ |
public function __construct( $contexte = FALSE ) { |
* Construit le gestionnaire d'erreur. |
* |
* @return void |
* @access public |
*/ |
public function __construct($bool_contexte = false, $int_niveau = 2048, $bool_pear = false, $str_pear = '') |
{ |
$this->erreurs = array(); |
$this->setContexte($contexte); |
$this->setContexte($bool_contexte); |
$this->setNiveauErreurCourrant($int_niveau); |
$this->setPear($bool_pear); |
$this->setPearChaine($str_pear); |
set_error_handler(array($this, 'gererErreur')); |
} // end of member function __construct |
/*** Destructeur: ***/ |
public function __destruct() |
{ |
echo $this->retournerErreur(); |
} |
/*** Accesseurs: ***/ |
/** |
* Récupère le tableau des erreurs. |
* |
* @return array |
* @access public |
*/ |
public function getErreur( ) { |
* Récupère le tableau des erreurs. |
* |
* @return array |
* @access public |
*/ |
public function getErreur() |
{ |
return $this->erreurs; |
} |
/** |
* Ajoute une erreur à la liste. |
* |
* @param array une_erreur |
* @return void |
* @access public |
*/ |
public function setErreur( $une_erreur ) { |
* Ajoute une erreur à la liste. |
* |
* @param array une_erreur |
* @return void |
* @access public |
*/ |
public function setErreur($une_erreur) |
{ |
$tab_erreurs =& $this->getErreur(); |
array_push($tab_erreurs, $une_erreur); |
} |
/** |
* Récupère la valeur du contexte. |
* |
* @return boolean |
* @access public |
*/ |
public function getContexte( ) { |
* Récupère la valeur du contexte. |
* |
* @return boolean |
* @access public |
*/ |
public function getContexte() |
{ |
return $this->contexte; |
} |
/** |
* Définit si oui ou non le contexte sera affiché. |
* |
* @param boolean un_contexte |
* @return void |
* @access public |
*/ |
public function setContexte( $un_contexte ) { |
* Définit si oui ou non le contexte sera affiché. |
* |
* @param boolean un_contexte |
* @return void |
* @access public |
*/ |
public function setContexte( $un_contexte ) |
{ |
$this->contexte = $un_contexte; |
} |
/** |
* Récupère le niveau d'erreur courrant. |
* |
* @return int le niveau d'erreur courrant. |
* @access public |
*/ |
public function getNiveauErreurCourrant( ) { |
* Récupère la valeur de l'attribut Pear. |
* |
* @return boolean true pour afficher les erreurs Pear sinon false. |
* @access public |
*/ |
public function getPear() |
{ |
return $this->pear; |
} |
/** |
* Définit si oui ou non les erreurs Pear seront affichées. |
* |
* @param boolean true pour afficher les erreurs Pear sinon false. |
* @return void |
* @access public |
*/ |
public function setPear( $p ) |
{ |
$this->pear = $p; |
} |
/** |
* Récupère la valeur de l'attribut pear_chaine. |
* |
* @return string la chaine de caractère identifiant les erreurs Pear. |
* @access public |
*/ |
public function getPearChaine() |
{ |
return $this->pear_chaine; |
} |
/** |
* Définit la chaine de caractère identifiant les erreurs Pear. |
* |
* @param string la chaine de caractère identifiant les erreurs Pear. |
* @return void |
* @access public |
*/ |
public function setPearChaine( $pc ) |
{ |
$this->pear_chaine = $pc; |
} |
/** |
* Récupère le niveau d'erreur courrant. |
* |
* @return int le niveau d'erreur courrant. |
* @access public |
*/ |
public function getNiveauErreurCourrant() |
{ |
return (int)$this->niveau_erreur_courrant; |
} |
/** |
* Définit le niveau d'erreur courrant. |
* |
* @param int un niveau d'erreur. |
* @return void |
* @access public |
*/ |
public function setNiveauErreurCourrant( $niveau ) { |
* Définit le niveau d'erreur courrant. |
* |
* @param int un niveau d'erreur. |
* @return void |
* @access public |
*/ |
public function setNiveauErreurCourrant($niveau) |
{ |
$this->niveau_erreur_courrant = $niveau; |
} |
/*** Méthodes : ***/ |
/** |
* |
* @param int niveau |
* @param string message |
* @param string fichier |
* @param int ligne |
* @param boolean contexte |
* @return void |
* @access public |
*/ |
public function gererErreur( $niveau, $message, $fichier, $ligne, $contexte ) { |
* |
* @param int niveau |
* @param string message |
* @param string fichier |
* @param int ligne |
* @param boolean contexte |
* @return void |
* @access public |
*/ |
public function gererErreur( $niveau, $message, $fichier, $ligne, $contexte ) |
{ |
$aso_erreur = array(); |
// Nous vérifions si nous affichons ou pas l'erreur en fonction du niveau demandé |
if ( $niveau <= $this->getNiveauErreurCourrant() ) { |
189,7 → 258,7 |
} |
$this->setErreur($aso_erreur); |
} |
// Si nous avons à faire à une erreur et non à un warning ou une notice, nous arrêtons l'exécution du script |
if ($niveau == E_USER_ERROR) { |
echo $this->retournerErreur(); |
203,42 → 272,53 |
* @return string |
* @access public |
*/ |
public function retournerErreur() { |
public function retournerErreur() |
{ |
$retour = ''; |
$erreur_pear_nbre = 0; |
foreach($this->getErreur() as $aso_erreur) { |
if ('<!-- BEGIN sql -->' == substr($aso_erreur['message'], 0, 18)) { |
$retour .= $aso_erreur['message']; |
continue; |
} |
$retour .= '<p class="erreur">'."\n"; |
$retour .= '<strong>ERREUR</strong><br />'."\n"; |
$retour .= '<strong>Niveau : </strong>'.$aso_erreur['niveau'].'<br />'."\n"; |
$retour .= '<strong>Message : </strong>'.$aso_erreur['message'].'<br />'."\n"; |
$retour .= '<strong>Fichier : </strong>'.$aso_erreur['fichier'].'<br />'."\n"; |
$retour .= '<strong>Ligne : </strong>'.$aso_erreur['ligne'].'<br />'."\n"; |
if ($this->getContexte()) { |
$retour .= '<pre>'."\n"; |
$retour .= '<stong>Contexte : </stong>'."\n".print_r($aso_erreur['contexte'], true)."\n"; |
$retour .= '</pre>'."\n"; |
} |
$retour .= '</p>'."\n"; |
// Nous testons les erreurs PEAR pour ne pas en tenir compte |
if (!$this->getPear() && stristr($aso_erreur['fichier'], $this->getPearChaine())) { |
$erreur_pear_nbre++; |
} else { |
$retour .= '<p class="attention">'."\n"; |
$retour .= '<strong>ERREUR</strong><br />'."\n"; |
$retour .= '<strong>Niveau : </strong>'.$aso_erreur['niveau'].'<br />'."\n"; |
$retour .= '<strong>Message : </strong>'.$aso_erreur['message'].'<br />'."\n"; |
$retour .= '<strong>Fichier : </strong>'.$aso_erreur['fichier'].'<br />'."\n"; |
$retour .= '<strong>Ligne : </strong>'.$aso_erreur['ligne'].'<br />'."\n"; |
if ($this->getContexte()) { |
$retour .= '<pre>'."\n"; |
$retour .= '<stong>Contexte : </stong>'."\n".print_r($aso_erreur['contexte'], true)."\n"; |
$retour .= '</pre>'."\n"; |
} |
$retour .= '</p>'."\n"; |
} |
} |
if ($erreur_pear_nbre != 0) { |
$retour .= '<p class="attention"><strong>Nombre d\'erreurs PEAR : </strong>'.$erreur_pear_nbre.'</p>'."\n"; |
} |
return $retour; |
} // end of member function retournerErreur |
/** |
* Retourne l'erreur SQL formatée. |
* |
* @param string fichier |
* @param int ligne |
* @param string message |
* @param string requete |
* @param string autres |
* @return string |
* @static |
* @access public |
*/ |
public static function retournerErreurSql( $fichier, $methode, $message, $requete = NULL, $autres = NULL ) { |
* Retourne l'erreur SQL formatée. |
* |
* @param string fichier |
* @param int ligne |
* @param string message |
* @param string requete |
* @param string autres |
* @return string |
* @static |
* @access public |
*/ |
public static function retournerErreurSql( $fichier, $methode, $message, $requete = NULL, $autres = NULL ) |
{ |
$retour = '<!-- BEGIN sql -->'; |
$retour .= '<div id="zone_erreur">'."\n"; |
$retour .= '<h1 > ERREUR SQL </h1><br />'."\n"; |
245,18 → 325,18 |
$retour .= '<dl>'."\n"; |
$retour .= '<dt> Fichier : </dt> '; |
$retour .= '<dd> '.$fichier.'</dd>'."\n"; |
$retour .= '<dt> Méthode : </dt> '; |
$retour .= '<dd> '.$methode.'</dd>'."\n"; |
$retour .= '<dt> Message erreur : </dt> '; |
$retour .= '<dd> '.$message.'</dd>'."\n"; |
if (!is_null($requete)) { |
$retour .= '<dt> Requete : </dt> '; |
$retour .= '<dd> '.$requete.' </dd>'."\n"; |
} |
if (!is_null($autres)) { |
$retour .= '<dt> Autres infos : </dt> '; |
$retour .= '<dd> '.$autres.' </dd>'."\n"; |
264,21 → 344,21 |
$retour .= '</dl>'."\n"; |
$retour .= '</div>'."\n"; |
$retour .= '<!-- END sql -->'."\n"; |
return $retour; |
} // end of member function retournerErreurSql |
/** |
* Retourne l'erreur SQL formatée selon le format demandé. |
* |
* @param string fichier |
* @param int ligne |
* @param string message |
* @param string format : txt. |
* @return string |
* @static |
* @access public |
*/ |
* Retourne l'erreur SQL formatée selon le format demandé. |
* |
* @param string fichier |
* @param int ligne |
* @param string message |
* @param string format : txt. |
* @return string |
* @static |
* @access public |
*/ |
public static function formaterMessageErreur( $message, $fichier = null, $ligne = null, $format = 'txt' ) |
{ |
$retour = ''; |
294,37 → 374,12 |
} |
return $retour; |
} |
} // end of GestionnaireErreur |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: GestionnaireErreur.class.php,v $ |
* Revision 1.1 2005/11/15 17:33:49 jp_milcent |
* Ajout de classe Système pour le débogage. |
* Ces classes sont à améliorer! |
* $Log$ |
* |
* Revision 1.3 2005/10/10 07:28:07 jp_milcent |
* Utilisation du webservice Yahoo-Image. |
* |
* Revision 1.2 2005/10/04 16:34:03 jp_milcent |
* Début gestion de la chorologie. |
* Ajout de la bibliothèque de cartographie (à améliorer!). |
* |
* Revision 1.1 2005/08/04 15:51:45 jp_milcent |
* Implémentation de la gestion via DAO. |
* Fin page d'accueil. |
* Fin formulaire recherche taxonomique. |
* |
* Revision 1.3 2005/08/02 16:19:33 jp_milcent |
* Amélioration des requetes de recherche de noms. |
* |
* Revision 1.2 2005/08/01 16:18:39 jp_milcent |
* Début gestion résultat de la recherche par nom. |
* |
* Revision 1.1 2005/07/28 15:37:56 jp_milcent |
* Début gestion des squelettes et de l'API eFlore. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/trunk/classes/metiers/AbsenceMotif.class.php |
---|
49,6 → 49,7 |
const GAM_TOUS = 'ABSENCEMOTIF_TOUS'; |
const GAM_ID = 'ABSENCEMOTIF_ID'; |
const GAM_ID_MAX = 'ABSENCEMOTIF_ID_MAX'; |
const GAM_LIBELLE = 'ABSENCEMOTIF_LIBELLE'; |
/*** Attributs : */ |
private $id_absence_motif; |
99,6 → 100,9 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case AbsenceMotif::GAM_TOUS: |
$requete = 'SELECT * '. |
110,8 → 114,13 |
'WHERE gam_id_absence_motif = '.$parametres[0].' '; |
break; |
case AbsenceMotif::GAM_ID_MAX: |
$requete = 'SELECT MAX(gam_id_absence_motif) '. |
$requete = 'SELECT MAX(gam_id_absence_motif) as gam_id_absence_motif '. |
'FROM gestion_absence_motif '; |
break; |
case AbsenceMotif::GAM_LIBELLE: |
$requete = 'SELECT * '. |
'FROM gestion_absence_motif '. |
'WHERE gam_libelle = "'.$parametres[0].'" '; |
break; |
default : |
$message = 'Commande '.$cmd.'inconnue!'; |
/trunk/classes/metiers/UtilisateurStatut.class.php |
---|
46,13 → 46,15 |
*/ |
class UtilisateurStatut extends aGttSql { |
/*** Constantes : */ |
const GUS_TOUS = 'UTILISATEURSTATUT_TOUS'; |
const GUS_ID = 'UTILISATEURSTATUT_ID'; |
const GUS_ID_MAX = 'UTILISATEURSTATUT_ID_MAX'; |
const GUS_LIBELLE = 'UTILISATEURSTATUT_LIBELLE'; |
/*** Attributs : */ |
private $id_utilisateur_statut; |
private $libelle; |
/*** Aggregations : */ |
/*** Constructeur : */ |
62,13 → 64,13 |
$this->dao_correspondance = array( |
'gus_id_utilisateur_statut' => 'id_utilisateur_statut', |
'gus_libelle' => 'libelle'); |
// Si l'on veut remplir l'objet à la création on lance la requete correspondante |
if (!is_null($cmd)) { |
$this->consulter($cmd, $parametres, true); |
} |
} |
/*** Accesseurs : */ |
// Id Utilisateur Statut |
public function getIdUtilisateurStatut() |
79,7 → 81,7 |
{ |
$this->id_utilisateur_statut = $ius; |
} |
// Libelle |
public function getLibelle() |
{ |
89,7 → 91,7 |
{ |
$this->libelle = $l; |
} |
/*** Méthodes : */ |
/** |
98,7 → 100,14 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case UtilisateurStatut::GUS_TOUS: |
$requete = 'SELECT * '. |
'FROM gestion_utilisateur_statut '; |
break; |
case UtilisateurStatut::GUS_ID: |
$requete = 'SELECT * '. |
'FROM gestion_utilisateur_statut '. |
105,8 → 114,13 |
'WHERE gus_id_utilisateur_statut = '.$parametres[0].' '; |
break; |
case UtilisateurStatut::GUS_ID_MAX: |
$requete = 'SELECT MAX(gus_id_utilisateur_statut) '. |
$requete = 'SELECT MAX(gus_id_utilisateur_statut) AS gus_id_utilisateur_statut '. |
'FROM gestion_utilisateur_statut '; |
break; |
case UtilisateurStatut::GUS_LIBELLE: |
$requete = 'SELECT * '. |
'FROM gestion_utilisateur_statut '. |
'WHERE gus_libelle = "'.$parametres[0].'" '; |
break; |
default : |
$message = 'Commande '.$cmd.'inconnue!'; |
113,7 → 127,7 |
$e = GestionnaireErreur::formaterMessageErreur(__FILE__, __LINE__, $message); |
trigger_error($e, E_USER_ERROR); |
} |
$resultat = $GLOBALS['db']->query($requete); |
(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$tab_resultat = array(); |
120,8 → 134,8 |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
} |
$resultat_nbre = count($tab_resultat); |
$resultat_nbre = count($tab_resultat); |
if ($resultat_nbre > 1) { |
return $tab_resultat; |
} else if ($resultat_nbre == 1) { |
130,7 → 144,7 |
return false; |
} |
} |
/** Afficher l'objet UtilisateurStatut */ |
function afficherUtilisateurStatut() |
{ |
/trunk/classes/metiers/aGttSql.class.php |
---|
28,8 → 28,11 |
$this->dao_table_nom = $tn; |
} |
// Correspondance |
function getCorrespondance() |
function getCorrespondance($champ = null) |
{ |
if (!is_null($champ)) { |
return $this->dao_correspondance[$champ]; |
} |
return $this->dao_correspondance; |
} |
function setCorrespondance($c) |
49,7 → 52,7 |
if ($instancier) { |
foreach ($this->getCorrespondance() as $champ => $attribut) { |
if (isset($donnees[$champ]) && !is_null($donnees[$champ])) { |
$methode = 'set'.str_replace(' ', '', ucwords(str_replace('_', ' ', $attribut))); |
$methode = $this->donnerMethodeSetAvecAttribut($attribut); |
$this->$methode($donnees[$champ]); |
} |
} |
57,7 → 60,7 |
$Objet = new $classe; |
foreach ($this->getCorrespondance() as $champ => $attribut) { |
if (isset($donnees[$champ]) && !is_null($donnees[$champ])) { |
$methode = 'set'.str_replace(' ', '', ucwords(str_replace('_', ' ', $attribut))); |
$methode = $this->donnerMethodeSetAvecAttribut($attribut); |
$Objet->$methode($donnees[$champ]); |
} |
} |
66,7 → 69,7 |
} else if ($donnees instanceof $classe) { |
$enregistrement = array(); |
foreach ($this->getCorrespondance() as $champ => $attribut) { |
$methode = 'get'.str_replace(' ', '', ucwords(str_replace('_', ' ', $attribut))); |
$methode = $this->donnerMethodeGetAvecAttribut($attribut); |
if (method_exists($donnees, $methode)) { |
if (!is_null($donnees->$methode())) { |
$enregistrement[$champ] = $donnees->$methode(); |
76,6 → 79,22 |
return $enregistrement; |
} |
} |
private function donnerMethodeGetAvecAttribut($attribut) |
{ |
return 'get'.str_replace(' ', '', ucwords(str_replace('_', ' ', $attribut))); |
} |
private function donnerMethodeGetAvecChamp($champ) |
{ |
return 'get'.str_replace(' ', '', ucwords(str_replace('_', ' ', $this->getCorrespondance($champ)))); |
} |
private function donnerMethodeSetAvecAttribut($attribut) |
{ |
return 'set'.str_replace(' ', '', ucwords(str_replace('_', ' ', $attribut))); |
} |
private function donnerMethodeSetAvecChamp($champ) |
{ |
return 'set'.str_replace(' ', '', ucwords(str_replace('_', ' ', $this->getCorrespondance($champ)))); |
} |
/** |
* Ajouter un enregistrement dans la base de données. |
113,9 → 132,10 |
/** |
* Modifier un enregistrement dans la base de données. |
* @return true si ok, false si aucun enregistrement effectué |
* @param object l'ancien objet contenant les valeurs de clés primaires non modifiées. Laissé vide si on ne modifie pas les clés. |
* @return true si ok, false si aucun enregistrement effectué. |
*/ |
public function modifier() |
public function modifier($Ancien = null) |
{ |
$enregistrement = $this->basculerEnregistrementObjet($this); |
$sql_where = ''; |
124,10 → 144,17 |
if (!is_numeric($val)) { |
$val = '"'.$val.'"'; |
} |
$sql_set .= $champ.' = '.$val.', '; |
$classe = get_class($this); |
if ($Ancien instanceof $classe) { |
$methode = $this->donnerMethodeGetAvecChamp($champ); |
$val = $Ancien->$methode(); |
if (!is_numeric($val)) { |
$val = '"'.$val.'"'; |
} |
} |
if (preg_match('/_id_/', $champ)) { |
$sql_where .= $champ.' = '.$val.' AND '; |
} else { |
$sql_set .= $champ.' = '.$val.', '; |
} |
} |
$sql_set = trim($sql_set, ', ').' '; |
/trunk/classes/metiers/Absence.class.php |
---|
47,6 → 47,7 |
class Absence extends aGttSql { |
/*** Constantes : */ |
const GA_ID = 'ABSENCE_ID'; |
const GA_ID_ABSENCE_MOTIF = 'ABSENCE_ID_ABSENCE_MOTIF'; |
const GA_ID_UTILISATEUR_DATE_DEB_FIN = 'ABSENCE_ID_UTILISATEUR_DATE_DEB_FIN'; |
const GA_ID_MAX_UTILISATEUR = 'ABSENCE_ID_MAX_UTILISATEUR'; |
const GA_ID_MAX_ABSENCE_MOTIF = 'ABSENCE_ID_MAX_ABSENCE_MOTIF'; |
125,6 → 126,9 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case Absence::GA_ID: |
$requete = 'SELECT * '. |
131,6 → 135,11 |
'FROM gestion_absence '. |
'WHERE ga_id_utilisateur = '.$parametres[0].' AND ga_id_absence_motif = '.$parametres[1].' AND ga_id_date_absence = '.$parametres[2].' '; |
break; |
case Absence::GA_ID_ABSENCE_MOTIF: |
$requete = 'SELECT * '. |
'FROM gestion_absence '. |
'WHERE ga_id_absence_motif = '.$parametres[0].' '; |
break; |
case Absence::GA_ID_UTILISATEUR_DATE_DEB_FIN: |
$requete = 'SELECT * '. |
'FROM gestion_absence '. |
/trunk/classes/metiers/Projet.class.php |
---|
49,8 → 49,9 |
const GP_TOUS = 'PROJET_TOUS'; |
const GP_ID = 'PROJET_ID'; |
const GP_ID_MAX = 'PROJET_ID_MAX'; |
const GP_ID_LIST = 'PROJET_ID_LIST'; |
const GP_ID_LIST = 'PROJET_ID_LIST'; |
const GP_CE_CATEGORIE = 'PROJET_CE_CATEGORIE'; |
/*** Attributs : */ |
private $id_projet; |
private $ce_categorie; |
59,7 → 60,7 |
private $date_debut; |
private $duree_prevue; |
private $avancement; |
/*** Aggregations : */ |
/*** Constructeur : */ |
74,13 → 75,13 |
'gp_date_debut' => 'date_debut', |
'gp_duree_prevue' => 'duree_prevue', |
'gp_avancement' => 'avancement'); |
// Si l'on veut remplir l'objet à la création on lance la requete correspondante |
if (!is_null($cmd)) { |
$this->consulter($cmd, $parametres, true); |
} |
} |
/*** Accesseurs : */ |
// Id Projet |
public function getIdProjet() |
91,7 → 92,7 |
{ |
$this->id_projet = $ip; |
} |
// Ce Categorie |
public function getCeCategorie() |
{ |
101,7 → 102,7 |
{ |
$this->ce_categorie = $cc; |
} |
// Nom Projet |
public function getNomProjet() |
{ |
111,7 → 112,7 |
{ |
$this->nom_projet = $np; |
} |
// Description |
public function getDescription() |
{ |
121,7 → 122,7 |
{ |
$this->description = $d; |
} |
// Date Debut |
public function getDateDebut() |
{ |
131,7 → 132,7 |
{ |
$this->date_debut = $dd; |
} |
// Duree Prevue |
public function getDureePrevue() |
{ |
141,7 → 142,7 |
{ |
$this->duree_prevue = $dp; |
} |
// Avancement |
public function getAvancement() |
{ |
151,7 → 152,7 |
{ |
$this->avancement = $a; |
} |
/*** Méthodes : */ |
/** |
181,6 → 182,11 |
$requete = 'SELECT * '. |
'FROM gestion_projet '. |
'WHERE gp_id_projet IN ('.$parametres[0].') '; |
break; |
case Projet::GP_CE_CATEGORIE: |
$requete = 'SELECT * '. |
'FROM gestion_projet '. |
'WHERE gp_ce_categorie = '.$parametres[0].' '; |
break; |
default : |
$message = 'Commande '.$cmd.'inconnue!'; |
193,8 → 199,8 |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
} |
$resultat_nbre = count($tab_resultat); |
$resultat_nbre = count($tab_resultat); |
if ($resultat_nbre > 1) { |
return $tab_resultat; |
} else if ($resultat_nbre == 1) { |
203,7 → 209,7 |
return false; |
} |
} |
/** Afficher l'objet Projet */ |
function afficherProjet() |
{ |
/trunk/classes/metiers/ProjetCategorie.class.php |
---|
46,13 → 46,15 |
*/ |
class ProjetCategorie extends aGttSql { |
/*** Constantes : */ |
const GPC_TOUS = 'PROJETCATEGORIE_TOUS'; |
const GPC_ID = 'PROJETCATEGORIE_ID'; |
const GPC_ID_MAX = 'PROJETCATEGORIE_ID_MAX'; |
const GPC_ID_MAX = 'PROJETCATEGORIE_ID_MAX'; |
const GPC_LIBELLE = 'PROJETCATEGORIE_LIBELLE'; |
/*** Attributs : */ |
private $id_categorie; |
private $libelle; |
/*** Aggregations : */ |
/*** Constructeur : */ |
62,13 → 64,13 |
$this->dao_correspondance = array( |
'gpc_id_categorie' => 'id_categorie', |
'gpc_libelle' => 'libelle'); |
// Si l'on veut remplir l'objet à la création on lance la requete correspondante |
if (!is_null($cmd)) { |
$this->consulter($cmd, $parametres, true); |
} |
} |
/*** Accesseurs : */ |
// Id Categorie |
public function getIdCategorie() |
79,7 → 81,7 |
{ |
$this->id_categorie = $ic; |
} |
// Libelle |
public function getLibelle() |
{ |
89,7 → 91,7 |
{ |
$this->libelle = $l; |
} |
/*** Méthodes : */ |
/** |
102,6 → 104,10 |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case ProjetCategorie::GPC_TOUS: |
$requete = 'SELECT * '. |
'FROM gestion_projet_categorie '; |
break; |
case ProjetCategorie::GPC_ID: |
$requete = 'SELECT * '. |
'FROM gestion_projet_categorie '. |
108,8 → 114,13 |
'WHERE gpc_id_categorie = '.$parametres[0].' '; |
break; |
case ProjetCategorie::GPC_ID_MAX: |
$requete = 'SELECT MAX(gpc_id_categorie) '. |
$requete = 'SELECT MAX(gpc_id_categorie) as gpc_id_categorie '. |
'FROM gestion_projet_categorie '; |
break; |
case ProjetCategorie::GPC_LIBELLE: |
$requete = 'SELECT * '. |
'FROM gestion_projet_categorie '. |
'WHERE gpc_libelle = "'.$parametres[0].'" '; |
break; |
default : |
$message = 'Commande '.$cmd.'inconnue!'; |
116,7 → 127,7 |
$e = GestionnaireErreur::formaterMessageErreur(__FILE__, __LINE__, $message); |
trigger_error($e, E_USER_ERROR); |
} |
$resultat = $GLOBALS['db']->query($requete); |
(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$tab_resultat = array(); |
123,8 → 134,8 |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
} |
$resultat_nbre = count($tab_resultat); |
$resultat_nbre = count($tab_resultat); |
if ($resultat_nbre > 1) { |
return $tab_resultat; |
} else if ($resultat_nbre == 1) { |
133,7 → 144,7 |
return false; |
} |
} |
/** Afficher l'objet ProjetCategorie */ |
function afficherProjetCategorie() |
{ |
/trunk/classes/metiers/TravailProjet.class.php |
---|
125,6 → 125,9 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case TravailProjet::GTP_ID: |
$requete = 'SELECT * '. |
/trunk/classes/metiers/TravailTache.class.php |
---|
50,13 → 50,13 |
const GTT_ID_MAX_UTILISATEUR = 'TRAVAILTACHE_ID_MAX_UTILISATEUR'; |
const GTT_ID_MAX_TACHE = 'TRAVAILTACHE_ID_MAX_TACHE'; |
const GTT_ID_MAX_DATE_TRAVAIL = 'TRAVAILTACHE_ID_MAX_DATE_TRAVAIL'; |
/*** Attributs : */ |
private $id_utilisateur; |
private $id_tache; |
private $id_date_travail; |
private $duree; |
/*** Aggregations : */ |
/*** Constructeur : */ |
68,13 → 68,13 |
'gtt_id_tache' => 'id_tache', |
'gtt_id_date_travail' => 'id_date_travail', |
'gtt_duree' => 'duree'); |
// Si l'on veut remplir l'objet à la création on lance la requete correspondante |
if (!is_null($cmd)) { |
$this->consulter($cmd, $parametres, true); |
} |
} |
/*** Accesseurs : */ |
// Id Utilisateur |
public function getIdUtilisateur() |
85,7 → 85,7 |
{ |
$this->id_utilisateur = $iu; |
} |
// Id Tache |
public function getIdTache() |
{ |
95,7 → 95,7 |
{ |
$this->id_tache = $it; |
} |
// Id Date Travail |
public function getIdDateTravail() |
{ |
105,7 → 105,7 |
{ |
$this->id_date_travail = $idt; |
} |
// Duree |
public function getDuree() |
{ |
115,7 → 115,7 |
{ |
$this->duree = $d; |
} |
/*** Méthodes : */ |
/** |
124,6 → 124,9 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case TravailTache::GTT_ID: |
$requete = 'SELECT * '. |
147,7 → 150,7 |
$e = GestionnaireErreur::formaterMessageErreur(__FILE__, __LINE__, $message); |
trigger_error($e, E_USER_ERROR); |
} |
$resultat = $GLOBALS['db']->query($requete); |
(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$tab_resultat = array(); |
154,8 → 157,8 |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
} |
$resultat_nbre = count($tab_resultat); |
$resultat_nbre = count($tab_resultat); |
if ($resultat_nbre > 1) { |
return $tab_resultat; |
} else if ($resultat_nbre == 1) { |
164,7 → 167,7 |
return false; |
} |
} |
/** Afficher l'objet TravailTache */ |
function afficherTravailTache() |
{ |
/trunk/classes/metiers/ProjetTache.class.php |
---|
48,7 → 48,7 |
/*** Constantes : */ |
const GPT_ID = 'PROJETTACHE_ID'; |
const GPT_ID_MAX = 'PROJETTACHE_ID_MAX'; |
/*** Attributs : */ |
private $id_tache; |
private $ce_tache_precedente; |
58,7 → 58,7 |
private $date_debut; |
private $duree_prevue; |
private $avancement; |
/*** Aggregations : */ |
/*** Constructeur : */ |
74,13 → 74,13 |
'gpt_date_debut' => 'date_debut', |
'gpt_duree_prevue' => 'duree_prevue', |
'gpt_avancement' => 'avancement'); |
// Si l'on veut remplir l'objet à la création on lance la requete correspondante |
if (!is_null($cmd)) { |
$this->consulter($cmd, $parametres, true); |
} |
} |
/*** Accesseurs : */ |
// Id Tache |
public function getIdTache() |
91,7 → 91,7 |
{ |
$this->id_tache = $it; |
} |
// Ce Tache Precedente |
public function getCeTachePrecedente() |
{ |
101,7 → 101,7 |
{ |
$this->ce_tache_precedente = $ctp; |
} |
// Ce Projet |
public function getCeProjet() |
{ |
111,7 → 111,7 |
{ |
$this->ce_projet = $cp; |
} |
// Libelle |
public function getLibelle() |
{ |
121,7 → 121,7 |
{ |
$this->libelle = $l; |
} |
// Description |
public function getDescription() |
{ |
131,7 → 131,7 |
{ |
$this->description = $d; |
} |
// Date Debut |
public function getDateDebut() |
{ |
141,7 → 141,7 |
{ |
$this->date_debut = $dd; |
} |
// Duree Prevue |
public function getDureePrevue() |
{ |
151,7 → 151,7 |
{ |
$this->duree_prevue = $dp; |
} |
// Avancement |
public function getAvancement() |
{ |
161,7 → 161,7 |
{ |
$this->avancement = $a; |
} |
/*** Méthodes : */ |
/** |
170,6 → 170,9 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case ProjetTache::GPT_ID: |
$requete = 'SELECT * '. |
185,7 → 188,7 |
$e = GestionnaireErreur::formaterMessageErreur(__FILE__, __LINE__, $message); |
trigger_error($e, E_USER_ERROR); |
} |
$resultat = $GLOBALS['db']->query($requete); |
(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$tab_resultat = array(); |
192,8 → 195,8 |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
} |
$resultat_nbre = count($tab_resultat); |
$resultat_nbre = count($tab_resultat); |
if ($resultat_nbre > 1) { |
return $tab_resultat; |
} else if ($resultat_nbre == 1) { |
202,7 → 205,7 |
return false; |
} |
} |
/** Afficher l'objet ProjetTache */ |
function afficherProjetTache() |
{ |
/trunk/classes/metiers/NoteFraisLigne.class.php |
---|
48,7 → 48,7 |
/*** Constantes : */ |
const GNFL_ID = 'NOTEFRAISLIGNE_ID'; |
const GNFL_ID_MAX = 'NOTEFRAISLIGNE_ID_MAX'; |
/*** Attributs : */ |
private $id_note_frais_ligne; |
private $ce_note_frais; |
56,7 → 56,7 |
private $montant_ht; |
private $taux_tva; |
private $montant_ttc; |
/*** Aggregations : */ |
/*** Constructeur : */ |
70,13 → 70,13 |
'gnfl_montant_ht' => 'montant_ht', |
'gnfl_taux_tva' => 'taux_tva', |
'gnfl_montant_ttc' => 'montant_ttc'); |
// Si l'on veut remplir l'objet à la création on lance la requete correspondante |
if (!is_null($cmd)) { |
$this->consulter($cmd, $parametres, true); |
} |
} |
/*** Accesseurs : */ |
// Id Note Frais Ligne |
public function getIdNoteFraisLigne() |
87,7 → 87,7 |
{ |
$this->id_note_frais_ligne = $infl; |
} |
// Ce Note Frais |
public function getCeNoteFrais() |
{ |
97,7 → 97,7 |
{ |
$this->ce_note_frais = $cnf; |
} |
// Date |
public function getDate() |
{ |
107,7 → 107,7 |
{ |
$this->date = $d; |
} |
// Montant Ht |
public function getMontantHt() |
{ |
117,7 → 117,7 |
{ |
$this->montant_ht = $mh; |
} |
// Taux Tva |
public function getTauxTva() |
{ |
127,7 → 127,7 |
{ |
$this->taux_tva = $tt; |
} |
// Montant Ttc |
public function getMontantTtc() |
{ |
137,7 → 137,7 |
{ |
$this->montant_ttc = $mt; |
} |
/*** Méthodes : */ |
/** |
146,6 → 146,9 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case NoteFraisLigne::GNFL_ID: |
$requete = 'SELECT * '. |
161,7 → 164,7 |
$e = GestionnaireErreur::formaterMessageErreur(__FILE__, __LINE__, $message); |
trigger_error($e, E_USER_ERROR); |
} |
$resultat = $GLOBALS['db']->query($requete); |
(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$tab_resultat = array(); |
168,8 → 171,8 |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
} |
$resultat_nbre = count($tab_resultat); |
$resultat_nbre = count($tab_resultat); |
if ($resultat_nbre > 1) { |
return $tab_resultat; |
} else if ($resultat_nbre == 1) { |
178,7 → 181,7 |
return false; |
} |
} |
/** Afficher l'objet NoteFraisLigne */ |
function afficherNoteFraisLigne() |
{ |
/trunk/classes/metiers/NoteFrais.class.php |
---|
48,12 → 48,12 |
/*** Constantes : */ |
const GNF_ID = 'NOTEFRAIS_ID'; |
const GNF_ID_MAX = 'NOTEFRAIS_ID_MAX'; |
/*** Attributs : */ |
private $id_note_frais; |
private $ce_utilisateur; |
private $libelle; |
/*** Aggregations : */ |
/*** Constructeur : */ |
64,13 → 64,13 |
'gnf_id_note_frais' => 'id_note_frais', |
'gnf_ce_utilisateur' => 'ce_utilisateur', |
'gnf_libelle' => 'libelle'); |
// Si l'on veut remplir l'objet à la création on lance la requete correspondante |
if (!is_null($cmd)) { |
$this->consulter($cmd, $parametres, true); |
} |
} |
/*** Accesseurs : */ |
// Id Note Frais |
public function getIdNoteFrais() |
81,7 → 81,7 |
{ |
$this->id_note_frais = $inf; |
} |
// Ce Utilisateur |
public function getCeUtilisateur() |
{ |
91,7 → 91,7 |
{ |
$this->ce_utilisateur = $cu; |
} |
// Libelle |
public function getLibelle() |
{ |
101,7 → 101,7 |
{ |
$this->libelle = $l; |
} |
/*** Méthodes : */ |
/** |
110,6 → 110,9 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case NoteFrais::GNF_ID: |
$requete = 'SELECT * '. |
125,7 → 128,7 |
$e = GestionnaireErreur::formaterMessageErreur(__FILE__, __LINE__, $message); |
trigger_error($e, E_USER_ERROR); |
} |
$resultat = $GLOBALS['db']->query($requete); |
(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$tab_resultat = array(); |
132,8 → 135,8 |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
} |
$resultat_nbre = count($tab_resultat); |
$resultat_nbre = count($tab_resultat); |
if ($resultat_nbre > 1) { |
return $tab_resultat; |
} else if ($resultat_nbre == 1) { |
142,7 → 145,7 |
return false; |
} |
} |
/** Afficher l'objet NoteFrais */ |
function afficherNoteFrais() |
{ |
/trunk/classes/metiers/Utilisateur.class.php |
---|
46,13 → 46,15 |
*/ |
class Utilisateur extends aGttSql { |
/*** Constantes : */ |
const GU_TOUS = 'UTILISATEUR_TOUS'; |
const GU_ID = 'UTILISATEUR_ID'; |
const GU_ID_MAX = 'UTILISATEUR_ID_MAX'; |
const GU_CE_STATUT = 'UTILISATEUR_CE_STATUT'; |
const GU_MAIL = 'UTILISATEUR_MAIL'; |
/*** Attributs : */ |
private $id_utilisateur; |
private $ce_statut; |
private $ce_statut = 0; |
private $nom; |
private $prenom; |
private $password; |
61,11 → 63,11 |
private $adresse; |
private $code_postal; |
private $ville; |
private $quota_heures_supp; |
private $conges_payes; |
private $temps_de_travail; |
private $mark_admin; |
private $mark_recapitulatif; |
private $quota_heures_supp = 0; |
private $conges_payes = 0; |
private $temps_de_travail = 7; |
private $mark_admin = 0; |
private $mark_recapitulatif = 1; |
private $notes; |
/*** Aggregations : */ |
267,7 → 269,15 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case Utilisateur::GU_TOUS: |
$requete = 'SELECT * '. |
'FROM gestion_utilisateur '. |
'ORDER BY gu_prenom, gu_nom ASC'; |
break; |
case Utilisateur::GU_ID: |
$requete = 'SELECT * '. |
'FROM gestion_utilisateur '. |
274,9 → 284,14 |
'WHERE gu_id_utilisateur = '.$parametres[0].' '; |
break; |
case Utilisateur::GU_ID_MAX: |
$requete = 'SELECT MAX(gu_id_utilisateur) '. |
$requete = 'SELECT MAX(gu_id_utilisateur) AS gu_id_utilisateur '. |
'FROM gestion_utilisateur '; |
break; |
case Utilisateur::GU_CE_STATUT: |
$requete = 'SELECT * '. |
'FROM gestion_utilisateur '. |
'WHERE gu_ce_statut = "'.$parametres[0].'" '; |
break; |
case Utilisateur::GU_MAIL: |
$requete = 'SELECT * '. |
'FROM gestion_utilisateur '. |
291,7 → 306,7 |
$resultat = $GLOBALS['db']->query($requete); |
(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$tab_resultat = array(); |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
} |
/trunk/classes/metiers/FraisKm.class.php |
---|
48,7 → 48,7 |
/*** Constantes : */ |
const GFK_ID = 'FRAISKM_ID'; |
const GFK_ID_MAX = 'FRAISKM_ID_MAX'; |
/*** Attributs : */ |
private $id_frais_km; |
private $gfkt_id_frais_km_taux; |
58,7 → 58,7 |
private $objet; |
private $trajet; |
private $montant_total; |
/*** Aggregations : */ |
/*** Constructeur : */ |
74,13 → 74,13 |
'gfk_objet' => 'objet', |
'gfk_trajet' => 'trajet', |
'gfk_montant_total' => 'montant_total'); |
// Si l'on veut remplir l'objet à la création on lance la requete correspondante |
if (!is_null($cmd)) { |
$this->consulter($cmd, $parametres, true); |
} |
} |
/*** Accesseurs : */ |
// Id Frais Km |
public function getIdFraisKm() |
91,7 → 91,7 |
{ |
$this->id_frais_km = $ifk; |
} |
// Gfkt Id Frais Km Taux |
public function getGfktIdFraisKmTaux() |
{ |
101,7 → 101,7 |
{ |
$this->gfkt_id_frais_km_taux = $gifkt; |
} |
// Ce Utilisateur |
public function getCeUtilisateur() |
{ |
111,7 → 111,7 |
{ |
$this->ce_utilisateur = $cu; |
} |
// Date |
public function getDate() |
{ |
121,7 → 121,7 |
{ |
$this->date = $d; |
} |
// Nbre Km |
public function getNbreKm() |
{ |
131,7 → 131,7 |
{ |
$this->nbre_km = $nk; |
} |
// Objet |
public function getObjet() |
{ |
141,7 → 141,7 |
{ |
$this->objet = $o; |
} |
// Trajet |
public function getTrajet() |
{ |
151,7 → 151,7 |
{ |
$this->trajet = $t; |
} |
// Montant Total |
public function getMontantTotal() |
{ |
161,7 → 161,7 |
{ |
$this->montant_total = $mt; |
} |
/*** Méthodes : */ |
/** |
170,6 → 170,9 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case FraisKm::GFK_ID: |
$requete = 'SELECT * '. |
185,7 → 188,7 |
$e = GestionnaireErreur::formaterMessageErreur(__FILE__, __LINE__, $message); |
trigger_error($e, E_USER_ERROR); |
} |
$resultat = $GLOBALS['db']->query($requete); |
(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$tab_resultat = array(); |
192,8 → 195,8 |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
} |
$resultat_nbre = count($tab_resultat); |
$resultat_nbre = count($tab_resultat); |
if ($resultat_nbre > 1) { |
return $tab_resultat; |
} else if ($resultat_nbre == 1) { |
202,7 → 205,7 |
return false; |
} |
} |
/** Afficher l'objet FraisKm */ |
function afficherFraisKm() |
{ |
/trunk/classes/metiers/FraisKmTaux.class.php |
---|
48,11 → 48,11 |
/*** Constantes : */ |
const GFKT_ID = 'FRAISKMTAUX_ID'; |
const GFKT_ID_MAX = 'FRAISKMTAUX_ID_MAX'; |
/*** Attributs : */ |
private $id_frais_km_taux; |
private $taux; |
/*** Aggregations : */ |
/*** Constructeur : */ |
62,13 → 62,13 |
$this->dao_correspondance = array( |
'gfkt_id_frais_km_taux' => 'id_frais_km_taux', |
'gfkt_taux' => 'taux'); |
// Si l'on veut remplir l'objet à la création on lance la requete correspondante |
if (!is_null($cmd)) { |
$this->consulter($cmd, $parametres, true); |
} |
} |
/*** Accesseurs : */ |
// Id Frais Km Taux |
public function getIdFraisKmTaux() |
79,7 → 79,7 |
{ |
$this->id_frais_km_taux = $ifkt; |
} |
// Taux |
public function getTaux() |
{ |
89,7 → 89,7 |
{ |
$this->taux = $t; |
} |
/*** Méthodes : */ |
/** |
98,6 → 98,9 |
*/ |
public function consulter($cmd = '', $parametres = array(), $instancier = false) |
{ |
if (!is_array($parametres)) { |
$parametres[0] = $parametres; |
} |
switch ($cmd) { |
case FraisKmTaux::GFKT_ID: |
$requete = 'SELECT * '. |
113,7 → 116,7 |
$e = GestionnaireErreur::formaterMessageErreur(__FILE__, __LINE__, $message); |
trigger_error($e, E_USER_ERROR); |
} |
$resultat = $GLOBALS['db']->query($requete); |
(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$tab_resultat = array(); |
120,8 → 123,8 |
while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier); |
} |
$resultat_nbre = count($tab_resultat); |
$resultat_nbre = count($tab_resultat); |
if ($resultat_nbre > 1) { |
return $tab_resultat; |
} else if ($resultat_nbre == 1) { |
130,7 → 133,7 |
return false; |
} |
} |
/** Afficher l'objet FraisKmTaux */ |
function afficherFraisKmTaux() |
{ |
/trunk/index.php |
---|
42,11 → 42,12 |
include CHEMIN_LANGUES.'gtt_langue_fr.inc.php'; |
// Test des choix de menu a afficher |
$action = 'gestion'; |
$action = 1; |
if (!empty($_GET['action'])) { |
$action = $_GET['action']; |
} |
if (!preg_match('/^\d+$/', $action)) { |
/** |
* La fonction __autoload() charge dynamiquement les classes trouvées dans le code. |
* |
71,6 → 72,9 |
} |
} |
// Initialisation du gestionnaire d'erreur |
$GLOBALS['_GTT_']['erreur'] = new GestionnaireErreur(GTT_DEBOGAGE_CONTEXTE, GTT_DEBOGAGE_NIVEAU, GTT_DEBOGAGE_PEAR, GTT_DEBOGAGE_PEAR_CHAINE); |
// Connexion a la base de donnees |
$GLOBALS['db'] = DB::connect(GTT_BDD_DSN); |
if (PEAR::isError($GLOBALS['db'])) { |
77,13 → 81,7 |
trigger_error("Echec connexion a la base de donnees : ".$GLOBALS['db']->getMessage(), E_USER_ERROR); |
} |
// Récuperation d'informations générales |
require_once GTT_CHEMIN_CLASSE.'GestionnaireErreur.class.php'; |
require_once GTT_CHEMIN_METIER.'aGttSql.class.php'; |
// Utilisation du mécanisme MVC avec Squelette PHP et objet |
require_once GTT_CHEMIN_CLASSE.'aControlleurAction.class.php'; |
require_once GTT_CHEMIN_CLASSE.'Registre.class.php'; |
$nom_module_general = 'ControlleurFrontal'; |
$fichier_module_general = GTT_CHEMIN_CLASSE.$nom_module_general.'.class.php'; |
if (file_exists($fichier_module_general)) { |