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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 680 by nhaye, Tue Nov 13 18:15:59 2012 UTC revision 1913 by fmichon, Mon May 27 14:27:23 2013 UTC
# Line 21  require_once "om_formulaire.class.php"; Line 21  require_once "om_formulaire.class.php";
21   *   *
22   */   */
23  class om_dbform extends dbForm {  class om_dbform extends dbForm {
24        
25      /**      /**
26       *       * Nom de la classe formulaire
27       */       */
28      var $om_formulaire = "om_formulaire";      var $om_formulaire = "om_formulaire";
29    
30            /**
       
         /**  
31       * Constructeur       * Constructeur
32       *       *
33       * @param string $id       * @param string $id
# Line 37  class om_dbform extends dbForm { Line 35  class om_dbform extends dbForm {
35       * @param boolean $DEBUG Mode debug (@deprecated)       * @param boolean $DEBUG Mode debug (@deprecated)
36       */       */
37      function constructeur($id, &$db, $DEBUG = false) {      function constructeur($id, &$db, $DEBUG = false) {
         if (defined('REST_REQUEST')) { // $this->REST  
             logger::instance()->display_log = false;  
         }  
38          //          //
39          if (isset($GLOBALS["f"])) {          if (isset($GLOBALS["f"])) {
40              $this->f = $GLOBALS["f"];              $this->f = $GLOBALS["f"];
# Line 64  class om_dbform extends dbForm { Line 59  class om_dbform extends dbForm {
59                  include $fichier;                  include $fichier;
60              }              }
61          }          }
62    
63          // Sauvegarde des actions contextuelles supplementaires          // Sauvegarde des actions contextuelles supplementaires
64          if (isset($portlet_actions)) {          if (isset($portlet_actions)) {
65              $this->actions_sup = $portlet_actions;              $this->actions_sup = $portlet_actions;
66          }          }
67          //Si le flag $archivable est posé  
         //if(isset($archivable) and $archivable){  
         //    $this->archivable=TRUE;  
         //} else {  
         //    $this->archivable=FALSE;  
         //}  
68          // Concatenation des champs pour constitution de la clause select          // Concatenation des champs pour constitution de la clause select
69          $listeChamp = "";          $listeChamp = "";
70          foreach ($champs as $elem) {          foreach ($champs as $elem) {
# Line 97  class om_dbform extends dbForm { Line 88  class om_dbform extends dbForm {
88          } else { // Si mode modification ou suppression          } else { // Si mode modification ou suppression
89              // Clause where en fonction du type de la cle primaire              // Clause where en fonction du type de la cle primaire
90              if ($this->typeCle == "A") {              if ($this->typeCle == "A") {
91                  $sql .= " where ".$this->clePrimaire." like '".$id."' ";                  $sql .= " where ".$this->table.".".$this->clePrimaire." like '".$id."' ";
92              } else {              } else {
93                  $sql .= " where ".$this->table.".".$this->clePrimaire." = ".$id." ";                  $sql .= " where ".$this->table.".".$this->clePrimaire." = ".$id." ";
94              }              }
95          }          }
96          $sql .= " ".$selection." ";          $sql .= " ".$selection." ";
         //print '$sql:'.$sql.'   ';  
97          // Execution de la requete          // Execution de la requete
98          $res = $db->limitquery($sql, 0, 1);          $res = $db->limitquery($sql, 0, 1);
99          // Logger          // Logger
# Line 151  class om_dbform extends dbForm { Line 141  class om_dbform extends dbForm {
141                  }                  }
142              }              }
143          }          }
         if(!$this->canAccess()) {  
                             //  
             $message_class = "error";  
             $message = _("Droits insuffisants. Vous n'avez pas suffisament de ".  
                          "droits pour acceder a cette page.");  
             $this->f->addToMessage($message_class, $message);  
   
             //  
             $this->f->setFlag(NULL);  
             $this->f->display();  
   
             // Arrêt du script  
             die();  
         }  
