/[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 1548 by fmichon, Thu Mar 21 17:53:44 2013 UTC revision 1900 by nhaye, Fri May 24 13:23: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                                    "groupe" => "getGroupe",
32                                );
33      /**      /**
34       *       *
35       */       */
# Line 147  class om_dbform extends dbForm { Line 155  class om_dbform extends dbForm {
155      }      }
156    
157      /**      /**
158         * Retourne le code produit défini dans le paramétrage
159         * @return string code produit (OpenADS)
160         */
161        protected function getCodeProduit() {
162            return $this->f->getParameter("code_produit");
163        }
164        /**
165         * Retourne le groupe des dossiers d'instruction géré par l'application
166         * @return string groupe (ADS)
167         */
168        protected function getGroupe() {
169            return $this->f->getParameter("groupe_instruction");
170        }
171        /**
172       * 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
173       * la base de donnees.       * la base de donnees.
174       *       *
# Line 178  class om_dbform extends dbForm { Line 200  class om_dbform extends dbForm {
200              // l'enregistrement n'existe pas encore donc il n'a pas              // l'enregistrement n'existe pas encore donc il n'a pas
201              // d'identifiant              // d'identifiant
202              $this->triggerajouter("", $db, $val, $DEBUG);              $this->triggerajouter("", $db, $val, $DEBUG);
203              // Execution de la requete d'insertion des donnees de l'attribut              //Traitement des fichiers uploadé
204              // valF de l'objet dans l'attribut table de l'objet              $retTraitementFichier = $this->traitementFichierUpload();
205              $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_INSERT);              if($retTraitementFichier === true) {
206              // Si une erreur survient                  // Execution de la requete d'insertion des donnees de l'attribut
207              if (database::isError($res, true)) {                  // valF de l'objet dans l'attribut table de l'objet
208                  // Appel de la methode de recuperation des erreurs                  $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_INSERT);
209                  $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');                  // Si une erreur survient
210                    if (database::isError($res, true)) {
211                        // Appel de la methode de recuperation des erreurs
212                        $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');
213                    } else {
214                        // Log
215                        $this->addToLog(_("Requete executee"), VERBOSE_MODE);
216                        // Log
217                        $message = _("Enregistrement")." ".$this->valF[$this->clePrimaire]." ";
218                        $message .= _("de la table")." \"".$this->table."\" ";
219                        $message .= "[ ".$db->affectedRows()." ";
220                        $message .= _("enregistrement(s) ajoute(s)")." ]";
221                        $this->addToLog($message, VERBOSE_MODE);
222                        // Message de validation
223                        $this->addToMessage(_("Vos modifications ont bien ete enregistrees.")."<br/>");
224                        // Mise en place du verrou pour ne pas valider plusieurs fois
225                        // le meme formulaire
226                        $this->verrouille();
227                        // Execution du trigger 'after' specifique au MODE 'insert'
228                        // Le premier parametre est vide car en MODE 'insert'
229                        // l'enregistrement n'existe pas encore donc il n'a pas
230                        // d'identifiant
231                        $this->triggerajouterapres("", $db, $val, $DEBUG);
232                    }
233              } else {              } else {
234                  // Log                  $this->correct = false;
235                  $this->addToLog(_("Requete executee"), VERBOSE_MODE);                  $this->addToMessage($retTraitementFichier);
236                  // 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);  
237              }              }
238          } else {          } else {
239              // 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 272  class om_dbform extends dbForm {
272          if ($this->correct) {          if ($this->correct) {
273              // Execution du trigger 'before' specifique au MODE 'update'              // Execution du trigger 'before' specifique au MODE 'update'
274              $this->triggermodifier($id, $db, $val, $DEBUG);              $this->triggermodifier($id, $db, $val, $DEBUG);
275              // Execution de la requête de modification des donnees de l'attribut              //Traitement des fichiers uploadé
276              // valF de l'objet dans l'attribut table de l'objet              $retTraitementFichier = $this->traitementFichierUpload();
277              $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_UPDATE, $this->getCle($id));              if($retTraitementFichier === true) {
278              // Si une erreur survient                  // Execution de la requête de modification des donnees de l'attribut
279              if (database::isError($res, true)) {                  // valF de l'objet dans l'attribut table de l'objet
280                  // Appel de la methode de recuperation des erreurs                  $res = $db->autoExecute(DB_PREFIXE.$this->table, $this->valF, DB_AUTOQUERY_UPDATE, $this->getCle($id));
281                  $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');                  // Si une erreur survient
282              } else {                  if (database::isError($res, true)) {
283                  // Log                      // Appel de la methode de recuperation des erreurs
284                  $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/>");  
285                  } else {                  } else {
286                      $this->addToMessage(_("Vos modifications ont bien ete enregistrees.")."<br/>");                      // Log
287                        $this->addToLog(_("Requete executee"), VERBOSE_MODE);
288                        // Log
289                        $message = _("Enregistrement")."&nbsp;".$id."&nbsp;";
290                        $message .= _("de la table")."&nbsp;\"".$this->table."\"&nbsp;";
291                        $message .= "[&nbsp;".$db->affectedRows()."&nbsp;";
292                        $message .= _("enregistrement(s) mis a jour")."&nbsp;]";
293                        $this->addToLog($message, VERBOSE_MODE);
294                        // Message de validation
295                        if ($db->affectedRows() == 0) {
296                            $this->addToMessage(_("Attention vous n'avez fait aucune modification.")."<br/>");
297                        } else {
298                            $this->addToMessage(_("Vos modifications ont bien ete enregistrees.")."<br/>");
299                        }
300                        // Mise en place du verrou pour ne pas valider plusieurs fois
301                        // le meme formulaire
302                        $this->verrouille();
303                        // Execution du trigger 'after' specifique au MODE 'update'
304                        $this->triggermodifierapres($id, $db, $val, $DEBUG);
305                  }                  }
306                  // Mise en place du verrou pour ne pas valider plusieurs fois              } else {
307                  // le meme formulaire                  $this->correct = false;
308                  $this->verrouille();                  $this->addToMessage($retTraitementFichier);
309                  // Execution du trigger 'after' specifique au MODE 'update'                  $this->addToMessage(_("SAISIE NON ENREGISTREE"));
                 $this->triggermodifierapres($id, $db, $val, $DEBUG);  
310              }              }
311          } else {          } else {
312              // Message d'echec (saut d'une ligne supplementaire avant le              // Message d'echec (saut d'une ligne supplementaire avant le
# Line 306  class om_dbform extends dbForm { Line 344  class om_dbform extends dbForm {
344          if ($this->correct) {          if ($this->correct) {
345              // Execution du trigger 'before' specifique au MODE 'delete'              // Execution du trigger 'before' specifique au MODE 'delete'
346              $this->triggersupprimer($id, $db, $val, $DEBUG);              $this->triggersupprimer($id, $db, $val, $DEBUG);
347              // Construction de la requete de suppression de l'objet dans              //Traitement des fichiers uploadé
348              // l'attribut table de l'objet              $retTraitementFichier = $this->traitementFichierUpload();
349              $sql = "delete from ".DB_PREFIXE.$this->table." where ".$this->getCle($id);              if($retTraitementFichier === true) {
350              // Execution de la requete de suppression de l'objet                  // Construction de la requete de suppression de l'objet dans
351              $res = $db->query($sql);                  // l'attribut table de l'objet
352              // Logger                  $sql = "delete from ".DB_PREFIXE.$this->table." where ".$this->getCle($id);
353              $this->addToLog("supprimer(): db->query(\"".$sql."\");", VERBOSE_MODE);                  // Execution de la requete de suppression de l'objet
354              // Si une erreur survient                  $res = $db->query($sql);
355              if (database::isError($res, true)) {                  // Logger
356                  // Appel de la methode de recuperation des erreurs                  $this->addToLog("supprimer(): db->query(\"".$sql."\");", VERBOSE_MODE);
357                  $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');                  // Si une erreur survient
358                    if (database::isError($res, true)) {
359                        // Appel de la methode de recuperation des erreurs
360                        $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');
361                    } else {
362                        // Log
363                        $message = _("Enregistrement")."&nbsp;".$id."&nbsp;";
364                        $message .= _("de la table")."&nbsp;\"".$this->table."\"&nbsp;";
365                        $message .= "[&nbsp;".$db->affectedRows()."&nbsp;";
366                        $message .= _("enregistrement(s) supprime(s)")."&nbsp;]";
367                        $this->addToLog($message, VERBOSE_MODE);
368                        // Message de validation
369                        $this->addToMessage(_("La suppression a ete correctement effectuee.")."<br/>");
370                        // Mise en place du verrou pour ne pas valider plusieurs fois
371                        // le meme formulaire
372                        $this->verrouille();
373                        // Execution du trigger 'after' specifique au MODE 'delete'
374                        $this->triggersupprimerapres($id, $db, $val, $DEBUG);
375                    }
376              } else {              } else {
377                  // Log                  $this->correct = false;
378                  $message = _("Enregistrement")."&nbsp;".$id."&nbsp;";                  $this->addToMessage($retTraitementFichier);
379                  $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);  
380              }              }
381          } else {          } else {
382              // Message d'echec (saut d'une ligne supplementaire avant le              // Message d'echec (saut d'une ligne supplementaire avant le

Legend:
Removed from v.1548  
changed lines
  Added in v.1900

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26