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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1218 - (hide annotations)
Fri Jan 11 15:56:33 2013 UTC (12 years ago) by vpihour
File MIME type: application/javascript
File size: 47135 byte(s)
Gestion du rapport d'instruction

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

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26