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

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

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

revision 1301 by vpihour, Fri Mar 1 16:38:42 2013 UTC revision 2109 by vpihour, Mon Jul 22 14:13:01 2013 UTC
# Line 20  class donnees_techniques extends donnees Line 20  class donnees_techniques extends donnees
20              $sql = "SELECT cerfa_lot FROM ".DB_PREFIXE."dossier_instruction_type              $sql = "SELECT cerfa_lot FROM ".DB_PREFIXE."dossier_instruction_type
21                  JOIN ".DB_PREFIXE."dossier ON dossier.dossier_instruction_type=                  JOIN ".DB_PREFIXE."dossier ON dossier.dossier_instruction_type=
22                                  dossier_instruction_type.dossier_instruction_type                                  dossier_instruction_type.dossier_instruction_type
23                  JOIN ".DB_PREFIXE."lien_dossier_lot ON dossier.dossier=lien_dossier_lot.dossier                  JOIN ".DB_PREFIXE."lot ON dossier.dossier=lot.dossier
24                  WHERE lien_dossier_lot.lot = ".$this->getParameter("idxformulaire");                  WHERE lot.lot = ".$this->getParameter("idxformulaire");
25    
26          } else {          } else {
27              $sql = "SELECT cerfa  FROM ".DB_PREFIXE."dossier_instruction_type              $sql = "SELECT cerfa  FROM ".DB_PREFIXE."dossier_instruction_type
# Line 32  class donnees_techniques extends donnees Line 32  class donnees_techniques extends donnees
32          }          }
33    
34          $cerfa = $this->db->getOne($sql);          $cerfa = $this->db->getOne($sql);
35          $this->addToLog("db->getone(\"".$sql."\");", VERBOSE_MODE);          $this->f->addToLog("getCerfa() : db->getone(\"".$sql."\");", VERBOSE_MODE);
36          $this->f->isDatabaseError($cerfa);          if ( database::isError($cerfa)){
37                die();
38            }
39    
40          // Si le cerfa est défini dans dossier on instancie le cerfa correspondant          // Si le cerfa est défini dans dossier on instancie le cerfa correspondant
41          if(!empty($cerfa)) {          if(!empty($cerfa)) {
42              require_once ("../obj/cerfa.class.php");              require_once ("../obj/cerfa.class.php");
43              $this->cerfa = new cerfa($cerfa, $this->db, DEBUG);              $this->cerfa = new cerfa($cerfa, $this->db, DEBUG);
44                //On vérifie que le cerfa est en cours de validité
45                $date_debut = new DateTime($this->cerfa->getVal("om_validite_debut"));
46                $date_debut = $date_debut->format('Ymd');
47                
48                $date_fin = new DateTime($this->cerfa->getVal("om_validite_fin"));
49                $date_fin = $date_fin->format('Ymd');
50                
51                $date_aujourdhui = date('Ymd');
52                
53                // Teste si le cerfa est en cours de validité
54                $is_encours = true;
55                if ( $date_aujourdhui < $date_debut || $date_aujourdhui > $date_fin ){
56                    $is_encours = false;
57                }
58                
59                //Si le cerfa n'est pas en cours de validité, on affiche pas le formulaire
60                //et on affiche un message d'erreur
61                if ( $is_encours == false){
62                    $this->f->displayMessage("error", _("Aucun cerfa en cours de validite lie a ce dossier"));
63                    die();
64                }
65          } else {          } else {
66              $this->f->displayMessage("error", _("Aucun cerfa lié à ce type de dossier"));              $this->f->displayMessage("error", _("Aucun cerfa lie a ce type de dossier"));
67              die();              die();
68          }          }
69      }      }
# Line 85  class donnees_techniques extends donnees Line 108  class donnees_techniques extends donnees
108          $this->setTabSelect($tab_tax_su_tot, "tab_tax_su_tot");          $this->setTabSelect($tab_tax_su_tot, "tab_tax_su_tot");
109          $this->setTabSelect($tab_tax_su_tot, "tab_tax_su_non_habit_surf");          $this->setTabSelect($tab_tax_su_tot, "tab_tax_su_non_habit_surf");
110          $this->setTabSelect($tab_tax_am, "tab_tax_am");          $this->setTabSelect($tab_tax_am, "tab_tax_am");
111            
112            // Définition des champs Oui/Non/Je ne sais pas
113            $value[] = array("nesaispas","oui","non");
114            $value[] = array(_("Je ne sais pas"),_("Oui"),_("Non"));
115            
116            $form->setSelect('terr_juri_titul',$value);
117            $form->setSelect('terr_juri_lot',$value);
118            $form->setSelect('terr_juri_zac',$value);
119            $form->setSelect('terr_juri_afu',$value);
120            $form->setSelect('terr_juri_pup',$value);
121            $form->setSelect('terr_juri_oin',$value);
122            $form->setSelect('terr_juri_desc',$value);
123            $form->setSelect('terr_div_surf_etab',$value);
124            $form->setSelect('terr_div_surf_av_div',$value);
125    
126      }      }
127    
# Line 100  class donnees_techniques extends donnees Line 136  class donnees_techniques extends donnees
136              $this->getCerfa();              $this->getCerfa();
137          }          }
138    
139            $id_tab_surface = $this->cerfa->getVal("tab_surface");
140            $id_tab_tax_su_princ = $this->cerfa->getVal("tab_tax_su_princ");
141            $id_tab_tax_su_heber = $this->cerfa->getVal("tab_tax_su_heber");
142            $id_tab_tax_su_secon = $this->cerfa->getVal("tab_tax_su_secon");
143            $id_tab_tax_su_tot = $this->cerfa->getVal("tab_tax_su_tot");
144            $id_tab_tax_su_non_habit_surf = $this->cerfa->getVal("tab_tax_su_non_habit_surf");
145            $id_tab_tax_am = $this->cerfa->getVal("tab_tax_am");
146    
147          //Suppression des champs de tableaux          //Suppression des champs de tableaux
148          foreach($tab_surface[$this->cerfa->getVal("tab_surface")]['values'] as $champ) {          if(!empty($id_tab_surface)) {
149              unset($this->champs[array_search($champ,$this->champs)]);              foreach($tab_surface[$this->cerfa->getVal("tab_surface")]['values'] as $champ) {
150                    unset($this->champs[array_search($champ,$this->champs)]);
151                }
152            }
153            if(!empty($id_tab_tax_su_princ)) {
154                foreach($tab_tax_su_princ[$this->cerfa->getVal("tab_tax_su_princ")]['values'] as $champ) {
155                    unset($this->champs[array_search($champ,$this->champs)]);
156                }
157            }
158            if(!empty($id_tab_tax_su_heber)) {
159                foreach($tab_tax_su_heber[$this->cerfa->getVal("tab_tax_su_heber")]['values'] as $champ) {
160                    unset($this->champs[array_search($champ,$this->champs)]);
161                }
162            }
163            if(!empty($id_tab_tax_su_secon)) {
164                foreach($tab_tax_su_secon[$this->cerfa->getVal("tab_tax_su_secon")]['values'] as $champ) {
165                    unset($this->champs[array_search($champ,$this->champs)]);
166                }
167            }
168            if(!empty($id_tab_tax_su_tot)) {
169                foreach($tab_tax_su_tot[$this->cerfa->getVal("tab_tax_su_tot")]['values'] as $champ) {
170                    unset($this->champs[array_search($champ,$this->champs)]);
171                }
172            }
173            if(!empty($id_tab_tax_su_non_habit_surf)) {
174                foreach($tab_tax_su_non_habit_surf[$this->cerfa->getVal("tab_tax_su_non_habit_surf")]['values'] as $champ) {
175                    unset($this->champs[array_search($champ,$this->champs)]);
176                }
177            }
178            if(!empty($id_tab_tax_am)) {
179                foreach($tab_tax_am[$this->cerfa->getVal("tab_tax_am")]['values'] as $champ) {
180                    unset($this->champs[array_search($champ,$this->champs)]);
181                }
182          }          }
183          // Renumérotation          // Renumérotation
184          $this->champs = array_values($this->champs);          $this->champs = array_values($this->champs);
185            
186            $idxformulaire = $this->getParameter("idxformulaire");
187            //Si le dossier d'instruction auquel sont rattachées les données techniques
188            //est cloturé, on affiche pas le lien de modification du portlet
189            if ( $idxformulaire != '' ){
190                    
191                //On récuppère le statut du dossier d'instruction        
192                $statut = $this->f->getStatutDossier($idxformulaire);
193                if ( $this->f->isUserInstructeur() && $statut == "cloture" ){
194                    
195                    //On cache le lien de modification
196                    $this->parameters["actions"]["modifier"] = NULL;
197                }
198            }
199      }      }
200        
201        /**
202         * Cette methode est à surcharger elle permet de tester dans chaque classe
203         * des droits spécifiques en fonction des données
204         */
205        function canAccess() {
206            // Si l'utilisateur est un instructeur et que le dossier est cloturé
207            if ( $this->f->isUserInstructeur() &&
208                $this->f->getStatutDossier($this->getParameter("idxformulaire")) == "cloture"
209                && $this->getParameter("maj") != 3) {
210                
211                return false;
212            }
213            //
214            return true;
215        }
216        
217      /**      /**
218       * Méthode permettant de définir le type des différents tableaux en fonction       * Méthode permettant de définir le type des différents tableaux en fonction
219       * des valeurs du cerfa       * des valeurs du cerfa
# Line 125  class donnees_techniques extends donnees Line 231  class donnees_techniques extends donnees
231          }          }
232      }      }
233    
234        /**
235         * Méthode permettant de définir le type des champs des tableaux en fonction
236         * des valeurs du cerfa
237         **/
238        function setTabChampType($tab) {
239            if(file_exists ("../sql/".$this->db->phptype."/".$this->table.".form.inc.php"))
240                include ("../sql/".$this->db->phptype."/".$this->table.".form.inc.php");
241            elseif(file_exists ("../sql/".$this->db->phptype."/".$this->table.".form.inc"))
242                include ("../sql/".$this->db->phptype."/".$this->table.".form.inc");
243            // Pour chaque champ dans la liste des champs du cerfa
244            $tableau = $$tab;
245    
246            foreach ($this->champs as $champ) {
247                if(array_search($champ, $this->cerfa->champs) !== false) {
248                    // On les cache si décoché dans le formulaire de cerfa
249                    if($this->cerfa->getVal($champ) == 'f') {
250                        $this->form->setType($champ,'hidden');
251                    }
252                } else {
253                    
254                    if(!in_array($champ, $tableau[$this->cerfa->getVal($tab)]['values'])) {
255    
256                        $this->form->setType($champ,'hidden');
257                    }
258                }
259            }
260        }
261    
262    
263    
264      function setType(&$form,$maj) {      function setType(&$form,$maj) {
265          parent::setType($form,$maj);          parent::setType($form,$maj);
266    
# Line 145  class donnees_techniques extends donnees Line 281  class donnees_techniques extends donnees
281          $this->setTabType("tab_tax_su_non_habit_surf");          $this->setTabType("tab_tax_su_non_habit_surf");
282          $this->setTabType("tab_tax_am");          $this->setTabType("tab_tax_am");
283    
284            //Champs select pour les liste a choix oui/non/je ne sais pas (terr_*)
285            if($maj == 0) {
286                $form->setType('terr_juri_titul','select');
287                $form->setType('terr_juri_lot','select');
288                $form->setType('terr_juri_zac','select');
289                $form->setType('terr_juri_afu','select');
290                $form->setType('terr_juri_pup','select');
291                $form->setType('terr_juri_oin','select');
292    
293            } elseif($maj == 1) {
294                $form->setType('terr_juri_titul','select');
295                $form->setType('terr_juri_lot','select');
296                $form->setType('terr_juri_zac','select');
297                $form->setType('terr_juri_afu','select');
298                $form->setType('terr_juri_pup','select');
299                $form->setType('terr_juri_oin','select');
300    
301            } elseif($maj == 2) {
302                $form->setType('terr_juri_titul','selectstatic');
303                $form->setType('terr_juri_lot','selectstatic');
304                $form->setType('terr_juri_zac','selectstatic');
305                $form->setType('terr_juri_afu','selectstatic');
306                $form->setType('terr_juri_pup','selectstatic');
307                $form->setType('terr_juri_oin','selectstatic');
308    
309            } elseif($maj == 3) {
310                $form->setType('terr_juri_titul','selectstatic');
311                $form->setType('terr_juri_lot','selectstatic');
312                $form->setType('terr_juri_zac','selectstatic');
313                $form->setType('terr_juri_afu','selectstatic');
314                $form->setType('terr_juri_pup','selectstatic');
315                $form->setType('terr_juri_oin','selectstatic');
316    
317            }
318    
319    
320          //Cache les champs des clés étrangères, elles sont renseignées automatiquement          //Cache les champs des clés étrangères, elles sont renseignées automatiquement
321          $form->setType('dossier_instruction', 'hidden');          $form->setType('dossier_instruction', 'hidden');
# Line 159  class donnees_techniques extends donnees Line 330  class donnees_techniques extends donnees
330                      $form->setType($champ,'hidden');                      $form->setType($champ,'hidden');
331                  }                  }
332              } else {              } else {
333                  if(!in_array($champ, $tab_surface[$this->cerfa->getVal("tab_surface")]['values'])) {                  $id_tab_surface = $this->cerfa->getVal("tab_surface");
334                      $form->setType($champ,'hidden');                  $id_tab_tax_su_princ = $this->cerfa->getVal("tab_tax_su_princ");
335                    $id_tab_tax_su_heber = $this->cerfa->getVal("tab_tax_su_heber");
336                    $id_tab_tax_su_secon = $this->cerfa->getVal("tab_tax_su_secon");
337                    $id_tab_tax_su_tot = $this->cerfa->getVal("tab_tax_su_tot");
338                    $id_tab_tax_su_non_habit_surf = $this->cerfa->getVal("tab_tax_su_non_habit_surf");
339                    $id_tab_tax_am = $this->cerfa->getVal("tab_tax_am");
340                    $hidden = true;
341    
342                    // On cache tous les champs
343                    $form->setType($champ,'hidden');
344    
345                    // On défini l'affichage des champs des tableaux de configuration
346                    // Si les tableau sont définis dans le cerfa on test si les champs des données
347                    // techniques sont définis dans les tableaux de configuration des tableaux
348                    // pour chaque cerfa  alors on les affiche en type "text"
349                    if(!empty($id_tab_surface)) {
350                        if(in_array($champ, $tab_surface[$this->cerfa->getVal("tab_surface")]['values'])) {
351                            $hidden = false;
352                        }
353                    }
354                    if(!empty($id_tab_tax_su_princ)) {
355                        if(in_array($champ, $tab_tax_su_princ[$this->cerfa->getVal("tab_tax_su_princ")]['values'])) {
356                            $hidden = false;
357                        }
358                    }
359                    if(!empty($id_tab_tax_su_heber)) {
360                        if(in_array($champ, $tab_tax_su_heber[$this->cerfa->getVal("tab_tax_su_heber")]['values'])) {
361                            $hidden = false;
362                        }
363                    }
364                    if(!empty($id_tab_tax_su_secon)) {
365                        if(in_array($champ, $tab_tax_su_secon[$this->cerfa->getVal("tab_tax_su_secon")]['values'])) {
366                            $hidden = false;
367                        }
368                    }
369                    if(!empty($id_tab_tax_su_tot)) {
370                        if(in_array($champ, $tab_tax_su_tot[$this->cerfa->getVal("tab_tax_su_tot")]['values'])) {
371                            $hidden = false;
372                        }
373                    }
374                    if(!empty($id_tab_tax_su_non_habit_surf)) {
375                        if(in_array($champ, $tab_tax_su_non_habit_surf[$this->cerfa->getVal("tab_tax_su_non_habit_surf")]['values'])) {
376                            $hidden = false;
377                        }
378                    }
379                    if(!empty($id_tab_tax_am)) {
380                        if(in_array($champ, $tab_tax_am[$this->cerfa->getVal("tab_tax_am")]['values'])) {
381                            $hidden = false;
382                        }
383                    }
384    
385                    if(!$hidden){
386                        if($maj < 2) {
387                            $form->setType($champ,'text');
388                        } else {
389                            $form->setType($champ,'static');
390                        }
391                        
392                  }                  }
393              }              }
394          }          }
# Line 187  class donnees_techniques extends donnees Line 415  class donnees_techniques extends donnees
415          }// fin validation          }// fin validation
416      }// fin setValsousformulaire      }// fin setValsousformulaire
417    
418        function setLib(&$form,$maj) {
419            parent::setLib($form,$maj);
420            //libelle des champs
421            $form->setLib('tab_surface', "");
422            $form->setLib('tab_tax_su_princ', "");
423            $form->setLib('tab_tax_su_heber', "");
424            $form->setLib('tab_tax_su_secon', "");
425            $form->setLib('tab_tax_su_tot', "");
426            $form->setLib('tab_tax_su_non_habit_surf', "");
427            $form->setLib('tab_tax_am', "");
428        }
429    
430      function setLayout(&$form, $maj) {      function setLayout(&$form, $maj) {
431                  /*Fieldset Parametrage du cerfa */                  /*Fieldset Parametrage du cerfa */
432          $form->setBloc('cerfa','D',"","col_12");          $form->setBloc('cerfa','D',"","col_12");
# Line 197  class donnees_techniques extends donnees Line 437  class donnees_techniques extends donnees
437              $form->setFieldset('om_validite_fin','F','');              $form->setFieldset('om_validite_fin','F','');
438          $form->setBloc('om_validite_fin','F');          $form->setBloc('om_validite_fin','F');
439    
440            $form->setBloc('terr_juri_titul','D',"","col_12");
441                $form->setFieldset('terr_juri_titul','D'
442                                   ,_("Terrain"));
443                    $form->setBloc('terr_juri_titul','D',_("Situation juridique du terrain"),"col_12");
444                    $form->setBloc('terr_juri_desc','F');
445                    $form->setBloc('terr_div_surf_etab','D',_("Terrain issu d'une division de propriete"),"col_12");
446                    $form->setBloc('terr_div_surf_av_div','F');
447    
448                $form->setFieldset('terr_div_surf_av_div','F','');
449            $form->setBloc('terr_div_surf_av_div','F');
450    
451          $form->setBloc('avap_co_elt_pro','D',"","col_12");          $form->setBloc('avap_co_elt_pro','D',"","col_12");
452              $form->setFieldset('avap_co_elt_pro','D'              $form->setFieldset('avap_co_elt_pro','D'
453                                 ,_("Projet"));                                 ,_("Projet"));
# Line 214  class donnees_techniques extends donnees Line 465  class donnees_techniques extends donnees
465              $form->setFieldset('tr_desc','F','');              $form->setFieldset('tr_desc','F','');
466          $form->setBloc('tr_desc','F');          $form->setBloc('tr_desc','F');
467    
468            /*Fieldset n°4 Ouverture de chantier */
469            $form->setBloc('doc_date','D',"","col_12");
470                $form->setFieldset('doc_date','D'
471                                   ,_("Ouverture de chantier"));
472    
473                $form->setFieldset('doc_nb_log_autre','F','');
474            $form->setBloc('doc_nb_log_autre','F');
475    
476            /*Fieldset n°4  Achèvement des travaux */
477            $form->setBloc('daact_date','D',"","col_12");
478                $form->setFieldset('daact_date','D'
479                                   ,_("Achevement des travaux"));
480    
481                $form->setFieldset('daact_nb_log_autre','F','');
482            $form->setBloc('daact_nb_log_autre','F');
483    
484          /*Fieldset n°4 Projet d'aménagement */          /*Fieldset n°4 Projet d'aménagement */
485          $form->setBloc('am_lotiss','D',"","col_12");          $form->setBloc('am_lotiss','D',"","col_12");
# Line 222  class donnees_techniques extends donnees Line 487  class donnees_techniques extends donnees
487                                 ,_("Projet d'amenagement"));                                 ,_("Projet d'amenagement"));
488                  // bloc 4.1                  // bloc 4.1
489                  $form->setBloc('am_lotiss','D',_("Nature des travaux, instalations                  $form->setBloc('am_lotiss','D',_("Nature des travaux, instalations
490                                 ou aménagements envisagés"),"col_12");                                 ou amenagements envisages"),"col_12");
491    
492                  $form->setBloc('am_tranche_desc','F');                  $form->setBloc('am_tranche_desc','F');
493                                    
# Line 233  class donnees_techniques extends donnees Line 498  class donnees_techniques extends donnees
498    
499                  // bloc 4.3                  // bloc 4.3
500                  $form->setBloc('am_empl_nb','D',_("Amenagement d'un camping ou                  $form->setBloc('am_empl_nb','D',_("Amenagement d'un camping ou
501                                 d'un terrain aménagé en vue de l'hébergement                                 d'un terrain amenage en vue de l'hebergement
502                                 touristique"),"col_12");                                 touristique"),"col_12");
503    
504                  $form->setBloc('am_exist_agrand','F');                  $form->setBloc('am_exist_agrand','F');
# Line 248  class donnees_techniques extends donnees Line 513  class donnees_techniques extends donnees
513                                 ,_("Projet de construction"));                                 ,_("Projet de construction"));
514                  // bloc 5.1                  // bloc 5.1
515                  $form->setBloc('co_archi_recours','D',_("Architecte"),"col_12");                  $form->setBloc('co_archi_recours','D',_("Architecte"),"col_12");
516                    
517                        $form->setBloc('co_archi_recours','DF', "","group");
518                        
519                        $form->setBloc('co_archi_nom','D', "","group");
520                        $form->setBloc('co_archi_prenom','F');
521                        
522                        $form->setBloc('co_archi_adr_num','D', "","group");
523                        $form->setBloc('co_archi_adr_voie','F');
524    
525                        $form->setBloc('co_archi_adr_lieu_dit','D', "","group");
526                        $form->setBloc('co_archi_adr_localite','F');
527                        
528                        $form->setBloc('co_archi_adr_cp','D', "","group");
529                        $form->setBloc('co_archi_adr_cedex','F');
530                        
531                        $form->setBloc('co_archi_no_incri','DF', "","group");
532                        
533                        $form->setBloc('co_archi_cg','DF', "","group");
534                        
535                        $form->setBloc('co_archi_tel1','D', "","group");
536                        $form->setBloc('co_archi_tel2','F');
537                        
538                        $form->setBloc('co_archi_mail','DF', "","group");
539    
540                  $form->setBloc('co_archi_recours','F');                  $form->setBloc('co_archi_mail','F');
541                                    
542                  // bloc 5.2                  // bloc 5.2
543                  $form->setBloc('co_cstr_nouv','D',_("Nature du projet"),"col_12");                  $form->setBloc('co_cstr_nouv','D',_("Nature du projet"),"col_12");
# Line 263  class donnees_techniques extends donnees Line 551  class donnees_techniques extends donnees
551    
552                  // bloc 5.4                  // bloc 5.4
553                  $form->setBloc('co_demont_period','D',_("Construction periodiquement                  $form->setBloc('co_demont_period','D',_("Construction periodiquement
554                                 démontee et re-installee"),"col_12");                                 demontee et re-installee"),"col_12");
555    
556                  $form->setBloc('co_demont_period','F');                  $form->setBloc('co_demont_period','F');
557    
# Line 289  class donnees_techniques extends donnees Line 577  class donnees_techniques extends donnees
577                    
578          $form->setBloc('co_statio_apr_surf','F');          $form->setBloc('co_statio_apr_surf','F');
579    
580            // Description de modification
581            $form->setBloc('mod_desc','D',"","col_12");
582                $form->setFieldset('mod_desc','D'
583                                   ,_("Objet de la modification"));
584                $form->setFieldset('mod_desc','F','');
585            $form->setBloc('mod_desc','F');
586            
587          /*Fieldset n°6 Projet necessitant demolitions */          /*Fieldset n°6 Projet necessitant demolitions */
588          $form->setBloc('dm_constr_dates','D',"","col_12");          $form->setBloc('dm_constr_dates','D',"","col_12");
589              $form->setFieldset('dm_constr_dates','D'              $form->setFieldset('dm_constr_dates','D'
# Line 391  class donnees_techniques extends donnees Line 685  class donnees_techniques extends donnees
685              }              }
686          }          }
687      }      }
688    
689        /**
690         * Cette variable permet de stocker le résultat de la méthode
691         * getDivisionFromDossier() afin de ne pas effectuer le recalcul à chacun de
692         * ces appels.
693         * @var string Code de la division du dossier en cours
694         */
695        var $_division_from_dossier = NULL;
696    
697        /**
698         * Cette méthode permet de récupérer le code de division correspondant
699         * au dossier sur lequel on se trouve.
700         *
701         * @return string Code de la division du dossier en cours
702         */
703        function getDivisionFromDossier() {
704    
705            // Cette méthode peut être appelée plusieurs fois lors d'une requête.
706            // Pour éviter de refaire le traitement de recherche de la division
707            // alors on vérifie si nous ne l'avons pas déjà calculé.
708            if ($this->_division_from_dossier != NULL) {
709                // Logger
710                $this->addToLog("getDivisionFromDossier(): retour de la valeur déjà calculée - '".$this->_division_from_dossier."'", EXTRA_VERBOSE_MODE);
711                // On retourne la valeur déjà calculée
712                return $this->_division_from_dossier;
713            }
714    
715            // Par défaut, on définit la valeur du dossier à NULL
716            $dossier = NULL;
717            // Test sur le mode et le contexte du formulaire
718            if ($this->getParameter("maj") == 0
719                && ($this->getParameter("retourformulaire") == "dossier"
720                    || $this->getParameter("retourformulaire") == "dossier_instruction"
721                    || $this->getParameter("retourformulaire") == "dossier_instruction_mes_encours"
722                    || $this->getParameter("retourformulaire") == "dossier_instruction_tous_encours"
723                    || $this->getParameter("retourformulaire") == "dossier_instruction_mes_clotures"
724                    || $this->getParameter("retourformulaire") == "dossier_instruction_tous_clotures")) {
725                // Si on se trouve en mode AJOUT (seul mode où l'enregistrement
726                // n'existe pas en base de données) ET que nous nous trouvons
727                // dans le contexte d'un dossier d'instruction alors on récupère
728                // le numéro de dossier depuis le paramètre 'idxformulaire'
729                $dossier = $this->getParameter("idxformulaire");
730            } else {
731                // Sinon on récupère le numéro de dossier dans le champs dossier de
732                // l'enregistrement (en base de données)
733                $dossier = $this->getVal("dossier");
734            }
735    
736            // On appelle la méthode de la classe utils qui renvoi le code de la
737            // division d'un dossier, on la stocke pour ne pas refaire le calcul au
738            // prochain appel de cette méthode
739            $this->_division_from_dossier = $this->f->getDivisionFromDossier($dossier);
740            // Logger
741            $this->addToLog("getDivisionFromDossier(): retour de la valeur nouvellement calculée - '".$this->_division_from_dossier."'", EXTRA_VERBOSE_MODE);
742            // On retourne la valeur retournée
743            return $this->_division_from_dossier;
744    
745        }
746  }// fin classe  }// fin classe
747  ?>  ?>

Legend:
Removed from v.1301  
changed lines
  Added in v.2109

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26