1 |
<?php |
2 |
// $Id: dossier_modificatif.php,v 1.21 2010-11-08 15:30:15 fraynaud Exp $ |
3 |
/** |
4 |
* Fichiers requis |
5 |
*/ |
6 |
|
7 |
require_once "../obj/utils.class.php"; |
8 |
/** |
9 |
* Classe utils () |
10 |
*/ |
11 |
$f = new utils(NULL, "PC_modificatif", _("Modification de dossier"), "ico_traitement.png", "traitement modificatif"); |
12 |
$f->addHTMLHeadJs(array("../js/script.js")); |
13 |
// Paramétrage =============================================================== |
14 |
$DEBUG=0; |
15 |
$msg=""; |
16 |
// GET |
17 |
if (isset ($_GET['validation'])){ |
18 |
$validation=$_GET['validation']; |
19 |
}else{ |
20 |
$validation=0; |
21 |
} |
22 |
if (isset ($_GET['idx'])){ |
23 |
$idx=$_GET['idx']; |
24 |
}else{ |
25 |
$idx=0; |
26 |
} |
27 |
|
28 |
//Fonction d'affichage du formulaire |
29 |
function print_form($idx,$validation,$f) { |
30 |
$description = _("Cette page vous permet d'effectuer une modification ou un |
31 |
changement de demandeur sur le dossier")." ".$idx."."; |
32 |
$f->displayDescription($description); |
33 |
if (isset($_POST['submit-modif'])) { |
34 |
$date_modificatif = $_POST['date_modificatif']; |
35 |
$module = $_POST['module']; |
36 |
} else { |
37 |
$date_modificatif = ""; |
38 |
$module = ""; |
39 |
} |
40 |
|
41 |
(defined("PATH_OPENMAIRIE") ? "" : define("PATH_OPENMAIRIE", "")); |
42 |
require_once PATH_OPENMAIRIE."formulairedyn.class.php"; |
43 |
|
44 |
// Affichage du formulaire de changement de mot de passe |
45 |
echo "\n<div id=\"form-dossier_modificatif\" class=\"formulaire\">\n"; |
46 |
echo "<form action=\"dossier_modificatif.php?validation=".$validation. |
47 |
"&idx=".$idx."\" name=f1\" method=\"post\">\n"; |
48 |
// |
49 |
$maj = 0; |
50 |
$champs = array("dossier","date_modificatif", "module"); |
51 |
// |
52 |
$form = new formulaire(NULL, $validation, $maj, $champs); |
53 |
// |
54 |
$form->setLib("dossier", _("dossier")); |
55 |
$form->setType("dossier", "statiq"); |
56 |
$form->setTaille("dossier", 20); |
57 |
$form->setMax("dossier", 20); |
58 |
$form->setVal("dossier",$idx); |
59 |
// |
60 |
$form->setLib("date_modificatif", _("Date modificatif")); |
61 |
$form->setType("date_modificatif", "date"); |
62 |
$form->setTaille("date_modificatif", 10); |
63 |
$form->setMax("date_modificatif", 10); |
64 |
$form->setVal("date_modificatif",$date_modificatif); |
65 |
// |
66 |
$form->setLib("module", _("Module")); |
67 |
$form->setType("module", "select"); |
68 |
$values = array( |
69 |
array("modificatif", "transfert"), |
70 |
array(_("modificatif"),_("transfert")) |
71 |
); |
72 |
$form->setSelect("module",$values); |
73 |
$form->setTaille("module", 20); |
74 |
$form->setMax("module", 20); |
75 |
$form->setVal("module",$module); |
76 |
|
77 |
$form->required_field=array("date_modificatif"); |
78 |
// |
79 |
$form->entete(); |
80 |
$form->afficher($champs, $validation, false, false); |
81 |
$form->enpied(); |
82 |
// |
83 |
echo "\t<div class=\"formControls\">"; |
84 |
echo "<input type=\"submit\" name=\"submit-modif\" value='"._("transfert"). |
85 |
" / "._("modificatif")." "._("dossier")." ".$idx."' class=\"boutonFormulaire\" />"; |
86 |
echo "<a href=\"../scr/tab.php?obj=PC_modificatif\" class=\"retour\">Retour</a>"; |
87 |
echo "</div>\n"; |
88 |
// |
89 |
echo "</form>\n"; |
90 |
echo "</div>\n"; |
91 |
// |
92 |
echo "</div>\n"; |
93 |
} |
94 |
// ============================================================================= |
95 |
// validation = 0 |
96 |
// ============================================================================= |
97 |
if($validation==0){ |
98 |
$validation+=1; |
99 |
print_form($idx,$validation,$f); |
100 |
|
101 |
}else { // ===================== mise a jour ================================= |
102 |
// debut de transaction |
103 |
$f -> db->autoCommit(false); |
104 |
// traitement des post_ |
105 |
$correct=true; |
106 |
if (isset($_POST['date_modificatif'])){ |
107 |
$date_modificatif= $_POST['date_modificatif']; |
108 |
}else{ |
109 |
$date_modificatif =""; |
110 |
$correct=false; |
111 |
$msg=$msg._("date_modificatif")." "._("vide"); // a verifier |
112 |
} |
113 |
if (isset($_POST['module'])){ |
114 |
$module= $_POST['module']; |
115 |
}else{ |
116 |
$module ="modificatif"; |
117 |
} |
118 |
|
119 |
if ($_POST['date_modificatif'] != ""){ |
120 |
|
121 |
//formatDate=="AAAA-MM-JJ"){ |
122 |
$date = explode("/", $_POST['date_modificatif']); |
123 |
// controle de date |
124 |
if (sizeof($date) == 3 and (checkdate($date[1],$date[0],$date[2]))) { |
125 |
$date_modificatif = $date[2]."-".$date[1]."-".$date[0]; |
126 |
}else{ |
127 |
$f->displayMessage("error",_("La date modificatif")." ".$date_modificatif." "._("n'est pas au bon format.")); |
128 |
$correct=false; |
129 |
} |
130 |
|
131 |
}else{ |
132 |
$correct=false; |
133 |
$f->displayMessage("error",_("Le champ")." <span class=\"bold\">"._("date_modificatif")."</span> "._("est obligatoire.")); |
134 |
} |
135 |
// traitement |
136 |
if ($correct==true){ |
137 |
$valF=array(); |
138 |
$sql= "select * from ".DB_PREFIXE."dossier where dossier ='".$idx."'"; |
139 |
$res=$f -> db->query($sql); |
140 |
$f->isDatabaseError($res); |
141 |
while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)){ |
142 |
// nouveau dossier modificatif ou transfert |
143 |
$valF=array(); |
144 |
// nature |
145 |
$valF['nature']=$row['nature']; |
146 |
$valF['delai']=$row['delai']; |
147 |
$valF['annee']=$row['annee']; |
148 |
$valF['instructeur']=$row['instructeur']; |
149 |
// caracteristique |
150 |
if($row['architecte']!='') { |
151 |
$valF['architecte']=$row['architecte']; |
152 |
} else { |
153 |
$valF['architecte']=NULL; |
154 |
} |
155 |
$valF['travaux']=$row['travaux']; |
156 |
// terrain |
157 |
$valF['terrain_numero']=$row['terrain_numero']; |
158 |
$valF['terrain_numero_complement']=$row['terrain_numero_complement']; |
159 |
$valF['terrain_adresse']=$row['terrain_adresse']; |
160 |
$valF['terrain_adresse_complement']=$row['terrain_adresse_complement']; |
161 |
$valF['terrain_cp']=$row['terrain_cp']; |
162 |
$valF['terrain_ville']=$row['terrain_ville']; |
163 |
$valF['terrain_surface']=$row['terrain_surface']; |
164 |
$valF['terrain_surface_calcul']=$row['terrain_surface_calcul']; |
165 |
if($row['rivoli']!='') { |
166 |
$valF['rivoli']=$row['rivoli']; |
167 |
} else { |
168 |
$valF['rivoli']=NULL; |
169 |
} |
170 |
if($row['parcelle']!='') { |
171 |
$valF['parcelle']=$row['parcelle']; |
172 |
} else { |
173 |
$valF['parcelle']=NULL; |
174 |
} |
175 |
// divers |
176 |
$valF['batiment_nombre']=$row['batiment_nombre']; |
177 |
$valF['logement_nombre']=$row['logement_nombre']; |
178 |
$valF['lot']=$row['lot']; |
179 |
$valF['hauteur']=$row['hauteur']; |
180 |
$valF['piece_nombre']=$row['piece_nombre']; |
181 |
$valF['shon']=$row['shon']; |
182 |
$valF['shon_calcul']=$row['shon_calcul']; |
183 |
$valF['shob']=$row['shob']; |
184 |
// |
185 |
$valF['objet_dossier']=$row['objet_dossier']; |
186 |
$valF['amenagement']=$row['amenagement']; |
187 |
$valF['parcelle_lot']=$row['parcelle_lot']; //*** 3.0.0 |
188 |
$valF['parcelle_lot_lotissement']=$row['parcelle_lot_lotissement']; |
189 |
$valF['servitude']=$row['servitude']; |
190 |
$valF['description']=$row['description']; |
191 |
// TEMP |
192 |
$valF['temp1']=$row['temp1']; |
193 |
$valF['temp2']=$row['temp2']; |
194 |
$valF['temp3']=$row['temp3']; |
195 |
$valF['temp4']=$row['temp4']; |
196 |
$valF['temp5']=$row['temp5']; |
197 |
if($row['geom']!='') |
198 |
$valF['geom']=$row['geom']; |
199 |
// *** MODIF DEMANDEE LE 08/11/2010 |
200 |
$valF['date_depot']=$date_modificatif; |
201 |
$valF['date_demande']=$date_modificatif; |
202 |
$valF['etat']='initialiser'; |
203 |
|
204 |
if($module=="transfert"){ // TRANSFERT sans instruction et sans nom |
205 |
$valF['types']="Transfert"; |
206 |
$valF['demandeur_nom']="*transfert*"; |
207 |
// TRANSFERT INSTRUCTION SUPPRIMEE |
208 |
}else{ // modificatif nouveau nom et pas d instruction |
209 |
// valeur fixe |
210 |
// demandeur |
211 |
$valF['demandeur_civilite']=$row['demandeur_civilite']; |
212 |
$valF['demandeur_nom']=$row['demandeur_nom']; |
213 |
$valF['demandeur_societe']=$row['demandeur_societe']; |
214 |
$valF['demandeur_adresse']=$row['demandeur_adresse']; |
215 |
$valF['demandeur_cp']=$row['demandeur_cp']; |
216 |
$valF['demandeur_ville']=$row['demandeur_ville']; |
217 |
$valF['demandeur_pays']=$row['demandeur_pays']; |
218 |
$valF['demandeur_telephone']=$row['demandeur_telephone']; |
219 |
$valF['demandeur_email']=$row['demandeur_email']; |
220 |
$valF['demandeur_categorie']=$row['demandeur_categorie']; |
221 |
// delegataire |
222 |
$valF['delegataire_civilite'] = $row['delegataire_civilite']; |
223 |
$valF['delegataire_nom'] = $row['delegataire_nom']; |
224 |
$valF['delegataire_societe'] = $row['delegataire_societe']; |
225 |
$valF['delegataire_adresse'] = $row['delegataire_adresse']; |
226 |
$valF['delegataire_cp'] = $row['delegataire_cp']; |
227 |
$valF['delegataire_ville'] = $row['delegataire_ville']; |
228 |
$valF['delegataire_email'] = $row['delegataire_email']; |
229 |
$valF['delegataire_pays'] = $row['delegataire_pays']; |
230 |
$valF['delegataire_telephone'] = $row['delegataire_telephone']; |
231 |
$valF['delegataire'] = $row['delegataire']; |
232 |
//$valF['etat']='initialiser'; |
233 |
$valF['types']="Modificatif"; |
234 |
//$valF['date_depot']=$date_modificatif; |
235 |
//$valF['date_demande']=$date_modificatif; |
236 |
} |
237 |
} // fin while |
238 |
|
239 |
// gestion numero modificatif ou transfert 00 � 99 |
240 |
if(strlen($idx)>9){ |
241 |
$temp = substr($idx,strlen($idx)-1,2); |
242 |
$temp=intval($temp) + 1; |
243 |
$temp=str_pad($temp,2,"0", STR_PAD_LEFT); |
244 |
$valF['dossier']=substr($idx,0,strlen($idx)-2).$temp; |
245 |
}else |
246 |
$valF['dossier']=$idx."01"; |
247 |
// insertion du dossier modificatif |
248 |
// protection cle secondaire numerique |
249 |
if(!is_numeric($valF['instructeur'])) $valF['instructeur']= null; |
250 |
if(!is_numeric($valF['architecte'])) $valF['architecte']= null; |
251 |
if(!is_numeric($valF['travaux'])) $valF['travaux']= null; |
252 |
if(!is_numeric($valF['demandeur_categorie'])) $valF['demandeur_categorie']= null; |
253 |
if(!is_numeric($valF['parcelle_lot'])) $valF['parcelle_lot']= null; |
254 |
|
255 |
// cle secondaire alpha vide (contrainte integrite pgsql) |
256 |
if($valF['demandeur_civilite']=='') $valF['demandeur_civilite']= null; |
257 |
if($valF['delegataire_civilite']=='') $valF['delegataire_civilite']= null; |
258 |
|
259 |
// protection des numeriques |
260 |
if(!is_numeric($valF['delai'])) $valF['delai']=0; |
261 |
if(!is_numeric($valF['terrain_surface'])) unset ($valF['terrain_surface']); |
262 |
if(!is_numeric($valF['batiment_nombre'])) unset ($valF['batiment_nombre']); |
263 |
if(!is_numeric($valF['logement_nombre'])) unset ($valF['logement_nombre']); |
264 |
if(!is_numeric($valF['shon'])) unset ($valF['shon']); |
265 |
if(!is_numeric($valF['shob'])) unset ($valF['shob']); |
266 |
if(!is_numeric($valF['lot'])) unset ($valF['lot']); |
267 |
if(!is_numeric($valF['hauteur'])) unset ($valF['hauteur']); |
268 |
if(!is_numeric($valF['piece_nombre'])) unset ($valF['piece_nombre']); |
269 |
if(!is_numeric($valF['shon_calcul'])) unset ($valF['shon_calcul']); |
270 |
if(!is_numeric($valF['terrain_surface_calcul'])) unset ($valF['terrain_surface_calcul']); |
271 |
$res4= $f -> db->autoExecute(DB_PREFIXE."dossier",$valF,DB_AUTOQUERY_INSERT); |
272 |
$f->isDatabaseError($res4); |
273 |
$f->addToMessage("ok", _("dossier")." ".$valF['dossier']." ".$row['demandeur_nom']." "._("ajoute"). |
274 |
" ".$f -> db->affectedRows()." "._("table")." dossier <br>"); |
275 |
// insertion des parcelles dans TERRAIN pour le nouveau dossier |
276 |
$sql= "select * from ".DB_PREFIXE."terrain where dossier ='".$idx."'"; |
277 |
$res5=$f -> db->query($sql); |
278 |
$f->isDatabaseError($res5); |
279 |
$valG['dossier']=$valF['dossier']; |
280 |
while ($row5=& $res5->fetchRow(DB_FETCHMODE_ASSOC)){ |
281 |
$valG['parcelle']=$row5['parcelle']; |
282 |
$valG['terrain']=$f -> db->nextId(DB_PREFIXE.'terrain'); |
283 |
// insertion des terrains concernes |
284 |
$res10= $f -> db->autoExecute(DB_PREFIXE."terrain",$valG,DB_AUTOQUERY_INSERT); |
285 |
$f->isDatabaseError($res10); |
286 |
$f->addToMessage("ok", _("terrain")." ".$valG['terrain']." "._("ajoute")." ". |
287 |
$f -> db->affectedRows()." "._("table")." terrain <br>"); |
288 |
} |
289 |
// transfert destination_shon |
290 |
$valH=array(); |
291 |
$sql= "select * from ".DB_PREFIXE."destination_shon where dossier ='".$idx."'"; |
292 |
$res11 =$f -> db->query($sql); |
293 |
$f->isDatabaseError($res11); |
294 |
$valH['dossier']=$valF['dossier']; |
295 |
while ($row11=& $res11->fetchRow(DB_FETCHMODE_ASSOC)){ |
296 |
$valH['destination_shon']=$f -> db->nextId(DB_PREFIXE.'destination_shon'); |
297 |
$valH['destination']=$row11['destination']; //*** 3.0.0 |
298 |
if(is_numeric($row11['shon'])) |
299 |
$valH['shon']=$row11['shon']; |
300 |
if(is_numeric($row11['shon_anterieure'])) |
301 |
$valH['shon_anterieure']=$row11['shon_anterieure']; |
302 |
if(is_numeric($row11['shon_demolie'])) |
303 |
$valH['shon_demolie']=$row11['shon_demolie']; |
304 |
if(is_numeric($row11['shon_anterieure_supprimee'])) |
305 |
$valH['shon_anterieure_supprimee']=$row11['shon_anterieure_supprimee']; |
306 |
if(is_numeric($row11['shon_nouvelle_transformee'])) |
307 |
$valH['shon_nouvelle_transformee']=$row11['shon_nouvelle_transformee']; |
308 |
if(is_numeric($row11['shon_nouvelle'])) |
309 |
$valH['shon_nouvelle']=$row11['shon_nouvelle']; |
310 |
if(is_numeric($row11['shon_shob_transformee'])) |
311 |
$valH['shon_shob_transformee']=$row11['shon_shob_transformee']; |
312 |
$res12= $f -> db->autoExecute(DB_PREFIXE."destination_shon",$valH,DB_AUTOQUERY_INSERT); |
313 |
$f->isDatabaseError($res12); |
314 |
$f->addToMessage("ok", _("destination")." ".$valH['destination_shon']." "._("ajoute"). |
315 |
" ".$f -> db->affectedRows()." "._("table")." destination_shon <br>"); |
316 |
} |
317 |
// bloc note |
318 |
$valH=array(); |
319 |
$sql= "select * from ".DB_PREFIXE."blocnote where dossier ='".$idx."'"; |
320 |
$res13 =$f -> db->query($sql); |
321 |
$f->isDatabaseError($res); |
322 |
$valH['dossier']=$valF['dossier']; |
323 |
while ($row13=& $res13->fetchRow(DB_FETCHMODE_ASSOC)){ |
324 |
$valH['blocnote']=$f -> db->nextId(DB_PREFIXE.'blocnote'); |
325 |
$valH['note']=$row13['note']; |
326 |
$valH['categorie']=$row13['categorie']; |
327 |
$res14= $f -> db->autoExecute(DB_PREFIXE."blocnote",$valH,DB_AUTOQUERY_INSERT); |
328 |
$f->isDatabaseError($res14); |
329 |
$f->addToMessage("ok", _("blocnote")." ".$valH['blocnote']." "._("ajoute")." ". |
330 |
$f -> db->affectedRows()." "._("table")." blocnote <br>" ); |
331 |
} |
332 |
// statistiques |
333 |
$valH=array(); |
334 |
$sql= "select * from ".DB_PREFIXE."statistique where dossier ='".$idx."'"; |
335 |
$res15 =$f -> db->query($sql); |
336 |
$f->isDatabaseError($res15); |
337 |
$valH['dossier']=$valF['dossier']; |
338 |
while ($row15=& $res15->fetchRow(DB_FETCHMODE_ASSOC)){ |
339 |
$valH['statistique']=$f -> db->nextId(DB_PREFIXE.'statistique'); |
340 |
$valH['parametre']=$row15['parametre']; |
341 |
$valH['valeur']=$row15['valeur']; |
342 |
$res16= $f -> db->autoExecute(DB_PREFIXE."statistique",$valH,DB_AUTOQUERY_INSERT); |
343 |
$f->isDatabaseError($res16); |
344 |
$f->addToMessage("ok",_("statistique")." ".$valH['statistique']." "._("ajoute")." ". |
345 |
$f -> db->affectedRows()." "._("table")." statistique <br>"); |
346 |
} |
347 |
} else { |
348 |
print_form($idx,$validation,$f); |
349 |
} |
350 |
$f -> db->commit(); |
351 |
$f->displayMessages(); |
352 |
} |
353 |
echo "<div class=\"formControls\">"; |
354 |
echo "<a href=\"../scr/tab.php?obj=PC_modificatif\" class=\"retour\">Retour</a>"; |
355 |
echo "</div>"; |
356 |
?> |