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

Diff of /trunk/app/js/script.js

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 904 by vpihour, Thu Nov 29 13:19:48 2012 UTC revision 1471 by fmichon, Sun Mar 17 20:58:11 2013 UTC
# Line 3  Line 3 
3  // Document is ready  // Document is ready
4  $(function(){  $(function(){
5    
6        /**
7         * Ajout du focus sur le champ login au chargement de la page.
8         */
9         $('#login_form #login').focus();
10    
11        /**
12         * Spécifique app/affichage_reglementaire_attestation.php pour donner le
13         * focus sur le champ de recherche au chargement de la page.
14         */
15         $('#affichage_reglementaire_attestation_form #dossier').focus();
16    
17     /**     /**
18      * Spécifique app/avis_code_barre.php pour donner le focus sur le champ de      * Spécifique app/avis_code_barre.php pour donner le focus sur le champ de
19      * recherche au chargement de la page.      * recherche au chargement de la page.
20      */      */
21     $('#avis_code_barre_form #consultation').focus();     $('#avis_code_barre_form #consultation').focus();
22    
23        /**
24        * Spécifique app/maj_dates_suivi.php pour donner le focus sur le champ
25        * instruction au chargement de la page si la date n'est pas vide.
26        */
27        if($('#maj_dates_form #date').val()!="") {
28            $('#maj_dates_form #instruction').focus();
29        }
30   });   });
31    
32    
# Line 58  function VerifNumdec(champ) { Line 77  function VerifNumdec(champ) {
77            
78  }  }
79  // Ce widget permet de charger les données d'un select en ajax  // Ce widget permet de charger les données d'un select en ajax
80  function changeDataSelect(tn, ds, joker){  function changeDataSelect(tableName, linkedField, joker){
81                var id_dossierAutorisation = $("#dossier_autorisation").val();
82      var id = $("#"+ds+" option:selected").val();      var id = $("#"+linkedField).val();
83      link = "../app/listData.php?idx=" + id + "&tn=" + tn + "&ds=" + ds;      link = "../app/listData.php?idx=" + id + "&tableName=" + tableName +
84                "&linkedField=" + linkedField ;
85        if(id_dossierAutorisation != "") {
86            link += "&nature=EXIST";
87        }
88        var val_tableName = $('#'+tableName).val();
89      $.ajax({      $.ajax({
90          type: "GET",          type: "GET",
91          url: link,          url: link,
# Line 69  function changeDataSelect(tn, ds, joker) Line 93  function changeDataSelect(tn, ds, joker)
93          dataType: "json",          dataType: "json",
94          success: function(html){          success: function(html){
95                            
96              $('#'+tn).empty();              $('#'+tableName).empty();
97                            var selected = "";
98                if(val_tableName == "") {
99                    selected=' selected="selected"';
100                }
101              if ( joker == true )              if ( joker == true )
102                  $('#'+tn).append(                  $('#'+tableName).append(
103                      '<option value="" selected="selected">*</option>'                      '<option value=""'+selected+'>*</option>'
104                  );                  );
105              else              else {
106                  $('#'+tn).append(                  $('#'+tableName).append(
107                      '<option value="" selected="selected">Choisir ' + tn + '</option>'                      '<option value=""'+selected+'>Choisir ' + tableName + '</option>'
108                  );                  );
109                            }
110              if ( html !== '' ){              if ( html !== '' ){
111                                    
112                  html = html.split(';');                  html = html.split(';');
113                  for ( i = 0 ; i < html.length - 1 ; i++ ){                  for ( i = 0 ; i < html.length - 1 ; i++ ){
114                                            
115                      html_temp = html[i].split('_');                      html_temp = html[i].split('_');
116                      $('#'+tn).append(                      selected = "";
117                          '<option value="'+html_temp[0]+'" >'+html_temp[1]+'</option>'                      if(val_tableName == html_temp[0]) {
118                            selected=' selected="selected"';
119                        }
120                        $('#'+tableName).append(
121                            '<option value="'+html_temp[0]+'"'+selected+' >'+html_temp[1]+'</option>'
122                      );                      );
123                        
124                  }                  }
125              }              }
126          },          },
127          async: false          async: false
128      });      });
129  }  }
130    
131    // Ce widget permet de charger les données de la demande type en ajax
132    function changeDemandeTypeDataSelect(){
133        // Récupération de l'id du dossier_autorisation_type_detaille
134        var id_datd = $("#dossier_autorisation_type_detaille").val();
135    
136        // Récupération de la liste des paramètres de l'url
137        var params = extractUrlParams();
138        if ( typeof params['idx_dossier'] === "undefined" ){
139            params['idx_dossier'] = '';
140        }
141    
142        link = "../app/listDemandeType.php?idx=" + params['idx_dossier'] + "&datd="+ id_datd;
143    
144        var val_tableName = $('#demande_type').val();
145        $.ajax({
146            type: "GET",
147            url: link,
148            cache: false,
149            dataType: "json",
150            success: function(res){
151                $('#demande_type').empty();
152                var selected = "";
153    
154                for ( j=0 ; j < res[0].length ; j++ ){
155    
156                    $('#demande_type').append(
157                        '<option value="'+res[0][j]+'"'+selected+' >'+res[1][j]+'</option>'
158                    );
159                    
160                }
161                $('#demande_type').val(val_tableName);
162            },
163            async: false
164        });
165    }
166    
167    /**
168     * Fonction de récupération des paramètres GET de la page
169     * @return Array Tableau associatif contenant les paramètres GET
170     */
171    function extractUrlParams(){    
172        var t = location.search.substring(1).split('&');
173        var f = [];
174        for (var i=0; i<t.length; i++){
175            var x = t[ i ].split('=');
176            f[x[0]]=x[1];
177        }
178        return f;
179    }
180    
181  // vuploadMulti - XXX  // vuploadMulti - XXX
182  function vuploadMulti(champ) {  function vuploadMulti(champ) {
183      //      //
# Line 133  function tmpUpload(champ) { Line 216  function tmpUpload(champ) {
216  function dossierads_d(debut)  function dossierads_d(debut)
217  {  {
218  //if(fenetreouverte==true)  //if(fenetreouverte==true)
219  window.location="../pdf/pdfetat.php?obj=dossier_ads_d&nature="  window.location="../pdf/pdfetat.php?obj=registre_dossiers_decisions_par_type_par_date&nature="
220  +document.f1.nature.value+"&idx=demo&datedebut="  +document.f1.nature.value+"&idx=demo&datedebut="
221  +document.f1.datedebut.value+"&datefin="+document.f1.datefin.value;  +document.f1.datedebut.value+"&datefin="+document.f1.datefin.value;
222  }  }
223  //  
224  function dossier_m(){  // Cette fonction permet de gérer la validation du formulaire du script :
225  window.location="../pdf/pdfetat.php?obj=dossier_m&idx=demo";    // app/affichage_reglementaire_registre.php
226  /*Requete AJAX vers le fichier edition_m.php pour mettre à jour les dossiers*/  function affichage_reglementaire_registre(button) {
227  $.ajax({      // Popup de confirmation du traitement par l'utilisateur
228      type: "GET",      if (trt_confirm() == false) {
229      url: "../app/edition_m.php?update",          return false;
230      cache: false,      }
231      success: function(html){      // Suppression du bouton pour que l'utilisateur ne puisse pas cliquer une
232          if ( html.length > 2 ){      // deuxième fois
233                    $(button).remove();
234              alert(html);      // Affichage du spinner
235          }      $("#msg").html(msg_loading);
236      },      // Requête AJAX vers le fichier app/affichage_reglementaire_registre.php
237      async: false      // pour mettre à jour les dossiers
238  });      // XXX layout
239        $.ajax({
240            type: "GET",
241            url: "../app/affichage_reglementaire_registre.php?update",
242            cache: false,
243            success: function(html){
244                // Ajout d'un bloc de message vide
245                $('#msg').html(
246                    '<div class="message ui-widget ui-corner-all ui-state-highlight">'+
247                        '<p>'+
248                            '<span class="ui-icon ui-icon-info"></span>'+
249                            '<span class="text">'+
250                            '</span>'+
251                        '</p>'+
252                    '</div>'
253                );
254                // Si le retour de l'appel Ajax n'est pas vide, alors il y a eu une
255                // lors du traitement
256                if ( html.length > 2 ) {
257                    $("#msg .message").addClass("ui-state-error");
258                    $("#msg .text").html(html);
259                } else {
260                    // Sinon message de succès et appel de l'édition
261                    $("#msg .message").addClass("ui-state-valid");
262                    $("#msg .text").html("Traitement terminé. Le registre a été téléchargé.");
263                    window.open("../pdf/pdfetat.php?obj=registre_dossiers_affichage_reglementaire&idx=demo");
264                }
265            },
266            async: false
267        });
268        //
269        return false;
270    }
271    
272    //Fonction de redirection pour le widget de recherche de dossier
273    function widget_recherche_dossier(data,nbRes){
274        /*$('#msg').show();
275        $('#msg').html(msg_loading);*/
276      
277        // S'il n'y a qu'un seul résultat, afficher un résumé
278        if ( nbRes == 1 ){
279        
280            window.location = "../scr/form.php?obj=dossier_instruction&action=3&" +
281                "idx=" + data + "&premier=0&advs_id=&recherche=&tricol=&" +
282                "selectioncol=&valide=&retour=tab";  
283        }
284        // S'il y a une liste de dossier, redirection vers le tableau
285        else {
286            
287            window.location = "../scr/tab.php?obj=recherche_direct&selectioncol=0&recherche=" + data;
288        }
289  }  }
290  //  //
291  function dossierdepot()  function dossierdepot()
292  {  {
293  //if(fenetreouverte==true)  //if(fenetreouverte==true)
294      window.location="../pdf/pdfetat.php?obj=dossier_depot&nature="+      window.location="../pdf/pdfetat.php?obj=registre_dossiers_depots_par_type_par_date&nature="+
295      document.f1.nature.value+"&idx=demo&datedebut="+      document.f1.nature.value+"&idx=demo&datedebut="+
296      document.f1.datedebut.value+"&datefin="+document.f1.datefin.value;      document.f1.datedebut.value+"&datefin="+document.f1.datefin.value;
297  }  }
# Line 166  function dossierdepot() Line 299  function dossierdepot()
299  function dossierads()  function dossierads()
300  {  {
301  //if(fenetreouverte==true)  //if(fenetreouverte==true)
302      window.location="../pdf/pdfetat.php?obj=dossier_ads&nature="+      window.location="../pdf/pdfetat.php?obj=registre_dossiers_par_type_par_date&nature="+
303      document.f1.nature.value+"&idx=demo&datedebut="+      document.f1.nature.value+"&idx=demo&datedebut="+
304      document.f1.datedebut.value+"&datefin="+document.f1.datefin.value;      document.f1.datedebut.value+"&datefin="+document.f1.datefin.value;
305  }  }
# Line 248  jQuery.download = function(url, data, me Line 381  jQuery.download = function(url, data, me
381   **/   **/
382  function popupIt(objsf, link, width, height, callback, callbackParams) {  function popupIt(objsf, link, width, height, callback, callbackParams) {
383      // Insertion du conteneur du dialog      // Insertion du conteneur du dialog
384      var dialog = $('<div id=\"sousform-'+objsf+'\"></div>').insertAfter('.formControls');      var dialog = $('<div id=\"sousform-'+objsf+'\"></div>').insertAfter('#tabs-1 .formControls');
385      $('<input type=\"text\" name=\"recherchedyn\" id=\"recherchedyn\" value=\"\" class=\"champFormulaire\" style=\"display:none\" />').insertAfter('#sousform-'+objsf);      $('<input type=\"text\" name=\"recherchedyn\" id=\"recherchedyn\" value=\"\" class=\"champFormulaire\" style=\"display:none\" />').insertAfter('#sousform-'+objsf);
386            
387      // execution de la requete passee en parametre      // execution de la requete passee en parametre
# Line 279  function popupIt(objsf, link, width, hei Line 412  function popupIt(objsf, link, width, hei
412              modal: true,              modal: true,
413              width: width,              width: width,
414              height: height,              height: height,
415                position: 'center',
416            });            });
417          },          },
418          async : false          async : false
# Line 337  function returnToTab(objsf) { Line 471  function returnToTab(objsf) {
471   */   */
472    
473   /**   /**
474    * Function permettant de mettre à jour les infos du demandeur    * Fonction permettant de mettre à jour les infos du demandeur
475    **/    **/
476  function getDemandeurId(type) {  function getDemandeurId(type) {
477      var id_demandeur=$('#id_retour').val();      var id_demandeur=$('#id_retour').val();
478      if($.isNumeric(id_demandeur)) {      if($.isNumeric(id_demandeur)) {
         if(type != 'petitionnaire') {  
             $('#add_'+type).hide();  
         }  
           
479          afficherDemandeur(id_demandeur,type);          afficherDemandeur(id_demandeur,type);
480          om_initialize_content();          om_initialize_content();
481      }      }
# Line 360  function afficherDemandeur(id,type) { Line 490  function afficherDemandeur(id,type) {
490          url: '../app/afficher_synthese_demandeur.view.php?iddemandeur='+id+'&type='+type,          url: '../app/afficher_synthese_demandeur.view.php?iddemandeur='+id+'&type='+type,
491          cache: false,          cache: false,
492          success: function(html){          success: function(html){
493              $(html).insertBefore('#add_'+type).fadeIn(500);;              $(html).insertBefore('#add_'+type).fadeIn(500);
494          }  
495            },
496            async:false
497      });      });
498        affichageBoutonsDemandeurs();
499  }  }
500    
501  /**  /**
502   * Function permettant de modifier un demandeur   * Fonction permettant de modifier un demandeur
503   */   */
504  function editDemandeur(id,type,id_css) {  function editDemandeur(obj,id,type,id_css) {
505      popupIt(type,      var url = '../scr/sousform.php?obj='+obj+'&retourformulaire=demande';
506                  '../scr/sousform.php?obj='+type+'&action=1'+      if(getDemandeInfo('type') == 'DM') {
507                  '&retourformulaire=demande&idx='+id, 780, 500,          url += '&action=0&idx_demandeur='+id;
508                  replaceDemandeur, {'type':type,'id': id, 'id_css':id_css});      } else {
509          changeDemandeurType('qualite');          url += '&action=1&idx='+id;
510          addSearchIcon();      }
511          addDivDialog('.bloc_demandeur');      popupIt(obj, url, 860, 'auto',
512                replaceDemandeur, {'type':type,'id': id, 'id_css':id_css});
513        affichageBoutonsDemandeurs();
514  }  }
515    
516  /**  /**
517   * Function permettant de remplacer un contenu déjà existant   * Function permettant de remplacer un contenu déjà existant
518   **/   **/
519  function replaceDemandeur(obj) {  function replaceDemandeur(obj) {
520      $.ajax({      var new_demandeur=$('#id_retour').val();
521          type: "GET",      if($.isNumeric(new_demandeur)) {
522          url: '../app/afficher_synthese_demandeur.view.php?iddemandeur='+obj.id+'&type='+obj.type,          $.ajax({
523          cache: false,              type: "GET",
524          success: function(html){              url: '../app/afficher_synthese_demandeur.view.php?iddemandeur='+new_demandeur+'&type='+obj.type,
525              $(obj.id_css).replaceWith(html);              cache: false,
526          }              success: function(html){
527      });                  $(obj.id_css).replaceWith(html);
528                }
529            });
530        }
531  }  }
532  /**  /**
533   * Function permettant de remplacer un contenu déjà existant   * Function permettant de remplacer un contenu déjà existant
# Line 400  function removeDemandeur(id) { Line 538  function removeDemandeur(id) {
538      if(div_class == "delegataire") {      if(div_class == "delegataire") {
539          $('#add_delegataire').fadeIn(500);          $('#add_delegataire').fadeIn(500);
540      }      }
541      if(div_class == "petitionnaire_principal") {      affichageBoutonsDemandeurs();
542          $('#add_petitionnaire_principal').fadeIn(500);  }
543    
544    /**
545     * Fonction permettant d'afficher et cacher les boutons d'ajout de demandeurs
546     */
547    function affichageBoutonsDemandeurs(){
548    
549        // Si formulaire après validation on cache les boutons d'ajout de demandeurs
550        url = document.location + "" ;
551    
552        if ((url.indexOf("form.php?obj=demande&") != -1
553            || url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1
554            || url.indexOf("form.php?obj=demande_dossier_existant&") != -1)
555            && $("form[name=f1] .form-is-valid").size() > 0 ) {
556    
557            $('#add_petitionnaire_principal').hide();
558            $('#add_delegataire').hide();
559            if($('input[name=delegataire][type=hidden]').size() == 0) {
560                $('#delegataire').hide();
561            }
562            $('#add_petitionnaire').hide();
563    
564        } else {
565    
566            // Affichage du bouton d'ajout du petitionnaire principal
567            if($('input[name=petitionnaire_principal][type=hidden]').size() == 1) {
568                $('#add_petitionnaire_principal').hide();
569            } else {
570                $('#add_petitionnaire_principal').fadeIn(500);
571            }
572    
573            // Affichage du bouton d'ajout du delegataire
574            if($('input[name=petitionnaire_principal][type=hidden]').size() == 1
575               || $('input[name=delegataire][type=hidden]').size() == 1) {
576                $('#delegataire').fadeIn(500);
577                if($('input[name=delegataire][type=hidden]').size() == 0) {
578                    $('#add_delegataire').fadeIn(500);
579                } else {
580                    $('#add_delegataire').hide();
581                }
582            } else {
583                $('#delegataire').hide();
584            }
585    
586            // Affichage du bouton d'ajout de petitionnaires
587            if($('input[name=petitionnaire_principal][type=hidden]').size() == 0) {
588                $('#add_petitionnaire').hide();
589            } else {
590                $('#add_petitionnaire').fadeIn(500);
591            }
592      }      }
593  }  }
594    
# Line 415  $(function() { Line 602  $(function() {
602          addSearchIcon();          addSearchIcon();
603          addDivDialog('.bloc_demandeur');          addDivDialog('.bloc_demandeur');
604      }      }
605      if($('input[name=petitionnaire_principal][type=hidden]').size() == 1) {      affichageBoutonsDemandeurs();
         $('#add_petitionnaire_principal').hide();  
     }  
     if($('input[name=delegataire][type=hidden]').size() == 1) {  
         $('#add_delegataire').hide();  
     }  
