157 |
//} |
//} |
158 |
|
|
159 |
} |
} |
160 |
|
|
161 |
|
/** |
162 |
|
* Cette fonction permet de compléter le champ par des zéro par la gauche |
163 |
|
* @param string champ Champ concerné |
164 |
|
* @param integer length Taille du champ retourné |
165 |
|
*/ |
166 |
|
function str_pad_js(champ, length) { |
167 |
|
|
168 |
|
// Initialisation de la variable str |
169 |
|
var str = '' + champ.value; |
170 |
|
|
171 |
|
// Si le champ n'est pas vide |
172 |
|
if (str != '') { |
173 |
|
// Tant que la taille n'est pas atteint, |
174 |
|
// on ajoute des 0 |
175 |
|
while (str.length < length) { |
176 |
|
str = '0' + str; |
177 |
|
} |
178 |
|
// Modifie le champ |
179 |
|
champ.value = str; |
180 |
|
} |
181 |
|
} |
182 |
|
|
183 |
// Ce widget permet de charger les données d'un select en ajax |
// Ce widget permet de charger les données d'un select en ajax |
184 |
function changeDataSelect(tableName, linkedField, joker){ |
function changeDataSelect(tableName, linkedField, joker){ |
185 |
var id_dossierAutorisation = $("#dossier_autorisation").val(); |
var id_dossierAutorisation = $("#dossier_autorisation").val(); |
726 |
|
|
727 |
formatFieldReferenceCadastrale(); |
formatFieldReferenceCadastrale(); |
728 |
} |
} |
729 |
|
|
730 |
|
// S'il y a une erreur durant la validation lors de l'ajout |
731 |
|
// d'une nouvelle demande |
732 |
|
if (url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1 |
733 |
|
&& (url.indexOf("&action=3") == -1 |
734 |
|
&& url.indexOf("&action=2") == -1 |
735 |
|
&& url.indexOf("&validation") != -1 |
736 |
|
&& $(".form-is-valid").size() == 0)) { |
737 |
|
|
738 |
|
addButtonCadastraleAdesse(); |
739 |
|
formatFieldReferenceCadastrale(); |
740 |
|
} |
741 |
|
|
742 |
if (url.indexOf("form.php?obj=demande&") != -1 |
if (url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1 |
743 |
&& (url.indexOf("&action=3") == -1 |
&& (url.indexOf("&action=3") == -1 |
744 |
&& url.indexOf("&action=2") == -1 |
&& url.indexOf("&action=2") == -1 |
745 |
|
&& url.indexOf("&validation") == -1 |
746 |
&& $(".form-is-valid").size() == 0)) { |
&& $(".form-is-valid").size() == 0)) { |
747 |
|
|
748 |
addButtonCadastraleAdesse(); |
addButtonCadastraleAdesse(); |
762 |
if (url.indexOf("form.php?obj=demande_dossier_existant&") != -1 |
if (url.indexOf("form.php?obj=demande_dossier_existant&") != -1 |
763 |
&& url.indexOf("&action=0") != -1 ){ |
&& url.indexOf("&action=0") != -1 ){ |
764 |
|
|
765 |
/*Cache les champs avant que dossier_autorisation_type_detaille soit choisi*/ |
//Cache les champs avant que dossier_autorisation_type_detaille soit choisi |
766 |
hideFields(); |
hideFields(); |
767 |
changeDemandeType(); |
//On affiche le select du type de la demande |
768 |
|
$('#demande_type').parent().parent().show(); |
769 |
} |
} |
770 |
|
|
771 |
// Modification de demande |
// Modification de demande |
1080 |
$('#dialog').html(res); |
$('#dialog').html(res); |
1081 |
|
|
1082 |
$( "#dialog" ).dialog({ |
$( "#dialog" ).dialog({ |
1083 |
|
dialogClass: "dialog-search-frequent-"+objName, |
1084 |
modal: true, |
modal: true, |
1085 |
buttons : { |
buttons : { |
1086 |
Valider: function(){ |
Valider: function(){ |
1356 |
} |
} |
1357 |
|
|
1358 |
function addButtonCadastraleAdesse(){ |
function addButtonCadastraleAdesse(){ |
1359 |
|
|
1360 |
|
// Permet d'ajouter le bouton de récupération d'adresse si sig activé |
1361 |
|
if ($('#option_sig').val() == 'sig_externe'){ |
1362 |
|
|
1363 |
$('#terrain_superficie').parent().parent().after('<div class="field field-type-text" >' + |
$('#terrain_references_cadastrales').parent().parent().after('<div class="field field-type-text" >' + |
1364 |
'<div class="form-libelle"></div>' + |
'<div class="form-libelle"></div>' + |
1365 |
'<div class="form-content buttonCadAdr">' + |
'<div class="form-content buttonCadAdr">' + |
1366 |
'<input id="cad-adr-them" class="ui-button ui-widget ui-state-default ui-corner-all" type="button" value="Cadastrale < = > Adresse"/>' + |
'<input id="cad-adr-them" '+ |
1367 |
'</div>' + |
'class="ui-button ui-widget ui-state-default ui-corner-all" '+ |
1368 |
'</div>' ); |
'type="button" '+ |
1369 |
|
'onclick="getAdressFromCadastrale();" '+ |
1370 |
|
'value="Récupérer l\'adresse de la parcelle"/>' + |
1371 |
|
'</div>' + |
1372 |
|
'</div>' ); |
1373 |
|
} |
1374 |
} |
} |
1375 |
|
|
1376 |
/* |
/* |
1422 |
var reference_cadastrale = '<input ' + |
var reference_cadastrale = '<input ' + |
1423 |
'class="champFormulaire reference_cadastrale_custom_field" ' + |
'class="champFormulaire reference_cadastrale_custom_field" ' + |
1424 |
'type="text" ' + |
'type="text" ' + |
1425 |
'onchange="VerifNum(this)" ' + |
'onchange="VerifNum(this);str_pad_js(this, 3);" ' + |
1426 |
'maxlength="4" ' + |
'maxlength="3" ' + |
1427 |
'size="4" '+ |
'size="3" '+ |
1428 |
'placeholder="Quart." '; |
'placeholder="Quart." '; |
1429 |
|
|
1430 |
// désactivation des champs de référence cadastrale |
// désactivation des champs de référence cadastrale |
1447 |
} |
} |
1448 |
|
|
1449 |
reference_cadastrale += 'value="" '+ |
reference_cadastrale += 'value="" '+ |
1450 |
'onchange="if ( !isAlpha(this.value) ){ alert(\'Vous ne devez saisir que des lettres dans ce champs.\'); this.value = \'\'; }"/>'; |
'onchange="if ( !isAlpha(this.value) && this.value != \'\' ){ alert(\'Vous ne devez saisir que des lettres dans ce champs.\'); this.value = \'\'; }; this.value=this.value.toUpperCase();"/>'; |
1451 |
reference_cadastrale += '<input ' + |
reference_cadastrale += '<input ' + |
1452 |
'class="champFormulaire reference_cadastrale_custom_field" ' + |
'class="champFormulaire reference_cadastrale_custom_field" ' + |
1453 |
'type="text" ' + |
'type="text" ' + |
1454 |
'onchange="VerifNum(this)" ' + |
'onchange="VerifNum(this);str_pad_js(this, 4);" ' + |
1455 |
'maxlength="5" ' + |
'maxlength="4" ' + |
1456 |
'size="5" '+ |
'size="4" '+ |
1457 |
'placeholder="Parc." '; |
'placeholder="Parc." '; |
1458 |
|
|
1459 |
// désactivation des champs de référence cadastrale |
// désactivation des champs de référence cadastrale |
1583 |
'<input ' + |
'<input ' + |
1584 |
'class="champFormulaire reference_cadastrale_custom_field" ' + |
'class="champFormulaire reference_cadastrale_custom_field" ' + |
1585 |
'type="text" ' + |
'type="text" ' + |
1586 |
'onchange="VerifNum(this)" ' + |
'onchange="VerifNum(this);str_pad_js(this, 4)" ' + |
1587 |
'maxlength="4" ' + |
'maxlength="4" ' + |
1588 |
'size="4" ' + |
'size="4" ' + |
1589 |
'placeholder="Parc." ' + |
'placeholder="Parc." ' + |
1592 |
} |
} |
1593 |
|
|
1594 |
|
|
|
|
|
|
/** |
|
|
* Desactivation des fonctions widget du tableau de bord inutiles sur le nouveau |
|
|
* tableau de bord |
|
|
*/ |
|
|
function widget_bind_move_actions() {} |
|
|
function widget_bind_add_action() {} |
|
|
function widget_bind_edit_actions(widget_selector) {} |
|
|
|
|
1595 |
// Cette fonction permet d'associer a un arbre html les fonctions jquery |
// Cette fonction permet d'associer a un arbre html les fonctions jquery |
1596 |
// necessaires. Elle permet notamment lors du chargement d'une page en ajax |
// necessaires. Elle permet notamment lors du chargement d'une page en ajax |
1597 |
// d'associer le comportement du bouton, la gestion du calendrier et la gestion |
// d'associer le comportement du bouton, la gestion du calendrier et la gestion |
1650 |
}); |
}); |
1651 |
} |
} |
1652 |
|
|
1653 |
|
/** |
1654 |
|
* Fonction permettant de faire la somme des champs passé en 2nd parametre et |
1655 |
|
* le stocker dans le champ passé en 1er |
1656 |
|
*/ |
1657 |
|
function sommeChampsCerfa(cible, source) { |
1658 |
|
val_cible = 0; |
1659 |
|
|
1660 |
|
$.each(source, function(index, value) { |
1661 |
|
// Conversion des champs source en integer |
1662 |
|
val_source = parseInt($('#'+value).val()); |
1663 |
|
// Cumul des valeurs des champs source |
1664 |
|
val_cible = val_cible + (isNaN(val_source) ? 0 : val_source); |
1665 |
|
}); |
1666 |
|
// Affectation de la nouvelle valeur |
1667 |
|
$('#'+cible).val(val_cible); |
1668 |
|
} |
1669 |
|
|
1670 |
|
function calculSurfaceTotal() { |
1671 |
|
|
1672 |
|
var nom_col = [ "su_avt_shon", |
1673 |
|
"su_cstr_shon", |
1674 |
|
"su_trsf_shon", |
1675 |
|
"su_chge_shon", |
1676 |
|
"su_demo_shon", |
1677 |
|
"su_tot_shon" ]; |
1678 |
|
|
1679 |
|
// Calcul des totaux de colonnes |
1680 |
|
$.each(nom_col, function(index, value) { |
1681 |
|
var tot_col = 0; |
1682 |
|
for ( var i = 1; i <= 9; i++ ) { |
1683 |
|
// Conversion des champs source en integer |
1684 |
|
val_source = parseInt($('#'+value+i).val()); |
1685 |
|
// Cumul des valeurs des champs source |
1686 |
|
tot_col = tot_col + (isNaN(val_source) ? 0 : val_source); |
1687 |
|
} |
1688 |
|
|
1689 |
|
// Affectation du résultat de ligne |
1690 |
|
$('#'+value+'_tot').val(tot_col); |
1691 |
|
}); |
1692 |
|
|
1693 |
|
// Calcul des totaux des lignes |
1694 |
|
for ( var j = 1; j <= 9; j++ ) { |
1695 |
|
// Conversion des champs source en integer |
1696 |
|
su_avt_shon = parseInt($('#su_avt_shon'+j).val()); |
1697 |
|
su_cstr_shon = parseInt($('#su_cstr_shon'+j).val()); |
1698 |
|
su_trsf_shon = parseInt($('#su_trsf_shon'+j).val()); |
1699 |
|
su_chge_shon = parseInt($('#su_chge_shon'+j).val()); |
1700 |
|
su_demo_shon = parseInt($('#su_demo_shon'+j).val()); |
1701 |
|
|
1702 |
|
// Cumul des valeurs des champs source |
1703 |
|
su_avt_shon = isNaN(su_avt_shon) ? 0 : su_avt_shon; |
1704 |
|
su_cstr_shon = isNaN(su_cstr_shon) ? 0 : su_cstr_shon; |
1705 |
|
su_trsf_shon = isNaN(su_trsf_shon) ? 0 : su_trsf_shon; |
1706 |
|
su_chge_shon = isNaN(su_chge_shon) ? 0 : su_chge_shon; |
1707 |
|
su_demo_shon = isNaN(su_demo_shon) ? 0 : su_demo_shon; |
1708 |
|
|
1709 |
|
// Affectation du résultat de ligne |
1710 |
|
$('#su_tot_shon'+j).val((su_avt_shon+su_cstr_shon+su_trsf_shon)-(su_chge_shon+su_demo_shon)); |
1711 |
|
|
1712 |
|
} |
1713 |
|
|
1714 |
|
// Calcul du total des totaux |
1715 |
|
// Conversion des champs source en integer |
1716 |
|
su_avt_shon = parseInt($('#su_avt_shon_tot').val()); |
1717 |
|
su_cstr_shon = parseInt($('#su_cstr_shon_tot').val()); |
1718 |
|
su_trsf_shon = parseInt($('#su_trsf_shon_tot').val()); |
1719 |
|
su_chge_shon = parseInt($('#su_chge_shon_tot').val()); |
1720 |
|
su_demo_shon = parseInt($('#su_demo_shon_tot').val()); |
1721 |
|
|
1722 |
|
// Cumul des valeurs des champs source |
1723 |
|
su_avt_shon = isNaN(su_avt_shon) ? 0 : su_avt_shon; |
1724 |
|
su_cstr_shon = isNaN(su_cstr_shon) ? 0 : su_cstr_shon; |
1725 |
|
su_trsf_shon = isNaN(su_trsf_shon) ? 0 : su_trsf_shon; |
1726 |
|
su_chge_shon = isNaN(su_chge_shon) ? 0 : su_chge_shon; |
1727 |
|
su_demo_shon = isNaN(su_demo_shon) ? 0 : su_demo_shon; |
1728 |
|
|
1729 |
|
// Affectation du résultat de ligne |
1730 |
|
$('#su_tot_shon_tot').val((su_avt_shon+su_cstr_shon+su_trsf_shon)-(su_chge_shon+su_demo_shon)); |
1731 |
|
|
1732 |
|
} |
1733 |
|
|
1734 |
/* |
/* |
1735 |
* Marque comme lu une consultation ou commission |
* Marque comme lu une consultation ou commission |
1736 |
*/ |
*/ |
2212 |
); |
); |
2213 |
|
|
2214 |
//Si la finalisation a été effectuée avec succès |
//Si la finalisation a été effectuée avec succès |
2215 |
if ( data.pdf != -1 ){ |
if ( typeof data.pdf !== "undefined" && data.pdf != -1 ){ |
2216 |
|
|
2217 |
// On change le lien |
// On change le lien |
2218 |
var etat = ((status == 1)?'':'de') + 'finalis'; |
var etat = ((status == 1)?'':'de') + 'finalis'; |
2227 |
//Si on le document est finalisé, on cache les actions du portlet |
//Si on le document est finalisé, on cache les actions du portlet |
2228 |
if ( status == 1 ){ |
if ( status == 1 ){ |
2229 |
|
|
2230 |
$(".edit-16").parent().parent().remove(); |
$("#"+sousform+obj+" .edit-16").parent().parent().remove(); |
2231 |
$(".delete-16").parent().parent().remove(); |
$("#"+sousform+obj+" .delete-16").parent().parent().remove(); |
2232 |
} |
} |
2233 |
else{ |
else{ |
2234 |
|
|
2245 |
actions += data.actions.supprimer; |
actions += data.actions.supprimer; |
2246 |
} |
} |
2247 |
|
|
2248 |
$('.portlet-list').prepend(actions); |
$('#'+sousform+obj+' .portlet-list').prepend(actions); |
2249 |
} |
} |
2250 |
|
|
2251 |
//On affiche un message de valisation |
//On affiche un message de valisation |
2252 |
$('#'+sousform+obj+' .message').addClass("ui-state-valid"); |
$('#'+sousform+obj+' .message').addClass("ui-state-valid"); |
2253 |
$('#'+sousform+obj+' .message .text').html( |
$('#'+sousform+obj+' .message .text').html(data.message); |
|
"La "+etat+"ation du document s'est effectuée avec succès." |
|
|
); |
|
2254 |
} |
} |
2255 |
// Si une erreur s'est produite |
// Si une erreur s'est produite |
2256 |
else { |
else { |
2257 |
|
|
2258 |
//On affiche un message de validation |
//On affiche un message de validation |
2259 |
$('#'+sousform+obj+' .message').addClass("ui-state-error"); |
$('#'+sousform+obj+' .message').addClass("ui-state-error"); |
2260 |
$('#'+sousform+obj+' .message .text').html( |
$('#'+sousform+obj+' .message .text').html(data.message); |
2261 |
"Une erreur s'est produite lors de la finalisation du document." |
} |
2262 |
); |
}, |
2263 |
|
error: function(jqXHR, textStatus, errorThrown) { |
2264 |
|
|
2265 |
|
//Si un parsererror est retourné, du code HTML s'est affiché dans |
2266 |
|
//l'application, on affiche ce code |
2267 |
|
if ( textStatus === "parsererror" ){ |
2268 |
|
$('#'+sousform+obj+' .message.ui-widget.ui-corner-all.ui-state-highlight').remove() |
2269 |
|
$('#'+sousform+obj+' a.retour').first().before(jqXHR.responseText); |
2270 |
} |
} |
2271 |
} |
} |
2272 |
}); |
}); |
2309 |
} |
} |
2310 |
|
|
2311 |
/** |
/** |
2312 |
|
* Redirige vers une page après un temps d'attente |
2313 |
|
* @param string page lien de la page vers la redirection |
2314 |
|
* @param int milliseconde temps d'attente avant la redirection |
2315 |
|
*/ |
2316 |
|
function redirection(page, milliseconde) { |
2317 |
|
|
2318 |
|
// |
2319 |
|
setTimeout(window.location = page, milliseconde); |
2320 |
|
} |
2321 |
|
|
2322 |
|
/** |
2323 |
* Retourne ce qu'il y a à afficher dans le formulaire de retour (bouton ajouter ou supprimer et éditer) |
* Retourne ce qu'il y a à afficher dans le formulaire de retour (bouton ajouter ou supprimer et éditer) |
2324 |
*/ |
*/ |
2325 |
function getObjId(obj){ |
function getObjId(obj){ |
2350 |
}, |
}, |
2351 |
async:false |
async:false |
2352 |
}); |
}); |
|
} |
|
2353 |
|
} |
2354 |
|
|
2355 |
|
/** |
2356 |
|
* Redirige vers le script PHP pour mettre à jour les informations |
2357 |
|
* et met à jour l'interface pour l'utilisateur |
2358 |
|
* @param string id Identifiant du dossier |
2359 |
|
* @param string fieldname Nom du champ |
2360 |
|
* @param Function callback Fonction mettant à jour l'interface des données |
2361 |
|
* @param string confirm_message Texte du message de confirmation |
2362 |
|
*/ |
2363 |
|
function geolocalisation_treatment(id, fieldname, callback, confirm_message) { |
2364 |
|
|
2365 |
|
// Overlay de confirmation du traitement |
2366 |
|
if (confirm_message != null && confirm_message != '') { |
2367 |
|
var dialog_confirm = confirm(confirm_message); |
2368 |
|
if( dialog_confirm == false ){ |
2369 |
|
return false; |
2370 |
|
} |
2371 |
|
} |
2372 |
|
|
2373 |
|
// Affichage du spinner |
2374 |
|
$('#'+fieldname).each( |
2375 |
|
function(){ |
2376 |
|
$(this).children().removeClass(); |
2377 |
|
$(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-empty'); |
2378 |
|
$(this).children().children().children(".text").html(msg_loading); |
2379 |
|
} |
2380 |
|
); |
2381 |
|
|
2382 |
|
// lien vers script PHP faisant l'appel au webservice |
2383 |
|
link = '../app/geolocalisation_treatment.php?fieldname='+fieldname+'&id='+id+'&callback='+callback; |
2384 |
|
|
2385 |
|
// Traitement |
2386 |
|
$.ajax({ |
2387 |
|
type: "GET", |
2388 |
|
url: link, |
2389 |
|
cache: false, |
2390 |
|
dataType: "json", |
2391 |
|
success: function(res){ |
2392 |
|
// |
2393 |
|
$('#'+fieldname).each( |
2394 |
|
function(){ |
2395 |
|
$(this).children().children().children(".text").text(res['log']['message']); |
2396 |
|
$(this).children().removeClass(); |
2397 |
|
if (res['log']['etat'] == 't') { |
2398 |
|
$(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-valid'); |
2399 |
|
} else { |
2400 |
|
$(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-error'); |
2401 |
|
} |
2402 |
|
} |
2403 |
|
); |
2404 |
|
|
2405 |
|
// |
2406 |
|
if (typeof(callback) === "function" && res['log']['etat'] == 't') { |
2407 |
|
callback(res); |
2408 |
|
} |
2409 |
|
}, |
2410 |
|
async:false |
2411 |
|
}); |
2412 |
|
} |
2413 |
|
|
2414 |
|
/** |
2415 |
|
* Efface le message en haut du formulaire |
2416 |
|
* @param array res Résultat après le traitement du script PHP |
2417 |
|
*/ |
2418 |
|
function set_geolocalisation_message(res) { |
2419 |
|
// Si il y a un message d'erreur |
2420 |
|
if ($('#geolocalisation-message')[0]) { |
2421 |
|
// Supprime le message |
2422 |
|
$('#geolocalisation-message').remove(); |
2423 |
|
// Modifie les messages des autres fonctionnalités |
2424 |
|
$('#calcul_emprise').each( |
2425 |
|
function() { |
2426 |
|
$(this).children().removeClass(); |
2427 |
|
$(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-error'); |
2428 |
|
$(this).children().children().children(".text").text(res['log']['message_diff_parcelle']); |
2429 |
|
} |
2430 |
|
); |
2431 |
|
$('#calcul_centroide').each( |
2432 |
|
function() { |
2433 |
|
$(this).children().removeClass(); |
2434 |
|
$(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-error'); |
2435 |
|
$(this).children().children().children(".text").text(res['log']['message_diff_parcelle']); |
2436 |
|
} |
2437 |
|
); |
2438 |
|
$('#recup_contrainte').each( |
2439 |
|
function() { |
2440 |
|
$(this).children().removeClass(); |
2441 |
|
$(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-error'); |
2442 |
|
$(this).children().children().children(".text").text(res['log']['message_diff_parcelle']); |
2443 |
|
} |
2444 |
|
); |
2445 |
|
} |
2446 |
|
|
2447 |
|
} |
2448 |
|
|
2449 |
|
/** |
2450 |
|
* Met le champ centroïde à jour |
2451 |
|
* @param array res Résultat après le traitement du script PHP |
2452 |
|
*/ |
2453 |
|
function set_geolocalisation_centroide(res) { |
2454 |
|
|
2455 |
|
var content = "<a id='action-form-localiser'"+ |
2456 |
|
" target='_SIG' href='../app/redirect_plan_sig.php?idx="+res['return']['dossierID']+"'>"+ |
2457 |
|
"<span class='om-icon om-icon-16 om-icon-fix sig-16' title='Localiser'>Localiser</span> "+ |
2458 |
|
" POINT("+res['return']['coordX']+" "+res['return']['coordY']+")"+ |
2459 |
|
" </a>"; |
2460 |
|
|
2461 |
|
$('span#centroide').html(content); |
2462 |
|
$('span#geom').html(content); |
2463 |
|
} |
2464 |
|
|
2465 |
|
/** |
2466 |
|
* Met le champ servitude à jour |
2467 |
|
* @param array res Résultat après le traitement du script PHP |
2468 |
|
*/ |
2469 |
|
function set_geolocalisation_contrainte(res) { |
2470 |
|
$('span#servitude').html(res['return']['servitude']); |
2471 |
|
} |
2472 |
|
|
2473 |
|
/** |
2474 |
|
* Redirige vers ElyxWeb |
2475 |
|
* @param array res Résultat après le traitement du script PHP |
2476 |
|
*/ |
2477 |
|
function redirection_elyxweb(res) { |
2478 |
|
window.open(res['return']); |
2479 |
|
} |
2480 |
|
|
2481 |
|
/** |
2482 |
|
* Traitement du bouton permettant de calculer toutes les données géographiques |
2483 |
|
* @param string id Identifiant du dossier |
2484 |
|
* @param string confirm_message Texte du message de confirmation |
2485 |
|
*/ |
2486 |
|
function all_geolocalisation_treatments(id, confirm_message) { |
2487 |
|
|
2488 |
|
// Overlay de confirmation du traitement |
2489 |
|
if (confirm_message != null && confirm_message != '') { |
2490 |
|
var dialog_confirm = confirm(confirm_message); |
2491 |
|
if( dialog_confirm == false ){ |
2492 |
|
return false; |
2493 |
|
} |
2494 |
|
} |
2495 |
|
|
2496 |
|
// Initialisation des variables utilisées en paramètres |
2497 |
|
var fieldname = ''; |
2498 |
|
var callback = ''; |
2499 |
|
var confirm_message = ''; |
2500 |
|
var flag = ''; |
2501 |
|
|
2502 |
|
// Modification des variables utilisées en paramètres pour "Vérifier les |
2503 |
|
// parcelles" |
2504 |
|
fieldname = 'verif_parcelle'; |
2505 |
|
callback = set_geolocalisation_message; |
2506 |
|
// Traitement "Vérifier les parcelles" |
2507 |
|
geolocalisation_treatment(id, fieldname, callback, confirm_message); |
2508 |
|
|
2509 |
|
// Positionne le flag sur le message de "Vérifier les parcelles" |
2510 |
|
flag = $('#'+fieldname+"-message").attr("class"); |
2511 |
|
// Si c'est un message d'erreur on arrete le traitement |
2512 |
|
if (flag == 'message ui-widget ui-corner-all ui-state-highlight ui-state-error') { |
2513 |
|
return false; |
2514 |
|
} |
2515 |
|
|
2516 |
|
// Modification des variables utilisées en paramètres pour "Calculer |
2517 |
|
// l'emprise" |
2518 |
|
fieldname = 'calcul_emprise'; |
2519 |
|
callback = ''; |
2520 |
|
// Traitement "Calculer l'emprise" |
2521 |
|
geolocalisation_treatment(id, fieldname, callback, confirm_message); |
2522 |
|
|
2523 |
|
// Positionne le flag sur le message de "Calculer l'emprise" |
2524 |
|
flag = $('#'+fieldname+"-message").attr("class"); |
2525 |
|
// Si c'est un message d'erreur on arrete le traitement |
2526 |
|
if (flag == 'message ui-widget ui-corner-all ui-state-highlight ui-state-error') { |
2527 |
|
return false; |
2528 |
|
} |
2529 |
|
|
2530 |
|
// Modification des variables utilisées en paramètres pour "Calculer le |
2531 |
|
// centroïde" |
2532 |
|
fieldname = 'calcul_centroide'; |
2533 |
|
callback = set_geolocalisation_centroide; |
2534 |
|
// Traitement "Calculer le centroïde" |
2535 |
|
geolocalisation_treatment(id, fieldname, callback, confirm_message); |
2536 |
|
|
2537 |
|
// Positionne le flag sur le message de "Calculer le centroïde" |
2538 |
|
flag = $('#'+fieldname+"-message").attr("class"); |
2539 |
|
// Si c'est un message d'erreur on arrete le traitement |
2540 |
|
if (flag == 'message ui-widget ui-corner-all ui-state-highlight ui-state-error') { |
2541 |
|
return false; |
2542 |
|
} |
2543 |
|
|
2544 |
|
// Modification des variables utilisées en paramètres pour "Récupérer les |
2545 |
|
// contraintes" |
2546 |
|
fieldname = 'recup_contrainte'; |
2547 |
|
callback = set_geolocalisation_contrainte; |
2548 |
|
//Traitement "Récupérer les contraintes" |
2549 |
|
geolocalisation_treatment(id, fieldname, callback, confirm_message); |
2550 |
|
|
2551 |
|
} |
2552 |
|
|
2553 |
|
/** |
2554 |
|
* Remplit le formulaire avec l'adresse trouvée ou affiche un message d'erreur |
2555 |
|
*/ |
2556 |
|
function getAdressFromCadastrale(){ |
2557 |
|
|
2558 |
|
//Récupération des références cadastrales |
2559 |
|
var referenceCadastrale = '{"refcad":[{'; |
2560 |
|
var i = 0 ; |
2561 |
|
var j = 1 ; |
2562 |
|
var delimit = 0; |
2563 |
|
var parcelleDelimit = 0; |
2564 |
|
var noReferenceCadastrale = false; |
2565 |
|
$(".reference_cadastrale_custom_field").each( |
2566 |
|
function(){ |
2567 |
|
|
2568 |
|
//On vérifie que le champ n'est pas vide |
2569 |
|
if ($(this).val()!=""&&$(this).val() != ";"){ |
2570 |
|
noReferenceCadastrale = true; |
2571 |
|
} |
2572 |
|
|
2573 |
|
//On va à la ligne suivante |
2574 |
|
if ( $(this).val() == ";" ){ |
2575 |
|
referenceCadastrale +=(delimit!=0)?'}]':''; |
2576 |
|
referenceCadastrale += "}" ; |
2577 |
|
i++; |
2578 |
|
j = 1; |
2579 |
|
delimit = 0; |
2580 |
|
parcelleDelimit = 0; |
2581 |
|
} |
2582 |
|
//On parcourt la ligne |
2583 |
|
else { |
2584 |
|
switch(true){ |
2585 |
|
//Quartier |
2586 |
|
case (j==1): |
2587 |
|
referenceCadastrale += (i!=0)?',':''; |
2588 |
|
referenceCadastrale += '"' + i + '"' + ':{"quartier":"'+$(this).val()+'"'; |
2589 |
|
break; |
2590 |
|
//Section |
2591 |
|
case (j==2): |
2592 |
|
referenceCadastrale += ', "section":"'+$(this).val()+'"'; |
2593 |
|
break; |
2594 |
|
//Parcelle |
2595 |
|
case (j==3): |
2596 |
|
referenceCadastrale += ', "parcelle":"'+$(this).val()+'"'; |
2597 |
|
break; |
2598 |
|
//Le délimiteur |
2599 |
|
case (j%2==0&&j!=2): |
2600 |
|
if ( delimit==0 ){ |
2601 |
|
referenceCadastrale += ', "delimit":[{"'+(delimit++)+'":"'+$(this).val()+'"'; |
2602 |
|
} |
2603 |
|
else { |
2604 |
|
referenceCadastrale += ', "'+(delimit++)+'":"'+$(this).val()+'"'; |
2605 |
|
} |
2606 |
|
break; |
2607 |
|
//La parcelle après le délimiteur |
2608 |
|
case (j%2==1&&j!=1&&j!=3): |
2609 |
|
referenceCadastrale += ',"'+(delimit++)+'":"'+$(this).val()+'"'; |
2610 |
|
break; |
2611 |
|
} |
2612 |
|
j++; |
2613 |
|
} |
2614 |
|
} |
2615 |
|
); |
2616 |
|
if ( noReferenceCadastrale == true ){ |
2617 |
|
referenceCadastrale += "}]}"; |
2618 |
|
} |
2619 |
|
else { |
2620 |
|
referenceCadastrale = ""; |
2621 |
|
} |
2622 |
|
|
2623 |
|
//Lance la tentative de récupération de l'adresse |
2624 |
|
$.ajax({ |
2625 |
|
type: "POST", |
2626 |
|
url: '../app/getAdressFromCadastrale.php', |
2627 |
|
data: $.parseJSON(referenceCadastrale), |
2628 |
|
cache: false, |
2629 |
|
dataType: "json", |
2630 |
|
success: function(data){ |
2631 |
|
|
2632 |
|
//Si le retour est un objet JSON, on a un résultat |
2633 |
|
if ( $.isPlainObject(data)){ |
2634 |
|
|
2635 |
|
//On met l'adresse dans les champs |
2636 |
|
$("#terrain_adresse_voie_numero").val(data.return.dnuvoi); |
2637 |
|
$("#terrain_adresse_voie").val(data.return.prefixe+" "+data.return.nom); |
2638 |
|
$("#terrain_adresse_code_postal").val(data.return.arrdt); |
2639 |
|
$("#terrain_adresse_localite").val(data.return.localite); |
2640 |
|
} |
2641 |
|
//Sinon, on affiche un message d'erreur |
2642 |
|
else { |
2643 |
|
alert(data); |
2644 |
|
} |
2645 |
|
}, |
2646 |
|
async: false |
2647 |
|
}); |
2648 |
|
} |
2649 |
|
|
2650 |
|
/** |
2651 |
|
* Modifie les champs requis pour le formulaire demande_type |
2652 |
|
* @param integer demande_nature Identifiant |
2653 |
|
* @param string lib_dossier_autorisation_type_detaille Libellé du champ |
2654 |
|
* dossier_autorisation_type_detaille |
2655 |
|
* @param string lib_dossier_instruction_type Libellé du champ |
2656 |
|
* dossier_instruction_type |
2657 |
|
*/ |
2658 |
|
function required_fields_demande_type(demande_nature, lib_dossier_autorisation_type_detaille, lib_dossier_instruction_type) { |
2659 |
|
|
2660 |
|
// Lien |
2661 |
|
link = "../app/getDemandeNatureInfo.php?demande_nature=" + demande_nature; |
2662 |
|
|
2663 |
|
// Traitement |
2664 |
|
$.ajax({ |
2665 |
|
type: "GET", |
2666 |
|
url: link, |
2667 |
|
cache: false, |
2668 |
|
dataType: "json", |
2669 |
|
success: function(demande_nature_info) { |
2670 |
|
|
2671 |
|
// On enlève le "*" au libellé du champ |
2672 |
|
// dossier_autorisation_type_detaille pour montrer qu'il n'est |
2673 |
|
// pas obligatoire |
2674 |
|
$("#lib-dossier_autorisation_type_detaille").text(''); |
2675 |
|
$("#lib-dossier_autorisation_type_detaille") |
2676 |
|
.html(lib_dossier_autorisation_type_detaille); |
2677 |
|
|
2678 |
|
// On enlève le "*" au libellé du champ |
2679 |
|
// dossier_instruction_type pour montrer qu'il n'est |
2680 |
|
// pas obligatoire |
2681 |
|
$("#lib-dossier_instruction_type").text(''); |
2682 |
|
$("#lib-dossier_instruction_type") |
2683 |
|
.html(lib_dossier_instruction_type); |
2684 |
|
|
2685 |
|
// Si c'est une nouvelle demande |
2686 |
|
if (demande_nature_info != '' |
2687 |
|
&& demande_nature_info != null) { |
2688 |
|
|
2689 |
|
if (demande_nature_info['code'] == 'NOUV') { |
2690 |
|
|
2691 |
|
// On ajoute le "*" au libellé du champ |
2692 |
|
// dossier_autorisation_type_detaille pour montrer qu'il est |
2693 |
|
// obligatoire |
2694 |
|
$("#lib-dossier_autorisation_type_detaille").text(''); |
2695 |
|
$("#lib-dossier_autorisation_type_detaille") |
2696 |
|
.html(lib_dossier_autorisation_type_detaille + ' <span class="not-null-tag">*</span>'); |
2697 |
|
|
2698 |
|
// On ajoute le "*" au libellé du champ |
2699 |
|
// dossier_instruction_type pour montrer qu'il est |
2700 |
|
// obligatoire |
2701 |
|
$("#lib-dossier_instruction_type").text(''); |
2702 |
|
$("#lib-dossier_instruction_type") |
2703 |
|
.html(lib_dossier_instruction_type + ' <span class="not-null-tag">*</span>'); |
2704 |
|
|
2705 |
|
} |
2706 |
|
|
2707 |
|
} |
2708 |
|
|
2709 |
|
}, |
2710 |
|
async:false |
2711 |
|
}); |
2712 |
|
} |
2713 |
|
|
2714 |
|
/** |
2715 |
|
* Appel au chargement de la page |
2716 |
|
**/ |
2717 |
|
$(function() { |
2718 |
|
|
2719 |
|
// url de la page |
2720 |
|
url = document.location + ""; |
2721 |
|
|
2722 |
|
// Si dans le formulaire des type de demande |
2723 |
|
// et que c'est en mode ajout ou modifier |
2724 |
|
if (url.indexOf("form.php?obj=demande_type&") != -1 |
2725 |
|
&& (url.indexOf("&action=0") != -1 |
2726 |
|
|| url.indexOf("&action=1") != -1 |
2727 |
|
|| url.indexOf("&validation=") != -1)) { |
2728 |
|
|
2729 |
|
// Récupère les paramètres nécessaires |
2730 |
|
var demande_nature = $("#demande_nature").val(); |
2731 |
|
var lib_dossier_autorisation_type_detaille = $("#lib-dossier_autorisation_type_detaille").text(); |
2732 |
|
var lib_dossier_instruction_type = $("#lib-dossier_instruction_type").text(); |
2733 |
|
|
2734 |
|
// Appelle la fonction pour indiquer si les champs sont requis ou non |
2735 |
|
required_fields_demande_type(demande_nature, lib_dossier_autorisation_type_detaille, lib_dossier_instruction_type); |
2736 |
|
} |
2737 |
|
|
2738 |
|
}); |