144      }      }
145    
   
   
146      /**      /**
147       * Cette methode permet d'executer l'ajout (MODE 'insert') de l'objet dans       * Cette methode permet d'executer l'ajout (MODE 'insert') de l'objet dans
148       * la base de donnees.       * la base de donnees.
# Line 201  class om_dbform extends dbForm { Line 175  class om_dbform extends dbForm {
175              // l'enregistrement n'existe pas encore donc il n'a pas              // l'enregistrement n'existe pas encore donc il n'a pas
176              // d'identifiant              // d'identifiant
177              $this->triggerajouter("", $db, $val, $DEBUG);              $this->triggerajouter("", $db, $val, $DEBUG);
178              // Execution de la requete d'insertion des donnees de l'attribut              //Traitement des fichiers uploadé
179              // valF de l'objet dans l'attribut table de l'objet              $retTraitementFichier = $this->traitementFichierUpload();
180              $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_INSERT);              if($retTraitementFichier === true) {
181              // Si une erreur survient                  // Execution de la requete d'insertion des donnees de l'attribut
182              if (database::isError($res, true)) {                  // valF de l'objet dans l'attribut table de l'objet
183                  // Appel de la methode de recuperation des erreurs                  $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_INSERT);
184                  $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');                  // Si une erreur survient
185                    if (database::isError($res, true)) {
186                        // Appel de la methode de recuperation des erreurs
187                        $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');
188                    } else {
189                        // Log
190                        $this->addToLog(_("Requete executee"), VERBOSE_MODE);
191                        // Log
192                        $message = _("Enregistrement")." ".$this->valF[$this->clePrimaire]." ";
193                        $message .= _("de la table")." \"".$this->table."\" ";
194                        $message .= "[ ".$db->affectedRows()." ";
195                        $message .= _("enregistrement(s) ajoute(s)")." ]";
196                        $this->addToLog($message, VERBOSE_MODE);
197                        // Message de validation
198                        $this->addToMessage(_("Vos modifications ont bien ete enregistrees.")."<br/>");
199                        // Mise en place du verrou pour ne pas valider plusieurs fois
200                        // le meme formulaire
201                        $this->verrouille();
202                        // Execution du trigger 'after' specifique au MODE 'insert'
203                        // Le premier parametre est vide car en MODE 'insert'
204                        // l'enregistrement n'existe pas encore donc il n'a pas
205                        // d'identifiant
206                        $this->triggerajouterapres("", $db, $val, $DEBUG);
207                    }
208              } else {              } else {
209                  // Log                  $this->correct = false;
210                  $this->addToLog(_("Requete executee"), VERBOSE_MODE);                  $this->addToMessage($retTraitementFichier);
211                  // Log                  $this->addToMessage(_("SAISIE NON ENREGISTREE"));
                 if(isset($val[$this->clePrimaire])) // ***  
                     $id = $val[$this->clePrimaire];  
                 else  
                     $id=$this->id;  
                 $message = _("Enregistrement")."&nbsp;".$this->valF[$this->clePrimaire]."&nbsp;";  
                 $message .= _("de la table")."&nbsp;\"".$this->table."\"&nbsp;";  
                 $message .= "[&nbsp;".$db->affectedRows()."&nbsp;";  
                 $message .= _("enregistrement(s) ajoute(s)")."&nbsp;]";  
                 $this->addToLog($message, VERBOSE_MODE);  
                 // Message de validation  
                 $this->addToMessage(_("Vos modifications ont bien ete enregistrees.")."<br/>");  
                 // Mise en place du verrou pour ne pas valider plusieurs fois  
                 // le meme formulaire  
                 $this->verrouille();  
               
                 // Execution du trigger 'after' specifique au MODE 'insert'  
                 // Le premier parametre est vide car en MODE 'insert'  
                 // l'enregistrement n'existe pas encore donc il n'a pas  
                 // d'identifiant  
                 $this->triggerajouterapres("", $db, $val, $DEBUG);  
212              }              }
213          } else {          } else {
214              // Message d'echec (saut d'une ligne supplementaire avant le              // Message d'echec (saut d'une ligne supplementaire avant le
# Line 242  class om_dbform extends dbForm { Line 219  class om_dbform extends dbForm {
219          $this->addToLog("ajouter() - end", EXTRA_VERBOSE_MODE);          $this->addToLog("ajouter() - end", EXTRA_VERBOSE_MODE);
220      }      }
221    
   
     /**  
      *  
      * @param array $val  
      * @param object $db Objet de connexion DB  
      */  
     function verifierAjout($val = array(), &$db = NULL) {  
   
         // Verifier [verify]  
         // la cle primaire est obligatoire  
         // [primary key is compulsory]  
         if ($this->valF[$this->clePrimaire] == "") {  
             //  
             $this->correct = false;  
             //  
             $this->addToMessage("<br/>");  
             $this->addToMessage( _("L'\"identifiant\" est obligatoire")."&nbsp;");  
             $this->addToMessage("[&nbsp;"._($this->clePrimaire)."&nbsp;]");  
         }  
         if ($this->typeCle == "A") {  
             $sql = "select count(*) from ".DB_PREFIXE.$this->table." ";      
             $sql .= "where ".$this->clePrimaire."='".$this->valF[$this->clePrimaire]."' ";  
             $nb = $db->getone($sql);  
             $this->addToLog("verifierAjout(): db->getone(\"".$sql."\");", VERBOSE_MODE);  
             if (database::isError($nb)) {  
                 $this->erreur_db($nb->getDebugInfo(), $nb->getMessage(), '');  
             }else{  
                 if ($nb > 0) {  
                     $this->correct = false;  
                     $this->addToMessage($nb." ");  
                     $this->addToMessage( _("cle primaire existante"));  
                     $this->addToMessage(" ".$this->table."<br />");  
                 }  
             }  
         }  
     }  
   
       
