/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/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/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/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) |
{ |