/[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 1073 by fmichon, Mon Dec 17 14:52:40 2012 UTC revision 1924 by softime, Mon May 27 18:08:53 2013 UTC
# Line 22  require_once "om_formulaire.class.php"; Line 22  require_once "om_formulaire.class.php";
22   */   */
23  class om_dbform extends dbForm {  class om_dbform extends dbForm {
24            
25    
26        /**
27         * Liste des métadonnées communes à l'ensemble des fichiers de l'application
28         */
29        var $metadata_global = array(
30                                    "code_produit" => "getCodeProduit",
31                                );
32      /**      /**
33       *       *
34       */       */
35      var $om_formulaire = "om_formulaire";      var $om_formulaire = "om_formulaire";
36    
37            /**
       
         /**  
38       * Constructeur       * Constructeur
39       *       *
40       * @param string $id       * @param string $id
# Line 64  class om_dbform extends dbForm { Line 69  class om_dbform extends dbForm {
69                  include $fichier;                  include $fichier;
70              }              }
71          }          }
72    
73          // Sauvegarde des actions contextuelles supplementaires          // Sauvegarde des actions contextuelles supplementaires
74          if (isset($portlet_actions)) {          if (isset($portlet_actions)) {
75              $this->actions_sup = $portlet_actions;              $this->actions_sup = $portlet_actions;
76          }          }
77          //Si le flag $archivable est posé  
         //if(isset($archivable) and $archivable){  
         //    $this->archivable=TRUE;  
         //} else {  
         //    $this->archivable=FALSE;  
         //}  
78          // Concatenation des champs pour constitution de la clause select          // Concatenation des champs pour constitution de la clause select
79          $listeChamp = "";          $listeChamp = "";
80          foreach ($champs as $elem) {          foreach ($champs as $elem) {
# Line 97  class om_dbform extends dbForm { Line 98  class om_dbform extends dbForm {
98          } else { // Si mode modification ou suppression          } else { // Si mode modification ou suppression
99              // Clause where en fonction du type de la cle primaire              // Clause where en fonction du type de la cle primaire
100              if ($this->typeCle == "A") {              if ($this->typeCle == "A") {
101                  $sql .= " where ".$this->clePrimaire." like '".$id."' ";                  $sql .= " where ".$this->table.".".$this->clePrimaire." like '".$id."' ";
102              } else {              } else {
103                  $sql .= " where ".$this->table.".".$this->clePrimaire." = ".$id." ";                  $sql .= " where ".$this->table.".".$this->clePrimaire." = ".$id." ";
104              }              }
105          }          }
106          $sql .= " ".$selection." ";          $sql .= " ".$selection." ";
         //print '$sql:'.$sql.'   ';  
107          // Execution de la requete          // Execution de la requete
108          $res = $db->limitquery($sql, 0, 1);          $res = $db->limitquery($sql, 0, 1);
109          // Logger          // Logger
# Line 153  class om_dbform extends dbForm { Line 153  class om_dbform extends dbForm {
153          }          }
154      }      }
155    
156        /**
157         * Retourne le code produit défini dans le paramétrage
158         * @return string code produit (OpenADS)
159         */
160        protected function getCodeProduit() {
161            return $this->f->getParameter("code_produit");
162        }
163      /**      /**
164       * 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
165       * la base de donnees.       * la base de donnees.
# Line 187  class om_dbform extends dbForm { Line 192  class om_dbform extends dbForm {
192              // l'enregistrement n'existe pas encore donc il n'a pas              // l'enregistrement n'existe pas encore donc il n'a pas
193              // d'identifiant              // d'identifiant
194              $this->triggerajouter("", $db, $val, $DEBUG);              $this->triggerajouter("", $db, $val, $DEBUG);
195              // Execution de la requete d'insertion des donnees de l'attribut              //Traitement des fichiers uploadé
196              // valF de l'objet dans l'attribut table de l'objet              $retTraitementFichier = $this->traitementFichierUpload();
197              $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_INSERT);              if($retTraitementFichier === true) {
198              // Si une erreur survient                  // Execution de la requete d'insertion des donnees de l'attribut
199              if (database::isError($res, true)) {                  // valF de l'objet dans l'attribut table de l'objet
200                  // Appel de la methode de recuperation des erreurs                  $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_INSERT);
201                  $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');                  // Si une erreur survient
202                    if (database::isError($res, true)) {
203                        // Appel de la methode de recuperation des erreurs
204                        $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');
205                    } else {
206                        // Log
207                        $this->addToLog(_("Requete executee"), VERBOSE_MODE);
208                        // Log
209                        $message = _("Enregistrement")." ".$this->valF[$this->clePrimaire]." ";
210                        $message .= _("de la table")." \"".$this->table."\" ";
211                        $message .= "[ ".$db->affectedRows()." ";
212                        $message .= _("enregistrement(s) ajoute(s)")." ]";
213                        $this->addToLog($message, VERBOSE_MODE);
214                        // Message de validation
215                        $this->addToMessage(_("Vos modifications ont bien ete enregistrees.")."<br/>");
216                        // Mise en place du verrou pour ne pas valider plusieurs fois
217                        // le meme formulaire
218                        $this->verrouille();
219                        // Execution du trigger 'after' specifique au MODE 'insert'
220                        // Le premier parametre est vide car en MODE 'insert'
221                        // l'enregistrement n'existe pas encore donc il n'a pas
222                        // d'identifiant
223                        $this->triggerajouterapres("", $db, $val, $DEBUG);
224                    }
225              } else {              } else {
226                  // Log                  $this->correct = false;
227                  $this->addToLog(_("Requete executee"), VERBOSE_MODE);                  $this->addToMessage($retTraitementFichier);
228                  // Log                  $this->addToMessage(_("SAISIE NON ENREGISTREE"));
                 $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);  
229              }              }
230          } else {          } else {
231              // Message d'echec (saut d'une ligne supplementaire avant le              // Message d'echec (saut d'une ligne supplementaire avant le
# Line 224  class om_dbform extends dbForm { Line 236  class om_dbform extends dbForm {
236          $this->addToLog("ajouter() - end", EXTRA_VERBOSE_MODE);          $this->addToLog("ajouter() - end", EXTRA_VERBOSE_MODE);
237      }      }
238    
   
     /**  
      *  
      * @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 />");  
                 }  
             }  
         }  
     }  
   
       
239      /**      /**
240       * Cette methode permet d'executer la modification (MODE 'update') de       * Cette methode permet d'executer la modification (MODE 'update') de
241       * l'objet dans la base de donnees.       * l'objet dans la base de donnees.
# Line 271  class om_dbform extends dbForm { Line 245  class om_dbform extends dbForm {
245       * @param boolean $DEBUG Mode debug (@deprecated)       * @param boolean $DEBUG Mode debug (@deprecated)
246       */       */
247      function modifier($val = array(), &$db = NULL, $DEBUG = false) {      function modifier($val = array(), &$db = NULL, $DEBUG = false) {
   
248          // Logger          // Logger
249          $this->addToLog("modifier() - begin", EXTRA_VERBOSE_MODE);          $this->addToLog("modifier() - begin", EXTRA_VERBOSE_MODE);
250          // Recuperation de la valeur de la cle primaire de l'objet          // Recuperation de la valeur de la cle primaire de l'objet
# Line 291  class om_dbform extends dbForm { Line 264  class om_dbform extends dbForm {
264          if ($this->correct) {          if ($this->correct) {
265              // Execution du trigger 'before' specifique au MODE 'update'              // Execution du trigger 'before' specifique au MODE 'update'
266              $this->triggermodifier($id, $db, $val, $DEBUG);              $this->triggermodifier($id, $db, $val, $DEBUG);
267              // Execution de la requête de modification des donnees de l'attribut              //Traitement des fichiers uploadé
268              // valF de l'objet dans l'attribut table de l'objet              $retTraitementFichier = $this->traitementFichierUpload();
269              $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_UPDATE, $this->getCle($id));              if($retTraitementFichier === true) {
270              // Si une erreur survient                  // Execution de la requête de modification des donnees de l'attribut
271              if (database::isError($res, true)) {                  // valF de l'objet dans l'attribut table de l'objet
272                  // Appel de la methode de recuperation des erreurs                  $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_UPDATE, $this->getCle($id));
273                  $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');                  // Si une erreur survient
274              } else {                  if (database::isError($res, true)) {
275                  // Log                      // Appel de la methode de recuperation des erreurs
276                  $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/>");  
277                  } else {                  } else {
278                      $this->addToMessage(_("Vos modifications ont bien ete enregistrees.")."<br/>");                      // Log
279                        $this->addToLog(_("Requete executee"), VERBOSE_MODE);
280                        // Log
281                        $message = _("Enregistrement")."&nbsp;".$id."&nbsp;";
282                        $message .= _("de la table")."&nbsp;\"".$this->table."\"&nbsp;";
283                        $message .= "[&nbsp;".$db->affectedRows()."&nbsp;";
284                        $message .= _("enregistrement(s) mis a jour")."&nbsp;]";
285                        $this->addToLog($message, VERBOSE_MODE);
286                        // Message de validation
287                        if ($db->affectedRows() == 0) {
288                            $this->addToMessage(_("Attention vous n'avez fait aucune modification.")."<br/>");
289                        } else {
290                            $this->addToMessage(_("Vos modifications ont bien ete enregistrees.")."<br/>");
291                        }
292                        // Mise en place du verrou pour ne pas valider plusieurs fois
293                        // le meme formulaire
294                        $this->verrouille();
295                        // Execution du trigger 'after' specifique au MODE 'update'
296                        $this->triggermodifierapres($id, $db, $val, $DEBUG);
297                  }                  }
298                  // Mise en place du verrou pour ne pas valider plusieurs fois              } else {
299                  // le meme formulaire                  $this->correct = false;
300                  $this->verrouille();                  $this->addToMessage($retTraitementFichier);
301                                $this->addToMessage(_("SAISIE NON ENREGISTREE"));
                 // Execution du trigger 'after' specifique au MODE 'update'  
                 $this->triggermodifierapres($id, $db, $val, $DEBUG);  
302              }              }
303          } else {          } else {
304              // Message d'echec (saut d'une ligne supplementaire avant le              // Message d'echec (saut d'une ligne supplementaire avant le
# Line 329  class om_dbform extends dbForm { Line 309  class om_dbform extends dbForm {
309          $this->addToLog("modifier() - end", EXTRA_VERBOSE_MODE);          $this->addToLog("modifier() - end", EXTRA_VERBOSE_MODE);
310      }      }
311    
   
312      /**      /**
313       * Cette methode permet d'executer la suppression (MODE 'delete') de       * Cette methode permet d'executer la suppression (MODE 'delete') de
314       * l'objet dans la base de donnees.       * l'objet dans la base de donnees.
# Line 357  class om_dbform extends dbForm { Line 336  class om_dbform extends dbForm {
336          if ($this->correct) {          if ($this->correct) {
337              // Execution du trigger 'before' specifique au MODE 'delete'              // Execution du trigger 'before' specifique au MODE 'delete'
338              $this->triggersupprimer($id, $db, $val, $DEBUG);              $this->triggersupprimer($id, $db, $val, $DEBUG);
339              // Construction de la requete de suppression de l'objet dans              //Traitement des fichiers uploadé
340              // l'attribut table de l'objet              $retTraitementFichier = $this->traitementFichierUpload();
341              $sql = "delete from ".DB_PREFIXE.$this->table." where ".$this->getCle($id);              if($retTraitementFichier === true) {
342              // Execution de la requete de suppression de l'objet                  // Construction de la requete de suppression de l'objet dans
343              $res = $db->query($sql);                  // l'attribut table de l'objet
344              // Logger                  $sql = "delete from ".DB_PREFIXE.$this->table." where ".$this->getCle($id);
345              $this->addToLog("supprimer(): db->query(\"".$sql."\");", VERBOSE_MODE);                  // Execution de la requete de suppression de l'objet
346              // Si une erreur survient                  $res = $db->query($sql);
347              if (database::isError($res, true)) {                  // Logger
348                  // Appel de la methode de recuperation des erreurs                  $this->addToLog("supprimer(): db->query(\"".$sql."\");", VERBOSE_MODE);
349                  $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');                  // Si une erreur survient
350                    if (database::isError($res, true)) {
351                        // Appel de la methode de recuperation des erreurs
352                        $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');
353                    } else {
354                        // Log
355                        $message = _("Enregistrement")."&nbsp;".$id."&nbsp;";
356                        $message .= _("de la table")."&nbsp;\"".$this->table."\"&nbsp;";
357                        $message .= "[&nbsp;".$db->affectedRows()."&nbsp;";
358                        $message .= _("enregistrement(s) supprime(s)")."&nbsp;]";
359                        $this->addToLog($message, VERBOSE_MODE);
360                        // Message de validation
361                        $this->addToMessage(_("La suppression a ete correctement effectuee.")."<br/>");
362                        // Mise en place du verrou pour ne pas valider plusieurs fois
363                        // le meme formulaire
364                        $this->verrouille();
365                        // Execution du trigger 'after' specifique au MODE 'delete'
366                        $this->triggersupprimerapres($id, $db, $val, $DEBUG);
367                    }
368              } else {              } else {
369                  // Log                  $this->correct = false;
370                  $message = _("Enregistrement")."&nbsp;".$id."&nbsp;";                  $this->addToMessage($retTraitementFichier);
371                  $message .= _("de la table")."&nbsp;\"".$this->table."\"&nbsp;";                  $this->addToMessage(_("SAISIE NON ENREGISTREE"));
                 $message .= "[&nbsp;".$db->affectedRows()."&nbsp;";  
                 $message .= _("enregistrement(s) supprime(s)")."&nbsp;]";  
                 $this->addToLog($message, VERBOSE_MODE);  
                 // Message de validation  
                 $this->addToMessage(_("La suppression a ete correctement effectuee.")."<br/>");  
                 // Mise en place du verrou pour ne pas valider plusieurs fois  
                 // le meme formulaire  
                 $this->verrouille();  
               
                 // Execution du trigger 'after' specifique au MODE 'delete'  
                 $this->triggersupprimerapres($id, $db, $val, $DEBUG);  
372              }              }
373          } else {          } else {
374              // Message d'echec (saut d'une ligne supplementaire avant le              // Message d'echec (saut d'une ligne supplementaire avant le
# Line 399  class om_dbform extends dbForm { Line 385  class om_dbform extends dbForm {
385       *       *
386       * @param objet $db Objet Base de donnees       * @param objet $db Objet Base de donnees
387       */       */
388    
389      function checkUniqueKey() {      function checkUniqueKey() {
390          $unique=true;          $unique=true;
391          //Verification des cles uniques          //Verification des cles uniques
# Line 442  class om_dbform extends dbForm { Line 429  class om_dbform extends dbForm {
429          }          }
430      }      }
431    
   
   
432      /**      /**
433       * 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
434       *       *
# Line 451  class om_dbform extends dbForm { Line 436  class om_dbform extends dbForm {
436       * @param string $value valeur à inserer dans la colonne       * @param string $value valeur à inserer dans la colonne
437       */       */
438      function isUnique($champ,$value) {      function isUnique($champ,$value) {
439          //Test sur un groupe de champs                  //Test sur un groupe de champs
440          if(is_array($champ) and is_array($value)) {          if(is_array($champ) and is_array($value)) {
441              $sql = 'SELECT count(*) FROM '.DB_PREFIXE.$this->table." WHERE ".implode(" = ? AND ",$champ)." = ?";              $sql = 'SELECT count(*) FROM '.DB_PREFIXE.$this->table." WHERE ".implode(" = ? AND ",$champ)." = ?";
442          } else {          } else {
443          //Test sur un champ                  //Test sur un champ
444              $sql = 'SELECT count(*) FROM '.DB_PREFIXE.$this->table." WHERE ".$champ." = ?";              $sql = 'SELECT count(*) FROM '.DB_PREFIXE.$this->table." WHERE ".$champ." = ?";
445          }          }
446          if($this->getParameter('maj')) {          if($this->getParameter('maj')) {
# Line 477  class om_dbform extends dbForm { Line 462  class om_dbform extends dbForm {
462          }          }
463      }      }
464    
   
   
465      /**      /**
466       * Methode de verification des contraintes not null,       * Methode de verification des contraintes not null,
467       * affiche une erreur si nul.       * affiche une erreur si nul.
# Line 488  class om_dbform extends dbForm { Line 471  class om_dbform extends dbForm {
471      function checkRequired() {      function checkRequired() {
472          foreach($this->required_field as $field) {          foreach($this->required_field as $field) {
473              //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
474    
475              // la cle primaire est automatiquement cree              // la cle primaire est automatiquement cree
476              if ($field == $this->clePrimaire) {              if ($field == $this->clePrimaire) {
477                  continue;                  continue;
# Line 516  class om_dbform extends dbForm { Line 500  class om_dbform extends dbForm {
500              */              */
501              if ($this->getParameter('maj') == 0 and              if ($this->getParameter('maj') == 0 and
502                  (!isset($this->valF[$field]) or $this->valF[$field] == '')) {                  (!isset($this->valF[$field]) or $this->valF[$field] == '')) {
503    
504                  $error = true;                  $error = true;
505                  $this->correct = false;                  $this->correct = false;
506    
# Line 554  class om_dbform extends dbForm { Line 539  class om_dbform extends dbForm {
539              } elseif ($this->getParameter('maj') == 1              } elseif ($this->getParameter('maj') == 1
540                         and isset($this->valF[$field])                         and isset($this->valF[$field])
541                         and $this->valF[$field] == '') {                         and $this->valF[$field] == '') {
542    
543                  $error = true;                  $error = true;
544                  $this->correct = false;                  $this->correct = false;
545              }              }
# Line 640  class om_dbform extends dbForm { Line 626  class om_dbform extends dbForm {
626       * Méthode pour convertir une date Y-m-d en d/m/Y       * Méthode pour convertir une date Y-m-d en d/m/Y
627       */       */
628      function dateDBToForm($date) {      function dateDBToForm($date) {
629          $date = new DateTime($this->valF['date_demande']);          if($date == "") {
630          return $date->format('d/m/Y');              return "";
631            }
632            $dateFormat = new DateTime($date);
633            return $dateFormat->format('d/m/Y');
634      }      }
635            
636        
637        function init_select(&$form = null, &$db = null, $maj, $debug, $field, $sql,
638                             $sql_by_id, $om_validite = false, $multiple = false) {
639    
640            // MODE AJOUTER et MODE MODIFIER
641            if ($maj < 2) {
642    
643                $contenu = array();
644                $res = $db->query($sql);
645                $this->addToLog("setSelect(): db->query(\"".$sql."\");", VERBOSE_MODE);
646                // verification d'une eventuelle erreur
647                if (database::isError($res)) {
648                    die($res->getMessage().$sql);
649                } else {
650                    // Initialisation du select
651                    $contenu[0][0] = '';
652                    $contenu[1][0] = _('choisir')."&nbsp;"._($field);
653                    //
654                    $k=1;
655                    while($row =& $res->fetchRow()){
656                        $contenu[0][$k] = $row[0];
657                        $contenu[1][$k] = $row[1];
658                        $k++;
659                    }
660                    // gestion des objets a date de validite
661                    if ($om_validite == true) {
662    
663                        // ajout de la valeur manquante a $contenu si necessaire
664                        if ($maj == 1) {
665    
666                            if (!in_array($this->form->val[$field], $contenu[0])) {
667    
668                                //
669                                $this->getSelectOldValue($form, $maj, $db, $contenu,
670                                                         $sql_by_id, $field);
671                            } else {
672    
673                                $empty = true;
674                                foreach ($this->form->val as $f => $value) {
675                                    if (!empty($value)) {
676                                        $empty = false;
677                                    }
678                                }
679    
680                                //
681                                if ($empty == true and
682                                    $_POST[$field] != '') {
683    
684                                    $this->getSelectOldValue($form, $maj, $db,
685                                                             $contenu, $sql_by_id,
686                                                             $field,
687                                                             $_POST[$field]);
688                                }
689                            }
690                        }
691                    }
692    
693                    //
694                    $form->setSelect($field, $contenu);
695                }
696            }
697    
698            // MODE SUPPRIMER et MODE CONSULTER
699            if ($maj == 2 or $maj == 3) {
700                // Initialisation du select
701                $contenu[0][0] = '';
702                $contenu[1][0] = '';
703    
704                if (isset($this->form->val[$field]) and
705                    !empty($this->form->val[$field]) and $sql_by_id) {
706                    //
707                    if ($multiple == true) {
708                        $val_field = "'".str_replace(",", "','",$this->form->val[$field])."'";
709                    } else {
710                        $val_field = $this->form->val[$field];
711                    }
712    
713                    // ajout de l'identifiant recherche a la requete
714                    $sql_by_id = str_replace('<idx>', $val_field, $sql_by_id);
715    
716                    // execution
717                    $result = $db->query($sql_by_id);
718                    $this->addToLog("setSelect(): db->query(".$sql_by_id.");", VERBOSE_MODE);
719                    if (database::isError($result)) {
720                       die($result->getMessage().$sql_by_id);
721                    }
722    
723                    $row =& $result->fetchRow();
724                    $contenu[0][0] = $row[0];
725                    $contenu[1][0] = $row[1];
726                    
727                    $k=1;
728                    while($row =& $result->fetchRow()){
729                        $contenu[0][$k] = $row[0];
730                        $contenu[1][$k] = $row[1];
731                        $k++;
732                    }
733                }
734    
735                $form->setSelect($field, $contenu);
736            }
737        }
738    
739        // {{{ SURCHARGES DES LIBELLES DES BOUTONS
740    
741                           /**
742         * Cette methode permet d'afficher le bouton de validation du formulaire
743         *
744         * @param integer $maj Mode de mise a jour
745         * @return void
746         */
747        function bouton($maj) {
748    
749            if (!$this->correct) {
750                //
751                if ($maj == 2) {
752                    $bouton = _("Supprimer");
753                } else {
754                    if ($maj == 1) {
755                        $bouton = _("Modifier");
756                    } else {
757                        $bouton = _("Ajouter");
758                    }
759                }
760                ////
761                //$bouton .= "&nbsp;"._("l'enregistrement de la table")."&nbsp;:";
762                //$bouton .= "&nbsp;'"._($this->table)."'";
763                //
764                $params = array(
765                    "value" => $bouton,
766                    "class" => "btn btn-primary",
767                );
768                //
769                $this->f->layout->display_form_button($params);
770            }
771    
772        }
773    
774        /**
775         *
776         */
777        function boutonsousformulaire($datasubmit, $maj, $val=null) {
778    
779            if (!$this->correct) {
780                //
781                switch ($maj) {
782                    case 0:
783                        $bouton = _("Ajouter");
784                        break;
785                    case 1:
786                        $bouton = _("Modifier");
787                        break;
788                    case 2:
789                        $bouton = _("Supprimer");
790                        break;
791                }
792                ////
793                //$bouton .= "&nbsp;"._("l'enregistrement de la table")."&nbsp;:";
794                //$bouton .= "&nbsp;'"._($this->table)."'";
795                //
796                $params = array(
797                    "class" => "",
798                    "value" => $bouton,
799                    "onclick" => "affichersform('".get_class($this)."', '$datasubmit', this.form);return false;",
800                );
801                //
802                $this->f->layout->display_form_button($params);
803            }
804    
805        }
806        // }}}
807  }  }
808    
809  ?>  ?>

Legend:
Removed from v.1073  
changed lines
  Added in v.1924

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26