222      /**      /**
223       * Cette methode permet d'executer la modification (MODE 'update') de       * Cette methode permet d'executer la modification (MODE 'update') de
224       * l'objet dans la base de donnees.       * l'objet dans la base de donnees.
# Line 289  class om_dbform extends dbForm { Line 228  class om_dbform extends dbForm {
228       * @param boolean $DEBUG Mode debug (@deprecated)       * @param boolean $DEBUG Mode debug (@deprecated)
229       */       */
230      function modifier($val = array(), &$db = NULL, $DEBUG = false) {      function modifier($val = array(), &$db = NULL, $DEBUG = false) {
   
231          // Logger          // Logger
232          $this->addToLog("modifier() - begin", EXTRA_VERBOSE_MODE);          $this->addToLog("modifier() - begin", EXTRA_VERBOSE_MODE);
233          // Recuperation de la valeur de la cle primaire de l'objet          // Recuperation de la valeur de la cle primaire de l'objet
# Line 309  class om_dbform extends dbForm { Line 247  class om_dbform extends dbForm {
247          if ($this->correct) {          if ($this->correct) {
248              // Execution du trigger 'before' specifique au MODE 'update'              // Execution du trigger 'before' specifique au MODE 'update'
249              $this->triggermodifier($id, $db, $val, $DEBUG);              $this->triggermodifier($id, $db, $val, $DEBUG);
250              // Execution de la requête de modification des donnees de l'attribut              //Traitement des fichiers uploadé
251              // valF de l'objet dans l'attribut table de l'objet              $retTraitementFichier = $this->traitementFichierUpload();
252              $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_UPDATE, $this->getCle($id));              if($retTraitementFichier === true) {
253              // Si une erreur survient                  // Execution de la requête de modification des donnees de l'attribut
254              if (database::isError($res, true)) {                  // valF de l'objet dans l'attribut table de l'objet
255                  // Appel de la methode de recuperation des erreurs                  $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_UPDATE, $this->getCle($id));
256                  $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');                  // Si une erreur survient
257              } else {                  if (database::isError($res, true)) {
258                  // Log                      // Appel de la methode de recuperation des erreurs
259                  $this->addToLog(_("Requete executee"), VERBOSE_MODE);                      $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');
                 // Log  
                 $message = _("Enregistrement")."&nbsp;".$id."&nbsp;";  
                 $message .= _("de la table")."&nbsp;\"".$this->table."\"&nbsp;";  
                 $message .= "[&nbsp;".$db->affectedRows()."&nbsp;";  
                 $message .= _("enregistrement(s) mis a jour")."&nbsp;]";  
                 $this->addToLog($message, VERBOSE_MODE);  
                 // Message de validation  
                 if ($db->affectedRows() == 0) {  
                     $this->addToMessage(_("Attention vous n'avez fait aucune modification.")."<br/>");  
260                  } else {                  } else {
261                      $this->addToMessage(_("Vos modifications ont bien ete enregistrees.")."<br/>");                      // Log
262                        $this->addToLog(_("Requete executee"), VERBOSE_MODE);
263                        // Log
264                        $message = _("Enregistrement")."&nbsp;".$id."&nbsp;";
265                        $message .= _("de la table")."&nbsp;\"".$this->table."\"&nbsp;";
266                        $message .= "[&nbsp;".$db->affectedRows()."&nbsp;";
267                        $message .= _("enregistrement(s) mis a jour")."&nbsp;]";
268                        $this->addToLog($message, VERBOSE_MODE);
269                        // Message de validation
270                        if ($db->affectedRows() == 0) {
271                            $this->addToMessage(_("Attention vous n'avez fait aucune modification.")."<br/>");
272                        } else {
273                            $this->addToMessage(_("Vos modifications ont bien ete enregistrees.")."<br/>");
274                        }
275                        // Mise en place du verrou pour ne pas valider plusieurs fois
276                        // le meme formulaire
277                        $this->verrouille();
278                        // Execution du trigger 'after' specifique au MODE 'update'
279                        $this->triggermodifierapres($id, $db, $val, $DEBUG);
280                  }                  }
281                  // Mise en place du verrou pour ne pas valider plusieurs fois              } else {
282                  // le meme formulaire                  $this->correct = false;
283                  $this->verrouille();                  $this->addToMessage($retTraitementFichier);
284                                $this->addToMessage(_("SAISIE NON ENREGISTREE"));
                 // Execution du trigger 'after' specifique au MODE 'update'  
                 $this->triggermodifierapres($id, $db, $val, $DEBUG);  
285              }              }
286          } else {          } else {
287              // Message d'echec (saut d'une ligne supplementaire avant le              // Message d'echec (saut d'une ligne supplementaire avant le
# Line 347  class om_dbform extends dbForm { Line 292  class om_dbform extends dbForm {
292          $this->addToLog("modifier() - end", EXTRA_VERBOSE_MODE);          $this->addToLog("modifier() - end", EXTRA_VERBOSE_MODE);
293      }      }
294    
   
295      /**      /**
296       * Cette methode permet d'executer la suppression (MODE 'delete') de       * Cette methode permet d'executer la suppression (MODE 'delete') de
297       * l'objet dans la base de donnees.       * l'objet dans la base de donnees.
# Line 398  class om_dbform extends dbForm { Line 342  class om_dbform extends dbForm {
342                  // Mise en place du verrou pour ne pas valider plusieurs fois                  // Mise en place du verrou pour ne pas valider plusieurs fois
343                  // le meme formulaire                  // le meme formulaire
344                  $this->verrouille();                  $this->verrouille();
               
345                  // Execution du trigger 'after' specifique au MODE 'delete'                  // Execution du trigger 'after' specifique au MODE 'delete'
346                  $this->triggersupprimerapres($id, $db, $val, $DEBUG);                  $this->triggersupprimerapres($id, $db, $val, $DEBUG);
347                    //Traitement des fichiers uploadé
348                    $retTraitementFichier = $this->traitementFichierUpload();
349                    //
350                    if($retTraitementFichier !== true) {
351                        $this->correct = false;
352                        $this->addToMessage($retTraitementFichier);
353                        $this->addToMessage(_("SUPPRESSION NON EFFECTUEE"));
354                        die();
355                    }  
356              }              }
357          } else {          } else {
358              // Message d'echec (saut d'une ligne supplementaire avant le              // Message d'echec (saut d'une ligne supplementaire avant le
# Line 411  class om_dbform extends dbForm { Line 363  class om_dbform extends dbForm {
363          $this->addToLog("supprimer() - end", EXTRA_VERBOSE_MODE);          $this->addToLog("supprimer() - end", EXTRA_VERBOSE_MODE);
364      }      }
365    
       
       
366      /**      /**
367       * Methode de verification de l'unicite d'une valeur pour chaque elements du tableau unique_key,       * Methode de verification de l'unicite d'une valeur pour chaque elements du tableau unique_key,
368       * ainsi que l'unicite de la cle multiple unique_multiple_key.       * ainsi que l'unicite de la cle multiple unique_multiple_key.
369       *       *
370       * @param objet $db Objet Base de donnees       * @param objet $db Objet Base de donnees
371       */       */
372    
373      function checkUniqueKey() {      function checkUniqueKey() {
374          $unique=true;          $unique=true;
375          //Verification des cles uniques          //Verification des cles uniques
# Line 462  class om_dbform extends dbForm { Line 413  class om_dbform extends dbForm {
413          }          }
414      }      }
415    
   
   
416      /**      /**
417       * Methode permettant de requeter la base afin de definir la validite du champ unique       * Methode permettant de requeter la base afin de definir la validite du champ unique
418       *       *
# Line 497  class om_dbform extends dbForm { Line 446  class om_dbform extends dbForm {
446          }          }
447      }      }
448    
   
   
449      /**      /**
450       * Methode de verification des contraintes not null,       * Methode de verification des contraintes not null,
451       * affiche une erreur si nul.       * affiche une erreur si nul.
# Line 508  class om_dbform extends dbForm { Line 455  class om_dbform extends dbForm {
455      function checkRequired() {      function checkRequired() {
456          foreach($this->required_field as $field) {          foreach($this->required_field as $field) {
457              //Ne test la cle primaire car n'a pas de valeur a l'ajout              //Ne test la cle primaire car n'a pas de valeur a l'ajout
458    
459              // la cle primaire est automatiquement cree              // la cle primaire est automatiquement cree
460              if ($field == $this->clePrimaire) {              if ($field == $this->clePrimaire) {
461                  continue;                  continue;
# Line 536  class om_dbform extends dbForm { Line 484  class om_dbform extends dbForm {
484              */              */
485              if ($this->getParameter('maj') == 0 and              if ($this->getParameter('maj') == 0 and
486                  (!isset($this->valF[$field]) or $this->valF[$field] == '')) {                  (!isset($this->valF[$field]) or $this->valF[$field] == '')) {
487    
488                  $error = true;                  $error = true;
489                  $this->correct = false;                  $this->correct = false;
490    
# Line 574  class om_dbform extends dbForm { Line 523  class om_dbform extends dbForm {
523              } elseif ($this->getParameter('maj') == 1              } elseif ($this->getParameter('maj') == 1
524                         and isset($this->valF[$field])                         and isset($this->valF[$field])
525                         and $this->valF[$field] == '') {                         and $this->valF[$field] == '') {
526    
527                  $error = true;                  $error = true;
528                  $this->correct = false;                  $this->correct = false;
529              }              }
# Line 603  class om_dbform extends dbForm { Line 553  class om_dbform extends dbForm {
553          if ($this->msg != "") {          if ($this->msg != "") {
554    
555              //              //
             $m = new message();  
   
             //  
556              if ($this->correct) {              if ($this->correct) {
557                  $class = "valid";                  $class = "valid";
558              } else {              } else {
559                  $class = "error";                  $class = "error";
560              }              }
561              $m->displayMessage($class, $this->msg);              $this->f->displayMessage($class, $this->msg);
562    
563          }          }
564    
# Line 636  class om_dbform extends dbForm { Line 583  class om_dbform extends dbForm {
583          }          }
584      }      }
585    
586        // }}}
587        
588        /**
589         * Cette methode vide les valeurs des erreurs du tableau errors.
590         */
591        function clearErrors() {
592            foreach (array_keys($this->errors) as $key) {
593                $this->errors[$key] = '';
594            }
595        }
596    
597      /**      /**
598         * Méthode pour convertir une date Y-m-d en d/m/Y
599         */
600        function dateDBToForm($date) {
601            if($date == "") {
602                return "";
603            }
604            $dateFormat = new DateTime($date);
605            return $dateFormat->format('d/m/Y');
606        }
607        
608        
609        function init_select(&$form = null, &$db = null, $maj, $debug, $field, $sql,
610                             $sql_by_id, $om_validite = false, $multiple = false) {
611    
612            // MODE AJOUTER et MODE MODIFIER
613            if ($maj < 2) {
614    
615                $contenu = array();
616                $res = $db->query($sql);
617                $this->addToLog("setSelect(): db->query(\"".$sql."\");", VERBOSE_MODE);
618                // verification d'une eventuelle erreur
619                if (database::isError($res)) {
620                    die($res->getMessage().$sql);
621                } else {
622                    // Initialisation du select
623                    $contenu[0][0] = '';
624                    $contenu[1][0] = _('choisir')."&nbsp;"._($field);
625                    //
626                    $k=1;
627                    while($row =& $res->fetchRow()){
628                        $contenu[0][$k] = $row[0];
629                        $contenu[1][$k] = $row[1];
630                        $k++;
631                    }
632                    // gestion des objets a date de validite
633                    if ($om_validite == true) {
634    
635                        // ajout de la valeur manquante a $contenu si necessaire
636                        if ($maj == 1) {
637    
638                            if (!in_array($this->form->val[$field], $contenu[0])) {
639    
640                                //
641                                $this->getSelectOldValue($form, $maj, $db, $contenu,
642                                                         $sql_by_id, $field);
643                            } else {
644    
645                                $empty = true;
646                                foreach ($this->form->val as $f => $value) {
647                                    if (!empty($value)) {
648                                        $empty = false;
649                                    }
650                                }
651    
652                                //
653                                if ($empty == true and
654                                    $_POST[$field] != '') {
655    
656                                    $this->getSelectOldValue($form, $maj, $db,
657                                                             $contenu, $sql_by_id,
658                                                             $field,
659                                                             $_POST[$field]);
660                                }
661                            }
662                        }
663                    }
664    
665                    //
666                    $form->setSelect($field, $contenu);
667                }
668            }
669    
670            // MODE SUPPRIMER et MODE CONSULTER
671            if ($maj == 2 or $maj == 3) {
672                // Initialisation du select
673                $contenu[0][0] = '';
674                $contenu[1][0] = '';
675    
676                if (isset($this->form->val[$field]) and
677                    !empty($this->form->val[$field]) and $sql_by_id) {
678                    //
679                    if ($multiple == true) {
680                        $val_field = "'".str_replace(",", "','",$this->form->val[$field])."'";
681                    } else {
682                        $val_field = $this->form->val[$field];
683                    }
684    
685                    // ajout de l'identifiant recherche a la requete
686                    $sql_by_id = str_replace('<idx>', $val_field, $sql_by_id);
687    
688                    // execution
689                    $result = $db->query($sql_by_id);
690                    $this->addToLog("setSelect(): db->query(".$sql_by_id.");", VERBOSE_MODE);
691                    if (database::isError($result)) {
692                       die($result->getMessage().$sql_by_id);
693                    }
694    
695                    $row =& $result->fetchRow();
696                    $contenu[0][0] = $row[0];
697                    $contenu[1][0] = $row[1];
698                    
699                    $k=1;
700                    while($row =& $result->fetchRow()){
701                        $contenu[0][$k] = $row[0];
702                        $contenu[1][$k] = $row[1];
703                        $k++;
704                    }
705                }
706    
707                $form->setSelect($field, $contenu);
708            }
709        }
710    
711        // {{{ SURCHARGES DES LIBELLES DES BOUTONS
712    
713                           /**
714         * Cette methode permet d'afficher le bouton de validation du formulaire
715       *       *
716         * @param integer $maj Mode de mise a jour
717         * @return void
718       */       */
719      function addToLog($message, $type = DEBUG_MODE) {      function bouton($maj) {
720          if (defined('REST_REQUEST')) { // dans le cas d'utilisation du REST  $this->REST  
721              logger::instance()->log("REST request class ".get_class($this)." - ".$message, $type);          if (!$this->correct) {
722          } else {              //
723              logger::instance()->log("class ".get_class($this)." - ".$message, $type);              if ($maj == 2) {
724                    $bouton = _("Supprimer");
725                } else {
726                    if ($maj == 1) {
727                        $bouton = _("Modifier");
728                    } else {
729                        $bouton = _("Ajouter");
730                    }
731                }
732                ////
733                //$bouton .= "&nbsp;"._("l'enregistrement de la table")."&nbsp;:";
734                //$bouton .= "&nbsp;'"._($this->table)."'";
735                //
736                $params = array(
737                    "value" => $bouton,
738                    "class" => "btn btn-primary",
739                );
740                //
741                $this->f->layout->display_form_button($params);
742          }          }
743    
744      }      }
745    
     // }}}  
       
