1 |
<?php |
<?php |
2 |
/** |
/** |
3 |
* |
* Traitement sur les actions de la géolocalisation |
4 |
* |
* |
5 |
* @package openfoncier |
* @package openfoncier |
6 |
* @version SVN : $Id$ |
* @version SVN : $Id$ |
13 |
require_once "../obj/dossier.class.php"; |
require_once "../obj/dossier.class.php"; |
14 |
|
|
15 |
// Paramétres GET |
// Paramétres GET |
16 |
$id = (isset($_GET['id']) ? $_GET['id'] : "" ); |
$id = ($f->get_submitted_get_value('id')!==null ? $f->get_submitted_get_value('id') : "" ); |
17 |
$fieldname = (isset($_GET['fieldname']) ? $_GET['fieldname'] : "" ); |
$fieldname = ($f->get_submitted_get_value('fieldname')!==null ? $f->get_submitted_get_value('fieldname') : "" ); |
18 |
|
|
19 |
// Vérifie les paramètres obligatoires |
// Vérifie les paramètres obligatoires |
20 |
if (isset($id) && $id != '' |
if (isset($id) && $id != '' |
45 |
return $rowDonneesSIG; |
return $rowDonneesSIG; |
46 |
} |
} |
47 |
|
|
48 |
|
/** |
49 |
|
* Récupérer la contrainte par le numéro de référence SIG |
50 |
|
* @param string $numero Identifiant de la contrainte du SIG |
51 |
|
* @param object $f Instance de la classe Utils |
52 |
|
* @return array Tableau des résultats |
53 |
|
*/ |
54 |
|
function getContrainteByNumero($numero, $f) { |
55 |
|
|
56 |
|
// Initialisation du résultat |
57 |
|
$contrainte = ""; |
58 |
|
|
59 |
|
// Requête sql |
60 |
|
$sqlContrainte = "SELECT contrainte |
61 |
|
FROM ".DB_PREFIXE."contrainte |
62 |
|
WHERE reference = 't' |
63 |
|
AND numero = '".$numero."'"; |
64 |
|
$contrainte = $f->db->getOne($sqlContrainte); |
65 |
|
$f->addToLog("app/geolocalisation_treatment.php : db->getOne(\"".$sqlContrainte."\")", VERBOSE_MODE); |
66 |
|
$f->isDatabaseError($contrainte); |
67 |
|
|
68 |
|
// Tableau de résultat retourné |
69 |
|
return $contrainte; |
70 |
|
} |
71 |
|
|
72 |
|
/** |
73 |
|
* Récupération des contraintes récupérées depuis le SIG liées au dossier |
74 |
|
* @param string $id Identifiant du dossier d'instruction |
75 |
|
* @param object $f Instance de la classe Utils |
76 |
|
* @return array Tableau des résultats |
77 |
|
*/ |
78 |
|
function getDossierContrainteSIG($id, $f) { |
79 |
|
|
80 |
|
// Initialisation du tableau des résultats |
81 |
|
$listeDossierContrainteSIG = array(); |
82 |
|
|
83 |
|
// Requête SQL |
84 |
|
$sqlDossierContrainte = "SELECT dossier_contrainte |
85 |
|
FROM ".DB_PREFIXE."dossier_contrainte |
86 |
|
WHERE dossier = '$id' |
87 |
|
AND reference IS TRUE"; |
88 |
|
$resDossierContrainte = $f->db->query($sqlDossierContrainte); |
89 |
|
$f->addToLog("app/geolocalisation_treatment.php : db->query(\"".$sqlDossierContrainte."\")", VERBOSE_MODE); |
90 |
|
$f->isDatabaseError($resDossierContrainte); |
91 |
|
|
92 |
|
// Pour chaque résultat |
93 |
|
while ($rowDossierContrainte = &$resDossierContrainte->fetchRow(DB_FETCHMODE_ASSOC)) { |
94 |
|
// Ajoute l'identifiant du lien dans le tableau des résultats |
95 |
|
$listeDossierContrainteSIG[] = $rowDossierContrainte['dossier_contrainte']; |
96 |
|
} |
97 |
|
|
98 |
|
// Tableau de résultat retourné |
99 |
|
return $listeDossierContrainteSIG; |
100 |
|
} |
101 |
|
|
102 |
// Récupération des données de sig_elyx |
// Récupération des données de sig_elyx |
103 |
$rowDonneesSIG = get_sig_elyx($id, $f); |
$rowDonneesSIG = get_sig_elyx($id, $f); |
104 |
|
|
111 |
$f->isDatabaseError($resDonneesDI); |
$f->isDatabaseError($resDonneesDI); |
112 |
$rowDonneesDI = &$resDonneesDI->fetchRow(DB_FETCHMODE_ASSOC); |
$rowDonneesDI = &$resDonneesDI->fetchRow(DB_FETCHMODE_ASSOC); |
113 |
|
|
|
// Formatage des parcelles pour l'envoi au webservice |
|
|
$liste_parcelles = $f->parseParcelles($rowDonneesDI['terrain_references_cadastrales']); |
|
|
$wParcelle = $f->formatParcelleToSend($liste_parcelles); |
|
|
|
|
114 |
// Si l'enregistrement n'existe pas dans la table sig_elyx |
// Si l'enregistrement n'existe pas dans la table sig_elyx |
115 |
if (count($rowDonneesSIG) == 0) { |
if (count($rowDonneesSIG) == 0) { |
116 |
|
|
129 |
$rowDonneesSIG = get_sig_elyx($id, $f); |
$rowDonneesSIG = get_sig_elyx($id, $f); |
130 |
} |
} |
131 |
} |
} |
132 |
|
|
133 |
|
// Si les deux champs sont différent |
134 |
|
$diff_parcelle = false; |
135 |
|
if (isset($rowDonneesSIG["terrain_references_cadastrales_archive"]) && $rowDonneesSIG["terrain_references_cadastrales_archive"] != $rowDonneesDI["terrain_references_cadastrales"]) { |
136 |
|
$diff_parcelle = true; |
137 |
|
} |
138 |
|
|
139 |
|
// Formatage des parcelles pour l'envoi au webservice |
140 |
|
$liste_parcelles = $f->parseParcelles($rowDonneesSIG['terrain_references_cadastrales_archive']); |
141 |
|
if ($diff_parcelle == true && $fieldname == 'verif_parcelle') { |
142 |
|
$liste_parcelles = $f->parseParcelles($rowDonneesDI['terrain_references_cadastrales']); |
143 |
|
} |
144 |
|
$wParcelle = $f->formatParcelleToSend($liste_parcelles); |
145 |
|
// Crée une chaîne de parcelle séparée par des ";" |
146 |
|
$stringParcelles = implode(';', $wParcelle); |
147 |
|
|
148 |
// Configuration du soap |
// Configuration du soap |
149 |
$conf = $f->config['sig_elyx']; |
$conf = $f->config['sig_elyx']; |
150 |
|
|
151 |
// Instance de la classe permettant d'envoyer des requête SOAP |
// Instance de la classe permettant d'envoyer des requête SOAP |
152 |
$soap = new MessageSenderSoap($conf['url'], $conf['wsdl'], $conf['login'], |
$soap = new MessageSenderSoap($conf['wsdl'], $conf['login'], |
153 |
$conf['password']); |
$conf['password']); |
154 |
|
|
155 |
// Instance de sig_elyx |
// Instance de sig_elyx |
159 |
|
|
160 |
// Initialisation des variables |
// Initialisation des variables |
161 |
$message = ""; |
$message = ""; |
162 |
|
$message_diff_parcelle = _("Les parcelles ont ete modifiees."); |
163 |
|
$listeDossierContrainteSIGAfter = array(); |
164 |
$execute = array(); |
$execute = array(); |
165 |
|
|
166 |
|
// Si les références cadastrales sont à changer dans sig_elyx |
167 |
|
$flag_ref_cadastrales = false; |
168 |
|
|
169 |
// Fait appele aux différents webservices selon le bouton cliqué |
// Fait appele aux différents webservices selon le bouton cliqué |
170 |
switch ($fieldname) { |
switch ($fieldname) { |
171 |
// |
// |
172 |
case 'verif_parcelle': |
case 'verif_parcelle': |
173 |
|
// Données à envoyer au wsdl |
174 |
|
$data = array( |
175 |
|
"wParcelle" => $stringParcelles, |
176 |
|
); |
177 |
|
// Exécute le webservices |
178 |
|
$execute = $soap->execute('getExistParcelle', $data); |
179 |
break; |
break; |
180 |
// |
// |
181 |
case 'calcul_emprise': |
case 'calcul_emprise': |
|
$stringParcelles = implode(';', $wParcelle); |
|
182 |
// Données à envoyer au wsdl |
// Données à envoyer au wsdl |
183 |
$data = array( |
$data = array( |
184 |
"wParcelle" => $stringParcelles, |
"wParcelle" => $stringParcelles, |
185 |
"wId" => $id, |
"wId" => $id, |
186 |
); |
); |
|
var_dump($data); |
|
187 |
// Exécute le webservices |
// Exécute le webservices |
188 |
$execute = $soap->execute('getCalculEmprise', $data); |
$execute = $soap->execute('getCalculEmprise', $data); |
189 |
break; |
break; |
193 |
$parcelle = $wParcelle[0]; |
$parcelle = $wParcelle[0]; |
194 |
// Construit le lien |
// Construit le lien |
195 |
$execute['return'] = "http://".$f->collectivite['sig_web_server'] |
$execute['return'] = "http://".$f->collectivite['sig_web_server'] |
196 |
."?disabledAttributes=IDENTIFIANT&createObject=" |
."?disabledAttributes=NUMERO_DE_DOSSIER&createObject=" |
197 |
.$f->collectivite['sig_couche_emprise_dossier'] |
.$f->collectivite['sig_couche_emprise_dossier'] |
198 |
."&attributeValues.IDENTIFIANT=".$id."&KEY=" |
."&attributeValues.NUMERO_DE_DOSSIER=".$id."&KEY=" |
199 |
.$f->collectivite['sig_couche_affichage_parcelle']."*/" |
.$f->collectivite['sig_couche_affichage_parcelle']."*/" |
200 |
.$parcelle."&SELECT=false"; |
.$parcelle."&SELECT=false"; |
201 |
break; |
break; |
210 |
break; |
break; |
211 |
// |
// |
212 |
case 'recup_contrainte': |
case 'recup_contrainte': |
213 |
|
// Données à envoyer au wsdl |
214 |
|
$data = array( |
215 |
|
"wType" => "1", |
216 |
|
"wId" => $id, |
217 |
|
); |
218 |
|
// Exécute le webservice |
219 |
|
$execute = $soap->execute('getContrainteNRU', $data); |
220 |
break; |
break; |
221 |
} |
} |
222 |
|
|
|
// Si une erreur interne '500' est retournée |
|
|
if ($soap->getResponseCode() == '500') { |
|
|
// Met l'état à false |
|
|
$etat = 'f'; |
|
|
// Traitement du message d'erreur |
|
|
$message = explode(":", $execute['fault']['faultstring']); |
|
|
$error_code = trim($message[0]); |
|
|
$message = trim($message[1]); |
|
|
|
|
|
// Traduction d'une erreur qui n'en est pas une pour l'utilisateur |
|
|
// si le bouton cliqué est 'Calculer l'emprise' et que le code erreur |
|
|
// est 'ORA-00001' |
|
|
if ($fieldname == 'calcul_emprise' && $error_code == 'ORA-00001') { |
|
|
// Met l'état à vrai |
|
|
$etat = 't'; |
|
|
// MEssage pour l'utilisateur |
|
|
$message = _("L'emprise a deja ete calcule."); |
|
|
} |
|
|
} |
|
|
|
|
223 |
// Si le code HTTP retour est un '200' |
// Si le code HTTP retour est un '200' |
224 |
// Ou que le bouton cliqué est 'dessiner l'emprise' |
// ou que le bouton cliqué est 'dessiner l'emprise' |
225 |
if ($soap->getResponseCode() == '200' |
if ($soap->getResponseCode() == '200' |
226 |
|| $fieldname = 'dessin_emprise') { |
|| $fieldname == 'dessin_emprise') { |
227 |
// Met l'état à vrai |
// Met l'état à vrai |
228 |
$etat = 't'; |
$etat = 't'; |
229 |
|
|
231 |
switch ($fieldname) { |
switch ($fieldname) { |
232 |
// |
// |
233 |
case 'verif_parcelle': |
case 'verif_parcelle': |
234 |
|
// Traitement du message |
235 |
|
$message = _("Les parcelles existent."); |
236 |
|
// Initialise le tableau qui contiendra les parcelles qui |
237 |
|
// n'existent pas |
238 |
|
$list_error_parcelle = array(); |
239 |
|
// Vérifie l'existence des parcelles |
240 |
|
foreach ($execute['return'] as $key => $ret) { |
241 |
|
// Si c'est un tableau |
242 |
|
if (is_array($execute['return'][$key])) { |
243 |
|
// |
244 |
|
if ($ret['existe'] != '0') { |
245 |
|
$list_error_parcelle[] = $ret['id']; |
246 |
|
} |
247 |
|
} elseif ($key == 'existe' && $execute['return'][$key] == '1') { |
248 |
|
$list_error_parcelle[] = $execute['return']['id']; |
249 |
|
} |
250 |
|
} |
251 |
|
// Si des parcelles n'existent pas alors ont les affichent |
252 |
|
// à l'utilisateur |
253 |
|
if (count($list_error_parcelle) != 0) { |
254 |
|
// |
255 |
|
$etat = 'f'; |
256 |
|
// |
257 |
|
$string_error_parcelle = implode(", ", $list_error_parcelle); |
258 |
|
// |
259 |
|
$message = _("Les parcelles n'existent pas."); |
260 |
|
} else { |
261 |
|
// Sinon ont met à jour le champ |
262 |
|
// terrain_references_cadastrales_archive dans la table |
263 |
|
// sig_elyx |
264 |
|
$flag_ref_cadastrales = true; |
265 |
|
|
266 |
|
} |
267 |
break; |
break; |
268 |
// |
// |
269 |
case 'calcul_emprise': |
case 'calcul_emprise': |
270 |
// Traitement du message |
// Traitement du message |
271 |
$message = _("L'emprise a ete calcule."); |
$message = _("L'emprise a ete calculee."); |
272 |
break; |
break; |
273 |
// |
// |
274 |
case 'dessin_emprise': |
case 'dessin_emprise': |
275 |
// Traitement du message |
// Traitement du message |
276 |
$message = _("Redirection vers ElyxWeb."); |
$message = _("Redirige vers ElyxWeb."); |
277 |
break; |
break; |
278 |
// |
// |
279 |
case 'calcul_centroide': |
case 'calcul_centroide': |
280 |
// Traitement du message |
// Récupération du code de référentiel sig |
281 |
$message = _("Le centroide a ete calcule")." : ".$execute['return']['coordX'].", ".$execute['return']['coordY']; |
if($f->getParameter("sig_referentiel") == "" OR |
282 |
// Met à jour le centroide dans le dossier |
$f->getParameter("sig_referentiel") == NULL) { |
283 |
$valueDI = array(); |
$etat = 'f'; |
284 |
$valueDI['geom'] = $execute['return']['coordX'].", ".$execute['return']['coordY']; |
$message = _("Erreur de configuration. Contactez votre administrateur."); |
285 |
$res = $f->db->autoExecute(DB_PREFIXE."dossier", $valueDI, DB_AUTOQUERY_UPDATE, "dossier = '".$id."'"); |
} else { |
286 |
$f->addToLog("app/geolocalisation_treatment.php: db->autoexecute(\"".DB_PREFIXE."dossier\", ".print_r($valueDI, true).", DB_AUTOQUERY_UPDATE, \"dossier = '".$id."'\");", VERBOSE_MODE); |
$coord = $execute['return']['coordX']." ".$execute['return']['coordY']; |
287 |
$f->isDatabaseError($res); |
|
288 |
|
// Traitement du message |
289 |
|
$message = _("Le centroide a ete calcule")." : ". |
290 |
|
$execute['return']['coordX'].", ". |
291 |
|
$execute['return']['coordY']."."; |
292 |
|
|
293 |
|
// Met à jour le centroide dans le dossier |
294 |
|
$res = $f->db->query("UPDATE ".DB_PREFIXE."dossier ". |
295 |
|
"SET geom = public.ST_GeomFromText('POINT(".$coord.")',". |
296 |
|
$f->getParameter("sig_referentiel").") ". |
297 |
|
"WHERE dossier = '".$id."'"); |
298 |
|
$f->addToLog("app/geolocalisation_treatment.php: db->query(\"UPDATE ". |
299 |
|
DB_PREFIXE."dossier SET geom = public.ST_GeomFromText('POINT(". |
300 |
|
$coord.")',".$f->getParameter("sig_referentiel").") WHERE dossier = '".$id."'", VERBOSE_MODE); |
301 |
|
$f->isDatabaseError($res); |
302 |
|
} |
303 |
break; |
break; |
304 |
// |
// |
305 |
case 'recup_contrainte': |
case 'recup_contrainte': |
306 |
|
// Traitement du message |
307 |
|
$message = _("Les contraintes ont ete recuperees."); |
308 |
|
// Initialisation des variables de comparaison |
309 |
|
$synchro = true; |
310 |
|
$ajouter = true; |
311 |
|
$supprimer = true; |
312 |
|
|
313 |
|
// Récupère toutes les contraintes du dossier avant traitement |
314 |
|
$listeDossierContrainteSIG = getDossierContrainteSIG($id, $f); |
315 |
|
// Pour chaque contrainte; |
316 |
|
foreach ($execute['return'] as $key => $value) { |
317 |
|
// Vérifie que la contrainte est dans l'application |
318 |
|
$contrainte = getContrainteByNumero($value['idContrainte'], $f); |
319 |
|
// Si la contrainte est vide |
320 |
|
if ($contrainte == "") { |
321 |
|
// Nécessite une synchronisation |
322 |
|
$synchro = false; |
323 |
|
} |
324 |
|
// S'il y a une contrainte |
325 |
|
if ($contrainte != "") { |
326 |
|
// Instancie la classe dossier_contrainte |
327 |
|
require_once "../obj/dossier_contrainte.class.php"; |
328 |
|
$dossier_contrainte_add = new dossier_contrainte("]", $f->db, DEBUG); |
329 |
|
// Définit les valeurs |
330 |
|
$val = array( |
331 |
|
'dossier_contrainte' => ']', |
332 |
|
'dossier' => $id, |
333 |
|
'contrainte' => $contrainte, |
334 |
|
'texte_complete' => $value['libelle'], |
335 |
|
'reference' => true, |
336 |
|
); |
337 |
|
// Ajoute l'enregistrement |
338 |
|
$ajouter = $dossier_contrainte_add->ajouter($val, $f->db, DEBUG); |
339 |
|
} |
340 |
|
} |
341 |
|
|
342 |
|
// S'il n'y a aucune erreurs |
343 |
|
if ($ajouter == true && $synchro == true) { |
344 |
|
// Si la liste des contraintes n'est pas vide |
345 |
|
if (count($listeDossierContrainteSIG) > 0) { |
346 |
|
// Pour chaque contrainte |
347 |
|
foreach ($listeDossierContrainteSIG as $dossier_contrainte_id) { |
348 |
|
// Instancie la classe dossier_contrainte |
349 |
|
require_once "../obj/dossier_contrainte.class.php"; |
350 |
|
$dossier_contrainte_del = new dossier_contrainte($dossier_contrainte_id, $f->db, DEBUG); |
351 |
|
// Valeurs de l'enregistrement |
352 |
|
$value = array(); |
353 |
|
foreach($dossier_contrainte_del->champs as $key => $champ) { |
354 |
|
// Terme à chercher |
355 |
|
$search_field = 'contrainte_'; |
356 |
|
// Si dans le champ le terme est trouvé |
357 |
|
if (strpos($champ, $search_field) !== false) { |
358 |
|
// Supprime le champ |
359 |
|
unset($dossier_contrainte_del->champs[$key]); |
360 |
|
} else { |
361 |
|
// Récupère la valeur du champ |
362 |
|
$value[$champ] = $dossier_contrainte_del->val[$key]; |
363 |
|
} |
364 |
|
} |
365 |
|
// Supprime l'enregistrement |
366 |
|
$supprimer = $dossier_contrainte_del->supprimer($value, $f->db, DEBUG); |
367 |
|
} |
368 |
|
} |
369 |
|
} |
370 |
|
|
371 |
|
// Si les contraintes ne sont pas synchronisées |
372 |
|
if ($synchro == false) { |
373 |
|
// Traitement du message |
374 |
|
$message = _("Les contraintes doivent etre synchronisees."); |
375 |
|
// État à false |
376 |
|
$etat = 'f'; |
377 |
|
} |
378 |
|
|
379 |
|
// |
380 |
|
if ($ajouter == false && $synchro == true) { |
381 |
|
// Traitement du message |
382 |
|
$message = _("Les contraintes n'ont pas ete ajoutees au dossier."); |
383 |
|
// État à false |
384 |
|
$etat = 'f'; |
385 |
|
} |
386 |
|
|
387 |
|
// Si les contraintes ne sont pas synchronisées |
388 |
|
if ($supprimer == false && $ajouter == true && $synchro == true) { |
389 |
|
// Traitement du message |
390 |
|
$message = _("Les anciennes contraintes n'ont pas ete supprimees."); |
391 |
|
// État à false |
392 |
|
$etat = 'f'; |
393 |
|
} |
394 |
|
|
395 |
|
// S'il il y a une erreur |
396 |
|
if ($synchro == false || $ajouter == false || $supprimer == false) { |
397 |
|
// Ajoute au message d'erreur |
398 |
|
$message .= " "._("Contactez votre administrateur."); |
399 |
|
} |
400 |
|
|
401 |
|
// Récupère toutes les contraintes du dossier après traitement |
402 |
|
$listeDossierContrainteSIGAfter = getDossierContrainteSIG($id, $f); |
403 |
break; |
break; |
404 |
} |
} |
405 |
} |
} |
406 |
|
|
407 |
|
// Si une erreur interne est retournée |
408 |
|
if ($execute == -1) { |
409 |
|
// Met l'état à false |
410 |
|
$etat = 'f'; |
411 |
|
// Traitement du message d'erreur |
412 |
|
$message = _("Une erreur s'est produite. Veuillez verifier les etapes precedentes ou contacter votre administrateur."); |
413 |
|
// log le message d'erreur retourné par le webservice |
414 |
|
$f->addToLog("app/geolocalisation_treatment.php: Traitement webservice SIG: id dossier = ".$id.": ".$soap->getErrorMessage(), DEBUG_MODE); |
415 |
|
// Redéfinit la variable utilisée pour le retour |
416 |
|
unset($execute); |
417 |
|
$execute= array(); |
418 |
|
} |
419 |
|
|
420 |
// Format de la date pour l'affichage |
// Format de la date pour l'affichage |
421 |
$date = date('d/m/Y H:i:s'); |
$date = date('d/m/Y H:i:s'); |
422 |
// Format de la date pour la BDD |
// Format de la date pour la BDD |
423 |
$date_db = $f->formatTimestamp($date, false); |
$date_db = $f->formatTimestamp($date, false); |
424 |
|
|
425 |
// Valeur à modifier dans sig_elyx |
// Valeur à modifier dans sig_elyx |
426 |
|
$valueSIG = array(); |
427 |
foreach($sig_elyx->champs as $key => $champ) { |
foreach($sig_elyx->champs as $key => $champ) { |
428 |
// |
// |
429 |
$valueSIG[$champ] = $sig_elyx->val[$key]; |
$valueSIG[$champ] = $sig_elyx->val[$key]; |
437 |
$valueSIG['date_'.$fieldname] = $date_db; |
$valueSIG['date_'.$fieldname] = $date_db; |
438 |
$valueSIG['etat_'.$fieldname] = $etat; |
$valueSIG['etat_'.$fieldname] = $etat; |
439 |
$valueSIG['message_'.$fieldname] = $message; |
$valueSIG['message_'.$fieldname] = $message; |
440 |
|
// Si les références cadastrales ont été modifiées et vérifier |
441 |
|
if ($flag_ref_cadastrales === true) { |
442 |
|
// On met à jour le champ de la table sig_elyx |
443 |
|
$valueSIG['terrain_references_cadastrales_archive'] = $rowDonneesDI['terrain_references_cadastrales']; |
444 |
|
} |
445 |
|
// Si les champs contenant la référence cadastrale dans le DI |
446 |
|
// et dans la table sig_elyx sont différent |
447 |
|
if ($flag_ref_cadastrales === true && $diff_parcelle === true) { |
448 |
|
// Met à jour le message des autres boutons |
449 |
|
$valueSIG['message_calcul_emprise'] = $message_diff_parcelle; |
450 |
|
$valueSIG['message_calcul_centroide'] = $message_diff_parcelle; |
451 |
|
$valueSIG['message_recup_contrainte'] = $message_diff_parcelle; |
452 |
|
// Met à jour l'état des autres boutons |
453 |
|
$valueSIG['etat_calcul_emprise'] = 'f'; |
454 |
|
$valueSIG['etat_calcul_centroide'] = 'f'; |
455 |
|
$valueSIG['etat_recup_contrainte'] = 'f'; |
456 |
|
// Met à jour la date de traitement des autres boutons |
457 |
|
$valueSIG['date_calcul_emprise'] = $date_db; |
458 |
|
$valueSIG['date_calcul_centroide'] = $date_db; |
459 |
|
$valueSIG['date_recup_contrainte'] = $date_db; |
460 |
|
|
461 |
|
// Message à affiché à l'utilisateur |
462 |
|
$message_diff_parcelle = sprintf(_("Dernier traitement effectue le %s."), $date)." ".$message_diff_parcelle; |
463 |
|
} |
464 |
// Modification de l'enregistrement |
// Modification de l'enregistrement |
465 |
$sig_elyx->modifier($valueSIG, $f->db, DEBUG); |
$sig_elyx->modifier($valueSIG, $f->db, DEBUG); |
466 |
|
|
474 |
"date"=> $date, |
"date"=> $date, |
475 |
"etat"=> $etat, |
"etat"=> $etat, |
476 |
"message"=> $message, |
"message"=> $message, |
477 |
|
"message_diff_parcelle"=> $message_diff_parcelle |
478 |
|
); |
479 |
|
// Ajoute les informations concernant les contraintes récupérées |
480 |
|
$return['dossier_contrainte'] = array( |
481 |
|
"nb_contrainte_sig" => count($listeDossierContrainteSIGAfter), |
482 |
|
"msg_contrainte_sig_empty" => _("Aucune contraintes ajoutees depuis l'application"), |
483 |
|
"msg_contrainte_sig" => _("contrainte(s) ajoutee(s) depuis le SIG"), |
484 |
); |
); |
485 |
|
|
486 |
// Retourne le résultat dans un tableau json |
// Retourne le résultat dans un tableau json |