/[openfoncier]/trunk/obj/om_dbform.class.php
ViewVC logotype

Contents of /trunk/obj/om_dbform.class.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 680 - (show annotations)
Tue Nov 13 18:15:59 2012 UTC (12 years, 2 months ago) by nhaye
File size: 26211 byte(s)
Ajout d'une méthode dans om_dbform permettant de tester si un utilisateur à le droit d'accéder à la page, cette méthode pourrant être surchargée dans chaque classe métier.
Surcharge de cette méthode dans la classe consultation afin de limiter les utilisateurs de service à leurs demande de retour d'avis.

1 <?php
2 /**
3 * Ce fichier est destine a permettre la surcharge de certaines methodes de
4 * la classe om_dbform pour des besoins specifiques de l'application
5 *
6 * @package openmairie_exemple
7 * @version SVN : $Id$
8 */
9
10 /**
11 *
12 */
13 require_once PATH_OPENMAIRIE."om_dbform.class.php";
14
15 /**
16 *
17 */
18 require_once "om_formulaire.class.php";
19
20 /**
21 *
22 */
23 class om_dbform extends dbForm {
24
25 /**
26 *
27 */
28 var $om_formulaire = "om_formulaire";
29
30
31
32 /**
33 * Constructeur
34 *
35 * @param string $id
36 * @param object $db Objet de connexion DB
37 * @param boolean $DEBUG Mode debug (@deprecated)
38 */
39 function constructeur($id, &$db, $DEBUG = false) {
40 if (defined('REST_REQUEST')) { // $this->REST
41 logger::instance()->display_log = false;
42 }
43 //
44 if (isset($GLOBALS["f"])) {
45 $this->f = $GLOBALS["f"];
46 }
47 // Le framework REST est utilisee
48 $this->errors = array();
49
50 // Affectation de l'identifiant de base de donnees dans l'attribut db
51 // de l'objet
52 $this->db = $db;
53 // Inclusion du fichier de parametre de la table pour recuperer les
54 // trois parametres permettant de construire la requete de selection
55 // $champs - clause select
56 // $tableSelect - clause from
57 // $selection - clause where
58 $fichier = "../sql/".$this->db->phptype."/".$this->table.".form.inc.php";
59 if (file_exists($fichier)) {
60 include $fichier;
61 } else {
62 $fichier = "../sql/".$this->db->phptype."/".$this->table.".form.inc";
63 if (file_exists($fichier)) {
64 include $fichier;
65 }
66 }
67 // Sauvegarde des actions contextuelles supplementaires
68 if (isset($portlet_actions)) {
69 $this->actions_sup = $portlet_actions;
70 }
71 //Si le flag $archivable est posé
72 //if(isset($archivable) and $archivable){
73 // $this->archivable=TRUE;
74 //} else {
75 // $this->archivable=FALSE;
76 //}
77 // Concatenation des champs pour constitution de la clause select
78 $listeChamp = "";
79 foreach ($champs as $elem) {
80 $listeChamp .= $elem.",";
81 }
82 // Suppresion de la derniere virgule
83 $listeChamp = substr($listeChamp, 0, strlen($listeChamp)-1);
84 // Initialisation de la variable selection
85 if (!isset($selection)) {
86 $selection = "";
87 }
88 // Concatenation de la requete de selection
89 $sql = " select ".$listeChamp." from ".$tableSelect." ";
90 // Si mode ajout
91 if ($id == "]") {
92 // Remplacement du 'and' par 'where' dans la varibale $selection
93 $selection = ltrim($selection);
94 if (strtolower(substr($selection, 0, 3)) == "and") {
95 $selection = " where ".substr($selection, 4, strlen($selection));
96 }
97 } else { // Si mode modification ou suppression
98 // Clause where en fonction du type de la cle primaire
99 if ($this->typeCle == "A") {
100 $sql .= " where ".$this->clePrimaire." like '".$id."' ";
101 } else {
102 $sql .= " where ".$this->table.".".$this->clePrimaire." = ".$id." ";
103 }
104 }
105 $sql .= " ".$selection." ";
106 //print '$sql:'.$sql.' ';
107 // Execution de la requete
108 $res = $db->limitquery($sql, 0, 1);
109 // Logger
110 $this->addToLog("constructeur(): db->limitquery(\"".str_replace(",",", ",$sql)."\", 0, 1);", VERBOSE_MODE);
111 // Si une erreur survient
112 if (database::isError($res, true)) {
113 // Appel de la methode de recuperation des erreurs
114 $this->erreur_db($res->getDebugInfo(), $res->getMessage(), $tableSelect);
115 } else {
116 // Recuperation des informations sur la structure de la table
117 // ??? compatibilite POSTGRESQL (len = -1, type vide, flags vide)
118 $info = $res->tableInfo();
119 // Initialisation de la cle a 0
120 $i = 0;
121 // Recuperation du nom de chaque champ dans l'attribut 'champs'
122 foreach ($info as $elem) {
123 $this->champs[$i++] = $elem['name'];
124 }
125 // ??? Le $i devrait etre initialises a 0 pour chaque attribut suivant
126 // Recuperation de la taille de chaque champ dans l'attibut 'longueurMax'
127 foreach ($info as $elem) {
128 $this->longueurMax[$i++] = $elem['len'];
129 }
130 // Recuperation du type de chaque champ dans l'attribut 'type'
131 // ??? Non utilise
132 foreach ($info as $elem) {
133 $this->type[$i++] = $elem['type'];
134 }
135 // Recuperation du flag de chaque champ dans l'attribut 'flags'
136 // ??? Non utilise
137 foreach ($info as $elem) {
138 $this->flags[$i++] = $elem['flags'];
139 }
140 // Recuperation de l'enregistrement resultat de la requete
141 while ($row =& $res->fetchRow()) {
142 // Initialisation de la cle a 0
143 $i = 0;
144 // Recuperation de la valeur de chaque champ dans l'attribut 'val'
145 foreach ($row as $elem) {
146 $this->val[$i] = $elem;
147 if (defined('REST_REQUEST')) { // $this->REST
148 $this->valF[$this->champs[$i]] = $elem;
149 }
150 $i++;
151 }
152 }
153 }
154 if(!$this->canAccess()) {
155 //
156 $message_class = "error";
157 $message = _("Droits insuffisants. Vous n'avez pas suffisament de ".
158 "droits pour acceder a cette page.");
159 $this->f->addToMessage($message_class, $message);
160
161 //
162 $this->f->setFlag(NULL);
163 $this->f->display();
164
165 // Arrêt du script
166 die();
167 }
168 }
169
170
171
172 /**
173 * Cette methode permet d'executer l'ajout (MODE 'insert') de l'objet dans
174 * la base de donnees.
175 *
176 * @param array $val
177 * @param object $db Objet de connexion DB
178 * @param boolean $DEBUG Mode debug (@deprecated)
179 */
180 function ajouter($val, &$db = NULL, $DEBUG = false) {
181 // Logger
182 $this->addToLog("ajouter() - begin", EXTRA_VERBOSE_MODE);
183 // Mutateur de valF
184 $this->setValF($val);
185 // Mutateur de valF specifique a l'ajout
186 $this->setValFAjout($val);
187 // Verification de la validite des donnees
188 $this->verifier($val, $db, $DEBUG);
189 // Verification specifique au MODE 'insert' de la validite des donnees
190 $this->verifierAjout($val, $db);
191 // Verification du verrou
192 $this->testverrou();
193 // Si les verifications precedentes sont correctes, on procede a
194 // l'ajout, sinon on ne fait rien et on affiche un message d'echec
195 if ($this->correct) {
196 // Appel au mutateur pour le calcul de la cle primaire (si la cle
197 // est automatique) specifique au MODE 'insert'
198 $this->setId($db);
199 // Execution du trigger 'before' specifique au MODE 'insert'
200 // Le premier parametre est vide car en MODE 'insert'
201 // l'enregistrement n'existe pas encore donc il n'a pas
202 // d'identifiant
203 $this->triggerajouter("", $db, $val, $DEBUG);
204 // Execution de la requete d'insertion des donnees de l'attribut
205 // valF de l'objet dans l'attribut table de l'objet
206 $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_INSERT);
207 // Si une erreur survient
208 if (database::isError($res, true)) {
209 // Appel de la methode de recuperation des erreurs
210 $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');
211 } else {
212 // Log
213 $this->addToLog(_("Requete executee"), VERBOSE_MODE);
214 // Log
215 if(isset($val[$this->clePrimaire])) // ***
216 $id = $val[$this->clePrimaire];
217 else
218 $id=$this->id;
219 $message = _("Enregistrement")."&nbsp;".$this->valF[$this->clePrimaire]."&nbsp;";
220 $message .= _("de la table")."&nbsp;\"".$this->table."\"&nbsp;";
221 $message .= "[&nbsp;".$db->affectedRows()."&nbsp;";
222 $message .= _("enregistrement(s) ajoute(s)")."&nbsp;]";
223 $this->addToLog($message, VERBOSE_MODE);
224 // Message de validation
225 $this->addToMessage(_("Vos modifications ont bien ete enregistrees.")."<br/>");
226 // Mise en place du verrou pour ne pas valider plusieurs fois
227 // le meme formulaire
228 $this->verrouille();
229
230 // Execution du trigger 'after' specifique au MODE 'insert'
231 // Le premier parametre est vide car en MODE 'insert'
232 // l'enregistrement n'existe pas encore donc il n'a pas
233 // d'identifiant
234 $this->triggerajouterapres("", $db, $val, $DEBUG);
235 }
236 } else {
237 // Message d'echec (saut d'une ligne supplementaire avant le
238 // message pour qu'il soit mis en evidence)
239 $this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>");
240 }
241 // Logger
242 $this->addToLog("ajouter() - end", EXTRA_VERBOSE_MODE);
243 }
244
245
246 /**
247 *
248 * @param array $val
249 * @param object $db Objet de connexion DB
250 */
251 function verifierAjout($val = array(), &$db = NULL) {
252
253 // Verifier [verify]
254 // la cle primaire est obligatoire
255 // [primary key is compulsory]
256 if ($this->valF[$this->clePrimaire] == "") {
257 //
258 $this->correct = false;
259 //
260 $this->addToMessage("<br/>");
261 $this->addToMessage( _("L'\"identifiant\" est obligatoire")."&nbsp;");
262 $this->addToMessage("[&nbsp;"._($this->clePrimaire)."&nbsp;]");
263 }
264 if ($this->typeCle == "A") {
265 $sql = "select count(*) from ".DB_PREFIXE.$this->table." ";
266 $sql .= "where ".$this->clePrimaire."='".$this->valF[$this->clePrimaire]."' ";
267 $nb = $db->getone($sql);
268 $this->addToLog("verifierAjout(): db->getone(\"".$sql."\");", VERBOSE_MODE);
269 if (database::isError($nb)) {
270 $this->erreur_db($nb->getDebugInfo(), $nb->getMessage(), '');
271 }else{
272 if ($nb > 0) {
273 $this->correct = false;
274 $this->addToMessage($nb." ");
275 $this->addToMessage( _("cle primaire existante"));
276 $this->addToMessage(" ".$this->table."<br />");
277 }
278 }
279 }
280 }
281
282
283 /**
284 * Cette methode permet d'executer la modification (MODE 'update') de
285 * l'objet dans la base de donnees.
286 *
287 * @param array $val
288 * @param object $db Objet de connexion DB
289 * @param boolean $DEBUG Mode debug (@deprecated)
290 */
291 function modifier($val = array(), &$db = NULL, $DEBUG = false) {
292
293 // Logger
294 $this->addToLog("modifier() - begin", EXTRA_VERBOSE_MODE);
295 // Recuperation de la valeur de la cle primaire de l'objet
296 if(isset($val[$this->clePrimaire]))
297 $id = $val[$this->clePrimaire];
298 else
299 $id=$this->id;
300 // Appel au mutateur de l'attribut valF de l'objet
301 $this->setValF($val);
302 // Verification de la validite des donnees
303 $this->verifier($val, $db, $DEBUG);
304 // Verification du verrou
305 $this->testverrou();
306 // Si les verifications precedentes sont correctes, on procede a
307 // la modification, sinon on ne fait rien et on affiche un message
308 // d'echec
309 if ($this->correct) {
310 // Execution du trigger 'before' specifique au MODE 'update'
311 $this->triggermodifier($id, $db, $val, $DEBUG);
312 // Execution de la requête de modification des donnees de l'attribut
313 // valF de l'objet dans l'attribut table de l'objet
314 $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_UPDATE, $this->getCle($id));
315 // Si une erreur survient
316 if (database::isError($res, true)) {
317 // Appel de la methode de recuperation des erreurs
318 $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');
319 } else {
320 // Log
321 $this->addToLog(_("Requete executee"), VERBOSE_MODE);
322 // Log
323 $message = _("Enregistrement")."&nbsp;".$id."&nbsp;";
324 $message .= _("de la table")."&nbsp;\"".$this->table."\"&nbsp;";
325 $message .= "[&nbsp;".$db->affectedRows()."&nbsp;";
326 $message .= _("enregistrement(s) mis a jour")."&nbsp;]";
327 $this->addToLog($message, VERBOSE_MODE);
328 // Message de validation
329 if ($db->affectedRows() == 0) {
330 $this->addToMessage(_("Attention vous n'avez fait aucune modification.")."<br/>");
331 } else {
332 $this->addToMessage(_("Vos modifications ont bien ete enregistrees.")."<br/>");
333 }
334 // Mise en place du verrou pour ne pas valider plusieurs fois
335 // le meme formulaire
336 $this->verrouille();
337
338 // Execution du trigger 'after' specifique au MODE 'update'
339 $this->triggermodifierapres($id, $db, $val, $DEBUG);
340 }
341 } else {
342 // Message d'echec (saut d'une ligne supplementaire avant le
343 // message pour qu'il soit mis en evidence)
344 $this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>");
345 }
346 // Logger
347 $this->addToLog("modifier() - end", EXTRA_VERBOSE_MODE);
348 }
349
350
351 /**
352 * Cette methode permet d'executer la suppression (MODE 'delete') de
353 * l'objet dans la base de donnees.
354 *
355 * @param array $val
356 * @param object $db Objet de connexion DB
357 * @param boolean $DEBUG Mode debug (@deprecated)
358 */
359 function supprimer($val = array(), &$db = NULL, $DEBUG = false) {
360 // Logger
361 $this->addToLog("supprimer() - begin", EXTRA_VERBOSE_MODE);
362 // Recuperation de la valeur de la cle primaire de l'objet
363 if(isset($val[$this->clePrimaire]))
364 $id = $val[$this->clePrimaire];
365 else
366 $id=$this->id;
367 // Verification des contraintes d'integrite specifique au MODE 'delete'
368 $this->correct=true;
369 $this->cleSecondaire($id, $db, $val, $DEBUG);
370 // Verification du verrou
371 $this->testverrou();
372 // Si les verifications precedentes sont correctes, on procede a
373 // la suppression, sinon on ne fait rien et on affiche un message
374 // d'echec
375 if ($this->correct) {
376 // Execution du trigger 'before' specifique au MODE 'delete'
377 $this->triggersupprimer($id, $db, $val, $DEBUG);
378 // Construction de la requete de suppression de l'objet dans
379 // l'attribut table de l'objet
380 $sql = "delete from ".DB_PREFIXE.$this->table." where ".$this->getCle($id);
381 // Execution de la requete de suppression de l'objet
382 $res = $db->query($sql);
383 // Logger
384 $this->addToLog("supprimer(): db->query(\"".$sql."\");", VERBOSE_MODE);
385 // Si une erreur survient
386 if (database::isError($res, true)) {
387 // Appel de la methode de recuperation des erreurs
388 $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');
389 } else {
390 // Log
391 $message = _("Enregistrement")."&nbsp;".$id."&nbsp;";
392 $message .= _("de la table")."&nbsp;\"".$this->table."\"&nbsp;";
393 $message .= "[&nbsp;".$db->affectedRows()."&nbsp;";
394 $message .= _("enregistrement(s) supprime(s)")."&nbsp;]";
395 $this->addToLog($message, VERBOSE_MODE);
396 // Message de validation
397 $this->addToMessage(_("La suppression a ete correctement effectuee.")."<br/>");
398 // Mise en place du verrou pour ne pas valider plusieurs fois
399 // le meme formulaire
400 $this->verrouille();
401
402 // Execution du trigger 'after' specifique au MODE 'delete'
403 $this->triggersupprimerapres($id, $db, $val, $DEBUG);
404 }
405 } else {
406 // Message d'echec (saut d'une ligne supplementaire avant le
407 // message pour qu'il soit mis en evidence)
408 $this->addToMessage("<br/>"._("SUPPRESSION NON EFFECTUEE")."<br/>");
409 }
410 // Logger
411 $this->addToLog("supprimer() - end", EXTRA_VERBOSE_MODE);
412 }
413
414
415
416 /**
417 * Methode de verification de l'unicite d'une valeur pour chaque elements du tableau unique_key,
418 * ainsi que l'unicite de la cle multiple unique_multiple_key.
419 *
420 * @param objet $db Objet Base de donnees
421 */
422 function checkUniqueKey() {
423 $unique=true;
424 //Verification des cles uniques
425 if(!empty($this->unique_key)) {
426 foreach ($this->unique_key as $constraint) {
427 if(!is_array($constraint)) {
428 if(!is_null ($this->valF[$constraint])) {
429 if(!$this->isUnique($constraint,$this->valF[$constraint])) {
430 $this->addToMessage( _("La valeur saisie dans le champ")." <span class=\"bold\">");
431 $this->addToMessage( (!defined('REST_REQUEST')) ? $this->form->lib[$constraint] : $constraint); // $this->REST
432 $this->addToMessage( "</span> "._("existe deja, veuillez saisir une nouvelle valeur.")."<br/>");
433 $unique=false;
434 }
435 }
436 } else {
437 //Verification du groupe de champs uniques
438 $oneIsNull=false;
439 if(!empty($constraint)) {
440 $valueMultiple=array();
441 foreach($constraint as $field) {
442 $valueMultiple[]=$this->valF[$field];
443 if(is_null($this->valF[$field])) {
444 $oneIsNull=true;
445 }
446 }
447 if(!$oneIsNull) {
448 if(!$this->isUnique($constraint,$valueMultiple)) {
449 foreach($constraint as $field) {
450 $temp[] = (!defined('REST_REQUEST')) ? $this->form->lib[$field] : $constraint; // $this->REST
451 }
452 $this->addToMessage( _("Les valeurs saisies dans les champs")." <span class=\"bold\">".implode("</span>, <span class=\"bold\">",$temp)."</span> "._("existent deja, veuillez saisir de nouvelles valeurs.")."<br/>");
453 $unique=false;
454 }
455 }
456 }
457 }
458 }
459 }
460 if(!$unique) {
461 $this->correct = false;
462 }
463 }
464
465
466
467 /**
468 * Methode permettant de requeter la base afin de definir la validite du champ unique
469 *
470 * @param string $champ nom du champ unique
471 * @param string $value valeur à inserer dans la colonne
472 */
473 function isUnique($champ,$value) {
474 //Test sur un groupe de champs
475 if(is_array($champ) and is_array($value)) {
476 $sql = 'SELECT count(*) FROM '.DB_PREFIXE.$this->table." WHERE ".implode(" = ? AND ",$champ)." = ?";
477 } else {
478 //Test sur un champ
479 $sql = 'SELECT count(*) FROM '.DB_PREFIXE.$this->table." WHERE ".$champ." = ?";
480 }
481 if($this->getParameter('maj')) {
482 $sql .= " AND ".$this->clePrimaire." \!= ".$this->valF[$this->clePrimaire];
483 }
484 $nb = $this->db->getone($sql,$value);
485 $this->addToLog("isUnique() : db->getone(\"".$sql."\");", VERBOSE_MODE);
486 if (database::isError($nb, true)) {
487 // Affichage de l'erreur
488 $this->erreur_db($nb->getDebugInfo(), $nb->getMessage(), '');
489 return true;
490 } else {
491 //Si superieur a 0, pas unique
492 if ($nb > 0) {
493 return false;
494 } else {
495 return true;
496 }
497 }
498 }
499
500
501
502 /**
503 * Methode de verification des contraintes not null,
504 * affiche une erreur si nul.
505 *
506 * @param objet $db Objet Base de donnees
507 */
508 function checkRequired() {
509 foreach($this->required_field as $field) {
510 //Ne test la cle primaire car n'a pas de valeur a l'ajout
511 // la cle primaire est automatiquement cree
512 if ($field == $this->clePrimaire) {
513 continue;
514 }
515
516 $error = false;
517
518 /* En ajout - verification des requis
519
520 Fonctionnement formel de la condition:
521
522 SI le champ n'existe pas (est 'unset')
523 OU le champ est vide
524
525 ALORS le formulaire n'est pas correct
526
527 SINON le formulaire est correct
528
529 Explication:
530
531 Les champs verifies sont les champs requis. S'ils n'existent
532 pas en ajout ou qu'ils sont vide, un message apparait a l'ecran
533 avertissant l'utilisateur que certains champs doivent etre
534 remplis.
535
536 */
537 if ($this->getParameter('maj') == 0 and
538 (!isset($this->valF[$field]) or $this->valF[$field] == '')) {
539 $error = true;
540 $this->correct = false;
541
542 /* En modification - verification des requis
543
544 Fonctionnement formel de la condition:
545
546 SI le champ existe (est 'set')
547 ET le champ est vide
548
549 ALORS le formulaire n'est pas correct
550
551 SINON le formulaire est correct
552
553 Explication:
554
555 Les champs verifies sont les champs requis. S'ils existent
556 et qu'ils sont vides alors un message apparait a l'ecran
557 avertissant l'utilisateur que certains champs doivent etre
558 remplis. Si ces champs sont tous saisis, le formulaire est
559 correctement soumis. Par contre, si l'un des champs requis
560 n'existe pas au moment de verification (il aurait ete 'unset'),
561 il ne sera pas verifie, n'entrainera pas de formulaire incorrect
562 et ne sera pas insere dans la base de donnees.
563
564 Faire un 'unset' permet de ne pas mettre a jour certaines
565 donnees sensibles en base a chaque soumission de formulaire.
566
567 Faire un 'unset' permet egalement d'outre passer cette condition
568 en mode de modification. On suppose qu'a l'ajout une valeur
569 a ete inseree dans un champ, et qu'il n'est plus necessaire
570 de verifier si ce champ est vide puisque sa valeur ne sera
571 pas modifiee en base. Elle sera donc conservee.
572
573 */
574 } elseif ($this->getParameter('maj') == 1
575 and isset($this->valF[$field])
576 and $this->valF[$field] == '') {
577 $error = true;
578 $this->correct = false;
579 }
580
581 // ajout du message d'erreur
582 if ($error == true) {
583 //$this->msg .= _('Le champ').' <span class="bold">'.($this->form->lib[$field]!=""?$this->form->lib[$field]:_($field)).'</span> '._('est obligatoire').".<br/>";
584 $this->addToMessage( _('Le champ').' <span class="bold">'.((!defined('REST_REQUEST')) ? $this->form->lib[$field] :_($field)).'</span> '._('est obligatoire').".<br/>"); // $this->REST
585 }
586 }
587 }
588
589
590
591
592
593 /**
594 *
595 */
596 function message() {
597
598 // do not output anything in case of a REST request
599 if (defined('REST_REQUEST')) {
600 return;
601 }
602
603 if ($this->msg != "") {
604
605 //
606 $m = new message();
607
608 //
609 if ($this->correct) {
610 $class = "valid";
611 } else {
612 $class = "error";
613 }
614 $m->displayMessage($class, $this->msg);
615
616 }
617
618 }
619
620
621
622 /**
623 * Cette methode ne doit plus etre appelee, c'est 'message::isError($res)'
624 * qui s'occupe d'afficher le message d'erreur et de faire le 'die()'.
625 *
626 * @deprecated
627 */
628 function erreur_db($debuginfo, $messageDB, $table) {
629 if (!defined('REST_REQUEST')) { // $this->REST
630 die(_("Erreur de base de donnees. Contactez votre administrateur."));
631 } else {
632 $this->errors['db_debuginfo'] = $debuginfo;
633 $this->errors['db_message'] = $messageDB;
634 $this->addToLog("Erreur de BD pour table ".$table ." avec message: \"".$messageDB.
635 "\" et debug info \"".$debuginfo."\"", VERBOSE_MODE);
636 }
637 }
638
639
640 /**
641 *
642 */
643 function addToLog($message, $type = DEBUG_MODE) {
644 if (defined('REST_REQUEST')) { // dans le cas d'utilisation du REST $this->REST
645 logger::instance()->log("REST request class ".get_class($this)." - ".$message, $type);
646 } else {
647 logger::instance()->log("class ".get_class($this)." - ".$message, $type);
648 }
649 }
650
651 // }}}
652
653 /**
654 * Cette methode vide les valeurs des erreurs du tableau errors.
655 */
656 function clearErrors() {
657 foreach (array_keys($this->errors) as $key) {
658 $this->errors[$key] = '';
659 }
660 }
661
662
663 }
664
665 ?>

Properties

Name Value
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26