746      /**      /**
747       * Cette methode vide les valeurs des erreurs du tableau errors.       *
748       */       */
749      function clearErrors() {      function boutonsousformulaire($datasubmit, $maj, $val=null) {
750          foreach (array_keys($this->errors) as $key) {  
751              $this->errors[$key] = '';          if (!$this->correct) {
752                //
753                switch ($maj) {
754                    case 0:
755                        $bouton = _("Ajouter");
756                        break;
757                    case 1:
758                        $bouton = _("Modifier");
759                        break;
760                    case 2:
761                        $bouton = _("Supprimer");
762                        break;
763                }
764                ////
765                //$bouton .= "&nbsp;"._("l'enregistrement de la table")."&nbsp;:";
766                //$bouton .= "&nbsp;'"._($this->table)."'";
767                //
768                $params = array(
769                    "class" => "",
770                    "value" => $bouton,
771                    "onclick" => "affichersform('".get_class($this)."', '$datasubmit', this.form);return false;",
772                );
773                //
774                $this->f->layout->display_form_button($params);
775          }          }
776    
777      }      }
778        // }}}
779    
780        // {{{ GESTION DES METADONNEES
781    
782        /**
783         * Liste des métadonnées communes à l'ensemble des objets de l'application
784         */
785        var $metadata_global = array(
786            "code_produit" => "getCodeProduit",
787            "groupe" => "getGroupe",
788        );
789    
790        /**
791         * Retourne le code produit défini dans le paramétrage
792         * @return string code produit (OpenADS)
793         */
794        protected function getCodeProduit() {
795            return $this->f->getParameter("code_produit");
796        }
797    
798        /**
799         * Retourne le groupe des dossiers d'instruction géré par l'application
800         * @return string groupe (ADS)
801         */
802        protected function getGroupe() {
803            return $this->f->getParameter("groupe_instruction");
804        }
805    
806        // }}}
807    
   
808  }  }
809    
810  ?>  ?>

Legend:
Removed from v.680  
changed lines
  Added in v.1913

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26