1 |
fraynaud |
178 |
<?php |
2 |
fmichon |
1515 |
/** |
3 |
nhaye |
1785 |
* Ce script permet de générer un document type texte contenant |
4 |
|
|
* la liste de toutes les demandes d'autorisation dd'occupation de droit du sol |
5 |
|
|
* formulées entre deux dates. |
6 |
fmichon |
1515 |
* |
7 |
vpihour |
2119 |
* @package openads |
8 |
fmichon |
1515 |
* @version SVN : $Id$ |
9 |
|
|
*/ |
10 |
|
|
|
11 |
nhaye |
1785 |
// Appel des classes |
12 |
fraynaud |
178 |
require_once "../obj/utils.class.php"; |
13 |
|
|
require_once "../app/sitadel.class.php"; |
14 |
fraynaud |
184 |
require_once "sitadel.inc"; |
15 |
fmichon |
380 |
$f = new utils(NULL, "export_sitadel", _("export SITADEL"), "ico_reqmo.png", "export"); |
16 |
nhaye |
1785 |
|
17 |
fraynaud |
178 |
/** |
18 |
|
|
* Description de la page |
19 |
|
|
*/ |
20 |
|
|
$description = _("Cette page vous permet de Transmettre les dossiers suivant la procedure SITADEL"); |
21 |
|
|
$f->displayDescription($description); |
22 |
nhaye |
3226 |
$post = $f->get_submitted_post_value(); |
23 |
nhaye |
1785 |
// 1ere étape : affichage du formulaire permettant le choix d'un interval de date |
24 |
|
|
// ainsi que l'ordre |
25 |
nhaye |
3226 |
if (empty($post)) { |
26 |
nhaye |
1826 |
// Récupération des paramètres |
27 |
nhaye |
3226 |
if ($f->get_submitted_get_value("datedebut") !== null AND $f->get_submitted_get_value("datedebut") != "") { |
28 |
|
|
$datedebut = substr($f->get_submitted_get_value("datedebut"),8,2)."/".substr($f->get_submitted_get_value("datedebut"),5,2)."/".substr($f->get_submitted_get_value("datedebut"),0,4); |
29 |
nhaye |
1826 |
} else { |
30 |
|
|
$datedebut = ""; |
31 |
|
|
} |
32 |
nhaye |
3226 |
if ($f->get_submitted_get_value("datefin") !== null AND $f->get_submitted_get_value("datefin") != "") { |
33 |
|
|
$datefin = substr($f->get_submitted_get_value("datefin"),8,2)."/".substr($f->get_submitted_get_value("datefin"),5,2)."/".substr($f->get_submitted_get_value("datefin"),0,4); |
34 |
nhaye |
1826 |
} else { |
35 |
|
|
$datefin = ""; |
36 |
|
|
} |
37 |
nhaye |
3226 |
if ($f->get_submitted_get_value("numero") !== null AND $f->get_submitted_get_value("numero") != "") { |
38 |
|
|
$numero = $f->get_submitted_get_value("numero"); |
39 |
nhaye |
1826 |
} else { |
40 |
|
|
$numero = ""; |
41 |
|
|
} |
42 |
|
|
affichageFormulaire($datedebut, $datefin, $numero); |
43 |
nhaye |
1785 |
} else { // Traitement après validation du formulaire |
44 |
|
|
|
45 |
|
|
// init de la valeur d'erreur |
46 |
fraynaud |
178 |
$correct=true; |
47 |
nhaye |
1826 |
// init de la chaîne contenant l'erreur |
48 |
|
|
$erreur = ""; |
49 |
nhaye |
1785 |
|
50 |
|
|
// XXX |
51 |
fraynaud |
193 |
$longueurenregistrement= 0 ; |
52 |
nhaye |
1785 |
|
53 |
|
|
// XXX |
54 |
fraynaud |
193 |
$t10 = "||||||||||"; // 10 | |
55 |
nhaye |
1785 |
|
56 |
|
|
// Initialisation des dates de début et de fin |
57 |
fraynaud |
193 |
$datedebut =''; |
58 |
|
|
$datefin=''; |
59 |
nhaye |
1785 |
|
60 |
|
|
// Traitement des erreurs |
61 |
nhaye |
3226 |
if ($f->get_submitted_post_value("datedebut") == "") { |
62 |
fraynaud |
190 |
$correct=false; |
63 |
nhaye |
1785 |
} else { |
64 |
nhaye |
3226 |
$datedebut = substr($f->get_submitted_post_value("datedebut"),6,4). |
65 |
|
|
"-".substr($f->get_submitted_post_value("datedebut"),3,2)."-". |
66 |
|
|
substr($f->get_submitted_post_value("datedebut"),0,2); |
67 |
nhaye |
1785 |
} |
68 |
nhaye |
3226 |
if ($f->get_submitted_post_value("datefin") == "") { |
69 |
fraynaud |
190 |
$correct=false; |
70 |
nhaye |
1785 |
} else { |
71 |
nhaye |
3226 |
$datefin = substr($f->get_submitted_post_value("datefin"),6,4). |
72 |
|
|
"-".substr($f->get_submitted_post_value("datefin"),3,2)."-". |
73 |
|
|
substr($f->get_submitted_post_value("datefin"),0,2); |
74 |
nhaye |
1785 |
} |
75 |
nhaye |
3226 |
$numero = $f->get_submitted_post_value("numero"); |
76 |
nhaye |
1871 |
if ($correct === true){ // *** |
77 |
nhaye |
1785 |
// Requête permettant de lister tous les dossiers de l'export |
78 |
nhaye |
1797 |
$sql= "SELECT dossier.dossier, |
79 |
|
|
dossier_instruction_type.mouvement_sitadel, |
80 |
|
|
dossier.date_depot, |
81 |
|
|
dossier.date_decision, |
82 |
|
|
dossier.date_chantier, |
83 |
|
|
dossier.date_achevement, |
84 |
|
|
dossier.terrain_references_cadastrales as dossier_terrain_references_cadastrales, |
85 |
|
|
dossier.terrain_adresse_voie_numero as dossier_terrain_adresse_voie_numero, |
86 |
nhaye |
2248 |
dossier.terrain_adresse_voie as dossier_terrain_adresse_voie, |
87 |
nhaye |
1797 |
dossier.terrain_adresse_lieu_dit as dossier_terrain_adresse_lieu_dit, |
88 |
|
|
dossier.terrain_adresse_localite as dossier_terrain_adresse_localite, |
89 |
|
|
dossier.terrain_adresse_code_postal as dossier_terrain_adresse_code_postal, |
90 |
|
|
dossier.terrain_adresse_bp as dossier_terrain_adresse_bp, |
91 |
|
|
dossier.terrain_adresse_cedex as dossier_terrain_adresse_cedex, |
92 |
|
|
dossier_autorisation_type.code, |
93 |
vpihour |
1809 |
dossier.date_limite, |
94 |
|
|
dossier.date_notification_delai, |
95 |
nhaye |
1797 |
|
96 |
vpihour |
3197 |
arrondissement.code_impots as code_impots, |
97 |
|
|
|
98 |
nhaye |
2559 |
autorite_competente.autorite_competente_sitadel, |
99 |
nhaye |
1797 |
pp.type_demandeur, |
100 |
|
|
pp.qualite, |
101 |
|
|
civilite_pp.libelle as civilite_pp, |
102 |
|
|
pp.particulier_nom as pp_particulier_nom, |
103 |
|
|
pp.particulier_prenom as pp_particulier_prenom, |
104 |
|
|
pp.personne_morale_denomination as pp_personne_morale_denomination, |
105 |
|
|
pp.personne_morale_raison_sociale as pp_personne_morale_raison_sociale, |
106 |
|
|
pp.personne_morale_siret as pp_personne_morale_siret, |
107 |
|
|
pp.personne_morale_categorie_juridique as pp_personne_morale_categorie_juridique, |
108 |
|
|
civilite_pm.libelle as civilite_pm_libelle, |
109 |
|
|
pp.personne_morale_nom as pp_personne_morale_nom, |
110 |
|
|
pp.personne_morale_prenom as pp_personne_morale_prenom, |
111 |
|
|
|
112 |
|
|
pp.numero as pp_numero, |
113 |
|
|
pp.voie as pp_voie, |
114 |
|
|
pp.complement as pp_complement, |
115 |
|
|
pp.lieu_dit as pp_lieu_dit, |
116 |
|
|
pp.localite as pp_localite, |
117 |
|
|
pp.code_postal as pp_code_postal, |
118 |
|
|
pp.bp as pp_bp, |
119 |
|
|
pp.cedex as pp_cedex, |
120 |
|
|
pp.pays as pp_pays, |
121 |
|
|
pp.division_territoriale as pp_division_territoriale, |
122 |
|
|
|
123 |
|
|
civilite_delegataire.libelle as civilite_delegataire_libelle, |
124 |
|
|
delegataire.particulier_nom as delegataire_particulier_nom, |
125 |
|
|
delegataire.particulier_prenom as delegataire_particulier_prenom, |
126 |
|
|
delegataire.numero as delegataire_numero, |
127 |
|
|
delegataire.voie as delegataire_voie, |
128 |
|
|
delegataire.complement as delegataire_complement, |
129 |
|
|
delegataire.lieu_dit as delegataire_lieu_dit, |
130 |
|
|
delegataire.localite as delegataire_localite, |
131 |
|
|
delegataire.code_postal as delegataire_code_postal, |
132 |
|
|
delegataire.bp as delegataire_bp, |
133 |
|
|
delegataire.cedex as delegataire_cedex, |
134 |
|
|
delegataire.pays as delegataire_pays, |
135 |
|
|
delegataire.division_territoriale as delegataire_division_territoriale, |
136 |
|
|
|
137 |
|
|
pp.telephone_fixe as pp_telephone_fixe, |
138 |
vpihour |
1809 |
pp.courriel as pp_courriel, |
139 |
|
|
|
140 |
|
|
donnees_techniques.co_archi_recours, |
141 |
|
|
donnees_techniques.am_terr_surf, |
142 |
|
|
donnees_techniques.am_lotiss, |
143 |
nhaye |
1863 |
donnees_techniques.terr_juri_zac, |
144 |
vpihour |
1809 |
donnees_techniques.terr_juri_afu, |
145 |
vpihour |
3318 |
donnees_techniques.co_projet_desc, |
146 |
|
|
donnees_techniques.am_projet_desc, |
147 |
|
|
donnees_techniques.dm_projet_desc, |
148 |
vpihour |
1809 |
donnees_techniques.co_cstr_nouv, |
149 |
|
|
donnees_techniques.co_cstr_exist, |
150 |
|
|
donnees_techniques.co_modif_aspect, |
151 |
|
|
donnees_techniques.co_modif_struct, |
152 |
|
|
donnees_techniques.co_cloture, |
153 |
|
|
donnees_techniques.co_trx_exten, |
154 |
|
|
donnees_techniques.co_trx_surelev, |
155 |
|
|
donnees_techniques.co_trx_nivsup, |
156 |
|
|
donnees_techniques.co_trx_amgt, |
157 |
|
|
donnees_techniques.co_anx_pisc, |
158 |
|
|
donnees_techniques.co_anx_gara, |
159 |
|
|
donnees_techniques.co_anx_veran, |
160 |
|
|
donnees_techniques.co_anx_abri, |
161 |
|
|
donnees_techniques.co_anx_autr, |
162 |
|
|
donnees_techniques.co_bat_niv_nb, |
163 |
|
|
donnees_techniques.su_avt_shon1, |
164 |
|
|
donnees_techniques.su_avt_shon2, |
165 |
|
|
donnees_techniques.su_avt_shon3, |
166 |
|
|
donnees_techniques.su_avt_shon4, |
167 |
|
|
donnees_techniques.su_avt_shon5, |
168 |
|
|
donnees_techniques.su_avt_shon6, |
169 |
|
|
donnees_techniques.su_avt_shon7, |
170 |
|
|
donnees_techniques.su_avt_shon8, |
171 |
|
|
donnees_techniques.su_avt_shon9, |
172 |
|
|
donnees_techniques.su_demo_shon1, |
173 |
|
|
donnees_techniques.su_demo_shon2, |
174 |
|
|
donnees_techniques.su_demo_shon3, |
175 |
|
|
donnees_techniques.su_demo_shon4, |
176 |
|
|
donnees_techniques.su_demo_shon5, |
177 |
|
|
donnees_techniques.su_demo_shon6, |
178 |
|
|
donnees_techniques.su_demo_shon7, |
179 |
|
|
donnees_techniques.su_demo_shon8, |
180 |
|
|
donnees_techniques.su_demo_shon9, |
181 |
|
|
donnees_techniques.su_chge_shon1, |
182 |
|
|
donnees_techniques.su_chge_shon2, |
183 |
|
|
donnees_techniques.su_chge_shon3, |
184 |
|
|
donnees_techniques.su_chge_shon4, |
185 |
|
|
donnees_techniques.su_chge_shon5, |
186 |
|
|
donnees_techniques.su_chge_shon6, |
187 |
|
|
donnees_techniques.su_chge_shon7, |
188 |
|
|
donnees_techniques.su_chge_shon8, |
189 |
|
|
donnees_techniques.su_chge_shon9, |
190 |
|
|
donnees_techniques.su_trsf_shon1, |
191 |
|
|
donnees_techniques.su_trsf_shon2, |
192 |
|
|
donnees_techniques.su_trsf_shon3, |
193 |
|
|
donnees_techniques.su_trsf_shon4, |
194 |
|
|
donnees_techniques.su_trsf_shon5, |
195 |
|
|
donnees_techniques.su_trsf_shon6, |
196 |
|
|
donnees_techniques.su_trsf_shon7, |
197 |
|
|
donnees_techniques.su_trsf_shon8, |
198 |
|
|
donnees_techniques.su_trsf_shon9, |
199 |
|
|
donnees_techniques.su_cstr_shon1, |
200 |
|
|
donnees_techniques.su_cstr_shon2, |
201 |
|
|
donnees_techniques.su_cstr_shon3, |
202 |
|
|
donnees_techniques.su_cstr_shon4, |
203 |
|
|
donnees_techniques.su_cstr_shon5, |
204 |
|
|
donnees_techniques.su_cstr_shon6, |
205 |
|
|
donnees_techniques.su_cstr_shon7, |
206 |
|
|
donnees_techniques.su_cstr_shon8, |
207 |
|
|
donnees_techniques.su_cstr_shon9, |
208 |
|
|
donnees_techniques.su_tot_shon1, |
209 |
|
|
donnees_techniques.su_tot_shon2, |
210 |
|
|
donnees_techniques.su_tot_shon3, |
211 |
|
|
donnees_techniques.su_tot_shon4, |
212 |
|
|
donnees_techniques.su_tot_shon5, |
213 |
|
|
donnees_techniques.su_tot_shon6, |
214 |
|
|
donnees_techniques.su_tot_shon7, |
215 |
|
|
donnees_techniques.su_tot_shon8, |
216 |
|
|
donnees_techniques.su_tot_shon9, |
217 |
|
|
donnees_techniques.co_sp_transport, |
218 |
|
|
donnees_techniques.co_sp_enseign, |
219 |
|
|
donnees_techniques.co_sp_sante, |
220 |
|
|
donnees_techniques.co_sp_act_soc, |
221 |
|
|
donnees_techniques.co_sp_ouvr_spe, |
222 |
|
|
donnees_techniques.co_sp_culture, |
223 |
|
|
donnees_techniques.dm_tot_log_nb, |
224 |
|
|
donnees_techniques.co_tot_ind_nb, |
225 |
|
|
donnees_techniques.co_tot_coll_nb, |
226 |
|
|
donnees_techniques.co_tot_log_nb, |
227 |
|
|
donnees_techniques.co_resid_agees, |
228 |
|
|
donnees_techniques.co_resid_etud, |
229 |
|
|
donnees_techniques.co_resid_tourism, |
230 |
|
|
donnees_techniques.co_resid_hot_soc, |
231 |
|
|
donnees_techniques.co_resid_hand, |
232 |
|
|
donnees_techniques.co_resid_autr, |
233 |
|
|
donnees_techniques.co_resid_autr_desc, |
234 |
|
|
donnees_techniques.co_uti_pers, |
235 |
|
|
donnees_techniques.co_uti_princ, |
236 |
|
|
donnees_techniques.co_uti_secon, |
237 |
|
|
donnees_techniques.co_uti_vente, |
238 |
|
|
donnees_techniques.co_uti_loc, |
239 |
|
|
donnees_techniques.co_foyer_chamb_nb, |
240 |
|
|
donnees_techniques.co_fin_lls_nb, |
241 |
|
|
donnees_techniques.co_fin_aa_nb, |
242 |
nhaye |
1821 |
donnees_techniques.co_fin_ptz_nb, |
243 |
vpihour |
1809 |
donnees_techniques.co_fin_autr_nb, |
244 |
|
|
donnees_techniques.co_mais_piece_nb, |
245 |
|
|
donnees_techniques.co_log_1p_nb, |
246 |
|
|
donnees_techniques.co_log_2p_nb, |
247 |
|
|
donnees_techniques.co_log_3p_nb, |
248 |
|
|
donnees_techniques.co_log_4p_nb, |
249 |
|
|
donnees_techniques.co_log_5p_nb, |
250 |
|
|
donnees_techniques.co_log_6p_nb, |
251 |
nhaye |
1863 |
donnees_techniques.mod_desc, |
252 |
vpihour |
1809 |
|
253 |
nhaye |
1831 |
donnees_techniques.doc_date, |
254 |
|
|
donnees_techniques.doc_tot_trav, |
255 |
|
|
donnees_techniques.doc_tranche_trav, |
256 |
|
|
donnees_techniques.doc_tranche_trav_desc, |
257 |
|
|
donnees_techniques.doc_surf, |
258 |
|
|
donnees_techniques.doc_nb_log, |
259 |
|
|
donnees_techniques.doc_nb_log_indiv, |
260 |
|
|
donnees_techniques.doc_nb_log_coll, |
261 |
|
|
donnees_techniques.doc_nb_log_lls, |
262 |
|
|
donnees_techniques.doc_nb_log_aa, |
263 |
|
|
donnees_techniques.doc_nb_log_ptz, |
264 |
|
|
donnees_techniques.doc_nb_log_autre, |
265 |
|
|
donnees_techniques.daact_date, |
266 |
|
|
donnees_techniques.daact_date_chgmt_dest, |
267 |
|
|
donnees_techniques.daact_tot_trav, |
268 |
|
|
donnees_techniques.daact_tranche_trav, |
269 |
|
|
donnees_techniques.daact_tranche_trav_desc, |
270 |
|
|
donnees_techniques.daact_surf, |
271 |
|
|
donnees_techniques.daact_nb_log, |
272 |
|
|
donnees_techniques.daact_nb_log_indiv, |
273 |
|
|
donnees_techniques.daact_nb_log_coll, |
274 |
|
|
donnees_techniques.daact_nb_log_lls, |
275 |
|
|
donnees_techniques.daact_nb_log_aa, |
276 |
|
|
donnees_techniques.daact_nb_log_ptz, |
277 |
|
|
donnees_techniques.daact_nb_log_autre, |
278 |
|
|
|
279 |
|
|
dossier_autorisation.date_depot as date_depot_da, |
280 |
|
|
dossier_autorisation.date_decision as date_decision_da, |
281 |
|
|
dossier_autorisation.date_validite as date_validite_da, |
282 |
|
|
dossier_autorisation.date_chantier as date_chantier_da, |
283 |
|
|
dossier_autorisation.date_achevement as date_achevement_da, |
284 |
|
|
avis_decision.typeavis as typeavis_da, |
285 |
vpihour |
1809 |
avis_decision.sitadel, |
286 |
nhaye |
1831 |
avis_decision.sitadel_motif, |
287 |
|
|
etat.statut as statut_di |
288 |
nhaye |
1797 |
|
289 |
vpihour |
1809 |
FROM ".DB_PREFIXE."dossier"; |
290 |
nhaye |
1797 |
$sql .= " INNER JOIN ".DB_PREFIXE."dossier_instruction_type |
291 |
|
|
ON dossier.dossier_instruction_type = |
292 |
|
|
dossier_instruction_type.dossier_instruction_type |
293 |
|
|
|
294 |
|
|
INNER JOIN ".DB_PREFIXE."dossier_autorisation_type_detaille |
295 |
|
|
ON dossier_instruction_type.dossier_autorisation_type_detaille |
296 |
|
|
=dossier_autorisation_type_detaille.dossier_autorisation_type_detaille |
297 |
|
|
INNER JOIN ".DB_PREFIXE."dossier_autorisation_type |
298 |
|
|
ON dossier_autorisation_type.dossier_autorisation_type |
299 |
|
|
=dossier_autorisation_type_detaille.dossier_autorisation_type |
300 |
nhaye |
1831 |
INNER JOIN ".DB_PREFIXE."dossier_autorisation |
301 |
|
|
ON dossier_autorisation.dossier_autorisation |
302 |
|
|
=dossier.dossier_autorisation |
303 |
nhaye |
2559 |
INNER JOIN ".DB_PREFIXE."autorite_competente |
304 |
|
|
ON autorite_competente.autorite_competente |
305 |
|
|
=dossier.autorite_competente |
306 |
nhaye |
1797 |
|
307 |
vpihour |
1809 |
LEFT JOIN ".DB_PREFIXE."donnees_techniques |
308 |
|
|
ON donnees_techniques.dossier_instruction = dossier.dossier |
309 |
|
|
LEFT JOIN ".DB_PREFIXE."avis_decision |
310 |
|
|
ON avis_decision.avis_decision = dossier.avis_decision |
311 |
nhaye |
1797 |
LEFT JOIN ".DB_PREFIXE."lien_dossier_demandeur as ldd_pp |
312 |
|
|
ON ldd_pp.dossier = dossier.dossier |
313 |
|
|
AND ldd_pp.petitionnaire_principal is TRUE |
314 |
|
|
LEFT JOIN ".DB_PREFIXE."demandeur as pp |
315 |
|
|
ON ldd_pp.demandeur = pp.demandeur |
316 |
|
|
LEFT JOIN ".DB_PREFIXE."civilite as civilite_pp |
317 |
|
|
ON civilite_pp.civilite = pp.particulier_civilite |
318 |
|
|
LEFT JOIN ".DB_PREFIXE."civilite as civilite_pm |
319 |
|
|
ON civilite_pm.civilite = pp.particulier_civilite |
320 |
|
|
LEFT JOIN ".DB_PREFIXE."lien_dossier_demandeur as ldd_delegataire |
321 |
|
|
ON ldd_delegataire.dossier = dossier.dossier |
322 |
|
|
LEFT JOIN ".DB_PREFIXE."demandeur as delegataire |
323 |
|
|
ON ldd_delegataire.demandeur = delegataire.demandeur AND delegataire.qualite='delegataire' |
324 |
|
|
LEFT JOIN ".DB_PREFIXE."civilite as civilite_delegataire |
325 |
|
|
ON civilite_delegataire.civilite = delegataire.particulier_civilite |
326 |
nhaye |
1831 |
LEFT JOIN ".DB_PREFIXE."etat |
327 |
|
|
ON etat.etat = dossier.etat |
328 |
vpihour |
3197 |
LEFT JOIN ".DB_PREFIXE."arrondissement |
329 |
|
|
ON dossier_autorisation.arrondissement=arrondissement.arrondissement |
330 |
nhaye |
1797 |
"; |
331 |
|
|
$sql .= " WHERE dossier_instruction_type.mouvement_sitadel IS NOT NULL"; |
332 |
nhaye |
1798 |
$sql .= " AND dossier.a_qualifier IS NOT TRUE"; |
333 |
nhaye |
1797 |
$sql .= " AND ((dossier.date_depot >='".$datedebut."' AND dossier.date_depot<='".$datefin."')"; |
334 |
|
|
$sql .= " OR (dossier.date_decision>='".$datedebut."' AND dossier.date_decision<='".$datefin."')"; |
335 |
nhaye |
1834 |
$sql .= " OR (dossier.date_chantier>='".$datedebut."' AND dossier.date_chantier<='".$datefin."')"; |
336 |
|
|
$sql .= " OR (dossier.date_achevement>='".$datedebut."' AND dossier.date_achevement<='".$datefin."'))"; |
337 |
nhaye |
1797 |
$sql .= " order by dossier.date_depot"; |
338 |
fraynaud |
178 |
$res = $f->db -> query ($sql); |
339 |
vpihour |
1809 |
$f->addToLog("app/sitadel.php : db->query(\"".$sql."\")", VERBOSE_MODE); |
340 |
fraynaud |
178 |
$f->isDatabaseError($res); |
341 |
fraynaud |
190 |
$export=""; |
342 |
fraynaud |
178 |
while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)){ |
343 |
nhaye |
1785 |
// initialisation de la classe permettant la mise en forme de chaque ligne de l'export |
344 |
vpihour |
3197 |
$g = new sitadel($row['dossier'], $f); |
345 |
vpihour |
1809 |
$g->setRow($row); |
346 |
fraynaud |
187 |
// sitadel |
347 |
vpihour |
1809 |
$g->setVal($val); |
348 |
nhaye |
1785 |
// |
349 |
fraynaud |
187 |
// parametre |
350 |
nhaye |
1785 |
// $sql = "select parametre, valeur from ".DB_PREFIXE."statistique where dossier ='".$row['dossier']."'"; |
351 |
|
|
// $res1 = $f->db -> query ($sql); |
352 |
|
|
// $f->isDatabaseError($res1); |
353 |
|
|
// while ($row1=& $res1->fetchRow(DB_FETCHMODE_ASSOC)){ |
354 |
|
|
// $g->parametre[$row1['parametre']]=$row1['valeur']; |
355 |
|
|
// } |
356 |
vpihour |
3318 |
$departement =str_pad($f->collectivite["departement"], 3, "0", STR_PAD_LEFT); |
357 |
fraynaud |
187 |
$commune =$f->collectivite["commune"]; |
358 |
|
|
$region =$f->collectivite["region"]; |
359 |
|
|
// depot |
360 |
|
|
$depot=""; |
361 |
nhaye |
1785 |
|
362 |
nhaye |
1797 |
// Tous les mouvements autres que transfert ont comme mouvement le code DEPOT |
363 |
nhaye |
1785 |
// les décisions devant êtres précédées par le dépôt correspondant, |
364 |
|
|
// les dossiers avec date de décision comprise dans l'interval fourni sont |
365 |
|
|
// réaffichés en tant que dépôts (mouvement DEPOT) |
366 |
nhaye |
1797 |
if ($row['mouvement_sitadel'] != 'TRANSFERT' |
367 |
nhaye |
1866 |
and $row['mouvement_sitadel'] != 'SUPPRESSION' |
368 |
fraynaud |
190 |
and (($row['date_depot'] >= $datedebut |
369 |
nhaye |
1785 |
and $row['date_depot'] <= $datefin) |
370 |
fraynaud |
190 |
or ($row['date_decision'] >= $datedebut |
371 |
nhaye |
1785 |
and $row['date_decision'] <= $datefin))) { |
372 |
vpihour |
3318 |
$depot.=$g->entete("DEPOT",$departement,$commune); |
373 |
fraynaud |
187 |
$depot.=$g->etatcivil(); |
374 |
|
|
$depot.=$g->adresse(); |
375 |
|
|
$depot.=$g->delegataire(); |
376 |
nhaye |
1797 |
$depot.=$g->meltel($row['mouvement_sitadel']); |
377 |
fraynaud |
187 |
$depot.=$g->adresse_terrain(); |
378 |
|
|
$depot.=$g->parcelle(); |
379 |
|
|
// =========================== |
380 |
|
|
// contrat maison individuelle |
381 |
|
|
// =========================== |
382 |
|
|
// sitadel : contrat| |
383 |
vpihour |
1809 |
// openads : non renseigne |
384 |
nhaye |
1866 |
$depot.= $g->defaultValue('contrat')."|"; |
385 |
fraynaud |
187 |
// ========== |
386 |
|
|
// architecte |
387 |
|
|
// ========== |
388 |
|
|
// sitadel : architecte| |
389 |
vpihour |
1809 |
// openads : données techniques.co_archi_recours |
390 |
nhaye |
1866 |
if($row['co_archi_recours'] == "t") { |
391 |
fraynaud |
187 |
$depot.= "1|"; |
392 |
nhaye |
1866 |
} else { |
393 |
fraynaud |
187 |
$depot.= "0|"; |
394 |
nhaye |
1866 |
} |
395 |
fraynaud |
187 |
// ===================== |
396 |
|
|
// utilisation data cnil |
397 |
|
|
// ====================== |
398 |
|
|
// sitadel : cnil |
399 |
vpihour |
1809 |
// openads : non renseigne |
400 |
nhaye |
1866 |
$depot.= $g->defaultValue('cnil'); |
401 |
fraynaud |
187 |
// fin d enregistrement depot |
402 |
|
|
$depot.="\n"; |
403 |
fraynaud |
178 |
} |
404 |
fraynaud |
187 |
|
405 |
nhaye |
1785 |
// Seuls les dossier de type transfert ont comme mouvement le code TRANSFERT |
406 |
fraynaud |
187 |
$transfert =""; |
407 |
nhaye |
1797 |
if($row['mouvement_sitadel']=='TRANSFERT' |
408 |
fraynaud |
190 |
and $row['date_depot'] >= $datedebut |
409 |
|
|
and $row['date_depot']<=$datefin){ |
410 |
vpihour |
3318 |
$transfert.=$g->entete("TRANSFERT",$departement,$commune); |
411 |
fraynaud |
187 |
$transfert.=$g->etatcivil(); |
412 |
|
|
$transfert.=$g->adresse(); |
413 |
nhaye |
1797 |
$transfert.=$g->meltel($row['mouvement_sitadel']); |
414 |
fraynaud |
187 |
$transfert.="\n"; |
415 |
fraynaud |
178 |
} |
416 |
fraynaud |
187 |
|
417 |
|
|
|
418 |
nhaye |
1785 |
// Une ligne de mouvement DECISION est insérée après chaque ligne |
419 |
|
|
// de mouvement DEPOT |
420 |
fraynaud |
187 |
$decision=""; |
421 |
nhaye |
1797 |
if ($row['mouvement_sitadel'] != 'MODIFICATIF' |
422 |
|
|
and $row['mouvement_sitadel'] != 'TRANSFERT' |
423 |
nhaye |
1866 |
and $row['mouvement_sitadel'] != 'SUPPRESSION' |
424 |
fraynaud |
200 |
and (($row['date_depot'] >= $datedebut and $row['date_depot']<=$datefin) |
425 |
nhaye |
1785 |
or ($row['date_decision'] >= $datedebut and $row['date_decision']<=$datefin))) { |
426 |
vpihour |
1809 |
|
427 |
|
|
//Ajout de l'entête |
428 |
vpihour |
3318 |
$decision.=$g->entete("DECISION",$departement,$commune); |
429 |
vpihour |
1809 |
|
430 |
|
|
//Ajout du groupe 1 |
431 |
|
|
$decision.= $g->decision_groupe1(); |
432 |
|
|
// Si la décision est favorable, groupe 2 |
433 |
|
|
if ( $row['sitadel'] == 2 || $row['sitadel'] == 4 || $row['sitadel'] == 5 |
434 |
|
|
|| $row['sitadel'] == 0 ){ |
435 |
|
|
|
436 |
|
|
$decision.= $g->amenagement_terrain(); |
437 |
|
|
$su_avt_shon = $g->shon("su_avt_shon"); |
438 |
vpihour |
1810 |
//Si la SHON existante avant travaux est supérieur à la SHON |
439 |
|
|
//démolie alors la variable natproj est égale à 2 |
440 |
|
|
$shonExistante = 0; |
441 |
|
|
$shonDemolie = 0; |
442 |
|
|
for ( $i=1;$i<=9;$i++){ |
443 |
|
|
|
444 |
|
|
$shonExistante += floor($row['su_avt_shon'.$i]); |
445 |
|
|
$shonDemolie += floor($row['su_demo_shon'.$i]); |
446 |
|
|
} |
447 |
|
|
if ( $shonExistante > $shonDemolie && $row['co_cstr_nouv'] == 't' ){ |
448 |
|
|
|
449 |
vpihour |
3188 |
$erreur .= _("Si la SHON existante avant travaux est superieur a la SHON demolie alors la variable natproj doit etre egale a 2 pour le dossier no")." ".$row['dossier']."\n"; |
450 |
vpihour |
1810 |
} |
451 |
|
|
//Si la SHON existante avant travaux et la SHON démolie sont |
452 |
|
|
//égales alors la variable natproj est égale à 1 |
453 |
|
|
elseif ( $shonExistante > $shonDemolie && $row['co_cstr_exist'] == 't' ) { |
454 |
|
|
|
455 |
vpihour |
3188 |
$erreur .= _("Si la SHON existante avant travaux et la SHON demolie sont egales alors la variable natproj doit etre egale a 1 pour le dossier no")." ".$row['dossier']."\n"; |
456 |
vpihour |
1810 |
} |
457 |
|
|
else { |
458 |
|
|
$decision .= $su_avt_shon; |
459 |
|
|
} |
460 |
vpihour |
1809 |
|
461 |
nhaye |
1821 |
$su_demo_shon = $g->shon("su_demo_shon"); |
462 |
vpihour |
1810 |
//La SHON démolie s'accompagne obligatoirement de la shon |
463 |
|
|
//existante avant travaux |
464 |
|
|
//Erreur |
465 |
|
|
if ( $shonExistante != 0 && $shonExistante == 0 ){ |
466 |
vpihour |
3188 |
$erreur .= _("La SHON demolie s'accompagne obligatoirement de la SHON existante avant travaux pour le dossier no")." ".$row['dossier']."\n"; |
467 |
vpihour |
1810 |
} |
468 |
|
|
else { |
469 |
|
|
$decision .= $su_demo_shon; |
470 |
|
|
} |
471 |
|
|
|
472 |
|
|
|
473 |
vpihour |
1809 |
$decision.= $g->shon("su_chge_shon"); |
474 |
|
|
$su_trsf_shon = $g->shon("su_trsf_shon"); |
475 |
|
|
$su_cstr_shon = $g->shon("su_cstr_shon"); |
476 |
|
|
//Les SHON relatives à la transformation et issues de la |
477 |
|
|
//transformation doivent être égales |
478 |
|
|
if ( strcasecmp($su_trsf_shon, $su_cstr_shon) == 0 || |
479 |
|
|
(!preg_match("/[0|]{7}/", $su_trsf_shon) && |
480 |
|
|
preg_match("/[0|]{7}/", $su_cstr_shon) && |
481 |
|
|
$row['co_cstr_nouv']!='t' && $row['co_cstr_exist']!='t')){ |
482 |
|
|
|
483 |
|
|
$decision.= $su_trsf_shon; |
484 |
|
|
$decision.= $su_cstr_shon; |
485 |
nhaye |
1785 |
} |
486 |
vpihour |
1809 |
//Erreur |
487 |
|
|
else { |
488 |
vpihour |
3188 |
$erreur .= _("Les SHON globales vouees a la transformation et issues de la transformation de doivent etre egales pour le dossier no")." ".$row['dossier']."\n"; |
489 |
nhaye |
1821 |
} |
490 |
vpihour |
1809 |
|
491 |
|
|
//Les SHON relatives à la transformation s'accompagnent |
492 |
|
|
//obligatoirement de SHON existante avant travaux non nulle |
493 |
|
|
if (( !preg_match("/[0|]{7}/", $su_trsf_shon) && |
494 |
|
|
!preg_match("/[0|]{7}/", $su_cstr_shon) && |
495 |
|
|
!preg_match("/[0|]{7}/", $su_avt_shon)) || |
496 |
|
|
(preg_match("/[0|]{7}/", $su_trsf_shon) && |
497 |
|
|
preg_match("/[0|]{7}/", $su_cstr_shon)&& |
498 |
|
|
preg_match("/[0|]{7}/", $su_avt_shon))){ |
499 |
|
|
|
500 |
|
|
$decision.= $su_avt_shon; |
501 |
|
|
} |
502 |
|
|
//Erreur |
503 |
|
|
else { |
504 |
|
|
|
505 |
vpihour |
3188 |
$erreur .= _("Les SHON relatives a la transformation s'accompagnent obligatoirement de SHON existante avant travaux non nulle pour le dossier no")." ".$row['dossier']."\n"; |
506 |
nhaye |
1821 |
} |
507 |
vpihour |
1809 |
|
508 |
|
|
$decision.= $g->shon("su_tot_shon"); |
509 |
nhaye |
1821 |
|
510 |
|
|
// Un nombre de logements démolis strictement positif doit |
511 |
|
|
// s'accompagner obligatoirement de SHON démolie. |
512 |
|
|
if($row['dm_tot_log_nb'] > 0) { |
513 |
|
|
if($row['su_demo_shon1'] <= 0) { |
514 |
nhaye |
1826 |
|
515 |
vpihour |
3188 |
$erreur .= _("Un nombre de logements demolis strictement positif doit s'accompagner obligatoirement de SHON demolie pour le dossier no")." ".$row['dossier']."\n"; |
516 |
nhaye |
1821 |
} |
517 |
|
|
} |
518 |
|
|
|
519 |
|
|
// Un nombre de logements créés strictement positif doit |
520 |
|
|
// s'accompagner obligatoirement de SHON créée ou de SHON |
521 |
|
|
// issue de la transformation ayant pour destination l'habitation. |
522 |
|
|
if($row['co_tot_log_nb'] > 0 AND ($row['su_cstr_shon1'] <= 0 OR $row['su_trsf_shon1'] <=0)) { |
523 |
nhaye |
1826 |
|
524 |
vpihour |
3188 |
$erreur .= _("Un nombre de logements crees strictement positif doit s'accompagner obligatoirement de SHON creee ou de SHON issue de la transformation ayant pour destination l'habitation pour le dossier no")." ".$row['dossier']."\n"; |
525 |
nhaye |
1821 |
} |
526 |
|
|
|
527 |
|
|
// La SHON créée ou issue de la transformation |
528 |
|
|
// suffixée par 9 (intérêt collectif ou service public) doit |
529 |
|
|
// obligatoirement s'accompagner de la décomposition |
530 |
|
|
// en sous modalité renseignée par la variable cpublic et réciproquement. |
531 |
|
|
|
532 |
|
|
// Test si une valeur est true |
533 |
|
|
$cpublic = FALSE; |
534 |
|
|
if (isset($row['co_sp_transport']) && $row['co_sp_transport'] == 't') { |
535 |
|
|
$cpublic = TRUE; |
536 |
|
|
} |
537 |
|
|
if (isset($row['co_sp_enseign']) && $row['co_sp_enseign'] == 't') { |
538 |
|
|
$cpublic = TRUE; |
539 |
|
|
} |
540 |
|
|
if (isset($row['co_sp_sante']) && $row['co_sp_sante'] == 't') { |
541 |
|
|
$cpublic = TRUE; |
542 |
|
|
} |
543 |
|
|
if (isset($row['co_sp_act_soc']) && $row['co_sp_act_soc'] == 't') { |
544 |
|
|
$cpublic = TRUE; |
545 |
|
|
} |
546 |
|
|
if (isset($row['co_sp_ouvr_spe']) && $row['co_sp_ouvr_spe'] == 't') { |
547 |
|
|
$cpublic = TRUE; |
548 |
|
|
} |
549 |
|
|
if (isset($row['co_sp_culture']) && $row['co_sp_culture'] == 't') { |
550 |
|
|
$cpublic = TRUE; |
551 |
|
|
} |
552 |
|
|
|
553 |
|
|
if($cpublic !== TRUE AND ($row['su_cstr_shon9'] > 0 OR $row['su_trsf_shon9'] > 0)) { |
554 |
vpihour |
3188 |
$erreur .= _("La SHON creee ou issue de la transformation concernant le service public ou l'interet collectif doit obligatoirement s'accompagner du choix de destination des constructions pour le dossier no")." ".$row['dossier']."\n"; |
555 |
nhaye |
1821 |
} |
556 |
|
|
|
557 |
|
|
// La destination principale du logement mise à résidence |
558 |
|
|
// principale ou résidence secondaire doit obligatoirement |
559 |
|
|
// s'accompagner d'un mode d'utilisation à occupation personnelle |
560 |
|
|
if($row['co_uti_princ'] == 't' OR $row['co_uti_secon'] == 't') { |
561 |
|
|
if($row['co_uti_pers'] != 't') { |
562 |
nhaye |
1826 |
|
563 |
vpihour |
3188 |
$erreur .= _("La destination principale du logement mise a residence principale ou residence secondaire doit obligatoirement s'accompagner d'un mode d'utilisation a occupation personnelle pour le dossier no")." ".$row['dossier']."\n"; |
564 |
nhaye |
1821 |
} |
565 |
|
|
} |
566 |
|
|
|
567 |
nhaye |
1863 |
$decision.= $g->destination($row['mouvement_sitadel']); |
568 |
nhaye |
1821 |
|
569 |
|
|
// Le nombre total de logements créés (variable nbtotlog) |
570 |
|
|
// doit être égal à la somme des nombres de logements créés |
571 |
|
|
// ventilés par type de financement |
572 |
|
|
if($row['co_tot_log_nb'] != ($row['co_fin_lls_nb'] + $row['co_fin_aa_nb'] + |
573 |
|
|
$row['co_fin_ptz_nb'] + $row['co_fin_autr_nb'])) { |
574 |
|
|
|
575 |
vpihour |
3188 |
$erreur .= _("Le nombre total de logements crees doit etre egal a la somme des nombres de logements crees ventiles par type de financement pour le dossier no")." ".$row['dossier']."\n"; |
576 |
nhaye |
1821 |
} |
577 |
|
|
|
578 |
vpihour |
1809 |
$decision.= $g->repartitionFinan(); |
579 |
nhaye |
1821 |
|
580 |
|
|
// Le nombre total de logements créés (variable nbtotlog) |
581 |
|
|
// doit être égal à la totalisation de la répartition des |
582 |
|
|
// logements par nombre de pièces |
583 |
|
|
if($row['co_tot_log_nb'] != ($row['co_log_1p_nb'] + $row['co_log_2p_nb'] + |
584 |
|
|
$row['co_log_3p_nb'] + $row['co_log_4p_nb'] + $row['co_log_5p_nb'] + |
585 |
|
|
$row['co_log_6p_nb'])) { |
586 |
|
|
|
587 |
vpihour |
3188 |
$erreur .= _("Le nombre total de logements crees doit etre egal a la totalisation de la repartition des logements par nombre de pieces pour le dossier no")." ".$row['dossier']."\n"; |
588 |
nhaye |
1821 |
} |
589 |
|
|
|
590 |
nhaye |
1863 |
$decision.= $g->repartitionNbPiece($row['mouvement_sitadel']); |
591 |
vpihour |
1809 |
} |
592 |
nhaye |
1785 |
$decision.="\n"; |
593 |
fraynaud |
187 |
} |
594 |
|
|
|
595 |
|
|
// modificatif |
596 |
|
|
$modificatif=''; |
597 |
nhaye |
1797 |
if($row['mouvement_sitadel'] == 'MODIFICATIF' |
598 |
fraynaud |
190 |
and $row['date_depot'] >= $datedebut |
599 |
nhaye |
1785 |
and $row['date_depot'] <= $datefin) { |
600 |
vpihour |
3318 |
$modificatif.=$g->entete("MODIFICATIF",$departement,$commune); |
601 |
fraynaud |
187 |
if(isset($row['date_decision']) or $row['date_decision']==""){ |
602 |
|
|
// avis_sitadel et avis_sitadel_motif |
603 |
vpihour |
3318 |
if($row['sitadel']!=''){ |
604 |
nhaye |
1863 |
|
605 |
|
|
$modificatif.= $g->decision_groupe1(); |
606 |
fraynaud |
178 |
} |
607 |
fraynaud |
187 |
// si la decision est favorable, envoi des informations statistiques |
608 |
nhaye |
1863 |
if($row["sitadel"] == 2 or $row["sitadel"] == 4 |
609 |
|
|
or $row["sitadel"] == 5){ |
610 |
|
|
// si accordé : ajout du 2nd groupe d'informations |
611 |
|
|
$modificatif .= $g->adresse_terrain(); // adresse du terrain |
612 |
|
|
$modificatif .= $g->parcelle(); // 3 premières parcelles |
613 |
|
|
$modificatif .= $g->modificatif_terrain(); // Informations complémentaires |
614 |
fraynaud |
187 |
|
615 |
nhaye |
1863 |
$modificatif.= $g->shon("su_avt_shon"); |
616 |
|
|
$modificatif.= $g->shon("su_demo_shon"); |
617 |
|
|
$modificatif.= $g->shon("su_chge_shon"); |
618 |
|
|
$modificatif.= $g->shon("su_trsf_shon"); |
619 |
|
|
$modificatif.= $g->shon("su_cstr_shon"); |
620 |
|
|
|
621 |
vpihour |
3318 |
$modificatif.= "|||||||||"; |
622 |
nhaye |
1863 |
|
623 |
|
|
$modificatif.= $g->repartitionFinan(); |
624 |
|
|
$modificatif.= $g->repartitionNbPiece($row['mouvement_sitadel']); |
625 |
fraynaud |
187 |
$modificatif.="\n"; |
626 |
|
|
} |
627 |
|
|
} |
628 |
|
|
} |
629 |
nhaye |
1866 |
|
630 |
|
|
// Mouvement suppression |
631 |
|
|
$suppression = ''; |
632 |
nhaye |
2360 |
if($row['mouvement_sitadel'] == 'SUPPRESSION') { |
633 |
vpihour |
3318 |
$suppression .= $g->entete("SUPPRESSION",$departement,$commune); |
634 |
nhaye |
1866 |
$suppression .= "\n"; |
635 |
|
|
} |
636 |
fraynaud |
178 |
|
637 |
nhaye |
1831 |
// Règles sur le mouvement suivi |
638 |
fraynaud |
200 |
// suivi DOC |
639 |
nhaye |
1831 |
$chantier=""; |
640 |
|
|
if($row['date_chantier'] >= $datedebut and $row['date_chantier']<=$datefin){ |
641 |
|
|
|
642 |
|
|
// Une ouverture de chantier ne peut concerner qu'un permis autorisé |
643 |
|
|
if($row['typeavis_da'] != 'F') { |
644 |
vpihour |
3188 |
$erreur .= _("Une ouverture de chantier ne peut concerner qu'un permis autorise : dossier no")." ".$row['dossier']."\n"; |
645 |
nhaye |
1831 |
} |
646 |
|
|
// La date d'ouverture de chantier doit être supérieur à la date d'autorisation |
647 |
|
|
if($row['doc_date'] > $row['date_decision_da']) { |
648 |
vpihour |
3188 |
$erreur .= _("La date d'ouverture de chantier doit être superieur a la date d'autorisation : dossier no")." ".$row['dossier']."\n"; |
649 |
nhaye |
1831 |
} |
650 |
|
|
|
651 |
vpihour |
3318 |
$chantier.=$g->entete("SUIVI",$departement,$commune); |
652 |
nhaye |
1831 |
$chantier.=$g->chantier(); |
653 |
|
|
$chantier.="\n"; |
654 |
fraynaud |
190 |
} |
655 |
nhaye |
1831 |
// suivi DAACT |
656 |
|
|
$achevement=""; |
657 |
fraynaud |
190 |
if($row['date_achevement'] >= $datedebut and $row['date_achevement']<=$datefin){ |
658 |
nhaye |
1831 |
|
659 |
|
|
// Un achèvement de chantier ne peut concerner qu'un permis autorisé |
660 |
|
|
if($row['typeavis_da'] != 'F') { |
661 |
vpihour |
3188 |
$erreur .= _("Un achevement de chantier ne peut concerner qu'un permis autorise : dossier no")." ".$row['dossier']."\n"; |
662 |
nhaye |
1831 |
} |
663 |
nhaye |
1834 |
if( $row['date_chantier_da'] == "" ) { |
664 |
vpihour |
3188 |
$erreur .= _("Un achevement de chantier ne peut concerner qu'un permis sur lequel un chantier a ete ouvert : dossier no")." ".$row['dossier']."\n"; |
665 |
nhaye |
1834 |
} |
666 |
nhaye |
1831 |
// La date d'achevement de travaux doit être supérieur à la date d'ouverture des travaux |
667 |
|
|
if($row['daact_date'] > $row['date_chantier_da']) { |
668 |
vpihour |
3188 |
$erreur .= _("La date d'achevement de travaux doit etre superieur a la date d'ouverture des travaux : dossier no")." ".$row['dossier']."\n"; |
669 |
nhaye |
1831 |
} |
670 |
vpihour |
3318 |
$achevement.=$g->entete("SUIVI",$departement,$commune); |
671 |
nhaye |
1831 |
$achevement.=$g->achevement(); |
672 |
|
|
$achevement.="\n"; |
673 |
fraynaud |
178 |
} |
674 |
fraynaud |
190 |
// export |
675 |
nhaye |
2360 |
$export.=$depot.$decision.$transfert.$modificatif.$chantier.$achevement.$suppression; |
676 |
fraynaud |
187 |
} // fin while |
677 |
fraynaud |
190 |
// *************************************** |
678 |
|
|
// entete de l enregistrement page 8 et 9 |
679 |
|
|
// *************************************** |
680 |
|
|
// numero |
681 |
nhaye |
1197 |
// $numero= $db -> nextId('sitadel'); |
682 |
nhaye |
1826 |
|
683 |
vpihour |
3197 |
// On affiche le fichier généré |
684 |
|
|
$departement =$f->collectivite["departement"]; |
685 |
|
|
$commune =$f->collectivite["commune"]; |
686 |
|
|
$region =$f->collectivite["region"]; |
687 |
nhaye |
3226 |
$numero=$f->get_submitted_post_value("numero"); |
688 |
vpihour |
3318 |
$fichiertransmis = date('ymj').$departement.$commune; |
689 |
vpihour |
3197 |
$longueurenregistrement= 0 ; // a calculer *** enregistrement le plus long |
690 |
vpihour |
3318 |
$entete = "SITADEL|".$departement."|".$commune."|".$region."|".$fichiertransmis."|".$numero."|"; |
691 |
vpihour |
3197 |
// calcul enregistrement le plus long |
692 |
|
|
if(DBCHARSET=='UTF8'){ |
693 |
|
|
$export=utf8_decode($export); |
694 |
|
|
} |
695 |
|
|
// nombreenrgistremment et longueurenregistrement |
696 |
|
|
$nbenr = explode("\n",$export); |
697 |
|
|
$tmp=array(); |
698 |
|
|
$cpt=0; |
699 |
|
|
for($i=0;$i<sizeof($nbenr);$i++){ |
700 |
|
|
// mb_strlen( variable,encoding) PHP 4 >= 4.0.6, PHP 5 |
701 |
|
|
// Le param�tre encoding est l'encodage des caract�res. |
702 |
|
|
// S'il est omis, l'encodage de caracteres interne sera utilis�. |
703 |
|
|
$tmp[$i] = strlen($nbenr[$i]); |
704 |
|
|
//echo strlen($nbenr[$i])." ".$nbenr[$i]."<br>"; |
705 |
|
|
$cpt++; |
706 |
|
|
} |
707 |
|
|
$longueurenregistrement=max($tmp); |
708 |
|
|
$nombreenregistrement=$cpt; // + entete |
709 |
|
|
// Date de modification |
710 |
|
|
$datemodification = date('y').str_pad (DATE('m'), 2, "0", STR_PAD_LEFT).str_pad (DATE('j'), 2, "0", STR_PAD_LEFT); |
711 |
|
|
// export |
712 |
|
|
$version = substr($f->version,0,8); |
713 |
|
|
$entete.= $longueurenregistrement."|".$datemodification."|". |
714 |
|
|
$nombreenregistrement."|openADS|".$version."\n"; |
715 |
|
|
$export=$entete.$export; |
716 |
|
|
// $str = htmlentities($str, ENT_QUOTES); |
717 |
|
|
// ecriture des fichiers en tmp |
718 |
nhaye |
3226 |
$fichier = "../tmp/SITADEL".substr($f->get_submitted_post_value("datedebut"),3,2). |
719 |
|
|
"".substr($f->get_submitted_post_value("datedebut"),8,4).""; |
720 |
vpihour |
3197 |
$inf = fopen($fichier,"w"); |
721 |
|
|
fwrite($inf,$export); |
722 |
|
|
fclose($inf); |
723 |
|
|
$f->displayMessage("ok", _("Fichier")." ".$fichier." "._("sauvegarde")."<br/>". |
724 |
|
|
_("Pour telecharger le fichier, cliquer ici :"). |
725 |
|
|
" <a href=\"".$fichier."\" target=\"_blank\"> |
726 |
|
|
<img src=\"../app/img/ico_trace.png\" alt=\"". |
727 |
|
|
_("Telecharger le fichier CNEN")."\" title=\"". |
728 |
|
|
_("Telecharger le fichier Sitadel")."\" /></a>". |
729 |
|
|
_("avec le bouton droit et enregistrer la cible du lien sous.") |
730 |
|
|
); |
731 |
|
|
|
732 |
|
|
if(DEBUG != "PRODUCTION_MODE"){ |
733 |
|
|
$affiche=""; |
734 |
|
|
$affiche= str_replace("\n","<br>",$export); |
735 |
|
|
echo $affiche; |
736 |
|
|
} |
737 |
|
|
|
738 |
|
|
// Si une erreur a été trouvée |
739 |
nhaye |
1826 |
if($erreur != "") { |
740 |
nhaye |
3226 |
$fichier = "../tmp/erreur_SITADEL".substr($f->get_submitted_post_value("datedebut"),3,2). |
741 |
|
|
"".substr($f->get_submitted_post_value("datedebut"),8,4).""; |
742 |
nhaye |
1826 |
$inf = fopen($fichier,"w"); |
743 |
|
|
fwrite($inf,$erreur); |
744 |
|
|
fclose($inf); |
745 |
vpihour |
3197 |
$f->addToMessage("error", _("Une ou plusieurs erreurs sont survenues pendant l'export,". |
746 |
|
|
" celles-ci sont listees dans le fichiers ci-dessous"). |
747 |
|
|
"<br/>"._("Fichier d'erreur")." ".$fichier." "._("sauvegardé"). |
748 |
|
|
"<br/>"._("Pour telecharger le fichier d'erreur, cliquer ici :")." <a href=\"".$fichier."\" target=\"_blank\">". |
749 |
|
|
"<img src=\"../app/img/ico_trace.png\" alt=\""._("Telecharger le fichier d'erreur")."\" title=\""._("Telecharger le fichier d'erreur")."\" />". |
750 |
|
|
"</a>"._("avec le bouton droit et enregistrer la cible du lien sous.")); |
751 |
|
|
$f->displayMessages(); |
752 |
fraynaud |
190 |
} |
753 |
nhaye |
1826 |
|
754 |
|
|
// Affichage du bouton retour |
755 |
|
|
// Composition du tableau de paramètres |
756 |
|
|
$params = array( |
757 |
|
|
"href" => "../app/sitadel.php?datedebut=".$datedebut."&datefin=".$datefin."&numero=".$numero, |
758 |
|
|
); |
759 |
|
|
// Appel de la méthode d'affichage du lien retour par le layout |
760 |
|
|
$f->layout->display_form_retour($params); |
761 |
|
|
|
762 |
nhaye |
1871 |
} else {// correct = false |
763 |
nhaye |
1869 |
$f->displayMessage("error", _("Les champs dates sont obligatoires")); |
764 |
nhaye |
3226 |
affichageFormulaire($f->get_submitted_post_value("datedebut"), $f->get_submitted_post_value("datefin"), $numero); |
765 |
nhaye |
1871 |
} |
766 |
fraynaud |
178 |
}//validation |
767 |
vpihour |
1809 |
|
768 |
|
|
/** |
769 |
|
|
* Affichage du formulaire |
770 |
|
|
* |
771 |
|
|
* */ |
772 |
|
|
function affichageFormulaire($datedebut="", $datefin="", $numero=""){ |
773 |
|
|
|
774 |
|
|
echo "<form method=\"POST\" action=\"sitadel.php\" name=f1>"; |
775 |
|
|
// champ date debut |
776 |
|
|
echo " "._("debut")." "; |
777 |
|
|
echo "<input type='text' name='datedebut' id=\"datedebut\" value=\""; |
778 |
|
|
echo $datedebut; |
779 |
|
|
echo "\" size=\"15\" class=\"champFormulaire datepicker\" onchange='fdate(this)' onkeyup=\"\" onclick=\"\" />"; |
780 |
|
|
// champ date fin |
781 |
|
|
echo " "._("fin")." "; |
782 |
|
|
echo "<input type='text' name='datefin' id=\"datefin\" value=\""; |
783 |
|
|
echo $datefin; |
784 |
|
|
echo "\" size=\"15\" class=\"champFormulaire datepicker\" onchange='fdate(this)' onkeyup=\"\" onclick=\"\" />"; |
785 |
|
|
// numero d'ordre d'envoi |
786 |
|
|
echo " "._("Numero d'ordre d'envoi")." : "."<select name='numero'>"; |
787 |
|
|
for ($i = 1; $i < 11; $i++) { |
788 |
|
|
echo "<option value ='".$i."' "; |
789 |
|
|
echo ($numero == $i )? "selected='selected'":""; |
790 |
|
|
echo">".$i."</option>"; |
791 |
|
|
} |
792 |
|
|
echo "</select>"; |
793 |
|
|
echo "<br><br><input type='submit' value='export SITADEL'>"; |
794 |
|
|
echo "</form>"; |
795 |
|
|
} |
796 |
fraynaud |
200 |
?> |