606      // Bind de la fonction permettant l'ajout du pétitionnaire principal      // Bind de la fonction permettant l'ajout du pétitionnaire principal
607      $("#formulaire").on("click","#add_petitionnaire_principal",  function() {      $("#formulaire").on("click","#add_petitionnaire_principal",  function() {
608          popupIt('petitionnaire',          popupIt('petitionnaire',
609                  '../scr/sousform.php?obj=petitionnaire&action=0'+                  '../scr/sousform.php?obj=petitionnaire&action=0'+
610                  '&retourformulaire=demande&principal=true', 780, 500,                  '&retourformulaire=demande&principal=true', 860, 'auto',
611                  getDemandeurId, 'petitionnaire_principal');                  getDemandeurId, 'petitionnaire_principal');
612      });      });
613      // Bind de la fonction permettant l'ajout du délégataire      // Bind de la fonction permettant l'ajout du délégataire
614      $("#formulaire").on("click","#add_delegataire", function(event) {      $("#formulaire").on("click","#add_delegataire", function(event) {
615          popupIt('delegataire',          popupIt('delegataire',
616                  '../scr/sousform.php?obj=delegataire&action=0'+                  '../scr/sousform.php?obj=delegataire&action=0'+
617                  '&retourformulaire=demande', 780, 500,                  '&retourformulaire=demande', 860, 'auto',
618                  getDemandeurId, 'delegataire');                  getDemandeurId, 'delegataire');
619      });      });
620      // Bind de la fonction permettant l'ajout des pétitionnaires      // Bind de la fonction permettant l'ajout des pétitionnaires
621      $("#formulaire").on("click","#add_petitionnaire", function(event) {      $("#formulaire").on("click","#add_petitionnaire", function(event) {
622          popupIt('petitionnaire',          popupIt('petitionnaire',
623                  '../scr/sousform.php?obj=petitionnaire&action=0'+                  '../scr/sousform.php?obj=petitionnaire&action=0'+
624                  '&retourformulaire=demande', 780, 500,                  '&retourformulaire=demande', 860, 'auto',
625                  getDemandeurId, 'petitionnaire');                  getDemandeurId, 'petitionnaire');
626      });      });
627    
           
