1 |
// specific openfoncier ======================================================== |
2 |
|
3 |
// Document is ready |
4 |
$(function(){ |
5 |
|
6 |
/** |
7 |
* Spécifique app/avis_code_barre.php pour donner le focus sur le champ de |
8 |
* recherche au chargement de la page. |
9 |
*/ |
10 |
$('#avis_code_barre_form #consultation').focus(); |
11 |
}); |
12 |
|
13 |
|
14 |
/** |
15 |
* WIDGET liés au formulaire et sousformulaire |
16 |
* |
17 |
* Ces fonctions javascript sont appelées depuis les méthodes setOnChange, |
18 |
* setOnClick, ... |
19 |
*/ |
20 |
// bible - type httpclick |
21 |
function bible() { |
22 |
if(fenetreouverte==true) |
23 |
pfenetre.close(); |
24 |
var ev=document.f2.evenement.value; |
25 |
var idx=document.f2.dossier.value; |
26 |
pfenetre=window.open("../app/bible.php?ev="+ev+"&idx="+idx,"bible","scrollbars=yes,width=600,height=600,top=120,left=120"); |
27 |
fenetreouverte=true; |
28 |
} |
29 |
// bible2 - type httpclick |
30 |
function bible2() |
31 |
{ |
32 |
if(fenetreouverte==true) |
33 |
pfenetre.close(); |
34 |
var ev=document.f2.evenement.value; |
35 |
var idx=document.f2.dossier.value; |
36 |
pfenetre=window.open("../app/bible2.php?ev="+ev+"&idx="+idx,"bible","scrollbars=yes,width=600,height=600,top=120,left=120"); |
37 |
fenetreouverte=true; |
38 |
} |
39 |
// bible_auto - type httpclick |
40 |
function bible_auto(){ |
41 |
if(fenetreouverte==true) |
42 |
pfenetre.close(); |
43 |
var ev=document.f2.evenement.value; |
44 |
var idx=document.f2.dossier.value; |
45 |
pfenetre=window.open("../app/bible_auto.php?idx="+idx+"&ev="+ev,"evenement","width=600,height=300,top=120,left=120"); |
46 |
fenetreouverte=true; |
47 |
} |
48 |
// VerifNumdec - type text |
49 |
function VerifNumdec(champ) { |
50 |
champ.value = champ.value.replace(",", "."); // remplacement de la virgule |
51 |
//if (champ.value.lastIndexOf(".") == -1){ // champ decimal |
52 |
if (isNaN(champ.value)) { |
53 |
alert(msg_alert_error_verifnum); |
54 |
champ.value = ""; |
55 |
return; |
56 |
} |
57 |
//} |
58 |
|
59 |
} |
60 |
// Ce widget permet de charger les données d'un select en ajax |
61 |
function changeDataSelect(tn, ds, joker){ |
62 |
|
63 |
var id = $("#"+ds+" option:selected").val(); |
64 |
link = "../app/listData.php?idx=" + id + "&tn=" + tn + "&ds=" + ds; |
65 |
$.ajax({ |
66 |
type: "GET", |
67 |
url: link, |
68 |
cache: false, |
69 |
dataType: "json", |
70 |
success: function(html){ |
71 |
|
72 |
$('#'+tn).empty(); |
73 |
|
74 |
if ( joker == true ) |
75 |
$('#'+tn).append( |
76 |
'<option value="" selected="selected">*</option>' |
77 |
); |
78 |
else |
79 |
$('#'+tn).append( |
80 |
'<option value="" selected="selected">Choisir ' + tn + '</option>' |
81 |
); |
82 |
|
83 |
if ( html !== '' ){ |
84 |
|
85 |
html = html.split(';'); |
86 |
for ( i = 0 ; i < html.length - 1 ; i++ ){ |
87 |
|
88 |
html_temp = html[i].split('_'); |
89 |
$('#'+tn).append( |
90 |
'<option value="'+html_temp[0]+'" >'+html_temp[1]+'</option>' |
91 |
); |
92 |
} |
93 |
} |
94 |
}, |
95 |
async: false |
96 |
}); |
97 |
} |
98 |
// vuploadMulti - XXX |
99 |
function vuploadMulti(champ) { |
100 |
// |
101 |
if (fenetreouverte == true) { |
102 |
pfenetre.close(); |
103 |
} |
104 |
// |
105 |
pfenetre = window.open("../spg/upload.php?origine="+champ+"&form="+$('input[name='+champ+']').closest('form').attr('name'),"upload","width=400,height=300,top=120,left=120"); |
106 |
//pfenetre = window.open("../spg/upload2.php?origine="+champ,"upload2","width=300,height=100,top=120,left=120"); |
107 |
// |
108 |
fenetreouverte = true; |
109 |
} |
110 |
// tmpUpload - Upload XXX |
111 |
function tmpUpload(champ) { |
112 |
// |
113 |
if (fenetreouverte == true) { |
114 |
pfenetre.close(); |
115 |
} |
116 |
// |
117 |
pfenetre = window.open("../app/tmpUpload.php?origine="+champ+"&form="+$('input[name='+champ+']').closest('form').attr('name'),"upload","width=400,height=300,top=120,left=120"); |
118 |
//pfenetre = window.open("../spg/upload2.php?origine="+champ,"upload2","width=300,height=100,top=120,left=120"); |
119 |
// |
120 |
fenetreouverte = true; |
121 |
} |
122 |
|
123 |
|
124 |
|
125 |
/** |
126 |
* POPUP pour le téléchargement de fichier |
127 |
* |
128 |
* Ces fonctions javascript sont appelées depuis des onClick sur des |
129 |
* formulaires spécifiques pour permettre de transmettre des paramètres aux |
130 |
* éditions pdf ainsi appelées. |
131 |
*/ |
132 |
// |
133 |
function dossierads_d(debut) |
134 |
{ |
135 |
//if(fenetreouverte==true) |
136 |
window.location="../pdf/pdfetat.php?obj=dossier_ads_d&nature=" |
137 |
+document.f1.nature.value+"&idx=demo&datedebut=" |
138 |
+document.f1.datedebut.value+"&datefin="+document.f1.datefin.value; |
139 |
} |
140 |
// |
141 |
function dossierdepot() |
142 |
{ |
143 |
//if(fenetreouverte==true) |
144 |
window.location="../pdf/pdfetat.php?obj=dossier_depot&nature="+ |
145 |
document.f1.nature.value+"&idx=demo&datedebut="+ |
146 |
document.f1.datedebut.value+"&datefin="+document.f1.datefin.value; |
147 |
} |
148 |
// |
149 |
function dossierads() |
150 |
{ |
151 |
//if(fenetreouverte==true) |
152 |
window.location="../pdf/pdfetat.php?obj=dossier_ads&nature="+ |
153 |
document.f1.nature.value+"&idx=demo&datedebut="+ |
154 |
document.f1.datedebut.value+"&datefin="+document.f1.datefin.value; |
155 |
} |
156 |
|
157 |
// téléchargement du fichier |
158 |
function file(fichier) { |
159 |
// |
160 |
if (fichier == "") { |
161 |
alert("zone vide"); |
162 |
} |
163 |
// |
164 |
pfenetre = window.open("../app/file.php?file="+fichier,"Visualisation","width=100,height=100,top=1,left=150,scrollbars=yes,resizable = yes"); |
165 |
// |
166 |
fenetreouverte = true; |
167 |
} |
168 |
|
169 |
/** |
170 |
* Retour spécifique de l'écran de consultation multiple - surcharge de ajaxIt |
171 |
* @todo XXX voir les différences avec ajaxIt et si il n'est pas possible |
172 |
* d'effectuer la modification dans le core |
173 |
*/ |
174 |
function messageIt(objsf, link, empty) { |
175 |
// recuperation du terme recherche |
176 |
var recherche = document.getElementById("recherchedyn"); |
177 |
if (recherche != null) { |
178 |
link += "&recherche="+recherche.value; |
179 |
}else { |
180 |
link += "&recherche="; |
181 |
} |
182 |
// execution de la requete en GET |
183 |
$.ajax({ |
184 |
type: "GET", |
185 |
url: link, |
186 |
cache: false, |
187 |
success: function(html){ |
188 |
(empty == true )?$("#sousform-"+objsf).empty():''; |
189 |
$("#sousform-"+objsf).append(html); |
190 |
om_initialize_content(); |
191 |
}, |
192 |
async: false |
193 |
}); |
194 |
} |
195 |
|
196 |
/** |
197 |
* TTélécharegement de fichier pdf en ajax |
198 |
* spécifique de l'écran de consultation multiple |
199 |
*/ |
200 |
/* Plugin jQuery qui lance un espèce d'appel AJAX vers un script PHP de téléchargement de fichier*/ |
201 |
jQuery.download = function(url, data, method){ |
202 |
//url and data options required |
203 |
if( url && data ){ |
204 |
//data can be string of parameters or array/object |
205 |
data = typeof data == 'string' ? data : jQuery.param(data); |
206 |
//split params into form inputs |
207 |
var inputs = ''; |
208 |
jQuery.each(data.split('&'), function(){ |
209 |
var pair = this.split('='); |
210 |
inputs+='<input type="hidden" name="'+ pair[0] +'" value="'+ pair[1] +'" />'; |
211 |
}); |
212 |
//send request |
213 |
jQuery('<form action="'+ url +'" method="'+ (method||'post') +'">'+inputs+'</form>') |
214 |
.prependTo('body').submit().remove(); |
215 |
}; |
216 |
}; |
217 |
|
218 |
/** |
219 |
* Cette fonction permet de charger dans un dialog jqueryui un formulaire tel |
220 |
* qu'il aurait été chargé avec ajaxIt |
221 |
* |
222 |
* @param objsf string : objet de sousformulaire |
223 |
* @param link string : lien vers un sousformulaire (../scr/sousform.php...) |
224 |
* @param callback function (optionel) : nom de la méthode à appeler |
225 |
* à la fermeture du dialog |
226 |
* @param callbackParams mixed (optionel) : paramètre à traiter dans la function |
227 |
* callback |
228 |
* |
229 |
**/ |
230 |
function popupIt(objsf, link, callback, callbackParams) { |
231 |
// Insertion du conteneur du dialog |
232 |
var dialog = $('<div id=\"sousform-'+objsf+'\"></div>').insertAfter('.formControls'); |
233 |
$('<input type=\"text\" name=\"recherchedyn\" id=\"recherchedyn\" value=\"\" class=\"champFormulaire\" style=\"display:none\" />').insertAfter('#sousform-'+objsf); |
234 |
|
235 |
// execution de la requete passee en parametre |
236 |
// (idem ajaxIt + callback) |
237 |
$.ajax({ |
238 |
type: "GET", |
239 |
url: link, |
240 |
cache: false, |
241 |
success: function(html){ |
242 |
//Suppression d'un precedent dialog |
243 |
dialog.empty(); |
244 |
//Ajout du contenu recupere |
245 |
dialog.append(html); |
246 |
//Initialisation du theme OM |
247 |
om_initialize_content(); |
248 |
//Creation du dialog |
249 |
$(dialog).dialog({ |
250 |
//OnClose suppression du contenu |
251 |
close: function(ev, ui) { |
252 |
// Si le formulaire est submit et valide on execute la méthode |
253 |
// passée en paramètre |
254 |
if (typeof(callback) === "function") { |
255 |
callback(callbackParams); |
256 |
} |
257 |
$(this).remove(); |
258 |
}, |
259 |
resizable: false, |
260 |
modal: true, |
261 |
width: 700, |
262 |
height: 520, |
263 |
}); |
264 |
}, |
265 |
async : false |
266 |
}); |
267 |
//Modification des boutons retours du sous formulaire pour fermer le dialog |
268 |
$('#sousform-'+objsf).on("mousedown",'a.retour',function() { |
269 |
$('#sousform-'+objsf+' a.retour').attr('onclick',''); |
270 |
}); |
271 |
$('#sousform-'+objsf).on("click",'a.retour',function() { |
272 |
$(dialog).dialog('close').remove(); |
273 |
}); |
274 |
return false; |
275 |
} |
276 |
|
277 |
/*** |
278 |
* Fonction getter des paramètres de l'url courante |
279 |
*/ |
280 |
// Parse URL Queries Method |
281 |
(function($){ |
282 |
$.getQuery = function( query ) { |
283 |
query = query.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); |
284 |
var expr = "[\\?&]"+query+"=([^&#]*)"; |
285 |
var regex = new RegExp( expr ); |
286 |
var results = regex.exec( window.location.href ); |
287 |
if( results !== null ) { |
288 |
return results[1]; |
289 |
return decodeURIComponent(results[1].replace(/\+/g, " ")); |
290 |
} else { |
291 |
return false; |
292 |
} |
293 |
}; |
294 |
})(jQuery); |
295 |
|
296 |
|
297 |
/* |
298 |
* Javascript concernant la demande d'avis |
299 |
* |
300 |
* |
301 |
*/ |
302 |
|
303 |
function returnToTab(objsf) { |
304 |
var valid=$('#sousform-'+objsf+' div.ui-state-valid'); |
305 |
if(valid.length > 0) { |
306 |
document.location.href="../scr/tab.php?obj="+$.getQuery('obj')+"&premier="+$.getQuery('premier') |
307 |
+"&advs_id="+$.getQuery('advs_id')+"&recherche="+$.getQuery('recherche')+"&tricol="+$.getQuery('tricol') |
308 |
+"&selectioncol="+$.getQuery('selectioncol'); |
309 |
} |
310 |
}; |
311 |
|
312 |
|
313 |
/* |
314 |
* Javascript concernant la demande |
315 |
* |
316 |
* |
317 |
*/ |
318 |
|
319 |
/* |
320 |
* A garder |
321 |
*/ |
322 |
/* |
323 |
* '<span class="om-icon om-icon-16 om-icon-fix search-part-16" title="Chercher un petitionnaire"></span>' |
324 |
* '<span class="om-icon om-icon-16 om-icon-fix search-mor-16" title="Chercher un petitionnaire"></span>' |
325 |
* '<div class="field field-type-text morePetitionnaire" style="display: table-row;">' + |
326 |
'<div class="form-libelle">' + |
327 |
'<label class="libelle-more_petitionnaire" for="terrain_superficie"> + Ajouter un autre pétitionnaire </label>' + |
328 |
'</div>' + |
329 |
'<div class="form-content">' + |
330 |
'</div>' + |
331 |
'</div>' |
332 |
*/ |
333 |
|
334 |
|
335 |
/* |
336 |
Ajoute le formulaire d'jout de référence cadastrale personnalisé |
337 |
* */ |
338 |
$(function() { |
339 |
|
340 |
url = document.location + "" ; |
341 |
if ( $('#date_demande').length > 0 |
342 |
&& !$('#dossier_autorisation_type_detaille').is(':disabled') |
343 |
&& url.indexOf("form.php?obj=demande&action=0") != -1 ){ |
344 |
|
345 |
/*Fonction d'ajout de nouveau pétitionnaire*/ |
346 |
$('.morePetitionnaire').click( function() { |
347 |
|
348 |
}); |
349 |
|
350 |
$("#add_petitionnaire_principal").click( function() { |
351 |
popupIt('petitionnaire', |
352 |
'../scr/sousform.php?obj=petitionnaire&action=0', function() { |
353 |
}); |
354 |
}); |
355 |
/*Cache les champs avant que dossier_autorisation_type_detaille soit choisi*/ |
356 |
hideFields(); |
357 |
} |
358 |
|
359 |
if ( $('#date_demande').length > 0 |
360 |
&& !$('#dossier_autorisation_type_detaille').is(':disabled') |
361 |
&& url.indexOf("form.php?obj=demande&action=1") != -1 ){ |
362 |
|
363 |
addNewFieldReferencesCadastrales(); |
364 |
$('#terrain_references_cadastrales').parent().parent().hide(); |
365 |
|
366 |
reference_cadastrale = $('#terrain_references_cadastrales').val(); |
367 |
/*Formatage de la reference cadastrale*/ |
368 |
if ( reference_cadastrale != '' ){ |
369 |
|
370 |
/* Récupère la référence cadastrale non formatée */ |
371 |
references_cadastrales = reference_cadastrale.split(';'); |
372 |
donnees = new Array(); |
373 |
|
374 |
i = 0 ; |
375 |
/* Boucle sur les références, elles étaient séparées par un ; */ |
376 |
for ( l = 0 ; l < references_cadastrales.length - 1 ; l ++ ){ |
377 |
|
378 |
/*Récupère le code impots du qartier [CHIFFRES]*/ |
379 |
k = 0; |
380 |
donnees[i] = ''; |
381 |
for ( j = k ; j < references_cadastrales[l].length ; j++ ){ |
382 |
|
383 |
if ( references_cadastrales[l].charAt(j) >= 0 && |
384 |
references_cadastrales[l].charAt(j) <= 9 ){ |
385 |
|
386 |
donnees[i] += references_cadastrales[l].charAt(j); |
387 |
k++; |
388 |
|
389 |
} else { |
390 |
|
391 |
i++; |
392 |
break; |
393 |
} |
394 |
} |
395 |
|
396 |
/* Récupère la section [LETTRES] */ |
397 |
donnees[i] = ''; |
398 |
for ( j = k ; j < references_cadastrales[l].length ; j++ ) |
399 |
if ( isAlpha(references_cadastrales[l].charAt(j)) ){ |
400 |
|
401 |
donnees[i] += references_cadastrales[l].charAt(j); |
402 |
k++; |
403 |
|
404 |
} else { |
405 |
|
406 |
i++; |
407 |
break; |
408 |
} |
409 |
|
410 |
/* Récupère la parcelle [CHIFFRES] */ |
411 |
donnees[i] = ''; |
412 |
for ( j = k ; j < references_cadastrales[l].length ; j++ ) |
413 |
if ( references_cadastrales[l].charAt(j) >= 0 && |
414 |
references_cadastrales[l].charAt(j) <= 9 ){ |
415 |
|
416 |
donnees[i] += references_cadastrales[l].charAt(j); |
417 |
k++; |
418 |
|
419 |
} else { |
420 |
|
421 |
break; |
422 |
} |
423 |
|
424 |
/* Récupère les séparateurs [ A / ] et les sections */ |
425 |
m = 0 ; |
426 |
if ( k < references_cadastrales[l].length ){ |
427 |
|
428 |
for ( j = k ; j < references_cadastrales[l].length ; j++ ) |
429 |
if ( isAlpha(references_cadastrales[l].charAt(j)) ){ |
430 |
|
431 |
m++; |
432 |
donnees[++i] = references_cadastrales[l].charAt(j); |
433 |
donnees[++i] = ''; |
434 |
} |
435 |
else { |
436 |
|
437 |
donnees[i] += references_cadastrales[l].charAt(j); |
438 |
} |
439 |
} |
440 |
|
441 |
/*Créé autant de champs de que de référence */ |
442 |
donnees[++i] = ';'; |
443 |
i++; |
444 |
|
445 |
if ( l > 0 ) { |
446 |
|
447 |
$('.reference_cadastrale_custom_fields').append( |
448 |
"<br/>" + fieldReferenceCadastraleBase() |
449 |
); |
450 |
} |
451 |
|
452 |
actionFormReferenceCadastrale(); |
453 |
|
454 |
if ( m > 0 ){ |
455 |
|
456 |
for ( j = 0 ; j < m ; j++ ){ |
457 |
|
458 |
$('#moreFieldReferenceCadastrale' + |
459 |
( $('.moreFieldReferenceCadastrale').length - 1 ) ). |
460 |
before( |
461 |
newInputReferenceCadastrale() |
462 |
); |
463 |
} |
464 |
} |
465 |
} |
466 |
/* Action sur les boutons [+ ajouter d'autres champs] et [+ ajouter |
467 |
* d'autres lignes] */ |
468 |
actionLineFormReferenceCadastrale(); |
469 |
|
470 |
/* Ajoute les données dans les champs nouvellement créés */ |
471 |
$('.reference_cadastrale_custom_field').each( |
472 |
function(index) { |
473 |
|
474 |
$(this).val(donnees[index]) |
475 |
} |
476 |
); |
477 |
} |
478 |
} |
479 |
}); |
480 |
|
481 |
/* |
482 |
Action au changement du select de la qualite du demandeur |
483 |
* */ |
484 |
function changeDemandeurType(id){ |
485 |
|
486 |
/*Si la qualite du demandeur est particulier */ |
487 |
if ( $('#' + id + ' option:selected').val() == 'particulier' ){ |
488 |
|
489 |
$('.personne_morale_fields input').each( |
490 |
function(){ |
491 |
$(this).val(''); |
492 |
} |
493 |
); |
494 |
$('.personne_morale_fields select option[value=""]').each( |
495 |
function(){ |
496 |
$(this).attr('selected', 'selected'); |
497 |
} |
498 |
); |
499 |
|
500 |
$('.personne_morale_fields').hide(); |
501 |
$('.particulier_fields').show(); |
502 |
} |
503 |
else { |
504 |
|
505 |
$('.particulier_fields input').each( |
506 |
function(){ |
507 |
$(this).val(''); |
508 |
} |
509 |
); |
510 |
$('.particulier_fields select option[value=""]').each( |
511 |
function(){ |
512 |
$(this).attr('selected', 'selected'); |
513 |
} |
514 |
); |
515 |
|
516 |
$('.particulier_fields').hide(); |
517 |
$('.personne_morale_fields').show(); |
518 |
} |
519 |
} |
520 |
|
521 |
/* |
522 |
Ajout de l'action de recherche des pétitionnaire fréquent dans un overlay |
523 |
* */ |
524 |
function addActionSearch(id, complement){ |
525 |
|
526 |
/*Si on recherche un pétitionnaire de type particulier*/ |
527 |
$('#' + id + ' .search-part-16').click( |
528 |
function(){ |
529 |
|
530 |
/*Données des champs nom et prénom du particulier*/ |
531 |
var donnees = "?type=particulier&par_nom="; |
532 |
$('#' + id + ' .search_particulier_fields input').each( |
533 |
function(i){ |
534 |
|
535 |
donnees += $(this).val() + (( i == 0 ) ? '&par_prenom=' : '') ; |
536 |
} |
537 |
); |
538 |
|
539 |
/* Requête qui va récupérer les données du(es) pétitionnaire(s) |
540 |
* correspondant(s) à la recherche */ |
541 |
$.ajax({ |
542 |
type: "GET", |
543 |
url: "../app/findPetitionnaire.php" + donnees , |
544 |
cache: false, |
545 |
success: function(html){ |
546 |
|
547 |
res = 'Auncune correspondance trouvée.'; |
548 |
|
549 |
/*Si la recherche a donné des résultats*/ |
550 |
if ( html.length > 2 ){ |
551 |
|
552 |
res = '<select>' ; |
553 |
donnees = html.split(';'); |
554 |
|
555 |
/* Met les résultats de la recherche dans un select */ |
556 |
for ( i = 0 ; i < donnees.length - 1 ; i++ ){ |
557 |
|
558 |
val = donnees[i].replace('"', ''); |
559 |
line = donnees[i].split('_'); |
560 |
|
561 |
if ( line[3] != '' ){ |
562 |
|
563 |
line[3] = ' - ' + line[3]; |
564 |
} |
565 |
|
566 |
res += '<option value="' + val + '">' + |
567 |
line[1] + ' ' + line[2] + line[3] + |
568 |
'</option>'; |
569 |
} |
570 |
|
571 |
res += '</select>' ; |
572 |
} |
573 |
|
574 |
/* Affichage de l'overlay */ |
575 |
$('#dialog').html(res); |
576 |
|
577 |
$( "#dialog" ).dialog({ |
578 |
modal: true, |
579 |
buttons : { |
580 |
Valider: function(){ |
581 |
|
582 |
/*Action à l'appui sur le bouton valider*/ |
583 |
if ( res != 'Auncune correspondance trouvée.' ){ |
584 |
|
585 |
donnees = $('#dialog select option:selected').val(); |
586 |
donnees = donnees.split('_'); |
587 |
|
588 |
if ( $.isNumeric(donnees[4]) ){ |
589 |
$('#' + id + |
590 |
' select[id="particulier_civilite' + |
591 |
complement + '"] option[value="' + |
592 |
$.trim(donnees[4]) + '"]'). |
593 |
attr('selected','selected'); |
594 |
} |
595 |
|
596 |
$('#' + id + |
597 |
' input[id="particulier_nom' + |
598 |
complement + '"]'). |
599 |
val($.trim(donnees[1])); |
600 |
|
601 |
$('#' + id + |
602 |
' input[id="particulier_prenom' + |
603 |
complement + '"]'). |
604 |
val($.trim(donnees[2])); |
605 |
|
606 |
/*Vérifie si la date est non vide avant de la traiter*/ |
607 |
date_temp = $.trim(donnees[3]); |
608 |
if ( date_temp != '' ){ |
609 |
|
610 |
date = date_temp.split('-'); |
611 |
date = date[2] + "/" + date[1] + "/" + date[0] ; |
612 |
$('#' + id + |
613 |
' input[id="particulier_date_naissance' + |
614 |
complement + '"]'). |
615 |
val(date); |
616 |
|
617 |
} |
618 |
$('#' + id + |
619 |
' input[id="particulier_commune_naissance' + |
620 |
complement + '"]'). |
621 |
val($.trim(donnees[10])); |
622 |
$('#' + id + |
623 |
' input[id="particulier_departement_naissance' + |
624 |
complement + '"]'). |
625 |
val($.trim(donnees[11])); |
626 |
|
627 |
changeValInputDemandeur(id, donnees, complement); |
628 |
} |
629 |
|
630 |
/*Fermeture de l'overlay*/ |
631 |
$(this).dialog( "close" ); |
632 |
} |
633 |
} |
634 |
}); |
635 |
}, |
636 |
async: false |
637 |
}); |
638 |
} |
639 |
); |
640 |
|
641 |
/*Si on recherche un pétitionnaire de type personne morale*/ |
642 |
$('#' + id + ' .search-mor-16').click( |
643 |
function(){ |
644 |
|
645 |
/*Données des champs dénomination et nom de la personne morale*/ |
646 |
var donnees = "?type=personne_morale"+ |
647 |
"&mor_denomination="+$('#'+id+ |
648 |
' input[id="personne_morale_denomination' + |
649 |
complement + '"]'). |
650 |
val() + |
651 |
"&mor_nom="+$('#'+id+ |
652 |
' input[id="personne_morale_nom' + |
653 |
complement + '"]'). |
654 |
val(); |
655 |
|
656 |
/* Requête qui va récupérer les données du(es) pétitionnaire(s) |
657 |
* correspondant(s) à la recherche */ |
658 |
$.ajax({ |
659 |
type: "GET", |
660 |
url: "../app/findPetitionnaire.php" + donnees , |
661 |
cache: false, |
662 |
success: function(html){ |
663 |
|
664 |
res = 'Auncune correspondance trouvée.'; |
665 |
|
666 |
/*Si la recherche a donné des résultats*/ |
667 |
if ( html > 2 ){ |
668 |
|
669 |
res = '<select>' ; |
670 |
donnees = html.split(';'); |
671 |
|
672 |
/* Met les résultats de la recherche dans un select */ |
673 |
for ( i = 0 ; i < donnees.length - 1 ; i++ ){ |
674 |
|
675 |
val = donnees[i].replace('"', ''); |
676 |
line = donnees[i].split('_'); |
677 |
|
678 |
res += '<option value="' + val + '">' + |
679 |
line[5] + ' ' + line[6] + |
680 |
'</option>'; |
681 |
} |
682 |
|
683 |
res += '</select>' ; |
684 |
} |
685 |
|
686 |
/* Affichage de l'overlay */ |
687 |
$('#dialog').html(res); |
688 |
|
689 |
$( "#dialog" ).dialog({ |
690 |
modal: true, |
691 |
buttons : { |
692 |
Valider: function(){ |
693 |
|
694 |
/*Action à l'appui sur le bouton valider*/ |
695 |
if ( res != 'Auncune correspondance trouvée.' ){ |
696 |
donnees = $('#dialog select option:selected').val(); |
697 |
donnees = donnees.split('_'); |
698 |
|
699 |
if ( $.isNumeric(donnees[8]) ){ |
700 |
|
701 |
$('#' + id + |
702 |
' select[id="personne_morale_civilite' + |
703 |
complement + |
704 |
'"] option[value="' + |
705 |
$.trim(donnees[8]) + '"]'). |
706 |
attr('selected','selected'); |
707 |
} |
708 |
|
709 |
$('#' + id + |
710 |
' input[id="personne_morale_denomination' + |
711 |
complement + '"]'). |
712 |
val($.trim(donnees[5])); |
713 |
$('#' + id + |
714 |
' input[id="personne_morale_raison_sociale' + |
715 |
complement + '"]'). |
716 |
val($.trim(donnees[12])); |
717 |
$('#' + id + |
718 |
' input[id="personne_morale_siret' + |
719 |
complement + '"]'). |
720 |
val($.trim(donnees[6])); |
721 |
$('#' + id + |
722 |
' input[id="personne_morale_categorie_juridique' + |
723 |
complement + '"]'). |
724 |
val($.trim(donnees[13])); |
725 |
$('#' + id + |
726 |
' input[id="personne_morale_nom' + |
727 |
complement + '"]'). |
728 |
val($.trim(donnees[7])); |
729 |
$('#' + id + |
730 |
' input[id="personne_morale_prenom' + |
731 |
complement + '"]'). |
732 |
val($.trim(donnees[9])); |
733 |
|
734 |
changeValInputDemandeur(id, donnees, complement); |
735 |
} |
736 |
|
737 |
/*Fermeture de l'overlay*/ |
738 |
$(this).dialog( "close" ); |
739 |
} |
740 |
} |
741 |
}); |
742 |
}, |
743 |
async: false |
744 |
}); |
745 |
} |
746 |
); |
747 |
} |
748 |
|
749 |
/* |
750 |
Change les valeurs des champs en commun des particuliers et des personnes morales |
751 |
Lié à la fonction addActionSearch |
752 |
|
753 |
* */ |
754 |
function changeValInputDemandeur(id, donnees, complement){ |
755 |
|
756 |
$('#' + id + ' input[id="demandeur' + complement + '"]').val($.trim(donnees[0])); |
757 |
/*Teste si la valeur retournée est TRUE*/ |
758 |
if ( donnees[28] === 't' ){ |
759 |
|
760 |
$('#' + id + ' input[id="notification' + complement + '"]').attr('checked', 'checked'); |
761 |
$('#' + id + ' input[id="notification' + complement + '"]').val('Oui'); |
762 |
} |
763 |
|
764 |
$('#' + id + ' input[id="frequent' + complement + '"]').attr('checked','checked'); |
765 |
$('#' + id + ' input[id="frequent' + complement + '"]').val('Oui'); |
766 |
$('#' + id + ' input[id="numero' + complement + '"]').val($.trim(donnees[14])); |
767 |
$('#' + id + ' input[id="voie' + complement + '"]').val($.trim(donnees[15])); |
768 |
$('#' + id + ' input[id="complement' + complement + '"]').val($.trim(donnees[16])); |
769 |
$('#' + id + ' input[id="lieu_dit' + complement + '"]').val($.trim(donnees[17])); |
770 |
$('#' + id + ' input[id="localite' + complement + '"]').val($.trim(donnees[18])); |
771 |
$('#' + id + ' input[id="code_postal' + complement + '"]').val($.trim(donnees[19])); |
772 |
$('#' + id + ' input[id="bp' + complement + '"]').val($.trim(donnees[20])); |
773 |
$('#' + id + ' input[id="cedex' + complement + '"]').val($.trim(donnees[21])); |
774 |
$('#' + id + ' input[id="pays' + complement + '"]').val($.trim(donnees[22])); |
775 |
$('#' + id + ' input[id="division_territoriale' + complement + '"]').val($.trim(donnees[23])); |
776 |
$('#' + id + ' input[id="telephone_fixe' + complement + '"]').val($.trim(donnees[24])); |
777 |
$('#' + id + ' input[id="telephone_mobile' + complement + '"]').val($.trim(donnees[25])); |
778 |
$('#' + id + ' input[id="indicatif' + complement + '"]').val($.trim(donnees[26])); |
779 |
$('#' + id + ' input[id="courriel' + complement + '"]').val($.trim(donnees[27])); |
780 |
} |
781 |
|
782 |
/* |
783 |
Function de test des champs |
784 |
* */ |
785 |
function isAlpha(str) { |
786 |
return /^[a-zA-Z\/]+$/.test(str); |
787 |
} |
788 |
|
789 |
function isMail(str){ |
790 |
return /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(str); |
791 |
} |
792 |
|
793 |
function isPhoneNumber(str){ |
794 |
return /[0-9-()+]{3,20}/.test(str); |
795 |
} |
796 |
|
797 |
function testSeparator(obj){ |
798 |
|
799 |
if ( obj.value != 'A' && |
800 |
obj.value != '/' ) { |
801 |
|
802 |
alert('Saisissez uniquement un A ou un / comme séparateur'); |
803 |
obj.value = ''; |
804 |
} |
805 |
} |
806 |
|
807 |
/* FIN */ |
808 |
|
809 |
/* |
810 |
Ajoute les ations spécifiques pour le formulaire personnalisé d'ajout de |
811 |
référence cadastrale |
812 |
* */ |
813 |
function actionFormReferenceCadastrale(){ |
814 |
$('form').submit( |
815 |
function(){ |
816 |
|
817 |
var reference_cadastrale = ''; |
818 |
var reference_cadastrale_temp = ''; |
819 |
|
820 |
$('.reference_cadastrale_custom_field').each( |
821 |
function(){ |
822 |
|
823 |
if ( $(this).val() == ';' ){ |
824 |
|
825 |
reference_cadastrale_bis = reference_cadastrale_temp + |
826 |
( ( reference_cadastrale_temp != '' && |
827 |
reference_cadastrale_temp.length > 0 ) |
828 |
? ';' : '' ); |
829 |
|
830 |
if ( /^([0-9]{1,4}[a-zA-Z]{1,3}[0-9]{1,5}([A\/]{1}[0-9]{1,4})*;)*$/.test(reference_cadastrale_bis) ){ |
831 |
|
832 |
reference_cadastrale += reference_cadastrale_bis; |
833 |
} |
834 |
reference_cadastrale_temp = ''; |
835 |
} |
836 |
|
837 |
else { |
838 |
|
839 |
reference_cadastrale_temp += $(this).val(); |
840 |
} |
841 |
|
842 |
} |
843 |
); |
844 |
|
845 |
$('#terrain_references_cadastrales').val(reference_cadastrale); |
846 |
} |
847 |
); |
848 |
|
849 |
$('#moreFieldReferenceCadastrale' + |
850 |
($('.moreFieldReferenceCadastrale').length - 1 )). |
851 |
on("click", function() { |
852 |
$(this).before(newInputReferenceCadastrale()); |
853 |
}); |
854 |
|
855 |
} |
856 |
|
857 |
/* |
858 |
Action pour l'ajout de nouvelle ligne |
859 |
* */ |
860 |
function actionLineFormReferenceCadastrale(){ |
861 |
$('#morelineReferenceCadastrale').click( |
862 |
function(){ |
863 |
|
864 |
$('.reference_cadastrale_custom_fields'). |
865 |
append( "<br/>" + fieldReferenceCadastraleBase()); |
866 |
|
867 |
$('#moreFieldReferenceCadastrale'+ |
868 |
($('.moreFieldReferenceCadastrale').length - 1 )). |
869 |
on("click", function() { |
870 |
$(this).before(newInputReferenceCadastrale()); |
871 |
}); |
872 |
|
873 |
|
874 |
} |
875 |
); |
876 |
} |
877 |
|
878 |
/* |
879 |
Met à jour le select demande_type dès qu'un |
880 |
dossier_autorisation_type_detaille est choisi |
881 |
* */ |
882 |
function changeDemandeType(){ |
883 |
|
884 |
var idDossierAutorisationTypeDetaille = |
885 |
$("#dossier_autorisation_type_detaille option:selected").val(); |
886 |
|
887 |
if ( $.isNumeric(idDossierAutorisationTypeDetaille) ){ |
888 |
|
889 |
changeDataSelect('demande_type','dossier_autorisation_type_detaille'); |
890 |
if ( $('#demande_type option').size() < 2 ) |
891 |
showFormsDemande(); |
892 |
|
893 |
$('#demande_type').parent().parent().show(); |
894 |
|
895 |
addNewFieldReferencesCadastrales(); |
896 |
|
897 |
actionFormReferenceCadastrale(); |
898 |
actionLineFormReferenceCadastrale() |
899 |
} |
900 |
else { |
901 |
hideFields(); |
902 |
} |
903 |
} |
904 |
|
905 |
/* |
906 |
Ajoute le code HTML des champs pour les références cadastrales |
907 |
* */ |
908 |
function addNewFieldReferencesCadastrales(){ |
909 |
$('.references_cadastrales_new_field').remove(); |
910 |
$('.moreFieldReferenceCadastrale').remove(); |
911 |
$('#morelineReferenceCadastrale').remove(); |
912 |
$('.buttonCadAdr').remove(); |
913 |
$('.localisation .fieldsetContent').prepend( |
914 |
'<div class="field field-type-text references_cadastrales_new_field" >'+ |
915 |
'<div class="form-libelle">' + |
916 |
'<label '+ |
917 |
'class="libelle-terrain_references_cadastrales" '+ |
918 |
'for="terrain_references_cadastrales">'+ |
919 |
' terrain_references_cadastrales '+ |
920 |
'</label>' + |
921 |
'</div>' + |
922 |
'<div class="form-content reference_cadastrale_custom_fields">' + |
923 |
fieldReferenceCadastraleBase() + |
924 |
'</div>' + |
925 |
'</div>' + |
926 |
'<div class="field field-type-text" id="morelineReferenceCadastrale">' + |
927 |
'<div class="form-libelle"></div>' + |
928 |
'<div class="form-content">' + |
929 |
' + ajouter d\'autres lignes' + |
930 |
'</div>' + |
931 |
'</div>' |
932 |
); |
933 |
$('#terrain_superficie').parent().parent().after('<div class="field field-type-text" >' + |
934 |
'<div class="form-libelle"></div>' + |
935 |
'<div class="form-content buttonCadAdr">' + |
936 |
'<input id="cad-adr-them" class="ui-button ui-widget ui-state-default ui-corner-all" type="button" value="Cadastrale < = > Adresse"/>' + |
937 |
'</div>' + |
938 |
'</div>' ); |
939 |
} |
940 |
|
941 |
/* |
942 |
Séparateur caché ; |
943 |
* */ |
944 |
function hiddenSeparatorField(){ |
945 |
return '<input ' + |
946 |
'class="reference_cadastrale_custom_field " ' + |
947 |
'type="hidden" ' + |
948 |
'maxlength="2" ' + |
949 |
'size="2" ' + |
950 |
'value=";" />'; |
951 |
} |
952 |
|
953 |
/* |
954 |
Ajout d'une nouvelle ligne de champ |
955 |
* */ |
956 |
function fieldReferenceCadastraleBase(){ |
957 |
return '<input ' + |
958 |
'class="champFormulaire reference_cadastrale_custom_field" ' + |
959 |
'type="text" ' + |
960 |
'onchange="VerifNum(this)" ' + |
961 |
'maxlength="4" ' + |
962 |
'size="4" ' + |
963 |
'value="" />' + |
964 |
'<input ' + |
965 |
'class="champFormulaire reference_cadastrale_custom_field" ' + |
966 |
'type="text" ' + |
967 |
'maxlength="3" ' + |
968 |
'size="3" ' + |
969 |
'value="" '+ |
970 |
'onchange="if ( !isAlpha(this.value) ){ alert(\'Vous ne devez saisir que des lettres dans ce champs.\'); this.value = \'\'; }"/>' + |
971 |
'<input ' + |
972 |
'class="champFormulaire reference_cadastrale_custom_field" ' + |
973 |
'type="text" ' + |
974 |
'onchange="VerifNum(this)" ' + |
975 |
'maxlength="5" ' + |
976 |
'size="5" ' + |
977 |
'value="" />' + |
978 |
'<span id="moreFieldReferenceCadastrale' + $('.moreFieldReferenceCadastrale').length + '" class="moreFieldReferenceCadastrale">' + |
979 |
hiddenSeparatorField() + |
980 |
' + ajouter d\'autres champs' + |
981 |
'</span>'; |
982 |
} |
983 |
|
984 |
/* |
985 |
Cache les champs inutules |
986 |
* */ |
987 |
function hideFields(){ |
988 |
$('.bloc').each( |
989 |
function(){ |
990 |
if ( !$(this).hasClass('dossier_type') && |
991 |
!$(this).hasClass('dossier_type_demande_date') ){ |
992 |
$(this).hide(); |
993 |
} |
994 |
|
995 |
} |
996 |
); |
997 |
|
998 |
$('.field-type-text').hide(); |
999 |
$('input[type=submit]').hide(); |
1000 |
$('#demande_type').parent().parent().hide(); |
1001 |
} |
1002 |
|
1003 |
/* |
1004 |
Affiche les champs dont on a besoin |
1005 |
* */ |
1006 |
function showFormsDemande(){ |
1007 |
$('.bloc').each( |
1008 |
function(){ |
1009 |
if ( !$(this).hasClass('dossier_type') && |
1010 |
!$(this).hasClass('dossier_type_demande_date') ){ |
1011 |
$(this).show(); |
1012 |
} |
1013 |
|
1014 |
} |
1015 |
); |
1016 |
|
1017 |
$('.field-type-text').show(); |
1018 |
$('input[type=submit]').show(); |
1019 |
$('.terrain_references_cadastrales_custom').hide(); |
1020 |
|
1021 |
$('#terrain_references_cadastrales').parent().parent().hide(); |
1022 |
} |
1023 |
|
1024 |
/* |
1025 |
Action au clique sur le bouton " + ajouter d'autres champs" |
1026 |
* */ |
1027 |
function newInputReferenceCadastrale(){ |
1028 |
return '<input ' + |
1029 |
'class="champFormulaire reference_cadastrale_custom_field" ' + |
1030 |
'type="text" ' + |
1031 |
'maxlength="1" ' + |
1032 |
'size="1" ' + |
1033 |
'value="" ' + |
1034 |
'onchange="testSeparator(this);"/>' + |
1035 |
'<input ' + |
1036 |
'class="champFormulaire reference_cadastrale_custom_field" ' + |
1037 |
'type="text" ' + |
1038 |
'onchange="VerifNum(this)" ' + |
1039 |
'maxlength="4" ' + |
1040 |
'size="4" ' + |
1041 |
'value="" />'; |
1042 |
} |
1043 |
|
1044 |
|
1045 |
|
1046 |
/** |
1047 |
* Desactivation des fonctions widget du tableau de bord inutiles sur le nouveau |
1048 |
* tableau de bord |
1049 |
*/ |
1050 |
function widget_bind_move_actions() {} |
1051 |
function widget_bind_add_action() {} |
1052 |
function widget_bind_edit_actions(widget_selector) {} |
1053 |
|