1 |
<?php |
2 |
//$Id: donnees_techniques.class.php 5856 2016-02-03 11:35:25Z stimezouaght $ |
3 |
//gen openMairie le 13/02/2013 14:41 |
4 |
|
5 |
require_once ("../gen/obj/donnees_techniques.class.php"); |
6 |
|
7 |
class donnees_techniques extends donnees_techniques_gen { |
8 |
|
9 |
var $cerfa; // Instance de la classe cerfa |
10 |
|
11 |
/** |
12 |
* Instance de la classe dossier. |
13 |
* |
14 |
* @var null |
15 |
*/ |
16 |
var $inst_dossier = null; |
17 |
|
18 |
/** @var boolean Les nouvelles actions sont activées sur cet objet */ |
19 |
var $activate_class_action; |
20 |
|
21 |
function donnees_techniques($id, &$db = null, $debug = null) { |
22 |
//On active les nouvelles actions |
23 |
$this->activate_class_action = true; |
24 |
$this->constructeur($id,$db,$debug); |
25 |
}// fin constructeur |
26 |
|
27 |
/** |
28 |
* Définition des actions disponibles sur la classe. |
29 |
* |
30 |
* @return void |
31 |
*/ |
32 |
function init_class_actions() { |
33 |
|
34 |
// On récupère les actions génériques définies dans la méthode |
35 |
// d'initialisation de la classe parente |
36 |
parent::init_class_actions(); |
37 |
|
38 |
// ACTION - 001 - modifier |
39 |
// |
40 |
$this->class_actions[1]["condition"] = "is_editable"; |
41 |
|
42 |
// ACTION - 002 - supprimer |
43 |
// |
44 |
$this->class_actions[2]["condition"] = "is_deletable"; |
45 |
} |
46 |
|
47 |
/** |
48 |
* CONDITION - is_deletable. |
49 |
* |
50 |
* Condition pour afficher le bouton de suppression. Cette action n'est pas utile donc |
51 |
* ne doit pas être disponible, même pour l'admin. |
52 |
* |
53 |
* @return boolean |
54 |
*/ |
55 |
function is_deletable() { |
56 |
// |
57 |
return false; |
58 |
} |
59 |
|
60 |
/** |
61 |
* CONDITION - is_editable. |
62 |
* |
63 |
* Condition pour afficher le bouton de modification. |
64 |
* |
65 |
* @return boolean |
66 |
*/ |
67 |
function is_editable() { |
68 |
|
69 |
// Si c'est un sous-formulaire du dossier d'autorisation |
70 |
if ($this->getParameter("retourformulaire") == 'dossier_autorisation' |
71 |
|| $this->getParameter("retourformulaire") == 'dossier_autorisation_avis') { |
72 |
|
73 |
// |
74 |
return false; |
75 |
} |
76 |
|
77 |
// Contrôle si l'utilisateur possède un bypass |
78 |
$bypass = $this->f->isAccredited(get_class()."_modifier_bypass"); |
79 |
// |
80 |
if ($bypass == true) { |
81 |
|
82 |
// |
83 |
return true; |
84 |
} |
85 |
|
86 |
// Si l'utilisateur est un intructeur qui ne correspond pas à la |
87 |
// division du dossier |
88 |
if ($this->f->isUserInstructeur() |
89 |
&& $this->f->om_utilisateur["division"] != $this->getDivisionFromDossier()) { |
90 |
|
91 |
// |
92 |
return false; |
93 |
} |
94 |
|
95 |
// Si l'utilisateur est un instructeur et que le dossier est cloturé |
96 |
if ($this->f->isUserInstructeur() |
97 |
&& $this->getParameter("idxformulaire") != '' |
98 |
&& $this->f->getStatutDossier($this->getParameter("idxformulaire")) == "cloture") { |
99 |
|
100 |
// |
101 |
return false; |
102 |
} |
103 |
|
104 |
// |
105 |
return true; |
106 |
} |
107 |
|
108 |
/** |
109 |
* Méthode permettant de récupérer l'id du cerfa lié au dossier. |
110 |
* |
111 |
* @return cerfa handler du cerfa |
112 |
*/ |
113 |
function getCerfa() { |
114 |
if($this->cerfa != null) { |
115 |
return $this->cerfa; |
116 |
} |
117 |
require_once ("../obj/cerfa.class.php"); |
118 |
$this->cerfa = new cerfa($this->getVal("cerfa"), $this->db, DEBUG); |
119 |
return $this->cerfa; |
120 |
} |
121 |
|
122 |
/** |
123 |
* Méthode permettant de vérifier si le tableau passé en parametre est défini |
124 |
* dans la table des cerfa |
125 |
*/ |
126 |
|
127 |
function setTabSelect($tab, $idchamp) { |
128 |
// Test si un tableau de surface a été défini |
129 |
if ( $this->cerfa->getVal($idchamp) != "" ){ |
130 |
|
131 |
// Configuration du tableau des surfaces |
132 |
$contenu['column_header']=$tab[$this->cerfa->getVal($idchamp)]['column_header']; |
133 |
$contenu['row_header']=$tab[$this->cerfa->getVal($idchamp)]['row_header']; |
134 |
|
135 |
foreach($tab[$this->cerfa->getVal($idchamp)]['values'] as $champ) { |
136 |
$contenu['values'][$champ] = $this->getVal($champ); |
137 |
} |
138 |
|
139 |
$this->form->setSelect($idchamp,$contenu); |
140 |
} |
141 |
} |
142 |
|
143 |
|
144 |
function setSelect(&$form, $maj,&$db,$debug) { |
145 |
if(file_exists ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc.php")) |
146 |
include ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc.php"); |
147 |
elseif(file_exists ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc")) |
148 |
include ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc"); |
149 |
|
150 |
if(empty($this->cerfa)) { |
151 |
$this->getCerfa(); |
152 |
} |
153 |
|
154 |
$this->setTabSelect($tab_surface, "tab_surface"); |
155 |
$this->setTabSelect($tab_tax_su_princ, "tab_tax_su_princ"); |
156 |
$this->setTabSelect($tab_tax_su_heber, "tab_tax_su_heber"); |
157 |
$this->setTabSelect($tab_tax_su_secon, "tab_tax_su_secon"); |
158 |
$this->setTabSelect($tab_tax_su_tot, "tab_tax_su_tot"); |
159 |
$this->setTabSelect($tab_tax_su_non_habit_surf, "tab_tax_su_non_habit_surf"); |
160 |
$this->setTabSelect($tab_tax_su_parc_statio_expl_comm, "tab_tax_su_parc_statio_expl_comm"); |
161 |
$this->setTabSelect($tab_tax_am, "tab_tax_am"); |
162 |
$this->setTabSelect($tab_erp_eff, "tab_erp_eff"); |
163 |
|
164 |
// Définition des champs Oui/Non/Je ne sais pas |
165 |
$value[] = array( |
166 |
"nesaispas", |
167 |
"non", |
168 |
"oui", |
169 |
); |
170 |
$value[] = array( |
171 |
_("Je ne sais pas"), |
172 |
_("Non"), |
173 |
_("Oui"), |
174 |
); |
175 |
|
176 |
$form->setSelect('terr_juri_titul',$value); |
177 |
$form->setSelect('terr_juri_lot',$value); |
178 |
$form->setSelect('terr_juri_zac',$value); |
179 |
$form->setSelect('terr_juri_afu',$value); |
180 |
$form->setSelect('terr_juri_pup',$value); |
181 |
$form->setSelect('terr_juri_oin',$value); |
182 |
$form->setSelect('terr_juri_desc',$value); |
183 |
$form->setSelect('terr_div_surf_etab',$value); |
184 |
$form->setSelect('terr_div_surf_av_div',$value); |
185 |
|
186 |
// |
187 |
$this->init_select($form, $this->f->db, $maj, null, "erp_class_cat", $sql_erp_class_cat, $sql_erp_class_cat_by_id, false); |
188 |
// |
189 |
$this->init_select($form, $this->f->db, $maj, null, "erp_class_type", $sql_erp_class_type, $sql_erp_class_type_by_id, false); |
190 |
|
191 |
|
192 |
//Récupérer le nom et le prénom de l'architecte |
193 |
$coordonneesArchitecte = $this->getPrenomNomArchitecte($this->getVal('architecte')); |
194 |
$value = ""; |
195 |
if ($maj<2){ |
196 |
$value = array( |
197 |
"data" => $coordonneesArchitecte, |
198 |
"obj" => "architecte", |
199 |
); |
200 |
} |
201 |
else { |
202 |
$value[0][0]=$this->getVal('architecte'); |
203 |
$value[1][0]=$coordonneesArchitecte;// table |
204 |
} |
205 |
$form->setSelect('architecte', $value); |
206 |
} |
207 |
|
208 |
|
209 |
// XXX Créer une nouvelle méthode au même endroit que l'appel a checkAccessibility() |
210 |
function checkAccessibility() { |
211 |
if(file_exists ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc.php")) |
212 |
include ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc.php"); |
213 |
elseif(file_exists ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc")) |
214 |
include ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc"); |
215 |
|
216 |
// |
217 |
if(empty($this->cerfa)) { |
218 |
$this->getCerfa(); |
219 |
} |
220 |
|
221 |
$id_tab_surface = $this->cerfa->getVal("tab_surface"); |
222 |
$id_tab_tax_su_princ = $this->cerfa->getVal("tab_tax_su_princ"); |
223 |
$id_tab_tax_su_heber = $this->cerfa->getVal("tab_tax_su_heber"); |
224 |
$id_tab_tax_su_secon = $this->cerfa->getVal("tab_tax_su_secon"); |
225 |
$id_tab_tax_su_tot = $this->cerfa->getVal("tab_tax_su_tot"); |
226 |
$id_tab_tax_su_non_habit_surf = $this->cerfa->getVal("tab_tax_su_non_habit_surf"); |
227 |
$id_tab_tax_su_parc_statio_expl_comm = $this->cerfa->getVal("tab_tax_su_parc_statio_expl_comm"); |
228 |
$id_tab_tax_am = $this->cerfa->getVal("tab_tax_am"); |
229 |
$id_tab_erp_eff = $this->cerfa->getVal("tab_erp_eff"); |
230 |
|
231 |
//Suppression des champs de tableaux |
232 |
if(!empty($id_tab_surface)) { |
233 |
foreach($tab_surface[$this->cerfa->getVal("tab_surface")]['values'] as $champ) { |
234 |
unset($this->champs[array_search($champ,$this->champs)]); |
235 |
} |
236 |
} |
237 |
if(!empty($id_tab_tax_su_princ)) { |
238 |
foreach($tab_tax_su_princ[$this->cerfa->getVal("tab_tax_su_princ")]['values'] as $champ) { |
239 |
unset($this->champs[array_search($champ,$this->champs)]); |
240 |
} |
241 |
} |
242 |
if(!empty($id_tab_tax_su_heber)) { |
243 |
foreach($tab_tax_su_heber[$this->cerfa->getVal("tab_tax_su_heber")]['values'] as $champ) { |
244 |
unset($this->champs[array_search($champ,$this->champs)]); |
245 |
} |
246 |
} |
247 |
if(!empty($id_tab_tax_su_secon)) { |
248 |
foreach($tab_tax_su_secon[$this->cerfa->getVal("tab_tax_su_secon")]['values'] as $champ) { |
249 |
unset($this->champs[array_search($champ,$this->champs)]); |
250 |
} |
251 |
} |
252 |
if(!empty($id_tab_tax_su_tot)) { |
253 |
foreach($tab_tax_su_tot[$this->cerfa->getVal("tab_tax_su_tot")]['values'] as $champ) { |
254 |
unset($this->champs[array_search($champ,$this->champs)]); |
255 |
} |
256 |
} |
257 |
if(!empty($id_tab_tax_su_non_habit_surf)) { |
258 |
foreach($tab_tax_su_non_habit_surf[$this->cerfa->getVal("tab_tax_su_non_habit_surf")]['values'] as $champ) { |
259 |
unset($this->champs[array_search($champ,$this->champs)]); |
260 |
} |
261 |
} |
262 |
if(!empty($id_tab_tax_su_parc_statio_expl_comm)) { |
263 |
foreach($tab_tax_su_parc_statio_expl_comm[$this->cerfa->getVal("tab_tax_su_parc_statio_expl_comm")]['values'] as $champ) { |
264 |
unset($this->champs[array_search($champ,$this->champs)]); |
265 |
} |
266 |
} |
267 |
if(!empty($id_tab_tax_am)) { |
268 |
foreach($tab_tax_am[$this->cerfa->getVal("tab_tax_am")]['values'] as $champ) { |
269 |
unset($this->champs[array_search($champ,$this->champs)]); |
270 |
} |
271 |
} |
272 |
if(!empty($id_tab_erp_eff)) { |
273 |
foreach($tab_erp_eff[$this->cerfa->getVal("tab_erp_eff")]['values'] as $champ) { |
274 |
unset($this->champs[array_search($champ,$this->champs)]); |
275 |
} |
276 |
} |
277 |
// Renumérotation |
278 |
$this->champs = array_values($this->champs); |
279 |
} |
280 |
|
281 |
/** |
282 |
* Méthode permettant de définir le type des différents tableaux en fonction |
283 |
* des valeurs du cerfa |
284 |
**/ |
285 |
function setTabType($tab) { |
286 |
// Définition du type "tableau" |
287 |
if ( $this->cerfa->getVal($tab) != "" ){ |
288 |
|
289 |
$this->form->setType($tab,'tableau'); |
290 |
} |
291 |
//Le chache si non défini |
292 |
else { |
293 |
|
294 |
$this->form->setType($tab,'hidden'); |
295 |
} |
296 |
} |
297 |
|
298 |
/** |
299 |
* Méthode permettant de définir le type des champs des tableaux en fonction |
300 |
* des valeurs du cerfa |
301 |
**/ |
302 |
function setTabChampType($tab) { |
303 |
if(file_exists ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc.php")) |
304 |
include ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc.php"); |
305 |
elseif(file_exists ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc")) |
306 |
include ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc"); |
307 |
// Pour chaque champ dans la liste des champs du cerfa |
308 |
$tableau = $$tab; |
309 |
foreach ($this->champs as $champ) { |
310 |
|
311 |
if(array_search($champ, $this->cerfa->champs) !== false) { |
312 |
// On les cache si décoché dans le formulaire de cerfa |
313 |
if($this->cerfa->getVal($champ) == 'f') { |
314 |
$this->form->setType($champ,'hidden'); |
315 |
} |
316 |
} else { |
317 |
|
318 |
if(!in_array($champ, $tableau[$this->cerfa->getVal($tab)]['values'])) { |
319 |
|
320 |
$this->form->setType($champ,'hidden'); |
321 |
} |
322 |
} |
323 |
} |
324 |
} |
325 |
|
326 |
|
327 |
|
328 |
function setType(&$form,$maj) { |
329 |
parent::setType($form,$maj); |
330 |
|
331 |
if(file_exists ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc.php")) |
332 |
include ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc.php"); |
333 |
elseif(file_exists ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc")) |
334 |
include ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc"); |
335 |
|
336 |
if(empty($this->cerfa)) { |
337 |
$this->getCerfa(); |
338 |
} |
339 |
|
340 |
$this->setTabType("tab_surface"); |
341 |
$this->setTabType("tab_tax_su_princ"); |
342 |
$this->setTabType("tab_tax_su_heber"); |
343 |
$this->setTabType("tab_tax_su_secon"); |
344 |
$this->setTabType("tab_tax_su_tot"); |
345 |
$this->setTabType("tab_tax_su_non_habit_surf"); |
346 |
$this->setTabType("tab_tax_su_parc_statio_expl_comm"); |
347 |
$this->setTabType("tab_tax_am"); |
348 |
$this->setTabType("tab_erp_eff"); |
349 |
|
350 |
//Champs select pour les liste a choix oui/non/je ne sais pas (terr_*) |
351 |
if($maj == 0) { |
352 |
$form->setType('terr_juri_titul','select'); |
353 |
$form->setType('terr_juri_lot','select'); |
354 |
$form->setType('terr_juri_zac','select'); |
355 |
$form->setType('terr_juri_afu','select'); |
356 |
$form->setType('terr_juri_pup','select'); |
357 |
$form->setType('terr_juri_oin','select'); |
358 |
$form->setType('architecte', 'manage_with_popup'); |
359 |
$form->setType('erp_class_cat','select'); |
360 |
$form->setType('erp_class_type','select'); |
361 |
|
362 |
} elseif($maj == 1) { |
363 |
$form->setType('terr_juri_titul','select'); |
364 |
$form->setType('terr_juri_lot','select'); |
365 |
$form->setType('terr_juri_zac','select'); |
366 |
$form->setType('terr_juri_afu','select'); |
367 |
$form->setType('terr_juri_pup','select'); |
368 |
$form->setType('terr_juri_oin','select'); |
369 |
$form->setType('architecte', 'manage_with_popup'); |
370 |
$form->setType('erp_class_cat','select'); |
371 |
$form->setType('erp_class_type','select'); |
372 |
|
373 |
} elseif($maj == 2) { |
374 |
$form->setType('terr_juri_titul','selectstatic'); |
375 |
$form->setType('terr_juri_lot','selectstatic'); |
376 |
$form->setType('terr_juri_zac','selectstatic'); |
377 |
$form->setType('terr_juri_afu','selectstatic'); |
378 |
$form->setType('terr_juri_pup','selectstatic'); |
379 |
$form->setType('terr_juri_oin','selectstatic'); |
380 |
$form->setType('architecte', 'selectstatic'); |
381 |
$form->setType('erp_class_cat','selectstatic'); |
382 |
$form->setType('erp_class_type','selectstatic'); |
383 |
|
384 |
} elseif($maj == 3) { |
385 |
$form->setType('terr_juri_titul','selectstatic'); |
386 |
$form->setType('terr_juri_lot','selectstatic'); |
387 |
$form->setType('terr_juri_zac','selectstatic'); |
388 |
$form->setType('terr_juri_afu','selectstatic'); |
389 |
$form->setType('terr_juri_pup','selectstatic'); |
390 |
$form->setType('terr_juri_oin','selectstatic'); |
391 |
$form->setType('architecte', 'selectstatic'); |
392 |
$form->setType('erp_class_cat','selectstatic'); |
393 |
$form->setType('erp_class_type','selectstatic'); |
394 |
|
395 |
} |
396 |
|
397 |
// Anciens champs à conserver pour les anciens cerfa |
398 |
$form->setType("co_statio_avt_shob", "hidden"); |
399 |
$form->setType("co_statio_apr_shob", "hidden"); |
400 |
$form->setType("co_statio_avt_surf", "hidden"); |
401 |
$form->setType("co_statio_apr_surf", "hidden"); |
402 |
$form->setType("co_trx_amgt", "hidden"); |
403 |
$form->setType("co_modif_aspect", "hidden"); |
404 |
$form->setType("co_modif_struct", "hidden"); |
405 |
$form->setType("co_trx_imm", "hidden"); |
406 |
$form->setType("co_cstr_shob", "hidden"); |
407 |
$form->setType("am_voyage_deb", "hidden"); |
408 |
$form->setType("am_voyage_fin", "hidden"); |
409 |
$form->setType("am_modif_amgt", "hidden"); |
410 |
$form->setType("am_lot_max_shob", "hidden"); |
411 |
$form->setType("mod_desc", "hidden"); |
412 |
$form->setType("tr_total", "hidden"); |
413 |
$form->setType("tr_partiel", "hidden"); |
414 |
$form->setType("tr_desc", "hidden"); |
415 |
$form->setType("avap_co_clot", "hidden"); |
416 |
$form->setType("avap_aut_coup_aba_arb", "hidden"); |
417 |
$form->setType("avap_ouv_infra", "hidden"); |
418 |
$form->setType("avap_aut_inst_mob", "hidden"); |
419 |
$form->setType("avap_aut_plant", "hidden"); |
420 |
$form->setType("avap_aut_auv_elec", "hidden"); |
421 |
$form->setType("tax_dest_loc_tr", "hidden"); |
422 |
|
423 |
|
424 |
//Cache les champs des clés étrangères, elles sont renseignées automatiquement |
425 |
$form->setType('dossier_instruction', 'hidden'); |
426 |
$form->setType('lot', 'hidden'); |
427 |
$form->setType('cerfa', 'hidden'); |
428 |
|
429 |
// Boucler sur les champs du cerfa pour cacher les données qui ne doivent |
430 |
// pas être saisies |
431 |
|
432 |
foreach ($this->champs as $champ) { |
433 |
if(array_search($champ, $this->cerfa->champs) !== false) { |
434 |
if($this->cerfa->getVal($champ) == 'f') { |
435 |
$form->setType($champ,'hidden'); |
436 |
} |
437 |
} else { |
438 |
$id_tab_surface = $this->cerfa->getVal("tab_surface"); |
439 |
$id_tab_tax_su_princ = $this->cerfa->getVal("tab_tax_su_princ"); |
440 |
$id_tab_tax_su_heber = $this->cerfa->getVal("tab_tax_su_heber"); |
441 |
$id_tab_tax_su_secon = $this->cerfa->getVal("tab_tax_su_secon"); |
442 |
$id_tab_tax_su_tot = $this->cerfa->getVal("tab_tax_su_tot"); |
443 |
$id_tab_tax_su_non_habit_surf = $this->cerfa->getVal("tab_tax_su_non_habit_surf"); |
444 |
$id_tab_tax_su_parc_statio_expl_comm = $this->cerfa->getVal("tab_tax_su_parc_statio_expl_comm"); |
445 |
$id_tab_tax_am = $this->cerfa->getVal("tab_tax_am"); |
446 |
$id_tab_erp_eff = $this->cerfa->getVal("tab_erp_eff"); |
447 |
$hidden = true; |
448 |
|
449 |
// On cache tous les champs |
450 |
$form->setType($champ,'hidden'); |
451 |
|
452 |
// On défini l'affichage des champs des tableaux de configuration |
453 |
// Si les tableau sont définis dans le cerfa on test si les champs des données |
454 |
// techniques sont définis dans les tableaux de configuration des tableaux |
455 |
// pour chaque cerfa alors on les affiche en type "text" |
456 |
if(!empty($id_tab_surface)) { |
457 |
if(in_array($champ, $tab_surface[$this->cerfa->getVal("tab_surface")]['values'])) { |
458 |
$hidden = false; |
459 |
} |
460 |
} |
461 |
if(!empty($id_tab_tax_su_princ)) { |
462 |
if(in_array($champ, $tab_tax_su_princ[$this->cerfa->getVal("tab_tax_su_princ")]['values'])) { |
463 |
$hidden = false; |
464 |
} |
465 |
} |
466 |
if(!empty($id_tab_tax_su_heber)) { |
467 |
if(in_array($champ, $tab_tax_su_heber[$this->cerfa->getVal("tab_tax_su_heber")]['values'])) { |
468 |
$hidden = false; |
469 |
} |
470 |
} |
471 |
if(!empty($id_tab_tax_su_secon)) { |
472 |
if(in_array($champ, $tab_tax_su_secon[$this->cerfa->getVal("tab_tax_su_secon")]['values'])) { |
473 |
$hidden = false; |
474 |
} |
475 |
} |
476 |
if(!empty($id_tab_tax_su_tot)) { |
477 |
if(in_array($champ, $tab_tax_su_tot[$this->cerfa->getVal("tab_tax_su_tot")]['values'])) { |
478 |
$hidden = false; |
479 |
} |
480 |
} |
481 |
if(!empty($id_tab_tax_su_non_habit_surf)) { |
482 |
if(in_array($champ, $tab_tax_su_non_habit_surf[$this->cerfa->getVal("tab_tax_su_non_habit_surf")]['values'])) { |
483 |
$hidden = false; |
484 |
} |
485 |
} |
486 |
if(!empty($id_tab_tax_su_parc_statio_expl_comm)) { |
487 |
if(in_array($champ, $tab_tax_su_parc_statio_expl_comm[$this->cerfa->getVal("tab_tax_su_parc_statio_expl_comm")]['values'])) { |
488 |
$hidden = false; |
489 |
} |
490 |
} |
491 |
if(!empty($id_tab_tax_am)) { |
492 |
if(in_array($champ, $tab_tax_am[$this->cerfa->getVal("tab_tax_am")]['values'])) { |
493 |
$hidden = false; |
494 |
} |
495 |
} |
496 |
if(!empty($id_tab_erp_eff)) { |
497 |
if(in_array($champ, $tab_erp_eff[$this->cerfa->getVal("tab_erp_eff")]['values'])) { |
498 |
$hidden = false; |
499 |
} |
500 |
} |
501 |
|
502 |
if(!$hidden){ |
503 |
if($maj < 2) { |
504 |
$form->setType($champ,'text'); |
505 |
} else { |
506 |
$form->setType($champ,'static'); |
507 |
} |
508 |
|
509 |
} |
510 |
} |
511 |
} |
512 |
} |
513 |
|
514 |
// Ajout des clés étrangères |
515 |
function setValsousformulaire(&$form,$maj,$validation,$idxformulaire,$retourformulaire,$typeformulaire,&$db,$DEBUG=null){ |
516 |
$this->retourformulaire = $retourformulaire; |
517 |
if($validation == 0) { |
518 |
|
519 |
//Si on est dans le dossier |
520 |
if($retourformulaire =='dossier' || $retourformulaire =='dossier_instruction' ) { |
521 |
|
522 |
$form->setVal('dossier_instruction', $idxformulaire); |
523 |
$form->setVal('lot', ""); |
524 |
} |
525 |
|
526 |
//Si on est dans le lot |
527 |
if($retourformulaire =='lot') { |
528 |
|
529 |
$form->setVal('dossier_instruction', ""); |
530 |
$form->setVal('lot', $idxformulaire); |
531 |
} |
532 |
}// fin validation |
533 |
}// fin setValsousformulaire |
534 |
|
535 |
function setLib(&$form,$maj) { |
536 |
parent::setLib($form,$maj); |
537 |
//libelle des champs |
538 |
$form->setLib('tab_surface', ""); |
539 |
$form->setLib('tab_tax_su_princ', ""); |
540 |
$form->setLib('tab_tax_su_heber', ""); |
541 |
$form->setLib('tab_tax_su_secon', ""); |
542 |
$form->setLib('tab_tax_su_tot', ""); |
543 |
$form->setLib('tab_tax_su_non_habit_surf', ""); |
544 |
$form->setLib('tab_tax_su_parc_statio_expl_comm', ""); |
545 |
$form->setLib('tab_tax_am', ""); |
546 |
$form->setLib('tab_erp_eff', ""); |
547 |
$form->setLib('ope_proj_desc', _("description")); |
548 |
} |
549 |
|
550 |
function setLayout(&$form, $maj) { |
551 |
|
552 |
// Terrain |
553 |
$form->setBloc('terr_juri_titul','D',"","col_12"); |
554 |
$form->setFieldset('terr_juri_titul','D' |
555 |
,_("Terrain"), "startClosed"); |
556 |
|
557 |
$form->setBloc('terr_juri_titul','D',_("Situation juridique du terrain"), "col_12 alignFormSpec"); |
558 |
$form->setBloc('terr_juri_oin','F'); |
559 |
$form->setBloc('terr_juri_desc','DF',"", "group"); |
560 |
$form->setBloc('terr_div_surf_etab','D',_("Terrain issu d'une division de propriete"), "col_12 alignFormSpec"); |
561 |
$form->setBloc('terr_div_surf_av_div', 'F'); |
562 |
|
563 |
$form->setFieldset('terr_div_surf_av_div','F',''); |
564 |
|
565 |
$form->setBloc('terr_div_surf_av_div','F'); |
566 |
|
567 |
// Description de la demande / du projet |
568 |
$form->setFieldset('ope_proj_desc', 'D', |
569 |
_("Description de la demande / du projet"), "col_12 startClosed"); |
570 |
$form->setBloc('ope_proj_desc', 'DF', "", "group"); |
571 |
$form->setBloc('ope_proj_div_co', 'DF', "", "group"); |
572 |
$form->setBloc('ope_proj_div_contr', 'DF', "", "group"); |
573 |
$form->setFieldset('ope_proj_div_contr', 'F'); |
574 |
|
575 |
// Construire, aménager ou modifier un ERP |
576 |
$form->setBloc('erp_class_cat','D',"","col_12"); |
577 |
$form->setFieldset('erp_class_cat','D' |
578 |
,_("Construire, amenager ou modifier un ERP"), "startClosed"); |
579 |
|
580 |
$form->setBloc('erp_class_cat','DF', _("Activite"),"alignFormSpec"); |
581 |
$form->setBloc('erp_class_type','DF', "","alignFormSpec"); |
582 |
|
583 |
$form->setBloc('erp_cstr_neuve','DF', _("Nature des travaux (plusieurs cases possibles)"),"col_12"); |
584 |
$form->setBloc('erp_cstr_neuve','DF', "","alignFormSpec"); |
585 |
$form->setBloc('erp_trvx_acc','DF', "","alignFormSpec"); |
586 |
$form->setBloc('erp_extension','DF', "","alignFormSpec"); |
587 |
$form->setBloc('erp_rehab','DF', "","alignFormSpec"); |
588 |
$form->setBloc('erp_trvx_am','DF', "","alignFormSpec"); |
589 |
$form->setBloc('erp_vol_nouv_exist','DF', "","alignFormSpec"); |
590 |
|
591 |
$form->setBloc('tab_erp_eff','D',_("Effectif"),"col_12"); |
592 |
$form->setBloc('tab_erp_eff','DF', "", "col_12"); |
593 |
$form->setBloc('tab_erp_eff','F', "",""); |
594 |
|
595 |
$form->setFieldset('tab_erp_eff','F', ''); |
596 |
$form->setBloc('tab_erp_eff','F'); |
597 |
|
598 |
// Aménager |
599 |
$form->setBloc('am_lotiss','D',"","col_12"); |
600 |
$form->setFieldset('am_lotiss','D' |
601 |
,_("Amenager"), "startClosed"); |
602 |
$form->setBloc('am_lotiss','D',"","col_12"); |
603 |
$form->setFieldset('am_lotiss','D' |
604 |
,_("Projet d'amenagement"), "startClosed alignFormSpec"); |
605 |
// bloc 4.1 |
606 |
$form->setBloc('am_lotiss','DF',_("Nature des travaux, installations |
607 |
ou amenagements envisages"), "group"); |
608 |
$form->setBloc('am_div_mun','DF',"", "group"); |
609 |
$form->setBloc('am_autre_div','DF',"", "group"); |
610 |
$form->setBloc('am_camping','DF',"", "group"); |
611 |
$form->setBloc('am_parc_resid_loi','DF',"", "group"); |
612 |
$form->setBloc('am_sport_moto','DF',"", "group"); |
613 |
$form->setBloc('am_sport_attrac','DF',"", "group"); |
614 |
$form->setBloc('am_sport_golf','DF',"", "group"); |
615 |
$form->setBloc('am_caravane','DF',"", "group"); |
616 |
$form->setBloc('am_carav_duree','DF',"", "group"); |
617 |
$form->setBloc('am_statio','DF',"", "group"); |
618 |
$form->setBloc('am_statio_cont','DF',"", "group"); |
619 |
$form->setBloc('am_affou_exhau','DF',"", "group"); |
620 |
$form->setBloc('am_affou_exhau_sup','DF',"", "group"); |
621 |
$form->setBloc('am_affou_prof','DF',"", "group"); |
622 |
$form->setBloc('am_exhau_haut','DF',"", "group"); |
623 |
|
624 |
$form->setBloc('am_chem_ouv_esp','D',_("Dans les secteurs proteges :"),"col_12"); |
625 |
$form->setBloc('am_chem_ouv_esp','DF',_("Amenagement situe dans un espace remarquable :"), "group"); |
626 |
$form->setBloc('am_agri_peche','DF',"", "group"); |
627 |
|
628 |
$form->setBloc('am_crea_voie','DF',_("Amenagement situe dans un secteur sauvegarde :"), "group"); |
629 |
$form->setBloc('am_modif_voie_exist','DF',"", "group"); |
630 |
$form->setBloc('am_crea_esp_sauv','DF',"", "group"); |
631 |
|
632 |
$form->setBloc('am_crea_esp_class','DF',_("Amenagement situe dans un site classe ou une reserve naturelle 1 :"), "group"); |
633 |
$form->setBloc('am_coupe_abat','DF',"", "group"); |
634 |
$form->setBloc('am_prot_plu','DF',"", "group"); |
635 |
$form->setBloc('am_prot_muni','DF',"", "group"); |
636 |
$form->setBloc('am_mobil_voyage','DF',"", "group"); |
637 |
$form->setBloc('am_aire_voyage','DF',"", "group"); |
638 |
$form->setBloc('am_rememb_afu','DF',"", "group"); |
639 |
$form->setBloc('co_ouvr_infra','DF',"", "group"); |
640 |
$form->setBloc('co_ouvr_infra','F'); |
641 |
|
642 |
$form->setBloc('am_mob_art','DF',_("Dans un secteur sauvegarde, site classe ou reserve naturelle :"), "group"); |
643 |
$form->setBloc('am_modif_voie_esp','DF',"", "group"); |
644 |
$form->setBloc('am_plant_voie_esp','DF',"", "group"); |
645 |
$form->setBloc('co_ouvr_elec','DF',"", "group"); |
646 |
$form->setFieldset('co_ouvr_elec','F',''); |
647 |
$form->setBloc('co_ouvr_elec','F'); |
648 |
$form->setBloc('am_projet_desc','D',"","col_12"); |
649 |
$form->setFieldset('am_projet_desc','D' |
650 |
,_("Description amenagement"), "startClosed"); |
651 |
|
652 |
$form->setBloc('am_projet_desc','DF',"", "group"); |
653 |
$form->setBloc('am_terr_surf','DF',"", "alignFormSpec"); |
654 |
$form->setBloc('am_tranche_desc','DF',"", "group"); |
655 |
$form->setFieldset('am_tranche_desc','F',''); |
656 |
$form->setBloc('am_tranche_desc','F'); |
657 |
$form->setBloc('am_lot_max_nb','D',"","col_12"); |
658 |
$form->setFieldset('am_lot_max_nb','D' |
659 |
,_("Complement d'amenagement"), "startClosed"); |
660 |
// bloc 4.2 |
661 |
$form->setBloc('am_lot_max_nb','D',_("Demande concernant un lotissement"),"col_12 alignFormSpec"); |
662 |
|
663 |
$form->setBloc('am_lot_max_nb','DF',"", "group"); |
664 |
$form->setBloc('am_lot_max_shon','DF',"", "group"); |
665 |
|
666 |
$form->setBloc('am_lot_cstr_cos','DF',_("Comment la constructibilite globale sera-t-elle repartie ?"), "group"); |
667 |
$form->setBloc('am_lot_cstr_plan','DF',"", "group"); |
668 |
$form->setBloc('am_lot_cstr_vente','DF',"", "group"); |
669 |
$form->setBloc('am_lot_fin_diff','DF',"", "group"); |
670 |
|
671 |
$form->setBloc('am_lot_consign','DF',_("si oui, quelle garantie sera utilisee ?"), "group"); |
672 |
$form->setBloc('am_lot_gar_achev','DF',"", "group"); |
673 |
$form->setBloc('am_lot_vente_ant','DF',"", "group"); |
674 |
$form->setBloc('am_lot_vente_ant','F'); |
675 |
|
676 |
// bloc 4.3 |
677 |
$form->setBloc('am_exist_agrand','D',_("Amenagement d'un camping ou |
678 |
d'un terrain amenage en vue de l'hebergement |
679 |
touristique"),"col_12"); |
680 |
|
681 |
$form->setBloc('am_exist_agrand','DF',"", "alignFormSpec"); |
682 |
$form->setBloc('am_exist_date','DF',"", "alignFormSpec-type-date"); |
683 |
$form->setBloc('am_exist_num','D',"", "alignFormSpec"); |
684 |
$form->setBloc('am_empl_nb','F',"", ""); |
685 |
|
686 |
$form->setBloc('am_tente_nb','D',_("Nombre maximum d’emplacements reserves aux :"), "col_12 alignForm"); |
687 |
$form->setBloc('am_mobil_nb','F',"", ""); |
688 |
|
689 |
$form->setBloc('am_pers_nb','DF',"", "alignFormSpec group"); |
690 |
|
691 |
$form->setBloc('am_empl_hll_nb','D',_("Implantation d’habitations legeres de loisirs (HLL) :"), "col_12 alignFormSpec"); |
692 |
//$form->setBloc('am_empl_hll_nb','DF',"", "group"); |
693 |
$form->setBloc('am_hll_shon','F'); |
694 |
|
695 |
$form->setBloc('am_periode_exploit','DF',"", "group"); |
696 |
|
697 |
$form->setBloc('am_coupe_bois','D',_("Declaration de coupe et/ou abattage d’arbres :"),"col_12 cerfasubtitle"); |
698 |
|
699 |
$form->setBloc('am_coupe_bois','D',_("Courte description du lieu :"), "cerfasubtitle alignForm"); |
700 |
$form->setBloc('am_coupe_align','F',"", ""); |
701 |
|
702 |
$form->setBloc('am_coupe_ess','D',_("Nature du boisement :"),"col_12 cerfasubtitle alignForm"); |
703 |
$form->setBloc('am_coupe_autr','F'); |
704 |
$form->setBloc('am_coupe_autr','F'); |
705 |
|
706 |
$form->setBloc('am_coupe_autr','F'); |
707 |
|
708 |
|
709 |
$form->setFieldset('am_coupe_autr','F',''); |
710 |
|
711 |
$form->setBloc('am_coupe_autr','F'); |
712 |
$form->setFieldset('am_coupe_autr','F',''); |
713 |
$form->setBloc('am_coupe_autr','F'); |
714 |
// Fin amménager |
715 |
// Construire |
716 |
$form->setBloc('co_archi_recours','D',"","col_12"); |
717 |
$form->setFieldset('co_archi_recours','D' |
718 |
,_("Construire"), "startClosed"); |
719 |
$form->setBloc('co_archi_recours','D', "","col_12"); |
720 |
$form->setFieldset('co_archi_recours','D' |
721 |
,_("Projet construction"), "startClosed"); |
722 |
|
723 |
$form->setBloc('co_archi_recours','D',_("Architecte"), "col_12"); |
724 |
$form->setBloc('co_archi_recours','DF',"", "alignFormSpec group"); |
725 |
$form->setBloc('architecte','DF', "", "group"); |
726 |
$form->setBloc('architecte','F'); |
727 |
|
728 |
$form->setBloc('co_cstr_nouv','D',_("Nature du projet"), "col_12 alignFormSpec"); |
729 |
$form->setBloc('avap_co_elt_pro','DF',"", "group"); |
730 |
$form->setBloc('avap_nouv_haut_surf','DF',"", "group"); |
731 |
$form->setBloc('co_cloture','F'); |
732 |
$form->setBloc('co_projet_desc','DF',"", "group"); |
733 |
$form->setBloc('co_elec_tension','DF', "", "alignFormSpec"); |
734 |
$form->setFieldset('co_elec_tension','F',''); |
735 |
$form->setFieldset('co_tot_log_nb','D' |
736 |
,_("Complement construction"), "startClosed"); |
737 |
|
738 |
$form->setBloc('co_tot_log_nb','D',"", "alignForm"); |
739 |
$form->setBloc('co_tot_coll_nb','F',"", ""); |
740 |
|
741 |
$form->setBloc('co_mais_piece_nb','D',"", "alignForm"); |
742 |
$form->setBloc('co_mais_niv_nb','F',"", ""); |
743 |
|
744 |
$form->setBloc('co_fin_lls_nb','D', _("Repartition du nombre total de logement crees par type de financement :"),"col_12"); |
745 |
$form->setBloc('co_fin_lls_nb','D',"", "alignForm"); |
746 |
$form->setBloc('co_fin_autr_nb','F',"", ""); |
747 |
|
748 |
$form->setBloc('co_fin_autr_desc','DF',"", "alignFormSpec group"); |
749 |
$form->setBloc('co_mais_contrat_ind','DF',"", "alignFormSpec group"); |
750 |
$form->setBloc('co_mais_contrat_ind','F'); |
751 |
|
752 |
$form->setBloc('co_uti_pers','D',_("Mode d'utilisation principale des logements :"), "col_12"); |
753 |
$form->setBloc('co_uti_pers','D', "", "alignForm"); |
754 |
$form->setBloc('co_uti_loc','F',"", ""); |
755 |
$form->setBloc('co_uti_loc','F',"", ""); |
756 |
|
757 |
$form->setBloc('co_uti_princ','D',_("S’il s’agit d’une occupation personnelle, veuillez preciser :"), "col_12"); |
758 |
$form->setBloc('co_uti_princ','D',"", "alignForm"); |
759 |
$form->setBloc('co_uti_secon','F',"", ""); |
760 |
$form->setBloc('co_uti_secon','F',"", "group"); |
761 |
|
762 |
$form->setBloc('co_anx_pisc','D',_("Si le projet porte sur une annexe a l’habitation, veuillez preciser :"), "col_12"); |
763 |
$form->setBloc('co_anx_pisc','D',"", "alignForm"); |
764 |
$form->setBloc('co_anx_autr_desc','F',"", ""); |
765 |
$form->setBloc('co_anx_autr_desc','F',"", "group"); |
766 |
|
767 |
$form->setBloc('co_resid_agees','D',_("Si le projet est un foyer ou une residence, a quel titre :"), "col_12 alignForm"); |
768 |
$form->setBloc('co_resid_agees','D',"", "alignForm"); |
769 |
$form->setBloc('co_resid_hand','F',"", ""); |
770 |
$form->setBloc('co_resid_hand','F',"", "group"); |
771 |
|
772 |
$form->setBloc('co_resid_autr','DF',"", "group alignFormSpec"); |
773 |
$form->setBloc('co_resid_autr_desc','DF',"", "group"); |
774 |
$form->setBloc('co_foyer_chamb_nb','DF',"", "group alignFormSpec"); |
775 |
|
776 |
$form->setBloc('co_log_1p_nb','D',_("Repartition du nombre de logements crees selon le nombre de pieces :"), "col_12"); |
777 |
$form->setBloc('co_log_1p_nb','D', "", "alignForm"); |
778 |
$form->setBloc('co_log_6p_nb','F',"", "group"); |
779 |
$form->setBloc('co_log_6p_nb','F',"", "group"); |
780 |
|
781 |
$form->setBloc('co_bat_niv_nb','DF',"", "alignFormSpec"); |
782 |
|
783 |
$form->setBloc('co_trx_exten','D',_("Indiquez si vos travaux comprennent notamment :"), "col_12"); |
784 |
$form->setBloc('co_trx_exten','D',"", "alignForm"); |
785 |
$form->setBloc('co_trx_nivsup','F',"", "group"); |
786 |
|
787 |
$form->setBloc('co_demont_periode','DF', _("Construction periodiquement demontee et re-installee :"),"col_12 group"); |
788 |
$form->setBloc('co_demont_periode','F',"", "group"); |
789 |
|
790 |
$form->setFieldset('co_demont_periode','F',''); |
791 |
$form->setFieldset('tab_surface','D' |
792 |
,_("Destinations et surfaces des constructions"), "startClosed"); |
793 |
$form->setBloc('tab_surface','D', "","col_12 group"); |
794 |
$form->setBloc('tab_surface','F'); |
795 |
$form->setBloc('co_sp_transport','D', _("Destination des constructions futures en cas de realisation au benefice d'un service public ou d'interet collectif :"),"col_12"); |
796 |
$form->setBloc('co_sp_transport','D', "","alignForm"); |
797 |
$form->setBloc('co_sp_culture','F', "",""); |
798 |
$form->setBloc('co_sp_culture','F', "",""); |
799 |
|
800 |
$form->setFieldset('co_sp_culture','F',''); |
801 |
$form->setFieldset('co_statio_avt_nb','D' |
802 |
,_("Divers construction"), "startClosed"); |
803 |
|
804 |
$form->setBloc('co_statio_avt_nb','D', _("Nombre de places de stationnement"),"col_12"); |
805 |
$form->setBloc('co_statio_avt_nb','D', "","alignForm"); |
806 |
$form->setBloc('co_statio_apr_nb','F', "",""); |
807 |
$form->setBloc('co_statio_apr_nb','F', "",""); |
808 |
|
809 |
$form->setBloc('co_statio_adr','D', _("Places de stationnement affectees au projet, amenagees ou reservees en dehors du terrain sur lequel est situe le projet"),"col_12"); |
810 |
$form->setBloc('co_statio_adr','DF', "","group"); |
811 |
|
812 |
$form->setBloc('co_statio_place_nb','D', "","col_12"); |
813 |
$form->setBloc('co_statio_place_nb','D', "","alignForm"); |
814 |
$form->setBloc('co_statio_tot_shob','F', "",""); |
815 |
$form->setBloc('co_statio_tot_shob','F', "",""); |
816 |
$form->setBloc('co_statio_tot_shob','F'); |
817 |
$form->setBloc('co_statio_comm_cin_surf','D', _("Pour les commerces et cinemas :"),"col_12 alignFormSpec"); |
818 |
$form->setBloc('co_perf_energ','F',"", ""); |
819 |
|
820 |
$form->setFieldset('co_perf_energ','F',''); |
821 |
$form->setBloc('co_perf_energ','F'); |
822 |
|
823 |
$form->setFieldset('co_perf_energ','F',''); |
824 |
|
825 |
$form->setBloc('co_perf_energ','F'); |
826 |
// Fin construire |
827 |
|
828 |
/*Fieldset n°6 Projet necessitant demolitions */ |
829 |
$form->setBloc('dm_constr_dates','D',"","col_12"); |
830 |
$form->setFieldset('dm_constr_dates','D' |
831 |
,_("Demolir"), "startClosed"); |
832 |
$form->setBloc('dm_constr_dates','DF', "","group"); |
833 |
$form->setBloc('dm_total','D', "","alignFormSpec"); |
834 |
$form->setBloc('dm_partiel','F'); |
835 |
$form->setBloc('dm_projet_desc','DF', "","group"); |
836 |
$form->setBloc('dm_tot_log_nb','DF', "","alignFormSpec"); |
837 |
$form->setFieldset('dm_tot_log_nb','F',''); |
838 |
|
839 |
$form->setBloc('dm_tot_log_nb','F'); |
840 |
|
841 |
/*Fieldset n°4 Ouverture de chantier */ |
842 |
$form->setBloc('doc_date','D',"","col_12"); |
843 |
$form->setFieldset('doc_date','D' |
844 |
,_("Ouverture de chantier"), "startClosed alignFormSpec"); |
845 |
$form->setBloc('doc_date','DF', "","group"); |
846 |
$form->setBloc('doc_tot_trav','DF', "","group"); |
847 |
$form->setBloc('doc_tranche_trav','DF', "","group"); |
848 |
$form->setBloc('doc_tranche_trav_desc','DF', "","group"); |
849 |
$form->setBloc('doc_surf','DF', "","group"); |
850 |
$form->setBloc('doc_nb_log','DF', "","group"); |
851 |
$form->setBloc('doc_nb_log_indiv','DF', "","group"); |
852 |
$form->setBloc('doc_nb_log_coll','DF', "","group"); |
853 |
// |
854 |
$form->setBloc('doc_nb_log_lls','DF', _("Repartition du nombre de logements commences par type de financement"), "group"); |
855 |
$form->setBloc('doc_nb_log_aa','DF', "","group"); |
856 |
$form->setBloc('doc_nb_log_ptz','DF', "","group"); |
857 |
$form->setBloc('doc_nb_log_autre','DF', "","group"); |
858 |
$form->setFieldset('doc_nb_log_autre','F',''); |
859 |
$form->setBloc('doc_nb_log_autre','F'); |
860 |
|
861 |
/*Fieldset n°4 Achèvement des travaux */ |
862 |
$form->setBloc('daact_date','D',"","col_12"); |
863 |
$form->setFieldset('daact_date','D' |
864 |
,_("Achevement des travaux") , "startClosed alignFormSpec"); |
865 |
$form->setBloc('daact_date','DF', "","group"); |
866 |
$form->setBloc('daact_date_chgmt_dest','DF', "","group"); |
867 |
$form->setBloc('daact_tot_trav','DF', "","group"); |
868 |
$form->setBloc('daact_tranche_trav','DF', "","group"); |
869 |
$form->setBloc('daact_tranche_trav_desc','DF', "","group"); |
870 |
$form->setBloc('daact_surf','DF', "","group"); |
871 |
$form->setBloc('daact_nb_log','DF', "","group"); |
872 |
$form->setBloc('daact_nb_log_indiv','DF', "","group"); |
873 |
$form->setBloc('daact_nb_log_coll','DF', "","group"); |
874 |
// |
875 |
$form->setBloc('daact_nb_log_lls','DF', _("Repartition du nombre de logements commences par type de financement"), "group"); |
876 |
$form->setBloc('daact_nb_log_aa','DF', "","group"); |
877 |
$form->setBloc('daact_nb_log_ptz','DF', "","group"); |
878 |
$form->setBloc('daact_nb_log_autre','DF', "","group"); |
879 |
$form->setFieldset('daact_nb_log_autre','F',''); |
880 |
$form->setBloc('daact_nb_log_autre','F'); |
881 |
|
882 |
$form->setBloc('code_cnil','D',"","col_12"); |
883 |
$form->setFieldset('code_cnil','D' |
884 |
,_("cnil (opposition à l’utilisation des informations du formulaire à des fins commerciales)") , "startClosed alignFormSpec"); |
885 |
$form->setBloc('code_cnil','DF', "","group"); |
886 |
$form->setFieldset('code_cnil','F',''); |
887 |
$form->setBloc('code_cnil','F'); |
888 |
|
889 |
$form->setBloc('tax_surf_tot_cstr','D',"","col_12"); |
890 |
$form->setFieldset('tax_surf_tot_cstr','D' |
891 |
,_("Declaration des elements necessaires au calcul des impositions"), "startClosed"); |
892 |
|
893 |
$form->setBloc('tax_surf_tot_cstr','D', _("Renseignement"),"col_12"); |
894 |
$form->setBloc('tax_surf_tot_cstr','D', "", "alignFormSpec"); |
895 |
$form->setBloc('tax_surf_suppr_mod','F', "",""); |
896 |
$form->setBloc('tax_surf_suppr_mod','F', "",""); |
897 |
|
898 |
$form->setBloc('tab_tax_su_princ','D',_("Creation de locaux destines a l’habitation :"),"col_12"); |
899 |
$form->setBloc('tab_tax_su_princ','DF',_("tab_tax_su_princ"), "col_12"); |
900 |
$form->setBloc('tab_tax_su_heber','DF',_("tab_tax_su_heber"), "col_12"); |
901 |
$form->setBloc('tab_tax_su_tot','F', "",""); |
902 |
// |
903 |
$form->setBloc('tax_ext_pret','DF', _("Extension de l’habitation principale, creation d’un batiment annexe a cette habitation ou d’un garage clos et couvert."), "alignFormSpec"); |
904 |
$form->setBloc('tax_ext_desc','DF', "","group"); |
905 |
$form->setBloc('tax_surf_tax_exist_cons','D', "","alignFormSpec"); |
906 |
$form->setBloc('tax_log_ap_trvx_nb','F'); |
907 |
|
908 |
// |
909 |
$form->setBloc('tax_surf_abr_jard_pig_colom','DF', _("Creation d’abris de jardin, de pigeonniers et colombiers"), "col_12"); |
910 |
|
911 |
$form->setBloc('tax_comm_nb','D', _("Creation ou extension de locaux non destines a l'habitation :"),"col_12"); |
912 |
$form->setBloc('tax_comm_nb','DF', "","col_12 alignFormSpec"); |
913 |
$form->setBloc('tab_tax_su_parc_statio_expl_comm','DF'); |
914 |
$form->setBloc('tax_su_non_habit_abr_jard_pig_colom','F'); |
915 |
// |
916 |
$form->setBloc('tab_tax_am','DF',_("tab_tax_am"),"col_12"); |
917 |
|
918 |
$form->setBloc('tax_am_statio_ext_cr','D', _("Autres elements crees soumis à la taxe d’amenagement :"),"col_12"); |
919 |
$form->setBloc('tax_pann_volt_sup_cr','F'); |
920 |
|
921 |
$form->setBloc('tax_surf_loc_arch','D', _("Redevance d’archeologie preventive"),"col_12 alignFormSpec"); |
922 |
$form->setBloc('tax_surf_loc_arch','D', _("Veuillez preciser la profondeur du(des) terrassement(s) necessaire(s) a la realisation de votre projet"),""); |
923 |
$form->setBloc('tax_eol_haut_nb_arch','F'); |
924 |
$form->setBloc('tax_eol_haut_nb_arch','F'); |
925 |
|
926 |
$form->setBloc('tax_trx_presc_ppr','D', _("Cas particuliers"),"col_12 alignFormSpec"); |
927 |
$form->setBloc('tax_monu_hist','F'); |
928 |
|
929 |
$form->setBloc('vsd_surf_planch_smd','D', _("Versement pour sous-densite (VSD)"),"col_12"); |
930 |
$form->setBloc('vsd_surf_planch_smd','D', "","alignFormSpec"); |
931 |
$form->setBloc('vsd_const_sxist_non_dem_surf','F'); |
932 |
|
933 |
$form->setBloc('vsd_rescr_fisc','DF',"", "alignFormSpec-type-date"); |
934 |
$form->setBloc('vsd_rescr_fisc','F'); |
935 |
|
936 |
$form->setBloc('pld_val_terr','D', _("Plafond legal de densite (PLD)"),"col_12 alignFormSpec"); |
937 |
$form->setBloc('pld_const_exist_dem_surf','F'); |
938 |
|
939 |
$form->setBloc('tax_desc','DF', _("Autres renseignements"),"col_12 alignFormSpec"); |
940 |
|
941 |
$form->setFieldset('tax_desc','F',''); |
942 |
|
943 |
$form->setBloc('tax_desc','F'); |
944 |
} |
945 |
|
946 |
/** |
947 |
* Surcharge de la méthode setOnChange |
948 |
*/ |
949 |
function setOnchange(&$form,$maj){ |
950 |
parent::setOnchange($form,$maj); |
951 |
|
952 |
$form->setOnchange("co_tot_ind_nb","sommeChampsCerfa('co_tot_log_nb',['co_tot_ind_nb','co_tot_coll_nb']);"); |
953 |
$form->setOnchange("co_tot_coll_nb","sommeChampsCerfa('co_tot_log_nb',['co_tot_ind_nb','co_tot_coll_nb']);"); |
954 |
|
955 |
$form->setOnchange("doc_nb_log_indiv","sommeChampsCerfa('doc_nb_log',['doc_nb_log_indiv','doc_nb_log_coll']);"); |
956 |
$form->setOnchange("doc_nb_log_coll","sommeChampsCerfa('doc_nb_log',['doc_nb_log_indiv','doc_nb_log_coll']);"); |
957 |
|
958 |
$form->setOnchange("su_avt_shon1","calculSurfaceTotal();"); |
959 |
$form->setOnchange("su_avt_shon2","calculSurfaceTotal();"); |
960 |
$form->setOnchange("su_avt_shon3","calculSurfaceTotal();"); |
961 |
$form->setOnchange("su_avt_shon4","calculSurfaceTotal();"); |
962 |
$form->setOnchange("su_avt_shon5","calculSurfaceTotal();"); |
963 |
$form->setOnchange("su_avt_shon6","calculSurfaceTotal();"); |
964 |
$form->setOnchange("su_avt_shon7","calculSurfaceTotal();"); |
965 |
$form->setOnchange("su_avt_shon8","calculSurfaceTotal();"); |
966 |
$form->setOnchange("su_avt_shon9","calculSurfaceTotal();"); |
967 |
$form->setOnchange("su_cstr_shon1","calculSurfaceTotal();"); |
968 |
$form->setOnchange("su_cstr_shon2","calculSurfaceTotal();"); |
969 |
$form->setOnchange("su_cstr_shon3","calculSurfaceTotal();"); |
970 |
$form->setOnchange("su_cstr_shon4","calculSurfaceTotal();"); |
971 |
$form->setOnchange("su_cstr_shon5","calculSurfaceTotal();"); |
972 |
$form->setOnchange("su_cstr_shon6","calculSurfaceTotal();"); |
973 |
$form->setOnchange("su_cstr_shon7","calculSurfaceTotal();"); |
974 |
$form->setOnchange("su_cstr_shon8","calculSurfaceTotal();"); |
975 |
$form->setOnchange("su_cstr_shon9","calculSurfaceTotal();"); |
976 |
$form->setOnchange("su_chge_shon1","calculSurfaceTotal();"); |
977 |
$form->setOnchange("su_chge_shon2","calculSurfaceTotal();"); |
978 |
$form->setOnchange("su_chge_shon3","calculSurfaceTotal();"); |
979 |
$form->setOnchange("su_chge_shon4","calculSurfaceTotal();"); |
980 |
$form->setOnchange("su_chge_shon5","calculSurfaceTotal();"); |
981 |
$form->setOnchange("su_chge_shon6","calculSurfaceTotal();"); |
982 |
$form->setOnchange("su_chge_shon7","calculSurfaceTotal();"); |
983 |
$form->setOnchange("su_chge_shon8","calculSurfaceTotal();"); |
984 |
$form->setOnchange("su_chge_shon9","calculSurfaceTotal();"); |
985 |
$form->setOnchange("su_demo_shon1","calculSurfaceTotal();"); |
986 |
$form->setOnchange("su_demo_shon2","calculSurfaceTotal();"); |
987 |
$form->setOnchange("su_demo_shon3","calculSurfaceTotal();"); |
988 |
$form->setOnchange("su_demo_shon4","calculSurfaceTotal();"); |
989 |
$form->setOnchange("su_demo_shon5","calculSurfaceTotal();"); |
990 |
$form->setOnchange("su_demo_shon6","calculSurfaceTotal();"); |
991 |
$form->setOnchange("su_demo_shon7","calculSurfaceTotal();"); |
992 |
$form->setOnchange("su_demo_shon8","calculSurfaceTotal();"); |
993 |
$form->setOnchange("su_demo_shon9","calculSurfaceTotal();"); |
994 |
$form->setOnchange("su_sup_shon1","calculSurfaceTotal();"); |
995 |
$form->setOnchange("su_sup_shon2","calculSurfaceTotal();"); |
996 |
$form->setOnchange("su_sup_shon3","calculSurfaceTotal();"); |
997 |
$form->setOnchange("su_sup_shon4","calculSurfaceTotal();"); |
998 |
$form->setOnchange("su_sup_shon5","calculSurfaceTotal();"); |
999 |
$form->setOnchange("su_sup_shon6","calculSurfaceTotal();"); |
1000 |
$form->setOnchange("su_sup_shon7","calculSurfaceTotal();"); |
1001 |
$form->setOnchange("su_sup_shon8","calculSurfaceTotal();"); |
1002 |
$form->setOnchange("su_sup_shon9","calculSurfaceTotal();"); |
1003 |
$form->setOnchange("su_tot_shon1","calculSurfaceTotal();"); |
1004 |
$form->setOnchange("su_tot_shon2","calculSurfaceTotal();"); |
1005 |
$form->setOnchange("su_tot_shon3","calculSurfaceTotal();"); |
1006 |
$form->setOnchange("su_tot_shon4","calculSurfaceTotal();"); |
1007 |
$form->setOnchange("su_tot_shon5","calculSurfaceTotal();"); |
1008 |
$form->setOnchange("su_tot_shon6","calculSurfaceTotal();"); |
1009 |
$form->setOnchange("su_tot_shon7","calculSurfaceTotal();"); |
1010 |
$form->setOnchange("su_tot_shon8","calculSurfaceTotal();"); |
1011 |
$form->setOnchange("su_tot_shon9","calculSurfaceTotal();"); |
1012 |
|
1013 |
} |
1014 |
|
1015 |
|
1016 |
/** |
1017 |
* Surcharge du bouton retour afin de retourner sur le dossier d'instruction selon de cas |
1018 |
*/ |
1019 |
function retoursousformulaire($idxformulaire, $retourformulaire, $val, |
1020 |
$objsf, $premiersf, $tricolsf, $validation, |
1021 |
$idx, $maj, $retour) { |
1022 |
|
1023 |
$visualisation = $this->getParameter('visualisation'); |
1024 |
|
1025 |
if ( $visualisation == "" ){ |
1026 |
|
1027 |
// Ajout et consultation, retour dossier |
1028 |
if ( ( $maj == 0 && $validation == 0 ) || |
1029 |
( $maj == 3 && $validation == 0 ) || |
1030 |
( $maj == 0 && $validation == 1 ) && $retourformulaire == "dossier_instruction" ){ |
1031 |
|
1032 |
echo "\n<a class=\"retour\" "; |
1033 |
echo "href=\"#\" "; |
1034 |
echo "onclick=\"redirectPortletAction(1,'main');\" "; |
1035 |
echo ">"; |
1036 |
echo _("Retour"); |
1037 |
echo "</a>\n"; |
1038 |
} |
1039 |
//Sinon affiche un retour normal |
1040 |
else{ |
1041 |
|
1042 |
parent::retoursousformulaire($idxformulaire, $retourformulaire, $val, |
1043 |
$objsf, $premiersf, $tricolsf, $validation, |
1044 |
$idx, $maj, $retour); |
1045 |
} |
1046 |
} |
1047 |
} |
1048 |
|
1049 |
/** |
1050 |
* Cette variable permet de stocker le résultat de la méthode |
1051 |
* getDivisionFromDossier() afin de ne pas effectuer le recalcul à chacun de |
1052 |
* ces appels. |
1053 |
* @var string Code de la division du dossier en cours |
1054 |
*/ |
1055 |
var $_division_from_dossier = NULL; |
1056 |
|
1057 |
/** |
1058 |
* Cette méthode permet de récupérer le code de division correspondant |
1059 |
* au dossier sur lequel on se trouve. |
1060 |
* |
1061 |
* @return string Code de la division du dossier en cours |
1062 |
*/ |
1063 |
function getDivisionFromDossier() { |
1064 |
|
1065 |
// Cette méthode peut être appelée plusieurs fois lors d'une requête. |
1066 |
// Pour éviter de refaire le traitement de recherche de la division |
1067 |
// alors on vérifie si nous ne l'avons pas déjà calculé. |
1068 |
if ($this->_division_from_dossier != NULL) { |
1069 |
// Logger |
1070 |
$this->addToLog("getDivisionFromDossier(): retour de la valeur déjà calculée - '".$this->_division_from_dossier."'", EXTRA_VERBOSE_MODE); |
1071 |
// On retourne la valeur déjà calculée |
1072 |
return $this->_division_from_dossier; |
1073 |
} |
1074 |
|
1075 |
// Par défaut, on définit la valeur du dossier à NULL |
1076 |
$dossier = NULL; |
1077 |
// Test sur le mode et le contexte du formulaire |
1078 |
if ($this->getParameter("maj") == 0 |
1079 |
&& ($this->getParameter("retourformulaire") == "dossier" |
1080 |
|| $this->getParameter("retourformulaire") == "dossier_instruction" |
1081 |
|| $this->getParameter("retourformulaire") == "dossier_instruction_mes_encours" |
1082 |
|| $this->getParameter("retourformulaire") == "dossier_instruction_tous_encours" |
1083 |
|| $this->getParameter("retourformulaire") == "dossier_instruction_mes_clotures" |
1084 |
|| $this->getParameter("retourformulaire") == "dossier_instruction_tous_clotures")) { |
1085 |
// Si on se trouve en mode AJOUT (seul mode où l'enregistrement |
1086 |
// n'existe pas en base de données) ET que nous nous trouvons |
1087 |
// dans le contexte d'un dossier d'instruction alors on récupère |
1088 |
// le numéro de dossier depuis le paramètre 'idxformulaire' |
1089 |
$dossier = $this->getParameter("idxformulaire"); |
1090 |
} else { |
1091 |
// Sinon on récupère le numéro de dossier dans le champs dossier de |
1092 |
// l'enregistrement (en base de données) |
1093 |
$dossier = $this->getVal("dossier_instruction"); |
1094 |
} |
1095 |
|
1096 |
// On appelle la méthode de la classe utils qui renvoi le code de la |
1097 |
// division d'un dossier, on la stocke pour ne pas refaire le calcul au |
1098 |
// prochain appel de cette méthode |
1099 |
$this->_division_from_dossier = $this->f->getDivisionFromDossier($dossier); |
1100 |
// Logger |
1101 |
$this->addToLog("getDivisionFromDossier(): retour de la valeur nouvellement calculée - '".$this->_division_from_dossier."'", EXTRA_VERBOSE_MODE); |
1102 |
// On retourne la valeur retournée |
1103 |
return $this->_division_from_dossier; |
1104 |
|
1105 |
} |
1106 |
|
1107 |
/** |
1108 |
* Retourne le nom et le prénom de l'architecte qui a l'identifiant $id |
1109 |
* @param integer $id |
1110 |
* @param object $db |
1111 |
* @return string |
1112 |
*/ |
1113 |
function getPrenomNomArchitecte($id){ |
1114 |
|
1115 |
$coordonneesArchitecte = ""; |
1116 |
if ( $id != '' && is_numeric($id) ){ |
1117 |
|
1118 |
$sql = "SELECT |
1119 |
CONCAT(architecte.prenom, ' ', architecte.nom) |
1120 |
FROM |
1121 |
".DB_PREFIXE."architecte |
1122 |
WHERE |
1123 |
architecte.architecte = ".$id; |
1124 |
$coordonneesArchitecte = $this->db->getOne($sql); |
1125 |
$this->f->addToLog("setSelect() : db->getOne(\"".$sql."\")", VERBOSE_MODE); |
1126 |
if ( database::isError($coordonneesArchitecte)){ |
1127 |
$this->f->addToError("", $coordonneesArchitecte, $coordonneesArchitecte); |
1128 |
return false; |
1129 |
} |
1130 |
} |
1131 |
return $coordonneesArchitecte; |
1132 |
} |
1133 |
|
1134 |
/** |
1135 |
* Récupère l'instance de la classe dossier. |
1136 |
* |
1137 |
* @param string $dossier Identifiant |
1138 |
* |
1139 |
* @return object |
1140 |
*/ |
1141 |
function get_inst_dossier($dossier = null) { |
1142 |
// |
1143 |
if (is_null($this->inst_dossier)) { |
1144 |
// |
1145 |
if (is_null($dossier)) { |
1146 |
$dossier = $this->getVal("dossier_instruction"); |
1147 |
} |
1148 |
// |
1149 |
require_once "../obj/dossier.class.php"; |
1150 |
$this->inst_dossier = new dossier($dossier); |
1151 |
} |
1152 |
// |
1153 |
return $this->inst_dossier; |
1154 |
} |
1155 |
|
1156 |
/** |
1157 |
* Permet d’effectuer des actions après la modification des données dans la |
1158 |
* base. |
1159 |
* |
1160 |
* @param integer $id Identifiant de l'objet |
1161 |
* @param object &$db Instance de la bdd |
1162 |
* @param array $val Liste des valeurs |
1163 |
* @param mixed $DEBUG Debug |
1164 |
* |
1165 |
* @return boolean |
1166 |
*/ |
1167 |
function triggermodifierapres($id, &$db, $val, $DEBUG) { |
1168 |
|
1169 |
// Instance du dossier d'instruction |
1170 |
$dossier = $this->get_inst_dossier(); |
1171 |
|
1172 |
// Valeurs pour le calcul |
1173 |
$valF = array(); |
1174 |
|
1175 |
// Instance de la taxe d'aménagement |
1176 |
require_once "../obj/taxe_amenagement.class.php"; |
1177 |
$inst_taxe_amenagement = new taxe_amenagement(0); |
1178 |
// Récupération des champs nécessaires à la simulation |
1179 |
$list_fields = $inst_taxe_amenagement->get_list_fields_simulation(); |
1180 |
|
1181 |
// Pour chaque champ |
1182 |
foreach ($list_fields as $field) { |
1183 |
// Si un seul des champs requis a une valeur |
1184 |
$getVal = $this->getVal($field); |
1185 |
if (!empty($getVal)) { |
1186 |
// |
1187 |
$valF = $val; |
1188 |
} |
1189 |
} |
1190 |
|
1191 |
// Met à jour les montants du dossier |
1192 |
if ($dossier->update_dossier_tax_mtn($dossier->getVal('tax_secteur'), $valF) == false) { |
1193 |
// |
1194 |
$this->addToMessage(_("La mise a jour des montants de la simulation de la taxe d'amenagement a echouee.")); |
1195 |
return false; |
1196 |
} |
1197 |
|
1198 |
return true; |
1199 |
} |
1200 |
|
1201 |
/** |
1202 |
* Récupère toutes les valeurs de l'enregistrement. |
1203 |
* |
1204 |
* @return array |
1205 |
*/ |
1206 |
function get_form_val() { |
1207 |
|
1208 |
// Initialisation du tableau des résultats |
1209 |
$result = array(); |
1210 |
|
1211 |
// Pour chaque champs |
1212 |
foreach ($this->champs as $champ) { |
1213 |
// Récupère sa valeur |
1214 |
$result[$champ] = $this->getVal($champ); |
1215 |
} |
1216 |
|
1217 |
// Retourne le résultat |
1218 |
return $result; |
1219 |
} |
1220 |
|
1221 |
}// fin classe |
1222 |
?> |