/[openfoncier]/trunk/app/js/script.js
ViewVC logotype

Annotation of /trunk/app/js/script.js

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1118 - (hide annotations)
Fri Dec 21 16:22:39 2012 UTC (12 years, 1 month ago) by nhaye
File MIME type: application/javascript
File size: 45701 byte(s)
Amélioration de l'érgonomie de l'ajout des demandeurs à la demande ainsi que du formulaire des demandeurs

1 fraynaud 88 // specific openfoncier ========================================================
2 fmichon 784
3     // Document is ready
4 nhaye 585 $(function(){
5 fmichon 784
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 nhaye 585 $('#avis_code_barre_form #consultation').focus();
11     });
12 fraynaud 88
13 nhaye 585
14 fmichon 784 /**
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 fraynaud 88 if(fenetreouverte==true)
23     pfenetre.close();
24     var ev=document.f2.evenement.value;
25     var idx=document.f2.dossier.value;
26 fraynaud 343 pfenetre=window.open("../app/bible.php?ev="+ev+"&idx="+idx,"bible","scrollbars=yes,width=600,height=600,top=120,left=120");
27 fraynaud 88 fenetreouverte=true;
28     }
29 fmichon 784 // bible2 - type httpclick
30 fraynaud 88 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 fraynaud 343 pfenetre=window.open("../app/bible2.php?ev="+ev+"&idx="+idx,"bible","scrollbars=yes,width=600,height=600,top=120,left=120");
37 fraynaud 88 fenetreouverte=true;
38     }
39 fmichon 784 // bible_auto - type httpclick
40 fraynaud 88 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 fraynaud 90 pfenetre=window.open("../app/bible_auto.php?idx="+idx+"&ev="+ev,"evenement","width=600,height=300,top=120,left=120");
46 fraynaud 88 fenetreouverte=true;
47     }
48 fmichon 784 // 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 nhaye 1062 function changeDataSelect(tableName, linkedField, joker){
62     var id_dossierAutorisation = $("#dossier_autorisation").val();
63     var id = $("#"+linkedField).val();
64     link = "../app/listData.php?idx=" + id + "&tableName=" + tableName +
65     "&linkedField=" + linkedField ;
66     if(id_dossierAutorisation != "") {
67     link += "&nature=EXIST";
68     }
69     var val_tableName = $('#'+tableName).val();
70 fmichon 784 $.ajax({
71     type: "GET",
72     url: link,
73     cache: false,
74     dataType: "json",
75     success: function(html){
76    
77 nhaye 1062 $('#'+tableName).empty();
78 fmichon 1005 var selected = "";
79 nhaye 1062 if(val_tableName == "") {
80 fmichon 1005 selected=' selected="selected"';
81     }
82 fmichon 784 if ( joker == true )
83 nhaye 1062 $('#'+tableName).append(
84 fmichon 1005 '<option value=""'+selected+'>*</option>'
85 fmichon 784 );
86 fmichon 1005 else {
87 nhaye 1062 $('#'+tableName).append(
88     '<option value=""'+selected+'>Choisir ' + tableName + '</option>'
89 fmichon 784 );
90 fmichon 1005 }
91 fmichon 784 if ( html !== '' ){
92    
93     html = html.split(';');
94     for ( i = 0 ; i < html.length - 1 ; i++ ){
95    
96     html_temp = html[i].split('_');
97 fmichon 1005 selected = "";
98 nhaye 1062 if(val_tableName == html_temp[0]) {
99 fmichon 1005 selected=' selected="selected"';
100     }
101 nhaye 1062 $('#'+tableName).append(
102 fmichon 1005 '<option value="'+html_temp[0]+'"'+selected+' >'+html_temp[1]+'</option>'
103 fmichon 784 );
104 fmichon 1005
105 fmichon 784 }
106     }
107     },
108     async: false
109     });
110     }
111     // vuploadMulti - XXX
112     function vuploadMulti(champ) {
113     //
114     if (fenetreouverte == true) {
115     pfenetre.close();
116     }
117     //
118     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");
119     //pfenetre = window.open("../spg/upload2.php?origine="+champ,"upload2","width=300,height=100,top=120,left=120");
120     //
121     fenetreouverte = true;
122     }
123     // tmpUpload - Upload XXX
124     function tmpUpload(champ) {
125     //
126     if (fenetreouverte == true) {
127     pfenetre.close();
128     }
129     //
130     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");
131     //pfenetre = window.open("../spg/upload2.php?origine="+champ,"upload2","width=300,height=100,top=120,left=120");
132     //
133     fenetreouverte = true;
134     }
135 fraynaud 88
136 fmichon 784
137    
138     /**
139     * POPUP pour le téléchargement de fichier
140     *
141     * Ces fonctions javascript sont appelées depuis des onClick sur des
142     * formulaires spécifiques pour permettre de transmettre des paramètres aux
143     * éditions pdf ainsi appelées.
144     */
145     //
146 fraynaud 88 function dossierads_d(debut)
147     {
148     //if(fenetreouverte==true)
149     window.location="../pdf/pdfetat.php?obj=dossier_ads_d&nature="
150     +document.f1.nature.value+"&idx=demo&datedebut="
151     +document.f1.datedebut.value+"&datefin="+document.f1.datefin.value;
152     }
153 fmichon 784 //
154 vpihour 1072 function dossier_reglementaire(){
155 vpihour 1080
156     $('#bouton-PDF').remove();
157 vpihour 1072 $("#msg").html(msg_loading);
158 vpihour 1080
159 vpihour 1072 /*Requete AJAX vers le fichier edition_reglementaire.php pour mettre à jour les dossiers*/
160     $.ajax({
161     type: "GET",
162     url: "../app/edition_reglementaire.php?update",
163     cache: false,
164     success: function(html){
165 vpihour 840
166 vpihour 1072 $('#msg').html(
167     '<div class="message ui-widget ui-corner-all ui-state-highlight">'+
168     '<p>'+
169     '<span class="ui-icon ui-icon-info"></span>'+
170     '<span class="text">'+
171     '</span>'+
172     '</p>'+
173     '</div>'
174     );
175    
176     if ( html.length > 2 ){
177    
178     $("#msg .message").addClass("ui-state-error");
179     $("#msg .text").html(html);
180     }
181     else {
182    
183     $("#msg .message").addClass("ui-state-valid");
184     $("#msg .text").html("PDF affiche avec succes !");
185 vpihour 1084 window.open("../pdf/pdfetat.php?obj=dossier_m&idx=demo");
186 vpihour 1072 }
187     },
188     async: false
189     });
190 vpihour 833 }
191     //
192 fraynaud 88 function dossierdepot()
193     {
194     //if(fenetreouverte==true)
195     window.location="../pdf/pdfetat.php?obj=dossier_depot&nature="+
196     document.f1.nature.value+"&idx=demo&datedebut="+
197     document.f1.datedebut.value+"&datefin="+document.f1.datefin.value;
198     }
199 fmichon 784 //
200 fraynaud 88 function dossierads()
201     {
202     //if(fenetreouverte==true)
203     window.location="../pdf/pdfetat.php?obj=dossier_ads&nature="+
204     document.f1.nature.value+"&idx=demo&datedebut="+
205     document.f1.datedebut.value+"&datefin="+document.f1.datefin.value;
206     }
207    
208 fmichon 784 // téléchargement du fichier
209     function file(fichier) {
210     //
211     if (fichier == "") {
212     alert("zone vide");
213     }
214     //
215     pfenetre = window.open("../app/file.php?file="+fichier,"Visualisation","width=100,height=100,top=1,left=150,scrollbars=yes,resizable = yes");
216     //
217     fenetreouverte = true;
218     }
219 fraynaud 271
220 fmichon 784 /**
221     * Retour spécifique de l'écran de consultation multiple - surcharge de ajaxIt
222     * @todo XXX voir les différences avec ajaxIt et si il n'est pas possible
223     * d'effectuer la modification dans le core
224     */
225 vpihour 534 function messageIt(objsf, link, empty) {
226     // recuperation du terme recherche
227     var recherche = document.getElementById("recherchedyn");
228     if (recherche != null) {
229     link += "&recherche="+recherche.value;
230     }else {
231     link += "&recherche=";
232     }
233 vpihour 558 // execution de la requete en GET
234 vpihour 534 $.ajax({
235     type: "GET",
236     url: link,
237     cache: false,
238     success: function(html){
239     (empty == true )?$("#sousform-"+objsf).empty():'';
240     $("#sousform-"+objsf).append(html);
241     om_initialize_content();
242     },
243     async: false
244     });
245     }
246 vpihour 536
247 fmichon 784 /**
248     * TTélécharegement de fichier pdf en ajax
249     * spécifique de l'écran de consultation multiple
250     */
251 vpihour 536 /* Plugin jQuery qui lance un espèce d'appel AJAX vers un script PHP de téléchargement de fichier*/
252     jQuery.download = function(url, data, method){
253     //url and data options required
254     if( url && data ){
255     //data can be string of parameters or array/object
256     data = typeof data == 'string' ? data : jQuery.param(data);
257     //split params into form inputs
258     var inputs = '';
259     jQuery.each(data.split('&'), function(){
260     var pair = this.split('=');
261     inputs+='<input type="hidden" name="'+ pair[0] +'" value="'+ pair[1] +'" />';
262     });
263     //send request
264     jQuery('<form action="'+ url +'" method="'+ (method||'post') +'">'+inputs+'</form>')
265     .prependTo('body').submit().remove();
266     };
267     };
268    
269 fmichon 784 /**
270     * Cette fonction permet de charger dans un dialog jqueryui un formulaire tel
271     * qu'il aurait été chargé avec ajaxIt
272 nhaye 800 *
273     * @param objsf string : objet de sousformulaire
274     * @param link string : lien vers un sousformulaire (../scr/sousform.php...)
275 nhaye 801 * @param width integer: width en px
276     * @param height integer: height en px
277 nhaye 800 * @param callback function (optionel) : nom de la méthode à appeler
278     * à la fermeture du dialog
279     * @param callbackParams mixed (optionel) : paramètre à traiter dans la function
280     * callback
281 fmichon 784 *
282 nhaye 800 **/
283 nhaye 801 function popupIt(objsf, link, width, height, callback, callbackParams) {
284 nhaye 544 // Insertion du conteneur du dialog
285     var dialog = $('<div id=\"sousform-'+objsf+'\"></div>').insertAfter('.formControls');
286     $('<input type=\"text\" name=\"recherchedyn\" id=\"recherchedyn\" value=\"\" class=\"champFormulaire\" style=\"display:none\" />').insertAfter('#sousform-'+objsf);
287    
288     // execution de la requete passee en parametre
289     // (idem ajaxIt + callback)
290     $.ajax({
291     type: "GET",
292     url: link,
293     cache: false,
294     success: function(html){
295     //Suppression d'un precedent dialog
296     dialog.empty();
297     //Ajout du contenu recupere
298     dialog.append(html);
299     //Initialisation du theme OM
300     om_initialize_content();
301     //Creation du dialog
302     $(dialog).dialog({
303     //OnClose suppression du contenu
304     close: function(ev, ui) {
305 nhaye 800 // Si le formulaire est submit et valide on execute la méthode
306     // passée en paramètre
307     if (typeof(callback) === "function") {
308     callback(callbackParams);
309 nhaye 557 }
310 nhaye 544 $(this).remove();
311     },
312     resizable: false,
313     modal: true,
314 nhaye 801 width: width,
315     height: height,
316 fmichon 1005 position: 'center',
317 nhaye 544 });
318     },
319     async : false
320     });
321 nhaye 802 //Fermeture du dialog lors d'un clic sur le bouton retour
322 nhaye 544 $('#sousform-'+objsf).on("click",'a.retour',function() {
323     $(dialog).dialog('close').remove();
324 nhaye 838 return false;
325 nhaye 544 });
326     }
327 nhaye 557
328 fmichon 784 /***
329 nhaye 800 * Fonction getter des paramètres de l'url courante
330 fmichon 784 */
331 nhaye 557 // Parse URL Queries Method
332     (function($){
333 nhaye 800 $.getQuery = function( query ) {
334     query = query.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
335     var expr = "[\\?&]"+query+"=([^&#]*)";
336     var regex = new RegExp( expr );
337     var results = regex.exec( window.location.href );
338     if( results !== null ) {
339     return results[1];
340     return decodeURIComponent(results[1].replace(/\+/g, " "));
341     } else {
342     return false;
343     }
344     };
345 nhaye 557 })(jQuery);
346 vpihour 558
347 vpihour 641
348 vpihour 793 /*
349 nhaye 800 * Javascript concernant la demande d'avis
350     *
351     *
352     */
353    
354 nhaye 802 /**
355     * Fonction de callback appellée lors de la fermeture du dialog (popupit)
356     * du retour d'avis d'un service
357     **/
358 nhaye 800 function returnToTab(objsf) {
359     var valid=$('#sousform-'+objsf+' div.ui-state-valid');
360     if(valid.length > 0) {
361     document.location.href="../scr/tab.php?obj="+$.getQuery('obj')+"&premier="+$.getQuery('premier')
362     +"&advs_id="+$.getQuery('advs_id')+"&recherche="+$.getQuery('recherche')+"&tricol="+$.getQuery('tricol')
363     +"&selectioncol="+$.getQuery('selectioncol');
364     }
365     };
366    
367    
368     /*
369 vpihour 793 * Javascript concernant la demande
370     *
371     *
372     */
373 fmichon 784
374 nhaye 807 /**
375 vpihour 1060 * Fonction permettant de mettre à jour les infos du demandeur
376 nhaye 807 **/
377     function getDemandeurId(type) {
378     var id_demandeur=$('#id_retour').val();
379 nhaye 828 if($.isNumeric(id_demandeur)) {
380     afficherDemandeur(id_demandeur,type);
381     om_initialize_content();
382     }
383 nhaye 807 }
384    
385 nhaye 828 /**
386     * Fonction permettant d'afficher la synthèse d'un demandeur
387     */
388     function afficherDemandeur(id,type) {
389     $.ajax({
390     type: "GET",
391     url: '../app/afficher_synthese_demandeur.view.php?iddemandeur='+id+'&type='+type,
392     cache: false,
393     success: function(html){
394 fmichon 1005 $(html).insertBefore('#add_'+type).fadeIn(500);
395    
396     },
397     async:false
398 nhaye 828 });
399 fmichon 1005 affichageBoutonsDemandeurs();
400 nhaye 828 }
401    
402 nhaye 838 /**
403 vpihour 1060 * Fonction permettant de modifier un demandeur
404 vpihour 793 */
405 nhaye 931 function editDemandeur(obj,id,type,id_css) {
406 nhaye 1048 var url = '../scr/sousform.php?obj='+obj+'&retourformulaire=demande';
407     if(getDemandeInfo('type') == 'DM') {
408     url += '&action=0&idx_demandeur='+id;
409     } else {
410     url += '&action=1&idx='+id;
411     }
412 nhaye 1103 popupIt(obj, url, 860, 'auto',
413 nhaye 1048 replaceDemandeur, {'type':type,'id': id, 'id_css':id_css});
414 fmichon 1005 affichageBoutonsDemandeurs();
415 nhaye 838 }
416 vpihour 793
417 nhaye 838 /**
418     * Function permettant de remplacer un contenu déjà existant
419     **/
420     function replaceDemandeur(obj) {
421 nhaye 1050 var new_demandeur=$('#id_retour').val();
422 nhaye 1064 if($.isNumeric(new_demandeur)) {
423     $.ajax({
424     type: "GET",
425     url: '../app/afficher_synthese_demandeur.view.php?iddemandeur='+new_demandeur+'&type='+obj.type,
426     cache: false,
427     success: function(html){
428     $(obj.id_css).replaceWith(html);
429     }
430     });
431     }
432 nhaye 838 }
433     /**
434     * Function permettant de remplacer un contenu déjà existant
435     **/
436     function removeDemandeur(id) {
437     var div_class=$('#'+id).attr("class");
438     $('#'+id).remove();
439     if(div_class == "delegataire") {
440     $('#add_delegataire').fadeIn(500);
441     }
442 fmichon 1005 affichageBoutonsDemandeurs();
443     }
444    
445     /**
446     * Fonction permettant d'afficher et cacher les boutons d'ajout de demandeurs
447     */
448     function affichageBoutonsDemandeurs(){
449 nhaye 1090
450     // Si formulaire après validation on cache les boutons d'ajout de demandeurs
451     url = document.location + "" ;
452    
453 nhaye 1100 if ((url.indexOf("form.php?obj=demande&") != -1
454     || url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1
455     || url.indexOf("form.php?obj=demande_dossier_existant&") != -1)
456     && $("form[name=f1] .form-is-valid").size() > 0 ) {
457 nhaye 1090
458 fmichon 1005 $('#add_petitionnaire_principal').hide();
459 nhaye 1090 $('#add_delegataire').hide();
460 fmichon 1005 if($('input[name=delegataire][type=hidden]').size() == 0) {
461 nhaye 1090 $('#delegataire').hide();
462 fmichon 1005 }
463     $('#add_petitionnaire').hide();
464 nhaye 1090
465 fmichon 1005 } else {
466 nhaye 1090
467     // Affichage du bouton d'ajout du petitionnaire principal
468     if($('input[name=petitionnaire_principal][type=hidden]').size() == 1) {
469     $('#add_petitionnaire_principal').hide();
470     } else {
471     $('#add_petitionnaire_principal').fadeIn(500);
472     }
473    
474     // Affichage du bouton d'ajout du delegataire
475     if($('input[name=petitionnaire_principal][type=hidden]').size() == 1
476     || $('input[name=delegataire][type=hidden]').size() == 1) {
477     $('#delegataire').fadeIn(500);
478     if($('input[name=delegataire][type=hidden]').size() == 0) {
479     $('#add_delegataire').fadeIn(500);
480     } else {
481     $('#add_delegataire').hide();
482     }
483     } else {
484     $('#delegataire').hide();
485     }
486    
487     // Affichage du bouton d'ajout de petitionnaires
488     if($('input[name=petitionnaire_principal][type=hidden]').size() == 0) {
489     $('#add_petitionnaire').hide();
490     } else {
491     $('#add_petitionnaire').fadeIn(500);
492     }
493 fmichon 1005 }
494 nhaye 838 }
495 vpihour 793
496 nhaye 838 /**
497     * Appel au chargement de la page
498     **/
499 vpihour 664 $(function() {
500 vpihour 805 changeDemandeurType('qualite');
501 vpihour 823 if ( $('#type_demandeur') == 'petitionnaire' ){
502    
503     addSearchIcon();
504     addDivDialog('.bloc_demandeur');
505     }
506 fmichon 1005 affichageBoutonsDemandeurs();
507 nhaye 828 // Bind de la fonction permettant l'ajout du pétitionnaire principal
508 nhaye 838 $("#formulaire").on("click","#add_petitionnaire_principal", function() {
509 nhaye 828 popupIt('petitionnaire',
510     '../scr/sousform.php?obj=petitionnaire&action=0'+
511 nhaye 1103 '&retourformulaire=demande&principal=true', 860, 'auto',
512 nhaye 828 getDemandeurId, 'petitionnaire_principal');
513     });
514     // Bind de la fonction permettant l'ajout du délégataire
515     $("#formulaire").on("click","#add_delegataire", function(event) {
516     popupIt('delegataire',
517     '../scr/sousform.php?obj=delegataire&action=0'+
518 nhaye 1103 '&retourformulaire=demande', 860, 'auto',
519 nhaye 828 getDemandeurId, 'delegataire');
520     });
521     // Bind de la fonction permettant l'ajout des pétitionnaires
522     $("#formulaire").on("click","#add_petitionnaire", function(event) {
523     popupIt('petitionnaire',
524     '../scr/sousform.php?obj=petitionnaire&action=0'+
525 nhaye 1103 '&retourformulaire=demande', 860, 'auto',
526 nhaye 828 getDemandeurId, 'petitionnaire');
527     });
528    
529 vpihour 664 url = document.location + "" ;
530 fmichon 1005 if (url.indexOf("form.php?obj=demande&") != -1
531 nhaye 1094 && url.indexOf("&action=3") == -1) {
532 vpihour 1098
533 nhaye 1094 formatFieldReferenceCadastrale();
534     }
535 vpihour 1098
536 nhaye 1094 if (url.indexOf("form.php?obj=demande&") != -1
537 nhaye 1100 && (url.indexOf("&action=3") == -1
538 vpihour 1104 && url.indexOf("&action=2") == -1
539 nhaye 1100 && $(".form-is-valid").size() == 0)) {
540 vpihour 1098
541 vpihour 1099 addButtonCadastraleAdesse();
542 fmichon 1005 changeDemandeType();
543     }
544 vpihour 1098
545 nhaye 1033 // Ajout de demande
546 nhaye 1100 if ((url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1
547     || url.indexOf("form.php?obj=demande_dossier_existant&") != -1)
548 nhaye 828 && url.indexOf("&action=0") != -1 ){
549 vpihour 1098
550 vpihour 793 /*Cache les champs avant que dossier_autorisation_type_detaille soit choisi*/
551 vpihour 664 hideFields();
552 vpihour 676 }
553 vpihour 1098
554 nhaye 1033 // Ajout de demande sur dossier existant
555 nhaye 1100 if (url.indexOf("form.php?obj=demande_dossier_existant&") != -1
556     && url.indexOf("&action=0") != -1 ){
557 vpihour 1098
558 nhaye 1033 /*Cache les champs avant que dossier_autorisation_type_detaille soit choisi*/
559     hideFields();
560     changeDemandeType();
561     }
562 fmichon 1005
563 nhaye 1033 // Modification de demande
564 nhaye 1101 if ((url.indexOf("form.php?obj=demande&") != -1
565 nhaye 1100 || url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1
566 nhaye 1101 || url.indexOf("form.php?obj=demande_dossier_existant&") != -1)
567 vpihour 1106 && url.indexOf("&action=3") == -1
568     && url.indexOf("&action=1") == -1 ){
569 vpihour 1098
570 vpihour 812 formatFieldReferenceCadastrale();
571 nhaye 1033 }
572 vpihour 812 });
573    
574     /*
575     * Action sur les champs pour les références cadastrales
576     */
577     function formatFieldReferenceCadastrale(){
578 vpihour 1098
579 vpihour 812 addNewFieldReferencesCadastrales();
580     $('#terrain_references_cadastrales').parent().parent().hide();
581    
582 vpihour 1098 url = document.location + "";
583    
584 vpihour 812 reference_cadastrale = $('#terrain_references_cadastrales').val();
585     /*Formatage de la reference cadastrale*/
586     if ( reference_cadastrale != '' ){
587    
588     /* Récupère la référence cadastrale non formatée */
589     references_cadastrales = reference_cadastrale.split(';');
590     donnees = new Array();
591    
592     i = 0 ;
593     /* Boucle sur les références, elles étaient séparées par un ; */
594     for ( l = 0 ; l < references_cadastrales.length - 1 ; l ++ ){
595 vpihour 664
596 vpihour 812 /*Récupère le code impots du qartier [CHIFFRES]*/
597     k = 0;
598     donnees[i] = '';
599     for ( j = k ; j < references_cadastrales[l].length ; j++ ){
600 vpihour 664
601 vpihour 812 if ( references_cadastrales[l].charAt(j) >= 0 &&
602     references_cadastrales[l].charAt(j) <= 9 ){
603    
604     donnees[i] += references_cadastrales[l].charAt(j);
605     k++;
606 vpihour 793
607 vpihour 812 } else {
608    
609     i++;
610     break;
611     }
612     }
613    
614     /* Récupère la section [LETTRES] */
615     donnees[i] = '';
616     for ( j = k ; j < references_cadastrales[l].length ; j++ )
617     if ( isAlpha(references_cadastrales[l].charAt(j)) ){
618    
619     donnees[i] += references_cadastrales[l].charAt(j);
620     k++;
621    
622     } else {
623    
624     i++;
625     break;
626     }
627    
628     /* Récupère la parcelle [CHIFFRES] */
629     donnees[i] = '';
630     for ( j = k ; j < references_cadastrales[l].length ; j++ )
631     if ( references_cadastrales[l].charAt(j) >= 0 &&
632     references_cadastrales[l].charAt(j) <= 9 ){
633 vpihour 793
634 vpihour 812 donnees[i] += references_cadastrales[l].charAt(j);
635     k++;
636    
637     } else {
638    
639     break;
640 vpihour 793 }
641 vpihour 812
642     /* Récupère les séparateurs [ A / ] et les sections */
643 nhaye 1094 m = 0 ; // Nombre de suffixe
644 vpihour 812 if ( k < references_cadastrales[l].length ){
645 vpihour 669
646     for ( j = k ; j < references_cadastrales[l].length ; j++ )
647     if ( isAlpha(references_cadastrales[l].charAt(j)) ){
648 vpihour 793
649 vpihour 812 m++;
650     donnees[++i] = references_cadastrales[l].charAt(j);
651     donnees[++i] = '';
652     }
653     else {
654 vpihour 793
655 vpihour 669 donnees[i] += references_cadastrales[l].charAt(j);
656 vpihour 664 }
657 vpihour 812 }
658    
659     /*Créé autant de champs de que de référence */
660 vpihour 1098 donnees[++i] = ';';
661 vpihour 812 i++;
662 vpihour 669
663 vpihour 812 if ( l > 0 ) {
664 vpihour 793
665 vpihour 812 $('.reference_cadastrale_custom_fields').append(
666     "<br/>" + fieldReferenceCadastraleBase()
667     );
668 vpihour 664 }
669    
670 vpihour 812 actionFormReferenceCadastrale();
671    
672     if ( m > 0 ){
673    
674     for ( j = 0 ; j < m ; j++ ){
675 vpihour 793
676 vpihour 812 $('#moreFieldReferenceCadastrale' +
677     ( $('.moreFieldReferenceCadastrale').length - 1 ) ).
678     before(
679     newInputReferenceCadastrale()
680     );
681 vpihour 664 }
682 vpihour 812 }
683 vpihour 664 }
684 vpihour 812 /* Action sur les boutons [+ ajouter d'autres champs] et [+ ajouter
685     * d'autres lignes] */
686     actionLineFormReferenceCadastrale();
687    
688     /* Ajoute les données dans les champs nouvellement créés */
689     $('.reference_cadastrale_custom_field').each(
690     function(index) {
691    
692     $(this).val(donnees[index])
693     }
694     );
695     }
696     else{
697     actionFormReferenceCadastrale();
698     actionLineFormReferenceCadastrale();
699     }
700     }
701 vpihour 641
702 vpihour 664 /*
703 vpihour 805 * Ajoute les icônes pour la recherche de pétitionnaire fréquent.
704     */
705     function addSearchIcon(){
706 nhaye 848
707 fmichon 1005 $("#form-content:not(.form-is-valid) .search_particulier_fields,"+
708     "#form-content:not(.form-is-valid) .search_personne_morale_fields").each(function() {
709 vpihour 805 /*Ajout de l'icône après le champs dénomination et nom de la personne morale*/
710 nhaye 848
711 vpihour 805 $(this).
712 nhaye 1050 append(
713 vpihour 805 '<span '+
714 nhaye 848 'class="om-icon om-icon-16 om-icon-fix search-petitionnaire-16" '+
715 vpihour 805 'title="Chercher un petitionnaire"> '+
716 nhaye 848 '</span>'+
717     '<span '+
718     'class="om-icon om-icon-16 om-icon-fix erase-petitionnaire delete-16" '+
719     'title="Supprimer le contenu"> '+
720 vpihour 805 '</span>'
721     );
722     }
723     );
724    
725 vpihour 1060 /*Ajout des actions sur les boutons*/
726 nhaye 828 addActionSearchIcon('#sousform-petitionnaire #form-content');
727 nhaye 848 addActionRemove();
728    
729 vpihour 768 }
730    
731 nhaye 849 /**
732     * Fonction permettant de revenir sur le formulaire d'ajout de demandeur
733     **/
734 nhaye 848 function addActionRemove(){
735     $('.erase-petitionnaire').click(
736     function(){
737     ajaxIt('petitionnaire','../scr/sousform.php?obj=petitionnaire&action=0');
738     });
739     }
740    
741 vpihour 741 /*
742 vpihour 805 * Ajoute les actions sur les icônes de recherche
743     */
744     function addActionSearchIcon(id){
745 vpihour 741
746 vpihour 793 /*Si on recherche un pétitionnaire de type particulier*/
747 nhaye 848 $('.search-petitionnaire-16').click(
748 vpihour 741 function(){
749    
750 vpihour 805 /*Le champ nom du particulier doit contenir au moins trois lettres*/
751 nhaye 848 if ( $('#particulier_nom').val().length < 3 &&
752     $('#particulier_prenom').val().length < 3 &&
753     $('#personne_morale_denomination').val().length < 3 &&
754     $('#personne_morale_nom').val().length < 3 ){
755 vpihour 805
756     alert('Saisissez au moins trois lettres pour la recherche');
757     return;
758     }
759    
760 vpihour 793 /*Données des champs nom et prénom du particulier*/
761 nhaye 848 var donnees = "?par_nom=" + $('.search_particulier_fields #particulier_nom').val() +
762     "&par_prenom=" + $('.search_particulier_fields #particulier_prenom').val() +
763     "&mor_denomination="+$('#personne_morale_denomination').val() +
764     "&mor_nom="+$('#personne_morale_nom').val();
765 vpihour 741
766 vpihour 805 /* Requête qui va récupérer les données duaddSearchIcon(es) pétitionnaire(s)
767 vpihour 793 * correspondant(s) à la recherche */
768 vpihour 741 $.ajax({
769     type: "GET",
770     url: "../app/findPetitionnaire.php" + donnees ,
771     cache: false,
772 nhaye 848 success: function(obj){
773     var freq = $.parseJSON(obj);
774     var res='';
775 vpihour 793 /*Si la recherche a donné des résultats*/
776 nhaye 848 if ( freq.length > 0 ){
777 vpihour 805 /*Limitation des résultats à 50 */
778 nhaye 848 if ( freq.length > 50 ){
779 vpihour 805
780     nbRes = 50;
781 nhaye 848 res += 'Votre recherche a donn&eacute; ' + freq.length
782 vpihour 805 + ' r&eacute;sultats. Seul les cinquantes premiers ' +
783     'seront affich&eacute;s.<br/>';
784 nhaye 848 } else {
785     nbRes = freq.length;
786 vpihour 805 }
787    
788     res += '<select>' ;
789    
790 vpihour 793 /* Met les résultats de la recherche dans un select */
791 nhaye 848 for ( i = 0 ; i < nbRes ; i++ ){
792     res += '<option value="' + freq[i].value + '">' +
793     freq[i].content +
794 vpihour 793 '</option>';
795 vpihour 741 }
796    
797 nhaye 848 res += '</select>';
798     } else {
799     res += 'Aucune correspondance trouvée.';
800 vpihour 741 }
801    
802 vpihour 793 /* Affichage de l'overlay */
803 vpihour 741 $('#dialog').html(res);
804    
805     $( "#dialog" ).dialog({
806     modal: true,
807     buttons : {
808     Valider: function(){
809 nhaye 848 if ( res != 'Auncune correspondance trouvée.'){
810 vpihour 805
811 vpihour 756 }
812 nhaye 848 var id = $('#dialog select option:selected').val();
813 fmichon 1005 if($.isNumeric(id)) {
814     ajaxIt('petitionnaire',
815     '../scr/sousform.php?obj=petitionnaire&action=1&retourformulaire=demande&idx='+id);
816     }
817 nhaye 848 // Fermeture de l'overlay
818 fmichon 1005 $(this).dialog( "close" ).empty();
819 vpihour 741 }
820     }
821     });
822     },
823     });
824     }
825     );
826     }
827    
828     /*
829 vpihour 805 * Ajoute un div pour l'overlay dialog de jQuery
830     */
831     function addDivDialog(id){
832    
833     $(id).prepend('<div id="dialog"></div>');
834     }
835    
836     /*
837     Action au changement du select de la qualite du demandeur
838     * */
839     function changeDemandeurType(id){
840    
841 vpihour 1060 /*Réinitialise les champs et cache les champs inutiles selon la qualité du demandeur*/
842 vpihour 805 /*Si la qualite du demandeur est particulier */
843 nhaye 1118 if ( $('#' + id ).val() == 'particulier' ){
844 vpihour 805
845     $('.personne_morale_fields input').each(
846     function(){
847     $(this).val('');
848     }
849     );
850     $('.personne_morale_fields select option[value=""]').each(
851     function(){
852     $(this).attr('selected', 'selected');
853     }
854     );
855    
856     $('.personne_morale_fields').hide();
857     $('.particulier_fields').show();
858     }
859 vpihour 1060 /*Si c'est une personne morale*/
860 vpihour 805 else {
861    
862     $('.particulier_fields input').each(
863     function(){
864     $(this).val('');
865     }
866     );
867     $('.particulier_fields select option[value=""]').each(
868     function(){
869     $(this).attr('selected', 'selected');
870     }
871     );
872    
873     $('.particulier_fields').hide();
874     $('.personne_morale_fields').show();
875     }
876     }
877    
878     /*
879 vpihour 1060 Fonction de test des champs
880 vpihour 676 * */
881 vpihour 669 function isAlpha(str) {
882 vpihour 664 return /^[a-zA-Z\/]+$/.test(str);
883     }
884    
885 vpihour 768 function isMail(str){
886     return /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(str);
887     }
888    
889     function isPhoneNumber(str){
890     return /[0-9-()+]{3,20}/.test(str);
891     }
892    
893 vpihour 793 function testSeparator(obj){
894    
895     if ( obj.value != 'A' &&
896     obj.value != '/' ) {
897    
898     alert('Saisissez uniquement un A ou un / comme séparateur');
899     obj.value = '';
900     }
901     }
902 vpihour 1060 /* Fin fonction test */
903 vpihour 793
904 vpihour 664 /*
905 vpihour 1060 * Ajoute les ations spécifiques pour le formulaire personnalisé d'ajout de
906     * référence cadastrale
907     */
908 vpihour 664 function actionFormReferenceCadastrale(){
909 vpihour 1098
910 vpihour 664 $('form').submit(
911     function(){
912    
913 vpihour 812 getDataFieldReferenceCadastrale();
914 vpihour 664 }
915     );
916 nhaye 1094 if( $("form[name=f1] .form-is-valid").size() == 0) {
917 vpihour 1098
918 nhaye 1094 $('#moreFieldReferenceCadastrale' +
919     ($('.moreFieldReferenceCadastrale').length - 1 )).
920     on("click", function() {
921 vpihour 1098
922 nhaye 1094 $(this).before(newInputReferenceCadastrale());
923     });
924     }
925 vpihour 762
926 vpihour 664 }
927    
928 vpihour 670 /*
929 vpihour 812 * Récupère les données saisies dans les champs de références cadastrales
930     */
931     function getDataFieldReferenceCadastrale(){
932    
933     var reference_cadastrale = '';
934     var reference_cadastrale_temp = '';
935    
936 vpihour 1060 /*Pour chacun des champs du formulaire de saisie de référence cadastrale*/
937 vpihour 812 $('.reference_cadastrale_custom_field').each(
938     function(){
939    
940 vpihour 1060 /*Si on est à la fin d'une ligne de champs*/
941 vpihour 812 if ( $(this).val() == ';' ){
942    
943     reference_cadastrale_bis = reference_cadastrale_temp ;
944    
945 vpihour 1060 /* Vérifie que les données sont correctement formatées avant de
946     * les ajouter au résultat*/
947 vpihour 812 while( reference_cadastrale_bis != ''){
948     if ( /^([0-9]{1,4}[a-zA-Z]{1,3}[0-9]{1,5}([A\/]{1}[0-9]{1,4})*)*$/.test(reference_cadastrale_bis) ){
949    
950     reference_cadastrale += reference_cadastrale_bis + ";";
951     break;
952     }
953     else{
954    
955     reference_cadastrale_bis = reference_cadastrale_bis.slice( 0, -1);
956     }
957     }
958    
959     reference_cadastrale_temp = '';
960     }
961    
962     else {
963    
964 vpihour 1060 /*Sinon, on récupère la valeur du champ*/
965 vpihour 812 reference_cadastrale_temp += $(this).val();
966     }
967     }
968     );
969 vpihour 1098
970 vpihour 1060 /*Met la valeur du résultat dans le champs généré par le framework*/
971 vpihour 812 $('#terrain_references_cadastrales').val(reference_cadastrale);
972     }
973    
974     /*
975 vpihour 1060 Action pour l'ajout de nouvelle ligne dans le formulaire d'ajout
976     de référence cadastrale
977 vpihour 670 * */
978 vpihour 669 function actionLineFormReferenceCadastrale(){
979 nhaye 1094 if( $("form[name=f1] .form-is-valid").size() == 0) {
980    
981     $('#morelineReferenceCadastrale').click(
982     function(){
983    
984     /*Ajout des trois champs de base*/
985     $('.reference_cadastrale_custom_fields').
986     append( "<br/>" + fieldReferenceCadastraleBase());
987 vpihour 1098
988 nhaye 1094 /*Ajout du bind pour l'ajout de nouveaux champs*/
989     $('#moreFieldReferenceCadastrale'+
990     ($('.moreFieldReferenceCadastrale').length - 1 )).
991     on("click", function() {
992     $(this).before(newInputReferenceCadastrale());
993     });
994     }
995     );
996     }
997 vpihour 669 }
998    
999 vpihour 664 /*
1000 vpihour 793 Met à jour le select demande_type dès qu'un
1001     dossier_autorisation_type_detaille est choisi
1002 vpihour 664 * */
1003 vpihour 641 function changeDemandeType(){
1004 vpihour 1104
1005 vpihour 793 var idDossierAutorisationTypeDetaille =
1006 nhaye 1053 $("#dossier_autorisation_type_detaille").val();
1007 vpihour 1098
1008 vpihour 812 /* Récupère les données saisies dans les champs pour la référence cadastrale */
1009 nhaye 1039 getDataFieldReferenceCadastrale();
1010 vpihour 812
1011 vpihour 1060 /*Si l'identifiant fourni est correct*/
1012 vpihour 641 if ( $.isNumeric(idDossierAutorisationTypeDetaille) ){
1013    
1014 vpihour 1060 /*Met à jour le select de demande_type avec les données correspondant*/
1015 vpihour 641 changeDataSelect('demande_type','dossier_autorisation_type_detaille');
1016 nhaye 1090 if ( $('#demande_type option').size() < 2 ) {
1017 vpihour 664 showFormsDemande();
1018 nhaye 1090 }
1019 vpihour 1060
1020     /*Affiche le select*/
1021 vpihour 641 $('#demande_type').parent().parent().show();
1022 nhaye 1090 if($('#demande_type').val() == '' ) {
1023     $('.demande_hidden_bloc').each(
1024     function(){
1025     $(this).hide();
1026     }
1027     );
1028     $('input[type=submit]').hide();
1029     }
1030 vpihour 641 }
1031     else {
1032 vpihour 1060
1033     /*Sinon, cache tous les champs du formulaire*/
1034 vpihour 641 hideFields();
1035     }
1036     }
1037    
1038 vpihour 664 /*
1039     Ajoute le code HTML des champs pour les références cadastrales
1040     * */
1041     function addNewFieldReferencesCadastrales(){
1042 vpihour 1098
1043 nhaye 1033 var html = '<div class="field field-type-text references_cadastrales_new_field" >'+
1044 vpihour 664 '<div class="form-libelle">' +
1045     '<label '+
1046     'class="libelle-terrain_references_cadastrales" '+
1047     'for="terrain_references_cadastrales">'+
1048     ' terrain_references_cadastrales '+
1049     '</label>' +
1050     '</div>' +
1051     '<div class="form-content reference_cadastrale_custom_fields">' +
1052 vpihour 669 fieldReferenceCadastraleBase() +
1053 vpihour 664 '</div>' +
1054 nhaye 1033 '</div>';
1055 vpihour 1098
1056     url = document.location + "";
1057     if(getDemandeInfo('nature') == 'NOUV' && $(".form-is-valid").size() == 0 && url.indexOf('action=3') == -1 ) {
1058 vpihour 1060 html += '<div class="field field-type-text" id="morelineReferenceCadastrale">' +
1059     '<div class="form-libelle"></div>' +
1060     '<div class="form-content">' +
1061     '<span class="om-form-button add-16" title="Ajouter">ajouter d\'autres lignes</span>' +
1062     '</div>' +
1063     '</div>';
1064     }
1065 nhaye 1033
1066     $('.references_cadastrales_new_field').remove();
1067     $('.moreFieldReferenceCadastrale').remove();
1068     $('#morelineReferenceCadastrale').remove();
1069     $('.localisation .fieldsetContent').prepend(
1070     html
1071 vpihour 664 );
1072 vpihour 1099
1073 vpihour 664 }
1074    
1075 vpihour 1099 function addButtonCadastraleAdesse(){
1076    
1077     $('#terrain_superficie').parent().parent().after('<div class="field field-type-text" >' +
1078     '<div class="form-libelle"></div>' +
1079     '<div class="form-content buttonCadAdr">' +
1080     '<input id="cad-adr-them" class="ui-button ui-widget ui-state-default ui-corner-all" type="button" value="Cadastrale < = > Adresse"/>' +
1081     '</div>' +
1082     '</div>' );
1083     }
1084    
1085 vpihour 670 /*
1086 vpihour 1060 Séparateur caché ; pour marqué la fin d'une ligne de référence cadastrale
1087 vpihour 670 * */
1088 vpihour 669 function hiddenSeparatorField(){
1089 vpihour 1098
1090 vpihour 669 return '<input ' +
1091 vpihour 1098 'class="reference_cadastrale_custom_field" ' +
1092 vpihour 669 'type="hidden" ' +
1093     'maxlength="2" ' +
1094     'size="2" ' +
1095     'value=";" />';
1096     }
1097    
1098 fmichon 1005 /**
1099 nhaye 1039 * Retourne l'info passée en paramètre (nature de la demande ou type de la demande)
1100 fmichon 1005 **/
1101 nhaye 1039 function getDemandeInfo(info) {
1102 fmichon 1005 var id_demande_type = $('#demande_type').val();
1103 nhaye 1018 var res = "";
1104 fmichon 1005 $.ajax({
1105     type: "GET",
1106 nhaye 1039 url: "../app/getDemandeInfo.php?iddemandetype=" + id_demande_type
1107     + "&info=" + info,
1108 fmichon 1005 cache: false,
1109 nhaye 1018 async: false,
1110 fmichon 1005 success: function(val){
1111 nhaye 1018 res = val;
1112 fmichon 1005 }
1113     });
1114 nhaye 1018 return res;
1115 fmichon 1005 }
1116 vpihour 670 /*
1117 vpihour 1060 Ajout d'une nouvelle ligne de champ de référence cadastrale
1118     Retourne le code HTML
1119 vpihour 670 * */
1120 vpihour 669 function fieldReferenceCadastraleBase(){
1121 vpihour 1098
1122 vpihour 1099 url = document.location + "";
1123    
1124 nhaye 1039 var type = getDemandeInfo('nature');
1125 fmichon 1005 var reference_cadastrale = '<input ' +
1126 vpihour 669 'class="champFormulaire reference_cadastrale_custom_field" ' +
1127     'type="text" ' +
1128     'onchange="VerifNum(this)" ' +
1129 vpihour 762 'maxlength="4" ' +
1130 fmichon 1005 'size="4" ';
1131 vpihour 1060
1132 fmichon 1005 // désactivation des champs de référence cadastrale
1133 vpihour 1099 if(type != 'NOUV' || $(".form-is-valid").size() > 0 || url.indexOf('action=3') != -1 ) {
1134 fmichon 1005 reference_cadastrale += 'disabled="disabled" ';
1135     }
1136 vpihour 1060
1137 fmichon 1005 reference_cadastrale += 'value="" />';
1138    
1139     reference_cadastrale += '<input ' +
1140 vpihour 669 'class="champFormulaire reference_cadastrale_custom_field" ' +
1141     'type="text" ' +
1142 vpihour 762 'maxlength="3" ' +
1143 fmichon 1005 'size="3" ';
1144 vpihour 1060
1145     // désactivation des champs de référence cadastrale
1146 vpihour 1099 if(type != 'NOUV' || $(".form-is-valid").size() > 0 || url.indexOf('action=3') != -1 ) {
1147 fmichon 1005 reference_cadastrale += 'disabled="disabled" ';
1148     }
1149 vpihour 1060
1150 fmichon 1005 reference_cadastrale += 'value="" '+
1151     'onchange="if ( !isAlpha(this.value) ){ alert(\'Vous ne devez saisir que des lettres dans ce champs.\'); this.value = \'\'; }"/>';
1152     reference_cadastrale += '<input ' +
1153 vpihour 669 'class="champFormulaire reference_cadastrale_custom_field" ' +
1154     'type="text" ' +
1155     'onchange="VerifNum(this)" ' +
1156 vpihour 762 'maxlength="5" ' +
1157 fmichon 1005 'size="5" ';
1158 vpihour 1060
1159     // désactivation des champs de référence cadastrale
1160 vpihour 1099 if(type != 'NOUV' || $(".form-is-valid").size() > 0 || url.indexOf('action=3') != -1 ) {
1161 fmichon 1005 reference_cadastrale += 'disabled="disabled" ';
1162     }
1163 vpihour 1060
1164 fmichon 1005 reference_cadastrale += 'value="" />';
1165 nhaye 1094
1166     reference_cadastrale += '<span id="moreFieldReferenceCadastrale' +
1167 fmichon 1005 $('.moreFieldReferenceCadastrale').length +
1168 vpihour 1098 '" class="moreFieldReferenceCadastrale">' + hiddenSeparatorField();
1169 nhaye 1094
1170     // Si form validé pas de bouton
1171 vpihour 1098 url = document.location + "";
1172     if( type == 'NOUV' && $("form[name=f1] .form-is-valid").size() == 0 && url.indexOf('action=3') == -1 ) {
1173 nhaye 1094
1174 vpihour 1098 reference_cadastrale +=
1175 nhaye 1094 '<span class="om-form-button add-16" title="Ajouter">ajouter d\'autres champs</span>';
1176 fmichon 1005 }
1177 nhaye 1094
1178     reference_cadastrale += '</span>';
1179 fmichon 1005
1180     return reference_cadastrale;
1181 vpihour 669 }
1182    
1183 nhaye 802 /**
1184 vpihour 1060 * Cache les champs inutules [formulaire de demande]
1185 nhaye 802 **/
1186 vpihour 641 function hideFields(){
1187 nhaye 802 $('.demande_hidden_bloc').each(
1188 vpihour 641 function(){
1189 nhaye 802 $(this).hide();
1190 vpihour 641 }
1191     );
1192    
1193     $('.field-type-text').hide();
1194     $('input[type=submit]').hide();
1195     $('#demande_type').parent().parent().hide();
1196     }
1197    
1198 vpihour 664 /*
1199 vpihour 1060 Affiche les champs dont on a besoin dans le formulaire de demande
1200 vpihour 664 * */
1201 vpihour 641 function showFormsDemande(){
1202 vpihour 1098
1203    
1204 nhaye 1090 if($('#demande_type').val() != "") {
1205 nhaye 1039
1206 nhaye 1090 $('.demande_hidden_bloc').each(
1207     function(){
1208     $(this).show();
1209     }
1210     );
1211     formatFieldReferenceCadastrale();
1212     $('.field-type-text').show();
1213     $('input[type=submit]').show();
1214     $('.terrain_references_cadastrales_custom').hide();
1215    
1216     $('#terrain_references_cadastrales').parent().parent().hide();
1217 nhaye 1062
1218 nhaye 1090 // Si le type de la demande est un transfert on efface la liste des demandeurs
1219     if(getDemandeInfo('type') == 'DT') {
1220     if($('input[name=petitionnaire_principal]').size() != -1) {
1221     removeDemandeur("petitionnaire_principal_" + $('input[name=petitionnaire_principal]').val());
1222     }
1223     if($('input[name=delegataire]').size() != -1) {
1224     removeDemandeur("delegataire_" + $('input[name=delegataire]').val());
1225     }
1226 nhaye 1062
1227 nhaye 1090 $('#listePetitionnaires input.demandeur_id').each(function(){
1228     if($(this).size() != -1) {
1229    
1230     removeDemandeur("petitionnaire_" + $(this).val());
1231     }
1232     });
1233 nhaye 1097 } else if ( getDemandeInfo('type') == 'DM' ) {
1234     $.ajax({
1235     type: "GET",
1236     url: "../app/getDemandeurList.php?dossier_autorisation=" + $('#dossier_autorisation').val(),
1237     cache: false,
1238     async: false,
1239     success: function(html){
1240     $('#liste_demandeur').replaceWith(html);
1241     }
1242     });
1243 nhaye 1090 }
1244 nhaye 1097 affichageBoutonsDemandeurs();
1245 nhaye 1090 } else {
1246 vpihour 1098
1247     /*Récupère les references cadastrales*/
1248     getDataFieldReferenceCadastrale();
1249    
1250 nhaye 1090 $('.demande_hidden_bloc').each(
1251     function(){
1252     $(this).hide();
1253 nhaye 1039 }
1254 nhaye 1090 );
1255     $('input[type=submit]').hide();
1256    
1257 nhaye 1039 }
1258 vpihour 641 }
1259 vpihour 651
1260 vpihour 664 /*
1261     Action au clique sur le bouton " + ajouter d'autres champs"
1262     * */
1263 vpihour 651 function newInputReferenceCadastrale(){
1264     return '<input ' +
1265     'class="champFormulaire reference_cadastrale_custom_field" ' +
1266     'type="text" ' +
1267     'maxlength="1" ' +
1268     'size="1" ' +
1269 vpihour 741 'value="" ' +
1270     'onchange="testSeparator(this);"/>' +
1271 vpihour 651 '<input ' +
1272     'class="champFormulaire reference_cadastrale_custom_field" ' +
1273     'type="text" ' +
1274     'onchange="VerifNum(this)" ' +
1275     'maxlength="4" ' +
1276     'size="4" ' +
1277     'value="" />';
1278     }
1279 fmichon 660
1280 vpihour 741
1281    
1282 fmichon 784 /**
1283     * Desactivation des fonctions widget du tableau de bord inutiles sur le nouveau
1284     * tableau de bord
1285     */
1286 fmichon 660 function widget_bind_move_actions() {}
1287     function widget_bind_add_action() {}
1288     function widget_bind_edit_actions(widget_selector) {}
1289    
1290 nhaye 848 // Cette fonction permet d'associer a un arbre html les fonctions jquery
1291     // necessaires. Elle permet notamment lors du chargement d'une page en ajax
1292     // d'associer le comportement du bouton, la gestion du calendrier et la gestion
1293     // du fieldset.
1294     function om_initialize_content() {
1295     // Gestion du skin des boutons, liens
1296     link_bind_button();
1297     // Gestion du calendrier avec le widget datepicker de jqueryui
1298     inputdate_bind_datepicker();
1299     // Gestion des fieldset avec le plugin collaspsible de jquery
1300     fieldset_bind_collapsible();
1301    
1302     changeDemandeurType('qualite');
1303     addSearchIcon();
1304     addDivDialog('.bloc_demandeur');
1305 fmichon 1005
1306 vpihour 881 }
1307    
1308     /*
1309     * Marque comme lu une consultation
1310     */
1311 vpihour 900 function markedAsRead(id, objet, objetc){
1312 vpihour 881
1313 vpihour 900 /*Vérifie que l'identifiant passé en paramètre est bien un chiffre
1314     * et que le type d'objet est défini
1315     * */
1316     if ( $.isNumeric(id) && objet != '' ){
1317 vpihour 881
1318 vpihour 904 donnees = "?ido=" + id + '&obj=' + objet + '&objk=' + objetc;
1319 vpihour 881 $.ajax({
1320     type: "GET",
1321     url: "../app/marquer_comme_lu.php" + donnees ,
1322     cache: false,
1323     success: function(html){
1324    
1325 vpihour 900 $('#sousform-' + objet + ' .message').remove();
1326 vpihour 892
1327     /*Change la valeur affiché et affiche un message valide*/
1328 vpihour 881 if ( $.parseJSON(html) == "Mise a jour effectue avec succes"){
1329    
1330 fmichon 938 // On modife le champ lu
1331 vpihour 881 $('#lu').html('Oui');
1332 fmichon 938 // On supprime l'action
1333     $('span.lu-16').parent().parent().remove();
1334     // On affiche le message
1335 vpihour 900 $('#sousform-' + objet + ' .subtitle').after(
1336 vpihour 892 '<div ' +
1337     'class="message ui-widget ui-corner-all ui-state-highlight ui-state-valid">' +
1338     '<p>' +
1339     '<span class="ui-icon ui-icon-info"></span>' +
1340     '<span class="text">' +
1341     $.parseJSON(html) +
1342     '</span>' +
1343     '</p>' +
1344     '</div>'
1345     );
1346 vpihour 881 }
1347 vpihour 892 /*Affichage d'une erreur*/
1348     else{
1349 vpihour 900 $('#sousform-' + objet + ' .subtitle').after(
1350 vpihour 892 '<div ' +
1351     'class="message ui-widget ui-corner-all ui-state-highlight ui-state-error">' +
1352     '<p>' +
1353     '<span class="ui-icon ui-icon-info"></span>' +
1354     '<span class="text">' +
1355     $.parseJSON(html) +
1356     '</span>' +
1357     '</p>' +
1358     '</div>'
1359     );
1360     }
1361 vpihour 881 }
1362     });
1363     }
1364     }

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26