628      url = document.location + "" ;      url = document.location + "" ;
629      if (url.indexOf("form.php?obj=demande&") != -1      if ((
630            url.indexOf("form.php?obj=demande&") != -1 ||
631            url.indexOf("form.php?obj=dossier&") != -1 ||
632            url.indexOf("form.php?obj=dossier_instruction&") != -1
633            )
634            && url.indexOf("&action=3") == -1) {
635    
636            formatFieldReferenceCadastrale();
637        }
638        
639        if (url.indexOf("form.php?obj=demande&") != -1
640            && (url.indexOf("&action=3") == -1
641            && url.indexOf("&action=2") == -1
642            && $(".form-is-valid").size() == 0)) {
643            
644            addButtonCadastraleAdesse();
645            changeDemandeType();
646        }
647        
648        // Ajout de demande
649        if ((url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1
650            || url.indexOf("form.php?obj=demande_dossier_existant&") != -1)
651          && url.indexOf("&action=0") != -1 ){          && url.indexOf("&action=0") != -1 ){
652    
653          /*Cache les champs avant que dossier_autorisation_type_detaille soit choisi*/          /*Cache les champs avant que dossier_autorisation_type_detaille soit choisi*/
654          hideFields();          hideFields();
655      }      }
656          
657     if (url.indexOf("form.php?obj=demande&") != -1      // Ajout de demande sur dossier existant
658          && url.indexOf("&action=1") != -1 ){      if (url.indexOf("form.php?obj=demande_dossier_existant&") != -1
659                    && url.indexOf("&action=0") != -1 ){
660    
661            /*Cache les champs avant que dossier_autorisation_type_detaille soit choisi*/
662            hideFields();
663            changeDemandeType();
664        }
665        
666        // Modification de demande
667        if (
668            (
669                url.indexOf("form.php?obj=demande&") != -1
670                || url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1
671                || url.indexOf("form.php?obj=demande_dossier_existant&") != -1
672            )
673            && url.indexOf("&action") == -1
674        ){
675    
676          formatFieldReferenceCadastrale();          formatFieldReferenceCadastrale();
677     }      }
678        
679        //Gestion de la commission
680        $( "#tabs" ).tabs();
681          
682        // Affichage du tableau des dossier_commission au clique
683        $("#dossier_planifie").click(function() {
684            
685            var params = extractUrlParams();
686            idx = params['idx'];
687    
688            ajaxIt(
689                'dossier_commission',
690                '../scr/soustab.php?obj=dossier_commission&idxformulaire='+
691                idx +
692                '&retourformulaire=commission');
693        });
694        
695        // Affichage du tableau des dossier_commission posssible au clique
696        $('#commission_dossiers_plannifier_retirer').click(
697            function(){
698                
699                var params = extractUrlParams();
700                idx = params['idx'];
701                
702                $('#tabs-2').empty();
703                ajouterTableauDossierCommissionPossible(idx);
704            }
705        );
706        
707        //Suppression du message et des données dans le champ dossier
708        $('#commission_dossiers_plannifier_numero').click(
709            function(){
710                
711                $('#tabs-3 .message').remove();
712                $('#tabs-3 #dossier').val("");
713            }
714        );
715  });  });
716    
717  /*  /*
718   * Action sur les champs pour les références cadastrales   * Action sur les champs pour les références cadastrales
719   */   */
720  function formatFieldReferenceCadastrale(){  function formatFieldReferenceCadastrale(){
721    
722      addNewFieldReferencesCadastrales();      addNewFieldReferencesCadastrales();
723      $('#terrain_references_cadastrales').parent().parent().hide();      $('#terrain_references_cadastrales').parent().parent().hide();
724            
725        url = document.location + "";
726    
727      reference_cadastrale = $('#terrain_references_cadastrales').val();      reference_cadastrale = $('#terrain_references_cadastrales').val();
728      /*Formatage de la reference cadastrale*/      /*Formatage de la reference cadastrale*/
729      if ( reference_cadastrale != '' ){      if ( reference_cadastrale != '' ){
# Line 524  function formatFieldReferenceCadastrale( Line 783  function formatFieldReferenceCadastrale(
783                  }                  }
784                            
785              /* Récupère les séparateurs [ A / ] et les sections */              /* Récupère les séparateurs [ A / ] et les sections */
786              m = 0 ;              m = 0 ; // Nombre de suffixe
787              if ( k < references_cadastrales[l].length ){              if ( k < references_cadastrales[l].length ){
788                                    
789                  for ( j = k ; j < references_cadastrales[l].length ; j++ )                  for ( j = k ; j < references_cadastrales[l].length ; j++ )
# Line 588  function formatFieldReferenceCadastrale( Line 847  function formatFieldReferenceCadastrale(
847   */   */
848  function addSearchIcon(){  function addSearchIcon(){
849    
850      $('.search_particulier_fields, .search_personne_morale_fields').each(function() {      $("#form-content:not(.form-is-valid) .search_particulier_fields,"+
851          "#form-content:not(.form-is-valid) .search_personne_morale_fields").each(function() {
852      /*Ajout de l'icône après le champs dénomination et nom de la personne morale*/      /*Ajout de l'icône après le champs dénomination et nom de la personne morale*/
853    
854              $(this).              $(this).
855              after(              append(
856                  '<span '+                  '<span '+
857                      'class="om-icon om-icon-16 om-icon-fix search-petitionnaire-16" '+                      'class="om-icon om-icon-16 om-icon-fix search-petitionnaire-16" '+
858                      'title="Chercher un petitionnaire"> '+                      'title="Chercher un petitionnaire"> '+
                 '</span>'+  
                 '<span '+  
                     'class="om-icon om-icon-16 om-icon-fix erase-petitionnaire delete-16" '+  
                     'title="Supprimer le contenu"> '+  
859                  '</span>'                  '</span>'
860              );              );
861          }          }
862      );      );
863            
864        /*Ajout des actions sur les boutons*/
865      addActionSearchIcon('#sousform-petitionnaire #form-content');      addActionSearchIcon('#sousform-petitionnaire #form-content');
866      addActionRemove();      addActionRemove();
867    
# Line 632  function addActionSearchIcon(id){ Line 889  function addActionSearchIcon(id){
889              /*Le champ nom du particulier doit contenir au moins trois lettres*/              /*Le champ nom du particulier doit contenir au moins trois lettres*/
890              if ( $('#particulier_nom').val().length < 3 &&              if ( $('#particulier_nom').val().length < 3 &&
891                  $('#particulier_prenom').val().length < 3 &&                  $('#particulier_prenom').val().length < 3 &&
892                  $('#personne_morale_denomination').val().length < 3 &&                  $('#personne_morale_denomination').val().length < 3 ){
                 $('#personne_morale_nom').val().length < 3 ){  
893                                    
894                  alert('Saisissez au moins trois lettres pour la recherche');                  alert('Saisissez au moins trois lettres pour la recherche');
895                  return;                  return;
# Line 642  function addActionSearchIcon(id){ Line 898  function addActionSearchIcon(id){
898              /*Données des champs nom et prénom du particulier*/              /*Données des champs nom et prénom du particulier*/
899              var donnees = "?par_nom=" + $('.search_particulier_fields #particulier_nom').val() +              var donnees = "?par_nom=" + $('.search_particulier_fields #particulier_nom').val() +
900                  "&par_prenom=" + $('.search_particulier_fields #particulier_prenom').val() +                  "&par_prenom=" + $('.search_particulier_fields #particulier_prenom').val() +
901                  "&mor_denomination="+$('#personne_morale_denomination').val() +                  "&mor_denomination="+$('#personne_morale_denomination').val();
                 "&mor_nom="+$('#personne_morale_nom').val();  
902    
903              /* Requête qui va récupérer les données duaddSearchIcon(es) pétitionnaire(s)              /* Requête qui va récupérer les données duaddSearchIcon(es) pétitionnaire(s)
904               * correspondant(s) à la recherche */               * correspondant(s) à la recherche */
# Line 652  function addActionSearchIcon(id){ Line 907  function addActionSearchIcon(id){
907                  url: "../app/findPetitionnaire.php" + donnees ,                  url: "../app/findPetitionnaire.php" + donnees ,
908                  cache: false,                  cache: false,
909                  success: function(obj){                  success: function(obj){
                     console.log($.parseJSON(obj));  
910                      var freq = $.parseJSON(obj);                      var freq = $.parseJSON(obj);
911                      var res='';                      var res='';
912                      /*Si la recherche a donné des résultats*/                      /*Si la recherche a donné des résultats*/
# Line 682  function addActionSearchIcon(id){ Line 936  function addActionSearchIcon(id){
936                          res += 'Aucune correspondance trouvée.';                          res += 'Aucune correspondance trouvée.';
937                      }                      }
938                                            
939                        addDivDialog('#sousform-petitionnaire');
940                      /* Affichage de l'overlay */                      /* Affichage de l'overlay */
941                      $('#dialog').html(res);                      $('#dialog').html(res);
942                                                
# Line 693  function addActionSearchIcon(id){ Line 948  function addActionSearchIcon(id){
948    
949                                  }                                  }
950                                  var id = $('#dialog select option:selected').val();                                  var id = $('#dialog select option:selected').val();
951                                  ajaxIt('petitionnaire',                                  if($.isNumeric(id)) {
952                                  '../scr/sousform.php?obj=petitionnaire&action=1&retourformulaire=demande&idx='+id);                                      ajaxIt('petitionnaire',
953                                        '../scr/sousform.php?obj=petitionnaire&action=1&retourformulaire=demande&idx='+id);
954                                    }
955                                  // Fermeture de l'overlay                                  // Fermeture de l'overlay
956                                  $(this).dialog( "close" );                                  $(this).dialog( "close" ).empty();
957                              }                              }
958                          }                          }
959                      });                      });
# Line 719  function addDivDialog(id){ Line 976  function addDivDialog(id){
976   * */   * */
977  function changeDemandeurType(id){  function changeDemandeurType(id){
978    
979        /*Réinitialise les champs et cache les champs inutiles selon la qualité du demandeur*/
980      /*Si la qualite du demandeur est particulier */      /*Si la qualite du demandeur est particulier */
981      if ( $('#' + id + ' option:selected').val() == 'particulier' ){      if ( $('#' + id ).val() == 'particulier' ){
982                    
983          $('.personne_morale_fields input').each(          $('.personne_morale_fields input').each(
984              function(){              function(){
# Line 736  function changeDemandeurType(id){ Line 994  function changeDemandeurType(id){
994          $('.personne_morale_fields').hide();          $('.personne_morale_fields').hide();
995          $('.particulier_fields').show();          $('.particulier_fields').show();
996      }      }
997        /*Si c'est une personne morale*/
998      else {      else {
999                    
1000         $('.particulier_fields input').each(         $('.particulier_fields input').each(
# Line 755  function changeDemandeurType(id){ Line 1014  function changeDemandeurType(id){
1014  }  }
1015    
1016  /*  /*
1017      Function de test des champs      Fonction de test des champs
1018   * */   * */
1019  function isAlpha(str) {  function isAlpha(str) {
1020      return /^[a-zA-Z\/]+$/.test(str);      return /^[a-zA-Z\/]+$/.test(str);
# Line 778  function testSeparator(obj){ Line 1037  function testSeparator(obj){
1037          obj.value = '';          obj.value = '';
1038      }      }
1039  }  }
1040    /* Fin fonction test */
 /* FIN */  
1041    
1042  /*  /*
1043      Ajoute les ations spécifiques pour le formulaire personnalisé d'ajout de   *  Ajoute les ations spécifiques pour le formulaire personnalisé d'ajout de
1044      référence cadastrale   *  référence cadastrale
1045   * */  */
1046  function actionFormReferenceCadastrale(){  function actionFormReferenceCadastrale(){
1047        
1048      $('form').submit(      $('form').submit(
1049          function(){          function(){
1050                            
1051              getDataFieldReferenceCadastrale();              getDataFieldReferenceCadastrale();
1052          }          }
1053      );      );
1054        if( $("form[name=f1] .form-is-valid").size() == 0) {
1055    
1056      $('#moreFieldReferenceCadastrale' +          $('#moreFieldReferenceCadastrale' +
1057          ($('.moreFieldReferenceCadastrale').length - 1 )).              ($('.moreFieldReferenceCadastrale').length - 1 )).
1058      on("click", function() {          on("click", function() {
1059          $(this).before(newInputReferenceCadastrale());              
1060      });              $(this).before(newInputReferenceCadastrale());
1061            });
1062        }
1063            
1064  }  }
1065    
# Line 809  function getDataFieldReferenceCadastrale Line 1071  function getDataFieldReferenceCadastrale
1071      var reference_cadastrale = '';      var reference_cadastrale = '';
1072      var reference_cadastrale_temp = '';      var reference_cadastrale_temp = '';
1073            
1074        /*Pour chacun des champs du formulaire de saisie de référence cadastrale*/
1075      $('.reference_cadastrale_custom_field').each(      $('.reference_cadastrale_custom_field').each(
1076          function(){          function(){
1077                            
1078                /*Si on est à la fin d'une ligne de champs*/
1079              if ( $(this).val() == ';' ){              if ( $(this).val() == ';' ){
1080                                    
1081                  reference_cadastrale_bis = reference_cadastrale_temp ;                  reference_cadastrale_bis = reference_cadastrale_temp ;
1082                                    
1083                    /* Vérifie que les données sont correctement formatées avant de
1084                     * les ajouter au résultat*/
1085                  while( reference_cadastrale_bis != ''){                  while( reference_cadastrale_bis != ''){
1086                      if ( /^([0-9]{1,4}[a-zA-Z]{1,3}[0-9]{1,5}([A\/]{1}[0-9]{1,4})*)*$/.test(reference_cadastrale_bis) ){                      if ( /^([0-9]{1,4}[a-zA-Z]{1,3}[0-9]{1,5}([A\/]{1}[0-9]{1,4})*)*$/.test(reference_cadastrale_bis) ){
1087                                                    
# Line 828  function getDataFieldReferenceCadastrale Line 1094  function getDataFieldReferenceCadastrale
1094                      }                          }    
1095                  }                  }
1096                                    
                   
1097                  reference_cadastrale_temp = '';                  reference_cadastrale_temp = '';
1098              }              }
1099                            
1100              else {              else {
1101                                    
1102                    /*Sinon, on récupère la valeur du champ*/
1103                  reference_cadastrale_temp += $(this).val();                  reference_cadastrale_temp += $(this).val();
1104              }              }
               
1105          }          }
1106      );      );
1107        
1108        /*Met la valeur du résultat dans le champs généré par le framework*/
1109      $('#terrain_references_cadastrales').val(reference_cadastrale);      $('#terrain_references_cadastrales').val(reference_cadastrale);
1110  }  }
1111    
1112  /*  /*
1113      Action pour l'ajout de nouvelle ligne      Action pour l'ajout de nouvelle ligne dans le formulaire d'ajout
1114        de référence cadastrale
1115   * */   * */
1116  function actionLineFormReferenceCadastrale(){  function actionLineFormReferenceCadastrale(){
1117      $('#morelineReferenceCadastrale').click(      if( $("form[name=f1] .form-is-valid").size() == 0) {
1118          function(){  
1119                        $('#morelineReferenceCadastrale').click(
1120              $('.reference_cadastrale_custom_fields').              function(){
1121              append( "<br/>" + fieldReferenceCadastraleBase());                  
1122                                /*Ajout des trois champs de base*/
1123              $('#moreFieldReferenceCadastrale'+                  $('.reference_cadastrale_custom_fields').
1124                  ($('.moreFieldReferenceCadastrale').length - 1 )).                  append( "<br/>" + fieldReferenceCadastraleBase());
1125              on("click", function() {  
1126                  $(this).before(newInputReferenceCadastrale());                  /*Ajout du bind pour l'ajout de nouveaux champs*/
1127              });                  $('#moreFieldReferenceCadastrale'+
1128                                    ($('.moreFieldReferenceCadastrale').length - 1 )).
1129                                on("click", function() {
1130          }                      $(this).before(newInputReferenceCadastrale());
1131      );                  });
1132                }
1133            );
1134        }
1135  }  }
1136    
1137  /*  /*
# Line 869  function actionLineFormReferenceCadastra Line 1139  function actionLineFormReferenceCadastra
1139      dossier_autorisation_type_detaille est choisi      dossier_autorisation_type_detaille est choisi
1140   * */   * */
1141  function changeDemandeType(){  function changeDemandeType(){
1142        
1143      var idDossierAutorisationTypeDetaille =      var idDossierAutorisationTypeDetaille =
1144          $("#dossier_autorisation_type_detaille option:selected").val();          $("#dossier_autorisation_type_detaille").val();
1145                
1146      /* Récupère les données saisies dans les champs pour la référence cadastrale */      /* Récupère les données saisies dans les champs pour la référence cadastrale */
1147      getDataFieldReferenceCadastrale();          getDataFieldReferenceCadastrale();
1148            
1149        /*Si l'identifiant fourni est correct*/
1150      if ( $.isNumeric(idDossierAutorisationTypeDetaille) ){      if ( $.isNumeric(idDossierAutorisationTypeDetaille) ){
1151                    
1152          changeDataSelect('demande_type','dossier_autorisation_type_detaille');          /*Met à jour le select de demande_type avec les données correspondant*/
1153          if ( $('#demande_type option').size() < 2 )          changeDemandeTypeDataSelect();
1154            if ( $('#demande_type option').size() < 2 ) {
1155              showFormsDemande();              showFormsDemande();
1156                    }
        $('#demande_type').parent().parent().show();  
1157                
1158         formatFieldReferenceCadastrale();         /*Affiche le select*/
1159           $('#demande_type').parent().parent().show();
1160           if($('#demande_type').val() == '' ) {
1161                $('.demande_hidden_bloc').each(
1162                    function(){
1163                        $(this).hide();
1164                    }
1165                );
1166                $('input[type=submit]').hide();
1167           }
1168      }      }
1169      else {      else {
1170            
1171            /*Sinon, cache tous les champs du formulaire*/
1172          hideFields();          hideFields();
1173      }      }
1174  }  }
# Line 895  function changeDemandeType(){ Line 1177  function changeDemandeType(){
1177      Ajoute le code HTML des champs pour les références cadastrales      Ajoute le code HTML des champs pour les références cadastrales
1178   * */   * */
1179  function addNewFieldReferencesCadastrales(){  function addNewFieldReferencesCadastrales(){
1180      $('.references_cadastrales_new_field').remove();  
1181      $('.moreFieldReferenceCadastrale').remove();      var html = '<div class="field field-type-text references_cadastrales_new_field" >'+
     $('#morelineReferenceCadastrale').remove();  
     $('.buttonCadAdr').remove();  
     $('.localisation .fieldsetContent').prepend(  
        '<div class="field field-type-text references_cadastrales_new_field" >'+  
1182              '<div class="form-libelle">' +              '<div class="form-libelle">' +
1183                  '<label '+                  '<label '+
1184                      'class="libelle-terrain_references_cadastrales" '+                      'class="libelle-terrain_references_cadastrales" '+
# Line 911  function addNewFieldReferencesCadastrale Line 1189  function addNewFieldReferencesCadastrale
1189              '<div class="form-content reference_cadastrale_custom_fields">' +              '<div class="form-content reference_cadastrale_custom_fields">' +
1190                   fieldReferenceCadastraleBase() +                   fieldReferenceCadastraleBase() +
1191              '</div>' +              '</div>' +
1192         '</div>' +          '</div>';
1193         '<div class="field field-type-text" id="morelineReferenceCadastrale">' +      
1194        url = document.location + "";
1195        if((getDemandeInfo('nature') == 'NOUV' || getDemandeInfo('nature') == 'NONE' ) && $(".form-is-valid").size() == 0 && url.indexOf('action=3') == -1 ) {
1196            html += '<div class="field field-type-text" id="morelineReferenceCadastrale">' +
1197              '<div class="form-libelle"></div>' +              '<div class="form-libelle"></div>' +
1198              '<div class="form-content">' +              '<div class="form-content">' +
1199                  ' + ajouter d\'autres lignes' +                  '<span class="om-form-button add-16" title="Ajouter">ajouter d\'autres lignes</span>' +
             '</div>' +  
        '</div>'        
    );  
    $('#terrain_superficie').parent().parent().after('<div class="field field-type-text" >' +  
             '<div class="form-libelle"></div>' +  
             '<div class="form-content buttonCadAdr">' +  
                 '<input id="cad-adr-them" class="ui-button ui-widget ui-state-default ui-corner-all" type="button" value="Cadastrale < = > Adresse"/>' +  
1200              '</div>' +              '</div>' +
1201         '</div>' );         '</div>';
1202        }
1203          
1204        $('.references_cadastrales_new_field').remove();
1205        $('.moreFieldReferenceCadastrale').remove();
1206        $('#morelineReferenceCadastrale').remove();
1207        $('#terrain_references_cadastrales').parent().parent().before(
1208            html
1209        );
1210    }
1211    
1212    function addButtonCadastraleAdesse(){
1213        
1214        $('#terrain_superficie').parent().parent().after('<div class="field field-type-text" >' +
1215            '<div class="form-libelle"></div>' +
1216            '<div class="form-content buttonCadAdr">' +
1217                '<input id="cad-adr-them" class="ui-button ui-widget ui-state-default ui-corner-all" type="button" value="Cadastrale < = > Adresse"/>' +
1218            '</div>' +
1219       '</div>' );
1220  }  }
1221    
1222  /*  /*
1223      Séparateur caché ;      Séparateur caché ; pour marqué la fin d'une ligne de référence cadastrale
1224   * */   * */
1225  function hiddenSeparatorField(){  function hiddenSeparatorField(){
1226    
1227      return '<input ' +      return '<input ' +
1228                  'class="reference_cadastrale_custom_field " ' +                  'class="reference_cadastrale_custom_field" ' +
1229                  'type="hidden" ' +                  'type="hidden" ' +
1230                  'maxlength="2" ' +                  'maxlength="2" ' +
1231                  'size="2" ' +                  'size="2" ' +
1232                  'value=";" />';                  'value=";" />';
1233  }  }
1234    
1235    /**
1236     * Retourne l'info passée en paramètre (nature de la demande ou type de la demande)
1237     **/
1238    function getDemandeInfo(info) {
1239        var id_demande_type = $('#demande_type').val();
1240        var res = "";
1241        if ( typeof id_demande_type !== "undefined" ){
1242            $.ajax({
1243                type: "GET",
1244                url: "../app/getDemandeInfo.php?iddemandetype=" + id_demande_type
1245                        + "&info=" + info,
1246                cache: false,
1247                async: false,
1248                success: function(val){
1249                    res = val;
1250                }
1251            });
1252        }
1253        else {
1254            
1255            res = "NONE"
1256        }
1257        return res;
1258    }
1259  /*  /*
1260      Ajout d'une nouvelle ligne de champ      Ajout d'une nouvelle ligne de champ de référence cadastrale
1261        Retourne le code HTML
1262   * */   * */
1263  function fieldReferenceCadastraleBase(){  function fieldReferenceCadastraleBase(){
1264      return '<input ' +      
1265        url = document.location + "";
1266        
1267        var type = getDemandeInfo('nature');
1268        var reference_cadastrale = '<input ' +
1269                  'class="champFormulaire reference_cadastrale_custom_field" ' +                  'class="champFormulaire reference_cadastrale_custom_field" ' +
1270                  'type="text" ' +                  'type="text" ' +
1271                  'onchange="VerifNum(this)" ' +                  'onchange="VerifNum(this)" ' +
1272                  'maxlength="4" ' +                  'maxlength="4" ' +
1273                  'size="4" ' +                  'size="4" '+
1274                  'value="" />' +                  'placeholder="Quart." ';
1275              '<input ' +                  
1276        // désactivation des champs de référence cadastrale
1277        if( (type != 'NOUV' &&  type != 'NONE') || $(".form-is-valid").size() > 0 || url.indexOf('action=3') != -1 ) {
1278            reference_cadastrale += 'disabled="disabled" ';
1279        }
1280        
1281        reference_cadastrale += 'value="" />';
1282    
1283        reference_cadastrale += '<input ' +
1284                  'class="champFormulaire reference_cadastrale_custom_field" ' +                  'class="champFormulaire reference_cadastrale_custom_field" ' +
1285                  'type="text" ' +                  'type="text" ' +
1286                  'maxlength="3" ' +                  'maxlength="3" ' +
1287                  'size="3" ' +                  'size="3" '+
1288                  'value="" '+                  'placeholder="Sect." ';
1289                  'onchange="if ( !isAlpha(this.value) ){ alert(\'Vous ne devez saisir que des lettres dans ce champs.\'); this.value = \'\'; }"/>' +      
1290              '<input ' +      // désactivation des champs de référence cadastrale
1291        if((type != 'NOUV'&&  type != 'NONE') || $(".form-is-valid").size() > 0 || url.indexOf('action=3') != -1 ) {
1292            reference_cadastrale += 'disabled="disabled" ';
1293        }
1294        
1295        reference_cadastrale += 'value="" '+
1296                    'onchange="if ( !isAlpha(this.value) ){ alert(\'Vous ne devez saisir que des lettres dans ce champs.\'); this.value = \'\'; }"/>';
1297        reference_cadastrale += '<input ' +
1298                  'class="champFormulaire reference_cadastrale_custom_field" ' +                  'class="champFormulaire reference_cadastrale_custom_field" ' +
1299                  'type="text" ' +                  'type="text" ' +
1300                  'onchange="VerifNum(this)" ' +                  'onchange="VerifNum(this)" ' +
1301                  'maxlength="5" ' +                  'maxlength="5" ' +
1302                  'size="5" ' +                  'size="5" '+
1303                  'value="" />' +                  'placeholder="Parc." ';
1304              '<span id="moreFieldReferenceCadastrale' + $('.moreFieldReferenceCadastrale').length + '" class="moreFieldReferenceCadastrale">' +      
1305                  hiddenSeparatorField() +      // désactivation des champs de référence cadastrale
1306                  ' + ajouter d\'autres champs' +      if((type != 'NOUV'&&  type != 'NONE') || $(".form-is-valid").size() > 0 || url.indexOf('action=3') != -1 ) {
1307              '</span>';          reference_cadastrale += 'disabled="disabled" ';
1308        }
1309        
1310        reference_cadastrale += 'value="" />';
1311    
1312        reference_cadastrale += '<span id="moreFieldReferenceCadastrale' +
1313            $('.moreFieldReferenceCadastrale').length +
1314            '" class="moreFieldReferenceCadastrale">' + hiddenSeparatorField();
1315    
1316        // Si form validé pas de bouton
1317        url = document.location + "";
1318        if( (type == 'NOUV' ||  type == 'NONE') && $("form[name=f1] .form-is-valid").size() == 0 && url.indexOf('action=3') == -1 ) {
1319    
1320            reference_cadastrale +=
1321                '<span class="om-form-button add-16" title="Ajouter">ajouter d\'autres champs</span>';
1322        }
1323    
1324        reference_cadastrale += '</span>';
1325        
1326        return reference_cadastrale;
1327  }  }
1328    
1329  /**  /**
1330   * Cache les champs inutules   * Cache les champs inutules [formulaire de demande]
1331   **/   **/
1332  function hideFields(){  function hideFields(){
1333      $('.demande_hidden_bloc').each(      $('.demande_hidden_bloc').each(
# Line 986  function hideFields(){ Line 1342  function hideFields(){
1342  }  }
1343    
1344  /*  /*
1345      Affiche les champs dont on a besoin      Affiche les champs dont on a besoin dans le formulaire de demande
1346   * */   * */
1347  function showFormsDemande(){  function showFormsDemande(){
     $('.demande_hidden_bloc').each(  
         function(){  
             $(this).show();  
         }  
     );  
1348            
     $('.field-type-text').show();  
     $('input[type=submit]').show();  
     $('.terrain_references_cadastrales_custom').hide();  
1349            
1350      $('#terrain_references_cadastrales').parent().parent().hide();      if($('#demande_type').val() != "") {
1351    
1352            $('.demande_hidden_bloc').each(
1353                function(){
1354                    $(this).show();
1355                }
1356            );
1357            formatFieldReferenceCadastrale(1);
1358            $('.field-type-text').show();
1359            $('input[type=submit]').show();
1360            $('.terrain_references_cadastrales_custom').hide();
1361            
1362            $('#terrain_references_cadastrales').parent().parent().hide();
1363    
1364            // Si le type de la demande est un transfert on efface la liste des demandeurs
1365            if(getDemandeInfo('type') == 'DT') {
1366                if($('input[name=petitionnaire_principal]').size() != -1) {
1367                    removeDemandeur("petitionnaire_principal_" + $('input[name=petitionnaire_principal]').val());
1368                }
1369                if($('input[name=delegataire]').size() != -1) {
1370                    removeDemandeur("delegataire_" + $('input[name=delegataire]').val());
1371                }
1372    
1373                $('#listePetitionnaires input.demandeur_id').each(function(){
1374                    if($(this).size() != -1) {
1375    
1376                        removeDemandeur("petitionnaire_" + $(this).val());
1377                    }
1378                });
1379            } else if ( getDemandeInfo('type') == 'DM' ) {
1380                $.ajax({
1381                    type: "GET",
1382                    url: "../app/getDemandeurList.php?dossier_autorisation=" + $('#dossier_autorisation').val(),
1383                    cache: false,
1384                    async: false,
1385                    success: function(html){
1386                        $('#liste_demandeur').replaceWith(html);
1387                    }
1388                });
1389            }
1390            affichageBoutonsDemandeurs();
1391        } else {
1392            
1393            /*Récupère les references cadastrales*/
1394            getDataFieldReferenceCadastrale();
1395            
1396            $('.demande_hidden_bloc').each(
1397                function(){
1398                    $(this).hide();
1399                }
1400            );
1401            $('input[type=submit]').hide();
1402    
1403        }
1404  }  }
1405    
1406  /*  /*
1407      Action au clique sur le bouton " + ajouter d'autres champs"      Action au clique sur le bouton " + ajouter d'autres champs"
1408   * */   * */
1409  function newInputReferenceCadastrale(){  function newInputReferenceCadastrale(){
1410        
1411        // Champs désactivé si le formulaire a été validé et est valide
1412        var type = getDemandeInfo('nature');
1413        var reference_cadastrale_disabled = '';
1414        if((type != 'NOUV'&&  type != 'NONE') || $(".form-is-valid").size() > 0 || url.indexOf('action=3') != -1 ) {
1415            reference_cadastrale_disabled = 'disabled="disabled" ';
1416        }
1417        
1418      return '<input ' +      return '<input ' +
1419              'class="champFormulaire reference_cadastrale_custom_field" ' +              'class="champFormulaire reference_cadastrale_custom_field" ' +
1420              'type="text" ' +              'type="text" ' +
1421              'maxlength="1" ' +              'maxlength="1" ' +
1422              'size="1" ' +              'size="3" ' +
1423              'value="" ' +              'value="" ' +
1424                'placeholder="Sep." ' +
1425                reference_cadastrale_disabled +
1426              'onchange="testSeparator(this);"/>' +              'onchange="testSeparator(this);"/>' +
1427          '<input ' +          '<input ' +
1428              'class="champFormulaire reference_cadastrale_custom_field" ' +              'class="champFormulaire reference_cadastrale_custom_field" ' +
# Line 1019  function newInputReferenceCadastrale(){ Line 1430  function newInputReferenceCadastrale(){
1430              'onchange="VerifNum(this)" ' +              'onchange="VerifNum(this)" ' +
1431              'maxlength="4" ' +              'maxlength="4" ' +
1432              'size="4" ' +              'size="4" ' +
1433                'placeholder="Parc." ' +
1434                reference_cadastrale_disabled +
1435              'value="" />';              'value="" />';
1436  }  }
1437    
# Line 1043  function om_initialize_content() { Line 1456  function om_initialize_content() {
1456      inputdate_bind_datepicker();      inputdate_bind_datepicker();
1457      // Gestion des fieldset avec le plugin collaspsible de jquery      // Gestion des fieldset avec le plugin collaspsible de jquery
1458      fieldset_bind_collapsible();      fieldset_bind_collapsible();
1459        // Gestion du picker color avec le plugin minicolors
1460        bind_form_field_rvb();
1461        // Gestion du widget aide à la saisie localisation avec le plugin draggable
1462        // de jqueryui
1463        localisation_bind_draggable();
1464        // Gestion de la redimension automatique des textarea
1465        textarea_autoresize();
1466        
1467    
1468      changeDemandeurType('qualite');      changeDemandeurType('qualite');
1469      addSearchIcon();      addSearchIcon();
1470      addDivDialog('.bloc_demandeur');      addDivDialog('.bloc_demandeur');
1471        
1472    }
1473    
1474    // Retourne la valeur d'une variable GET de l'URL
1475    function getQuerystring(key, default_)
1476    {
1477      if (default_==null) default_="";
1478      key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
1479      var regex = new RegExp("[\\?&]"+key+"=([^&#]*)");
1480      var qs = regex.exec(window.location.href);
1481      if(qs == null)
1482        return default_;
1483      else
1484        return qs[1];
1485    }
1486    
1487    // Récupère l'id de l'enregistrement lié au lot passé en parametre puis appel popupit
1488    function overlayCerfa(idLot) {
1489        $.get("../app/displayLotCerfa.php?lot="+idLot, function(data) {
1490            if(data != '') {
1491                    popupIt('donnees_techniques',
1492                            '../scr/sousform.php?obj=donnees_techniques&idx='+data+
1493                                '&retourformulaire=lot&maj=1&idxformulaire='+idLot,
1494                                950, 700);
1495                    
1496                } else {
1497                    // Si pas d'id retourner on créer un nouvel enregistrement de donnéees techniques
1498                    popupIt('donnees_techniques',
1499                            '../scr/sousform.php?obj=donnees_techniques&retourformulaire=lot&maj=0&idxformulaire='+idLot,
1500                                950, 700);
1501                }
1502    
1503            });
1504  }  }
1505    
1506  /*  /*
1507   * Marque comme lu une consultation   * Marque comme lu une consultation
1508   */   */
1509  function markedAsRead(id, objet, objetc){  function portletUpdateData(id, objet, objetc, file, field, message){
1510            
1511      /*Vérifie que l'identifiant passé en paramètre est bien un chiffre      /*Vérifie que l'identifiant passé en paramètre est bien un chiffre
1512       * et que le type d'objet est défini       * et que le type d'objet est défini
1513       * */       * */
1514      if ( $.isNumeric(id) && objet != '' ){      if ( $.isNumeric(id) && objet != '' ){
1515                    
1516          donnees = "?ido=" + id + '&obj=' + objet + '&objk=' + objetc;          donnees = "?ido=" + id + '&obj=' + objet + '&objk=' + objetc + '&idxDossier=' + getQuerystring('idx');
1517          $.ajax({          $.ajax({
1518              type: "GET",              type: "GET",
1519              url: "../app/marquer_comme_lu.php" + donnees ,              url: "../app/"+file+".php" + donnees ,
1520              cache: false,              cache: false,
1521              success: function(html){              success: function(html){
1522                                    
1523                  $('#sousform-' + objet + ' .message').remove();                  $('#sousform-' + objet + ' .message').remove();
                   
1524                  /*Change la valeur affiché et affiche un message valide*/                  /*Change la valeur affiché et affiche un message valide*/
1525                  if ( $.parseJSON(html) == "Mise a jour effectue avec succes"){                  if ( $.parseJSON(html) == "Mise a jour effectue avec succes" ||
1526                    $.parseJSON(html).indexOf("Transfert effectue avec succes") != -1 ){
1527                        
1528                        // On modife le champ field
1529                        if ( field != '' && message != '' ){
1530                            $('#'+field).html(message);
1531                            html = $.parseJSON(html);
1532                        }
1533                        else {
1534                            html = $.parseJSON(html).split(';');
1535                            
1536                            $('#'+field).html(html[0]);
1537                            
1538                            html = html[1];
1539                        }
1540                                            
1541                      $('#lu').html('Oui');                      // On supprime l'action
1542                        $('span.'+field+'-16').parent().parent().remove();
1543                        // On affiche le message
1544                      $('#sousform-' + objet + ' .subtitle').after(                      $('#sousform-' + objet + ' .subtitle').after(
1545                          '<div ' +                          '<div ' +
1546                              'class="message ui-widget ui-corner-all ui-state-highlight ui-state-valid">' +                              'class="message ui-widget ui-corner-all ui-state-highlight ui-state-valid">' +
1547                              '<p>' +                              '<p>' +
1548                                  '<span class="ui-icon ui-icon-info"></span>' +                                  '<span class="ui-icon ui-icon-info"></span>' +
1549                                  '<span class="text">' +                                  '<span class="text">' +
1550                                      $.parseJSON(html) +                                      html +
1551                                  '</span>' +                                  '</span>' +
1552                              '</p>' +                              '</p>' +
1553                          '</div>'                                              '</div>'                    
# Line 1102  function markedAsRead(id, objet, objetc) Line 1571  function markedAsRead(id, objet, objetc)
1571          });          });
1572      }      }
1573  }  }
1574    
1575    // Affiche le sous formulaire onglet
1576    function redirectPortletAction(id, onglet, nom_tabs){
1577    
1578        var nom_tabs =  ( typeof nom_tabs === "undefined" ) ? ".ui-tabs" : nom_tabs;
1579        var $tabs = $(nom_tabs).tabs();
1580    
1581        lien_onglet = $('#' + onglet).attr('href');
1582        lien_onglet = lien_onglet.substring( lien_onglet.length - 1, lien_onglet.length);
1583    
1584        $tabs.tabs('select', lien_onglet);
1585    }
1586    
1587    //Rajoute un dossier pour la commission id
1588    function addDossierCommission(id, container){
1589        
1590        link = "../app/ajouter_dossier_commission.php?idx=" + id + "&idxDossier=" + $(container+" #dossier").val();
1591    
1592        $.ajax({
1593            type: "GET",
1594            url: link,
1595            cache: false,
1596            dataType: "json",
1597            success: function(i, obj){
1598                
1599                $(container + " .message").remove();
1600                $(container).prepend(
1601                    '<div class="message ui-widget ui-corner-all ui-state-highlight">'+
1602                        '<p>'+
1603                            '<span class="ui-icon ui-icon-info"></span>'+
1604                            '<span class="text">'+
1605                            '</span>'+
1606                        '</p>'+
1607                    '</div>'
1608                );
1609                    
1610                // Nouveau dossier ajouté
1611                if ( i.return == "1" ){
1612                    
1613                    $(container + ' .message').addClass("ui-state-ok");
1614                    $(container + ' .message .text').html("Dossier ajouté avec succès.");
1615                }
1616                //Dossier existe mais non ajouté
1617                else if( i.return == "0" ){
1618                    
1619                    $(container + ' .message').addClass("ui-state-error");
1620                    $(container + ' .message .text').html("Une erreur s'est produite lors de l'ajout de ce dossier. " +
1621                        "Veuillez contacter votre administrateur");
1622                }
1623                //Le dossier n'existe pas
1624                else if( i.return == "-1" ){
1625                    
1626                    $(container + ' .message').addClass("ui-state-error");
1627                    $(container + ' .message .text').html("Ce dossier n'existe pas.");
1628                }
1629                //Le dossier est déjà à l'ordre du jour
1630                else if( i.return == "2" ){
1631                    
1632                    $(container + ' .message').addClass("ui-state-error");
1633                    $(container + ' .message .text').html("Ce dossier est deja a l'ordre du jour.");
1634                }
1635                
1636            },
1637            async: false
1638        });
1639    }
1640    
1641    //Affichage du tableau des dossier_commission possibles
1642    function ajouterTableauDossierCommissionPossible(id){
1643        
1644        link = "../app/tableau_dossier_commission_possible.php?idx=" + id ;
1645    
1646        $.ajax({
1647            type: "GET",
1648            url: link,
1649            cache: false,
1650            success: function(html){
1651                
1652                $('#tabs-2').html(html);
1653            },
1654            async: false
1655        });
1656    }
1657    
1658    //Met à jour la liste des dossiers de la commission
1659    function updateCommission(id, container){
1660        
1661        var link = "../app/update_dossier_commission.php?idx=" + id ;
1662        var valid = "";
1663        var error = "";
1664        var error_avis = "";
1665        
1666         //Affiche du message de retour
1667        $(container + " .message").remove();
1668        $(container).prepend(
1669            '<div class="message ui-widget ui-corner-all ui-state-highlight dossier-ok">'+
1670                '<p>'+
1671                    '<span class="ui-icon ui-icon-info"></span>'+
1672                    '<span class="text">'+
1673                    msg_loading +
1674                    '</span>'+
1675                '</p>'+
1676            '</div>'
1677        );
1678    
1679        $(container + " input[type='checkbox']").each(
1680            function(index) {
1681                
1682                var idxDossier = $(this).val();
1683                
1684                link = "../app/update_dossier_commission.php?idx=" + id +
1685                    "&idxDossier=" + idxDossier;
1686                
1687                //Ajoute ces dossiers de l'ordre du jour
1688                if ( $(this).is(":checked")){
1689                    
1690                    link += "&action=add";
1691                }
1692                //Supprime ces dossiers de l'ordre du jour
1693                else{
1694                    
1695                    link += "&action=remove";
1696                }
1697    
1698                //Mise à jour des données
1699                $.ajax({
1700                    type: "GET",
1701                    url: link,
1702                    cache: false,
1703                    dataType: "json",
1704                    success: function(i, obj){
1705                        
1706                        // Erreur
1707                        if( i.error == "0" ){
1708                            
1709                            error += idxDossier + ", ";
1710                        }
1711                        else if ( i.error == "-1" ) {
1712    
1713                            error_avis += idxDossier + ", ";
1714                        }
1715                        else{
1716                            valid += idxDossier + ", ";
1717                        }
1718                    },
1719                    async: false
1720                });
1721            }
1722        );
1723    
1724        //Ajout du div des erreurs
1725        if ( error != "" || error_avis != "" ){
1726            
1727            $(container + " .dossier-ok").after(
1728            '<div class="message ui-widget ui-corner-all ui-state-highlight dossier-err">'+
1729                '<p>'+
1730                    '<span class="ui-icon ui-icon-info"></span>'+
1731                    '<span class="text">'+
1732                    '</span>'+
1733                '</p>'+
1734            '</div>');
1735        }
1736    
1737        //le traitement a été effectué avec succés
1738        if ( valid != "" ){
1739            
1740            $(container + ' .dossier-ok').addClass("ui-state-ok");
1741            $(container + ' .dossier-ok .text').html("Mise à jour réalisée avec succès pour le(s) dossier(s) : "+
1742                valid.slice(0,valid.length-2) +
1743                ".");
1744        }
1745        else {
1746            
1747            $(container + " .dossier-ok").remove();
1748        }
1749        //Une erreur s'est produite
1750        if ( error != "" ) {
1751            
1752            $(container + ' .dossier-err').addClass("ui-state-error");
1753            $(container + ' .dossier-err .text').append(
1754                "Dossier : " + error.slice(0,error.length-2) + " déjà plannifié pour une autre commission.");
1755        }
1756        else if ( error_avis != "" ){
1757            
1758            $(container + ' .dossier-err').addClass("ui-state-error");
1759            $(container + ' .dossier-err .text').append(
1760                "Un  avis a déjà été rendu pour le(s) dossier(s): " +
1761                error_avis.slice(0,error_avis.length-2) +
1762                ".");
1763        }
1764    }
1765    
1766    
1767    //Récupère les données du type de commission et les mets dans les champs
1768    function chargeDonneesCommissionType(id_commission_type){
1769    
1770        //Requête ajax de récupération des données
1771        $.ajax({
1772            type: "GET",
1773            url: "../app/getCommissionTypeInfo.php?idx=" + id_commission_type,
1774            dataType: "json",
1775            async: false,
1776            success: function(data){
1777    
1778                // Ajout des données dans les champs
1779                $('#libelle').val(data.libelle);
1780                $('#lieu_adresse_ligne1').val(data.lieu_adresse_ligne1);
1781                $('#lieu_adresse_ligne2').val(data.lieu_adresse_ligne2);
1782                $('#lieu_salle').val(data.lieu_salle);
1783                $('#listes_de_diffusion').val(data.listes_de_diffusion);
1784                $('#participants').val(data.participants);
1785            }
1786        });
1787    }
1788    
1789    // Action de diffusion de mails des commissions
1790    function commission_diffusion(idx, obj){
1791        
1792        $('#tabs-1 .message').remove();
1793        
1794        // Si les données sont fournies
1795        if ( $.isNumeric(idx) && obj != "" ){
1796            
1797            //Requête ajax d'envoi des données
1798            $.ajax({
1799                type: "GET",
1800                url: "../app/commission_diffusion.php?idx=" + idx + "&obj=" + obj,
1801                dataType: "json",
1802                async: false,
1803                success: function(data){
1804    
1805                    $('#tabs-1').prepend(
1806                        '<div ' +
1807                            'class="message ui-widget ui-corner-all ui-state-highlight">' +
1808                            '<p>' +
1809                                '<span class="ui-icon ui-icon-info"></span>' +
1810                                '<span class="text">' +
1811                                '</span>' +
1812                            '</p>' +
1813                        '</div>'                    
1814                    );
1815                    
1816                    var type = ( obj == "compte_rendu" ) ? "du compte-rendu" : "de l'ordre du jour";
1817                    //L'envoi des mails a été effectué avec succés
1818                    if ( data.return == 1 ){
1819                        
1820                        $('#tabs-1 .message').addClass("ui-state-valid");
1821                        $('#tabs-1 .message .text').html(
1822                            "La diffusion " + type + " s'est effectuée avec succès."
1823                        );
1824                    }
1825                    //Un erreur s'est produite
1826                    else if ( data.return == -1 ){
1827                        
1828                        $('#tabs-1 .message').addClass("ui-state-error");
1829                        $('#tabs-1 .message .text').html(
1830                            "Une erreur s'est produite lors de la diffusion " +
1831                            type +
1832                            ". Veuillez contacter votre administrateur."
1833                        );
1834                    }
1835                }
1836            });
1837        }
1838    }
1839    
1840    /**
1841     * Popup de confirmation pour les traitements
1842     */
1843    //
1844    function trt_confirm() {
1845        //
1846        if (confirm("Etes-vous sur de vouloir confirmer cette action ?")) {
1847            //
1848            return true;
1849        } else {
1850            //
1851            return false;
1852        }
1853    }

Legend:
Removed from v.904  
changed lines
  Added in v.1471

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26