/[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 2237 by softime, Wed Sep 4 10:28:01 2013 UTC revision 3349 by vpihour, Wed Mar 25 10:54:04 2015 UTC
# Line 91  function bible_return(form, champ) { Line 91  function bible_return(form, champ) {
91      // Récupération du contenu de chacun des éléments cochés      // Récupération du contenu de chacun des éléments cochés
92      $("span.content").each(function( index ) {      $("span.content").each(function( index ) {
93          if (document.getElementById('checkbox'+index).checked == true) {          if (document.getElementById('checkbox'+index).checked == true) {
94              listeElement += $(this).text() + '\r\n\r';              listeElement += $(this).attr('title').replace(/\r\n|\n|\r/g, '<br />')+'<br />';
95          }          }
96      });      });
97      // Récupération du textarea à remplir      obj = tinyMCE.get(champ);
     obj = $("form[name|="+form+"] #"+champ);  
98      // Remplissage du textarea et déclenchement du trigger autosize      // Remplissage du textarea et déclenchement du trigger autosize
99      $(obj).val(obj.val()+listeElement+"\r").trigger('autosize');      if(listeElement != '') {
100            obj.setContent(obj.getContent()+"<br/>"+listeElement+"<br/>");
101        }
102      // Fermeture de la boite de dialog      // Fermeture de la boite de dialog
103      $('#upload-container').dialog('close').remove();      $('#upload-container').dialog('close').remove();
104  }  }
# Line 132  function bible2() { Line 133  function bible2() {
133  }  }
134  // bible_auto - type httpclick  // bible_auto - type httpclick
135  function bible_auto(){  function bible_auto(){
136      if(fenetreouverte==true)      // Récupération de l'identifiant de l'événement
            pfenetre.close();  
137      var ev=document.f2.evenement.value;      var ev=document.f2.evenement.value;
138        // Si pas d'événement on affiche un message d'erreur
139      if (ev == "") {      if (ev == "") {
140          window.alert("Vous devez d'abord sélectionner un événement.");          window.alert("Vous devez d'abord sélectionner un événement.");
141          return false;          return false;
142      }      }
143        // Récupération de l'identifiant du dossier
144      var idx=document.f2.dossier.value;      var idx=document.f2.dossier.value;
145            // Récupération des retours de consultation et de la bible
146      pfenetre=window.open("../app/bible_auto.php?idx="+idx+"&ev="+ev,"evenement","width=600,height=300,top=120,left=120");      $.ajax({
147      fenetreouverte=true;          type: "GET",
148            url: "../app/bible_auto.php?idx="+idx+"&ev="+ev,
149            cache: false,
150            dataType: "json",
151            success: function(data){
152            
153                var obj = tinyMCE.get('complement_om_html');
154                // Remplissage du textarea complement_om_html
155                if(data.complement_om_html != '') {
156                    obj.setContent(obj.getContent()+"<br/>"+data.complement_om_html+"<br/>");
157                }
158                var obj2 = tinyMCE.get('complement2_om_html');
159                // Remplissage du textarea complement2_om_html
160                if(data.complement2_om_html != '') {
161                    obj2.setContent(obj2.getContent()+"<br/>"+data.complement2_om_html+"<br/>");
162                }
163    
164            }
165        });
166    
167      return false;      return false;
168  }  }
169  // VerifNumdec - type text  // VerifNumdec - type text
# Line 157  function VerifNumdec(champ) { Line 178  function VerifNumdec(champ) {
178      //}      //}
179            
180  }  }
181    
182    /**
183     * Cette fonction permet de compléter le champ par des zéro par la gauche
184     * @param  string  champ  Champ concerné
185     * @param  integer length Taille du champ retourné
186     */
187    function str_pad_js(champ, length) {
188    
189        // Initialisation de la variable str
190        var str = '' + champ.value;
191    
192        // Si le champ n'est pas vide
193        if (str != '') {
194            // Tant que la taille n'est pas atteint,
195            // on ajoute des 0
196            while (str.length < length) {
197                str = '0' + str;
198            }
199            // Modifie le champ
200            champ.value = str;
201        }
202    }
203    
204  // 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
205  function changeDataSelect(tableName, linkedField, joker){  function changeDataSelect(tableName, linkedField, joker){
206      var id_dossierAutorisation = $("#dossier_autorisation").val();      var id_dossierAutorisation = $("#dossier_autorisation").val();
# Line 209  function changeDataSelect(tableName, lin Line 253  function changeDataSelect(tableName, lin
253      });      });
254  }  }
255    
 // Ce widget permet de charger les données de la demande type en ajax  
 function changeDemandeTypeDataSelect(){  
     // Récupération de l'id du dossier_autorisation_type_detaille  
     var id_datd = $("#dossier_autorisation_type_detaille").val();  
   
     // Récupération de la liste des paramètres de l'url  
     var params = extractUrlParams();  
     if ( typeof params['idx_dossier'] === "undefined" ){  
         params['idx_dossier'] = '';  
     }  
   
     link = "../app/listDemandeType.php?idx=" + params['idx_dossier'] + "&datd="+ id_datd;  
   
     var val_tableName = $('#demande_type').val();  
     $.ajax({  
         type: "GET",  
         url: link,  
         cache: false,  
         dataType: "json",  
         success: function(res){  
             $('#demande_type').empty();  
             var selected = "";  
   
             for ( j=0 ; j < res[0].length ; j++ ){  
   
                 $('#demande_type').append(  
                     '<option value="'+res[0][j]+'"'+selected+' >'+res[1][j]+'</option>'  
                 );  
                   
             }  
             $('#demande_type').val(val_tableName);  
         },  
         async: false  
     });  
 }  
   
256  /**  /**
257   * Fonction de récupération des paramètres GET de la page   * Fonction de récupération des paramètres GET de la page
258   * @return Array Tableau associatif contenant les paramètres GET   * @return Array Tableau associatif contenant les paramètres GET
# Line 371  function dossierads() Line 379  function dossierads()
379      document.f1.datedebut.value+"&datefin="+document.f1.datefin.value;      document.f1.datedebut.value+"&datefin="+document.f1.datefin.value;
380  }  }
381    
 // téléchargement du fichier  
 function file(fichier) {  
     //  
     if (fichier == "") {  
         alert("zone vide");  
     }  
     //  
     pfenetre = window.open("../app/file.php?file="+fichier,"Visualisation","width=100,height=100,top=1,left=150,scrollbars=yes,resizable = yes");  
     //  
     fenetreouverte = true;  
 }  
   
382  /**  /**
383   * Retour spécifique de l'écran de consultation multiple - surcharge de ajaxIt   * Retour spécifique de l'écran de consultation multiple - surcharge de ajaxIt
384   * @todo XXX voir les différences avec ajaxIt et si il n'est pas possible   * @todo XXX voir les différences avec ajaxIt et si il n'est pas possible
# Line 450  function popupIt(objsf, link, width, hei Line 446  function popupIt(objsf, link, width, hei
446      // Insertion du conteneur du dialog      // Insertion du conteneur du dialog
447      var dialog = $('<div id=\"sousform-'+objsf+'\"></div>').insertAfter('#tabs-1 .formControls');      var dialog = $('<div id=\"sousform-'+objsf+'\"></div>').insertAfter('#tabs-1 .formControls');
448      $('<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);
       
449      // execution de la requete passee en parametre      // execution de la requete passee en parametre
450      // (idem ajaxIt + callback)      // (idem ajaxIt + callback)
451      $.ajax({      $.ajax({
# Line 477  function popupIt(objsf, link, width, hei Line 472  function popupIt(objsf, link, width, hei
472              },              },
473              resizable: true,              resizable: true,
474              modal: true,              modal: true,
475              width: 'auto',              width: width,
476              height: 'auto',              height: height,
477              position: 'left top',              position: 'left top',
478            });            });
479          },          },
# Line 619  function affichageBoutonsDemandeurs(){ Line 614  function affichageBoutonsDemandeurs(){
614    
615      if ((url.indexOf("form.php?obj=demande&") != -1      if ((url.indexOf("form.php?obj=demande&") != -1
616          || url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1          || url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1
617          || url.indexOf("form.php?obj=demande_dossier_existant&") != -1)          || url.indexOf("form.php?obj=demande_dossier_encours&") != -1
618            || url.indexOf("form.php?obj=demande_autre_dossier&") != -1)
619          && $("form[name=f1] .form-is-valid").size() > 0 ) {          && $("form[name=f1] .form-is-valid").size() > 0 ) {
620    
621          $('#add_petitionnaire_principal').hide();          $('#add_petitionnaire_principal').hide();
# Line 703  $(function() { Line 699  $(function() {
699    
700          formatFieldReferenceCadastrale();          formatFieldReferenceCadastrale();
701      }      }
702    
703        // S'il y a une erreur durant la validation lors de l'ajout
704        // d'une nouvelle demande
705        if (url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1
706            && (url.indexOf("&action=3") == -1
707            && url.indexOf("&action=2") == -1
708            && url.indexOf("&validation") != -1
709            && $(".form-is-valid").size() == 0)) {
710    
711            addButtonCadastraleAdesse();
712            formatFieldReferenceCadastrale();
713        }
714            
715      if (url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1      if (url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1
716          && (url.indexOf("&action=3") == -1          && (url.indexOf("&action=3") == -1
717          && url.indexOf("&action=2") == -1          && url.indexOf("&action=2") == -1
718            && url.indexOf("&validation") == -1
719          && $(".form-is-valid").size() == 0)) {          && $(".form-is-valid").size() == 0)) {
720                    
721          addButtonCadastraleAdesse();          addButtonCadastraleAdesse();
# Line 715  $(function() { Line 724  $(function() {
724            
725      // Ajout de demande      // Ajout de demande
726      if ((url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1      if ((url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1
727          || url.indexOf("form.php?obj=demande_dossier_existant&") != -1)          || url.indexOf("form.php?obj=demande_dossier_encours&") != -1
728            || url.indexOf("form.php?obj=demande_autre_dossier&") != -1)
729          && url.indexOf("&action=0") != -1 ){          && url.indexOf("&action=0") != -1 ){
730    
731          /*Cache les champs avant que dossier_autorisation_type_detaille soit choisi*/          /*Cache les champs avant que dossier_autorisation_type_detaille soit choisi*/
# Line 723  $(function() { Line 733  $(function() {
733      }      }
734            
735      // Ajout de demande sur dossier existant      // Ajout de demande sur dossier existant
736      if (url.indexOf("form.php?obj=demande_dossier_existant&") != -1      if ((url.indexOf("form.php?obj=demande_dossier_encours&") != -1
737            || url.indexOf("form.php?obj=demande_autre_dossier&") != -1)
738          && url.indexOf("&action=0") != -1 ){          && url.indexOf("&action=0") != -1 ){
739    
740          /*Cache les champs avant que dossier_autorisation_type_detaille soit choisi*/          //Cache les champs avant que dossier_autorisation_type_detaille soit choisi
741          hideFields();          hideFields();
742          changeDemandeType();          //On affiche le select du type de la demande
743            $('#demande_type').parent().parent().show();
744      }      }
745            
746      // Modification de demande      // Modification de demande
# Line 736  $(function() { Line 748  $(function() {
748          (          (
749              url.indexOf("form.php?obj=demande&") != -1              url.indexOf("form.php?obj=demande&") != -1
750              || url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1              || url.indexOf("form.php?obj=demande_nouveau_dossier&") != -1
751              || url.indexOf("form.php?obj=demande_dossier_existant&") != -1              || url.indexOf("form.php?obj=demande_dossier_encours&") != -1
752                || url.indexOf("form.php?obj=demande_autre_dossier&") != -1
753          )          )
754          && url.indexOf("&action") == -1          && url.indexOf("&action") == -1
755      ){      ){
# Line 990  function addActionSearchIcon(){ Line 1003  function addActionSearchIcon(){
1003          objName = 'architecte';          objName = 'architecte';
1004          objReturn = 'donnees_techniques';          objReturn = 'donnees_techniques';
1005      }      }
       
1006      $('.search-frequent-16').click(      $('.search-frequent-16').click(
1007          function(){          function(){
1008              //Récupération des données              //Récupération des données
# Line 1153  function testSeparator(obj){ Line 1165  function testSeparator(obj){
1165   *  référence cadastrale   *  référence cadastrale
1166  */  */
1167  function actionFormReferenceCadastrale(){  function actionFormReferenceCadastrale(){
1168        
     $('form').submit(  
         function(){  
               
             getDataFieldReferenceCadastrale();  
         }  
     );  
1169      if( $("form[name=f1] .form-is-valid").size() == 0) {      if( $("form[name=f1] .form-is-valid").size() == 0) {
1170    
1171          $('#moreFieldReferenceCadastrale' +          $('#moreFieldReferenceCadastrale' +
# Line 1179  function getDataFieldReferenceCadastrale Line 1185  function getDataFieldReferenceCadastrale
1185            
1186      var reference_cadastrale = '';      var reference_cadastrale = '';
1187      var reference_cadastrale_temp = '';      var reference_cadastrale_temp = '';
1188        var error = false;
1189            
1190      /*Pour chacun des champs du formulaire de saisie de référence cadastrale*/      /*Pour chacun des champs du formulaire de saisie de référence cadastrale*/
1191      $('.reference_cadastrale_custom_field').each(      $('.reference_cadastrale_custom_field').each(
# Line 1198  function getDataFieldReferenceCadastrale Line 1205  function getDataFieldReferenceCadastrale
1205                          break;                          break;
1206                      }                      }
1207                      else{                      else{
1208                                                    alert("Les références cadastrales saisies sont incorrectes. Veuillez les corriger.");
1209                          reference_cadastrale_bis = reference_cadastrale_bis.slice( 0, -1);                          error = true;
1210                            return false;
1211                      }                          }    
1212                  }                  }
1213                                    
# Line 1213  function getDataFieldReferenceCadastrale Line 1221  function getDataFieldReferenceCadastrale
1221              }              }
1222          }          }
1223      );      );
1224        
1225        if(error) return false;
1226      /*Met la valeur du résultat dans le champs généré par le framework*/      /*Met la valeur du résultat dans le champs généré par le framework*/
1227      $('#terrain_references_cadastrales').val(reference_cadastrale);      $('#terrain_references_cadastrales').val(reference_cadastrale);
1228        return true;
1229  }  }
1230    
1231  /*  /*
# Line 1259  function changeDemandeType(){ Line 1269  function changeDemandeType(){
1269      if ( $.isNumeric(idDossierAutorisationTypeDetaille) ){      if ( $.isNumeric(idDossierAutorisationTypeDetaille) ){
1270                    
1271          /*Met à jour le select de demande_type avec les données correspondant*/          /*Met à jour le select de demande_type avec les données correspondant*/
1272          changeDemandeTypeDataSelect();          filterSelect(idDossierAutorisationTypeDetaille, 'demande_type', 'dossier_autorisation_type_detaille', 'demande');
1273          if ( $('#demande_type option').size() < 2 ) {          if ( $('#demande_type option').size() < 2 ) {
1274              showFormsDemande();              showFormsDemande();
1275          }          }
# Line 1319  function addNewFieldReferencesCadastrale Line 1329  function addNewFieldReferencesCadastrale
1329  }  }
1330    
1331  function addButtonCadastraleAdesse(){  function addButtonCadastraleAdesse(){
1332    
1333        // Permet d'ajouter le bouton de récupération d'adresse si sig activé
1334        if ($('#option_sig').val() == 'sig_externe'){
1335            
1336      $('#terrain_references_cadastrales').parent().parent().after('<div class="field field-type-text" >' +          $('#terrain_references_cadastrales').parent().parent().after('<div class="field field-type-text" >' +
1337          '<div class="form-libelle"></div>' +              '<div class="form-libelle"></div>' +
1338          '<div class="form-content buttonCadAdr">' +              '<div class="form-content buttonCadAdr">' +
1339              '<input id="cad-adr-them" '+                  '<input id="cad-adr-them" '+
1340                  'class="ui-button ui-widget ui-state-default ui-corner-all" '+                      'class="ui-button ui-widget ui-state-default ui-corner-all" '+
1341                  'type="button" '+                      'type="button" '+
1342                  'onclick="getAdressFromCadastrale();" '+                      'onclick="getAdressFromCadastrale();" '+
1343                  'value="Récupérer l\'adresse"/>' +                      'value="Récupérer l\'adresse de la parcelle"/>' +
1344          '</div>' +              '</div>' +
1345     '</div>' );         '</div>' );
1346        }
1347  }  }
1348    
1349  /*  /*
# Line 1381  function fieldReferenceCadastraleBase(){ Line 1395  function fieldReferenceCadastraleBase(){
1395      var reference_cadastrale = '<input ' +      var reference_cadastrale = '<input ' +
1396                  'class="champFormulaire reference_cadastrale_custom_field" ' +                  'class="champFormulaire reference_cadastrale_custom_field" ' +
1397                  'type="text" ' +                  'type="text" ' +
1398                  'onchange="VerifNum(this)" ' +                  'onchange="VerifNum(this);str_pad_js(this, 3);" ' +
1399                  'maxlength="4" ' +                  'maxlength="3" ' +
1400                  'size="4" '+                  'size="3" '+
1401                  'placeholder="Quart." ';                  'placeholder="Quart." ';
1402                                    
1403      // désactivation des champs de référence cadastrale      // désactivation des champs de référence cadastrale
# Line 1406  function fieldReferenceCadastraleBase(){ Line 1420  function fieldReferenceCadastraleBase(){
1420      }      }
1421            
1422      reference_cadastrale += 'value="" '+      reference_cadastrale += 'value="" '+
1423                  'onchange="if ( !isAlpha(this.value) ){ alert(\'Vous ne devez saisir que des lettres dans ce champs.\'); this.value = \'\'; }"/>';                  'onchange="if ( !isAlpha(this.value) && this.value != \'\' ){ alert(\'Vous ne devez saisir que des lettres dans ce champs.\'); this.value = \'\'; }; this.value=this.value.toUpperCase();"/>';
1424      reference_cadastrale += '<input ' +      reference_cadastrale += '<input ' +
1425                  'class="champFormulaire reference_cadastrale_custom_field" ' +                  'class="champFormulaire reference_cadastrale_custom_field" ' +
1426                  'type="text" ' +                  'type="text" ' +
1427                  'onchange="VerifNum(this)" ' +                  'onchange="VerifNum(this);str_pad_js(this, 4);" ' +
1428                  'maxlength="4" ' +                  'maxlength="4" ' +
1429                  'size="4" '+                  'size="4" '+
1430                  'placeholder="Parc." ';                  'placeholder="Parc." ';
# Line 1542  function newInputReferenceCadastrale(){ Line 1556  function newInputReferenceCadastrale(){
1556          '<input ' +          '<input ' +
1557              'class="champFormulaire reference_cadastrale_custom_field" ' +              'class="champFormulaire reference_cadastrale_custom_field" ' +
1558              'type="text" ' +              'type="text" ' +
1559              'onchange="VerifNum(this)" ' +              'onchange="VerifNum(this);str_pad_js(this, 4)" ' +
1560              'maxlength="4" ' +              'maxlength="4" ' +
1561              'size="4" ' +              'size="4" ' +
1562              'placeholder="Parc." ' +              'placeholder="Parc." ' +
# Line 1551  function newInputReferenceCadastrale(){ Line 1565  function newInputReferenceCadastrale(){
1565  }  }
1566    
1567    
1568  // Cette fonction permet d'associer a un arbre html les fonctions jquery  /**
1569  // necessaires. Elle permet notamment lors du chargement d'une page en ajax   * Cette fonction permet d'associer a un arbre html les fonctions jquery
1570  // d'associer le comportement du bouton, la gestion du calendrier et la gestion   * necessaires. Elle permet notamment lors du chargement d'une page en ajax
1571  // du fieldset.   * d'associer le comportement du bouton, la gestion du calendrier et la gestion
1572  function om_initialize_content() {   * du fieldset.
1573     *
1574     * @param boolean tinymce_load permet de définir si les éditeurs tinyMCE doivent être chargés.
1575     */
1576    function om_initialize_content(tinymce_load) {
1577        // Gestion des actions de portlet de formulaire
1578        form_bind_portlet_actions();
1579      // Gestion du skin des boutons, liens      // Gestion du skin des boutons, liens
1580      link_bind_button();      link_bind_button();
1581      // Gestion du calendrier avec le widget datepicker de jqueryui      // Gestion du calendrier avec le widget datepicker de jqueryui
# Line 1574  function om_initialize_content() { Line 1594  function om_initialize_content() {
1594      changeDemandeurType('qualite');      changeDemandeurType('qualite');
1595      addSearchIcon();      addSearchIcon();
1596      addDivDialog('.bloc_demandeur');      addDivDialog('.bloc_demandeur');
1597    
1598        if(tinymce_load && tinymce_load == true) {
1599            // Gestion des WYSIWYG
1600            remove_tinymce()
1601            inputText_bind_tinyMCE_extended();
1602            inputText_bind_tinyMCE_simple();
1603            inputText_bind_tinyMCE();
1604        }
1605            
1606  }  }
1607    
# Line 1630  function calculSurfaceTotal() { Line 1658  function calculSurfaceTotal() {
1658            
1659      var nom_col = [ "su_avt_shon",      var nom_col = [ "su_avt_shon",
1660                      "su_cstr_shon",                      "su_cstr_shon",
                     "su_trsf_shon",  
1661                      "su_chge_shon",                      "su_chge_shon",
1662                      "su_demo_shon",                      "su_demo_shon",
1663                        "su_sup_shon",
1664                      "su_tot_shon" ];                      "su_tot_shon" ];
1665    
1666      // Calcul des totaux de colonnes      // Calcul des totaux de colonnes
# Line 1654  function calculSurfaceTotal() { Line 1682  function calculSurfaceTotal() {
1682          // Conversion des champs source en integer          // Conversion des champs source en integer
1683          su_avt_shon = parseInt($('#su_avt_shon'+j).val());          su_avt_shon = parseInt($('#su_avt_shon'+j).val());
1684          su_cstr_shon = parseInt($('#su_cstr_shon'+j).val());          su_cstr_shon = parseInt($('#su_cstr_shon'+j).val());
         su_trsf_shon = parseInt($('#su_trsf_shon'+j).val());  
1685          su_chge_shon = parseInt($('#su_chge_shon'+j).val());          su_chge_shon = parseInt($('#su_chge_shon'+j).val());
1686          su_demo_shon = parseInt($('#su_demo_shon'+j).val());          su_demo_shon = parseInt($('#su_demo_shon'+j).val());
1687            su_sup_shon = parseInt($('#su_sup_shon'+j).val());
1688                    
1689          // Cumul des valeurs des champs source          // Cumul des valeurs des champs source
1690          su_avt_shon = isNaN(su_avt_shon) ? 0 : su_avt_shon;          su_avt_shon = isNaN(su_avt_shon) ? 0 : su_avt_shon;
1691          su_cstr_shon = isNaN(su_cstr_shon) ? 0 : su_cstr_shon;          su_cstr_shon = isNaN(su_cstr_shon) ? 0 : su_cstr_shon;
         su_trsf_shon = isNaN(su_trsf_shon) ? 0 : su_trsf_shon;  
1692          su_chge_shon = isNaN(su_chge_shon) ? 0 : su_chge_shon;          su_chge_shon = isNaN(su_chge_shon) ? 0 : su_chge_shon;
1693          su_demo_shon = isNaN(su_demo_shon) ? 0 : su_demo_shon;          su_demo_shon = isNaN(su_demo_shon) ? 0 : su_demo_shon;
1694            su_sup_shon = isNaN(su_sup_shon) ? 0 : su_sup_shon;
1695    
1696          // Affectation du résultat de ligne          // Affectation du résultat de ligne
1697          $('#su_tot_shon'+j).val((su_avt_shon+su_cstr_shon+su_trsf_shon)-(su_chge_shon+su_demo_shon));          $('#su_tot_shon'+j).val((su_avt_shon+su_cstr_shon+su_chge_shon)-(su_demo_shon+su_sup_shon));
1698    
1699      }      }
1700    
# Line 1674  function calculSurfaceTotal() { Line 1702  function calculSurfaceTotal() {
1702      // Conversion des champs source en integer      // Conversion des champs source en integer
1703      su_avt_shon = parseInt($('#su_avt_shon_tot').val());      su_avt_shon = parseInt($('#su_avt_shon_tot').val());
1704      su_cstr_shon = parseInt($('#su_cstr_shon_tot').val());      su_cstr_shon = parseInt($('#su_cstr_shon_tot').val());
     su_trsf_shon = parseInt($('#su_trsf_shon_tot').val());  
1705      su_chge_shon = parseInt($('#su_chge_shon_tot').val());      su_chge_shon = parseInt($('#su_chge_shon_tot').val());
1706      su_demo_shon = parseInt($('#su_demo_shon_tot').val());      su_demo_shon = parseInt($('#su_demo_shon_tot').val());
1707        su_sup_shon = parseInt($('#su_sup_shon_tot').val());
1708            
1709      // Cumul des valeurs des champs source      // Cumul des valeurs des champs source
1710      su_avt_shon = isNaN(su_avt_shon) ? 0 : su_avt_shon;      su_avt_shon = isNaN(su_avt_shon) ? 0 : su_avt_shon;
1711      su_cstr_shon = isNaN(su_cstr_shon) ? 0 : su_cstr_shon;      su_cstr_shon = isNaN(su_cstr_shon) ? 0 : su_cstr_shon;
     su_trsf_shon = isNaN(su_trsf_shon) ? 0 : su_trsf_shon;  
1712      su_chge_shon = isNaN(su_chge_shon) ? 0 : su_chge_shon;      su_chge_shon = isNaN(su_chge_shon) ? 0 : su_chge_shon;
1713      su_demo_shon = isNaN(su_demo_shon) ? 0 : su_demo_shon;      su_demo_shon = isNaN(su_demo_shon) ? 0 : su_demo_shon;
1714        su_sup_shon = isNaN(su_sup_shon) ? 0 : su_sup_shon;
1715    
1716      // Affectation du résultat de ligne      // Affectation du résultat de ligne
1717      $('#su_tot_shon_tot').val((su_avt_shon+su_cstr_shon+su_trsf_shon)-(su_chge_shon+su_demo_shon));      $('#su_tot_shon_tot').val((su_avt_shon+su_cstr_shon+su_chge_shon)-(su_demo_shon+su_sup_shon));
1718    
1719  }  }
1720    
# Line 1779  function portletUpdatePetitionnaire(id, Line 1807  function portletUpdatePetitionnaire(id,
1807                                    
1808                  $('#formulaire .message').remove();                  $('#formulaire .message').remove();
1809                  /*Change la valeur affiché et affiche un message valide*/                  /*Change la valeur affiché et affiche un message valide*/
1810                  if ( $.parseJSON(html) == "Mise a jour effectue avec succes" ||                  if ( $.parseJSON(html) == "Mise à jour effectué avec succès" ||
1811                  $.parseJSON(html).indexOf("Transfert effectue avec succes") != -1 ){                  $.parseJSON(html).indexOf("Transfert effectue avec succes") != -1 ){
1812                                            
1813                      // On modife le champ field                      // On modife le champ field
# Line 1852  function addDossierCommission(id, contai Line 1880  function addDossierCommission(id, contai
1880          url: link,          url: link,
1881          cache: false,          cache: false,
1882          dataType: "json",          dataType: "json",
1883          success: function(i, obj){          success: function(i){
1884                            
1885              $(container + " .message").remove();              $(container + " .message").remove();
1886              $(container).prepend(              $(container).prepend(
# Line 1869  function addDossierCommission(id, contai Line 1897  function addDossierCommission(id, contai
1897              if ( i.return == "1" ){              if ( i.return == "1" ){
1898                                    
1899                  $(container + ' .message').addClass("ui-state-ok");                  $(container + ' .message').addClass("ui-state-ok");
1900                  $(container + ' .message .text').html("Dossier ajouté avec succès.");                  $(container + ' .message .text').html(i.message);
1901              }              }
1902              //Dossier existe mais non ajouté              //Dossier existe mais non ajouté
1903              else if( i.return == "0" ){              else if( i.return == "0" ){
1904                                    
1905                  $(container + ' .message').addClass("ui-state-error");                  $(container + ' .message').addClass("ui-state-error");
1906                  $(container + ' .message .text').html("Une erreur s'est produite lors de l'ajout de ce dossier. " +                  $(container + ' .message .text').html(i.message);
                     "Veuillez contacter votre administrateur");  
1907              }              }
1908              //Le dossier n'existe pas              //Le dossier n'existe pas
1909              else if( i.return == "-1" ){              else if( i.return == "-1" ){
1910                                    
1911                  $(container + ' .message').addClass("ui-state-error");                  $(container + ' .message').addClass("ui-state-error");
1912                  $(container + ' .message .text').html("Ce dossier n'existe pas.");                  $(container + ' .message .text').html(i.message);
1913              }              }
1914              //Le dossier est déjà à l'ordre du jour              //Le dossier est déjà à l'ordre du jour
1915              else if( i.return == "2" ){              else if( i.return == "2" ){
1916                                    
1917                  $(container + ' .message').addClass("ui-state-error");                  $(container + ' .message').addClass("ui-state-error");
1918                  $(container + ' .message .text').html("Ce dossier est deja a l'ordre du jour.");                  $(container + ' .message .text').html(i.message);
1919                }
1920                //Le dossier est déjà à l'ordre du jour
1921                else if( i.return == "-2" ){
1922                    
1923                    $(container + ' .message').addClass("ui-state-error");
1924                    $(container + ' .message .text').html(i.message);
1925              }              }
1926                            
1927          },          },
# Line 2171  function finalizeDocument(idx, obj, sous Line 2204  function finalizeDocument(idx, obj, sous
2204              );              );
2205                            
2206              //Si la finalisation a été effectuée avec succès              //Si la finalisation a été effectuée avec succès
2207              if ( data.pdf != -1 ){              if ( typeof data.pdf !== "undefined" && data.pdf != -1 ){
2208                                    
2209                  // On change le lien                  // On change le lien
2210                  var etat = ((status == 1)?'':'de') + 'finalis';                  var etat = ((status == 1)?'':'de') + 'finalis';
# Line 2186  function finalizeDocument(idx, obj, sous Line 2219  function finalizeDocument(idx, obj, sous
2219                  //Si on le document est finalisé, on cache les actions du portlet                  //Si on le document est finalisé, on cache les actions du portlet
2220                  if ( status == 1 ){                  if ( status == 1 ){
2221                                            
2222                      $(".edit-16").parent().parent().remove();                      $("#"+sousform+obj+" .edit-16").parent().parent().remove();
2223                      $(".delete-16").parent().parent().remove();                      $("#"+sousform+obj+" .delete-16").parent().parent().remove();
2224                  }                  }
2225                  else{                  else{
2226                                            
# Line 2204  function finalizeDocument(idx, obj, sous Line 2237  function finalizeDocument(idx, obj, sous
2237                          actions += data.actions.supprimer;                          actions += data.actions.supprimer;
2238                      }                      }
2239                                            
2240                      $('.portlet-list').prepend(actions);                      $('#'+sousform+obj+' .portlet-list').prepend(actions);
2241                  }                  }
2242                                    
2243                  //On affiche un message de valisation                  //On affiche un message de valisation
2244                  $('#'+sousform+obj+' .message').addClass("ui-state-valid");                  $('#'+sousform+obj+' .message').addClass("ui-state-valid");
2245                  $('#'+sousform+obj+' .message .text').html(                  $('#'+sousform+obj+' .message .text').html(data.message);
                     "La "+etat+"ation du document s'est effectuée avec succès."  
                 );  
2246              }              }
2247              // Si une erreur s'est produite              // Si une erreur s'est produite
2248              else {              else {
2249                                    
2250                  //On affiche un message de validation                  //On affiche un message de validation
2251                  $('#'+sousform+obj+' .message').addClass("ui-state-error");                  $('#'+sousform+obj+' .message').addClass("ui-state-error");
2252                  $('#'+sousform+obj+' .message .text').html(                  $('#'+sousform+obj+' .message .text').html(data.message);
2253                      "Une erreur s'est produite lors de la finalisation du document."              }
2254                  );          },
2255            error: function(jqXHR, textStatus, errorThrown) {
2256                
2257                //Si un parsererror est retourné, du code HTML s'est affiché dans
2258                //l'application, on affiche ce code
2259                if ( textStatus === "parsererror" ){
2260                    $('#'+sousform+obj+' .message.ui-widget.ui-corner-all.ui-state-highlight').remove()
2261                    $('#'+sousform+obj+' a.retour').first().before(jqXHR.responseText);
2262              }              }
2263          }          }
2264      });      });
# Line 2370  function geolocalisation_treatment(id, f Line 2408  function geolocalisation_treatment(id, f
2408   * @param array res Résultat après le traitement du script PHP   * @param array res Résultat après le traitement du script PHP
2409   */   */
2410  function set_geolocalisation_message(res) {  function set_geolocalisation_message(res) {
2411      $('#geolocalisation-message').remove();      // Si il y a un message d'erreur
2412        if ($('#geolocalisation-message')[0]) {
2413            // Supprime le message
2414            $('#geolocalisation-message').remove();
2415            // Modifie les messages des autres fonctionnalités
2416            $('#calcul_emprise').each(
2417                function() {
2418                    $(this).children().removeClass();
2419                    $(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-error');
2420                    $(this).children().children().children(".text").text(res['log']['message_diff_parcelle']);
2421                }
2422            );
2423            $('#calcul_centroide').each(
2424                function() {
2425                    $(this).children().removeClass();
2426                    $(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-error');
2427                    $(this).children().children().children(".text").text(res['log']['message_diff_parcelle']);
2428                }
2429            );
2430            $('#recup_contrainte').each(
2431                function() {
2432                    $(this).children().removeClass();
2433                    $(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-error');
2434                    $(this).children().children().children(".text").text(res['log']['message_diff_parcelle']);
2435                }
2436            );
2437        }
2438        
2439  }  }
2440    
2441  /**  /**
# Line 2378  function set_geolocalisation_message(res Line 2443  function set_geolocalisation_message(res
2443   * @param  array   res  Résultat après le traitement du script PHP   * @param  array   res  Résultat après le traitement du script PHP
2444   */   */
2445  function set_geolocalisation_centroide(res) {  function set_geolocalisation_centroide(res) {
2446      $('span#centroide').text("POINT("+res['return']['coordX']+" "+res['return']['coordY']+")");      
2447        var content = "<a id='action-form-localiser'"+
2448                " target='_SIG' href='../app/redirect_plan_sig.php?idx="+res['return']['dossierID']+"'>"+
2449                "<span class='om-icon om-icon-16 om-icon-fix sig-16' title='Localiser'>Localiser</span> "+
2450                " POINT("+res['return']['coordX']+" "+res['return']['coordY']+")"+
2451                " </a>";
2452        
2453        $('span#centroide').html(content);
2454  }  }
2455    
2456  /**  /**
2457   * Met le champ servitude à jour   * Met le champ contrainte à jour
2458   * @param  array   res  Résultat après le traitement du script PHP   * @param  array   res  Résultat après le traitement du script PHP
2459   */   */
2460  function set_geolocalisation_contrainte(res) {  function set_geolocalisation_contrainte(res) {
2461      $('span#servitude').text(res['return']['servitude']);      // Contenus du champ contrainte
2462        var content = $('span#msg_contrainte_sig').html();
2463        // Si aucune contraintes est récupérées du SIG
2464        if (res['dossier_contrainte']['nb_contrainte_sig'] == 0) {
2465            content = res['dossier_contrainte']['msg_contrainte_sig_empty'];
2466        }
2467        // S'il y a des contraintes récupérées
2468        if (res['dossier_contrainte']['nb_contrainte_sig'] != 0) {
2469            content = res['dossier_contrainte']['nb_contrainte_sig'] + " " + res['dossier_contrainte']['msg_contrainte_sig']
2470        }
2471        // Affiche le message
2472        $('span#msg_contrainte_sig').html(content);
2473  }  }
2474    
2475  /**  /**
# Line 2552  function getAdressFromCadastrale(){ Line 2635  function getAdressFromCadastrale(){
2635              if ( $.isPlainObject(data)){              if ( $.isPlainObject(data)){
2636                                    
2637                  //On met l'adresse dans les champs                  //On met l'adresse dans les champs
2638                  $("#terrain_adresse_voie_numero").val(data.return.dnuvoi);                  $("#terrain_adresse_voie_numero").val(data.return_addr.dnuvoi);
2639                  $("#terrain_adresse_voie").val(data.return.prefixe+" "+data.return.nom);                  $("#terrain_adresse_voie").val(data.return_addr.nom);
2640                  $("#terrain_adresse_code_postal").val(data.return.arrdt);                  $("#terrain_adresse_code_postal").val(data.return_addr.arrdt);
2641                  $("#terrain_adresse_localite").val(data.return.localite);                  $("#terrain_adresse_localite").val(data.return_addr.localite);
2642              }              }
2643              //Sinon, on affiche un message d'erreur              //Sinon, on affiche un message d'erreur
2644              else {              else {
# Line 2565  function getAdressFromCadastrale(){ Line 2648  function getAdressFromCadastrale(){
2648          async: false          async: false
2649      });      });
2650  }  }
2651    
2652    /**
2653     * Modifie les champs requis pour le formulaire demande_type
2654     * @param  integer  demande_nature                         Identifiant
2655     * @param  string   lib_dossier_autorisation_type_detaille Libellé du champ
2656     * dossier_autorisation_type_detaille
2657     * @param  string   lib_dossier_instruction_type           Libellé du champ
2658     * dossier_instruction_type
2659     */
2660    function required_fields_demande_type(demande_nature, lib_dossier_autorisation_type_detaille, lib_dossier_instruction_type) {
2661    
2662        // Lien
2663        link = "../app/getDemandeNatureInfo.php?demande_nature=" + demande_nature;
2664    
2665        // Traitement
2666        $.ajax({
2667            type: "GET",
2668            url: link,
2669            cache: false,
2670            dataType: "json",
2671            success: function(demande_nature_info) {
2672    
2673                // On enlève le "*" au libellé du champ
2674                // dossier_autorisation_type_detaille pour montrer qu'il n'est
2675                // pas obligatoire
2676                $("#lib-dossier_autorisation_type_detaille").text('');
2677                $("#lib-dossier_autorisation_type_detaille")
2678                    .html(lib_dossier_autorisation_type_detaille);
2679    
2680                // On enlève le "*" au libellé du champ
2681                // dossier_instruction_type pour montrer qu'il n'est
2682                // pas obligatoire
2683                $("#lib-dossier_instruction_type").text('');
2684                $("#lib-dossier_instruction_type")
2685                    .html(lib_dossier_instruction_type);
2686                
2687                // Si c'est une nouvelle demande
2688                if (demande_nature_info != ''
2689                    && demande_nature_info != null) {
2690    
2691                    if (demande_nature_info['code'] == 'NOUV') {
2692    
2693                        // On ajoute le "*" au libellé du champ
2694                        // dossier_autorisation_type_detaille pour montrer qu'il est
2695                        // obligatoire
2696                        $("#lib-dossier_autorisation_type_detaille").text('');
2697                        $("#lib-dossier_autorisation_type_detaille")
2698                            .html(lib_dossier_autorisation_type_detaille + ' <span class="not-null-tag">*</span>');
2699    
2700                        // On ajoute le "*" au libellé du champ
2701                        // dossier_instruction_type pour montrer qu'il est
2702                        // obligatoire
2703                        $("#lib-dossier_instruction_type").text('');
2704                        $("#lib-dossier_instruction_type")
2705                            .html(lib_dossier_instruction_type + ' <span class="not-null-tag">*</span>');
2706    
2707                    }
2708    
2709                }
2710                
2711            },
2712            async:false
2713        });
2714    }
2715    
2716    /**
2717     * Appel au chargement de la page
2718     **/
2719    $(function() {
2720    
2721        // url de la page
2722        url = document.location + "";
2723    
2724        // Si dans le formulaire des type de demande
2725        // et que c'est en mode ajout ou modifier
2726        if (url.indexOf("form.php?obj=demande_type&") != -1
2727            && (url.indexOf("&action=0") != -1
2728            || url.indexOf("&action=1") != -1
2729            || url.indexOf("&validation=") != -1)) {
2730    
2731            // Récupère les paramètres nécessaires
2732            var demande_nature = $("#demande_nature").val();
2733            var lib_dossier_autorisation_type_detaille = $("#lib-dossier_autorisation_type_detaille").text();
2734            var lib_dossier_instruction_type = $("#lib-dossier_instruction_type").text();
2735    
2736            // Appelle la fonction pour indiquer si les champs sont requis ou non
2737            required_fields_demande_type(demande_nature, lib_dossier_autorisation_type_detaille, lib_dossier_instruction_type);
2738        }
2739    
2740    });
2741    
2742    /**
2743     * Cache les champs du formulaire événement
2744     * @param  array fields Tableau des champs
2745     */
2746    function hideFieldsEvenement(fields) {
2747    
2748        // Pour chaque champ
2749        for (var cpt = 0; cpt < fields.length; cpt++) {
2750    
2751            $('#' + fields[cpt]).each(
2752                function(){
2753    
2754                    // Récupère la balise parent et la valeur
2755                    var parentField = $(this).parent();
2756                    var valueField = $(this).val();
2757                    // Supprime le champ
2758                    $(this).remove();
2759                    // Affiche le champ en tant que static
2760                    parentField.append('<span id="'+fields[cpt]+'" class="field_value">'+valueField+'</span>');
2761                }
2762            );
2763    
2764        }
2765        
2766        // Cache les champs "evenement_retour_ar" et "evenement_retour_signature"
2767        $('#evenement_retour_ar').parent().parent().hide();
2768        $('#evenement_retour_signature').parent().parent().hide();
2769    }
2770    
2771    /**
2772     * Affiche les champs du formulaire événement
2773     * @param  array fields Tableau des champs
2774     */
2775    function showFieldsEvenement(fields) {
2776    
2777        // Pour chaque champ
2778        for (var cpt = 0; cpt < fields.length; cpt++) {
2779    
2780            $('#' + fields[cpt]).each(
2781                function(){
2782    
2783                    // Récupère la balise parent et la valeur
2784                    var parentField = $(this).parent();
2785                    var valueField = $(this).text();
2786                    // Supprime le champ
2787                    $(this).remove();
2788    
2789                    // Si le champ est restriction
2790                    if (this.id == 'restriction') {
2791    
2792                        // Réaffiche le champ en type text
2793                        parentField.append('<input id="'+this.id+'" class="champFormulaire" type="text" maxlength="60" size="30" value="'+ valueField +'" name="'+this.id+'">');
2794                    } else {
2795    
2796                        // Réaffiche les selects
2797                        parentField.append('<select id="'+this.id+'" class="champFormulaire" size="1" name="'+this.id+'"></select>');
2798                        filterSelect(valueField, fields[cpt], 'delai', 'evenement');
2799                    }
2800                }
2801            );
2802    
2803        }
2804    
2805        // Affiche les champs "evenement_retour_ar" et "evenement_retour_signature"
2806        $('#evenement_retour_ar').parent().parent().show();
2807        $('#evenement_retour_signature').parent().parent().show();
2808    }
2809    
2810    /**
2811     * Action onchange sur la case à cocher "retour" du formulaire "evenement"
2812     * @param  object field Champ de type booléen
2813     */
2814    function retourOnchangeEvenement(field) {
2815    
2816        // liste des champs à modifier dans le formulaire
2817        var fields = new Array(
2818            'restriction',
2819            'delai',
2820            'accord_tacite',
2821            'delai_notification',
2822            'avis_decision'
2823        );
2824    
2825        // Si le champ booléen est à 'Oui'
2826        if (field.value == 'Oui') {
2827            // Cache et rend static les champs de la liste
2828            hideFieldsEvenement(fields);
2829        } else {
2830            // Affiche et rend modifiable les champs de la liste
2831            showFieldsEvenement(fields);
2832        }
2833    }
2834    
2835    function dossierContrainteValidationForm(objsf, link, formulaire) {
2836        // composition de la chaine data en fonction des elements du formulaire
2837        var data = "";
2838        if (formulaire) {
2839            for (i=0; i<formulaire.elements.length; i++) {
2840                data += formulaire.elements[i].name+"="+encodeURIComponent(formulaire.elements[i].value)+"&";
2841            }
2842        }
2843        
2844        // execution de la requete en POST
2845        $.ajax({
2846            type: "POST",
2847            url: link,
2848            cache: false,
2849            data: data,
2850            dataType: "json",
2851            success: function(html){
2852                // Efface le message
2853                $('.message').remove();
2854                // Affiche le message
2855                $('.subtitle').after(
2856                    '<div ' +
2857                        'class="message ui-widget ui-corner-all ui-state-highlight ui-state-valid">' +
2858                        '<p>' +
2859                            '<span class="ui-icon ui-icon-info"></span>' +
2860                            '<span class="text">' +
2861                                html +
2862                            '</span>' +
2863                        '</p>' +
2864                    '</div>'                    
2865                );
2866                // Décoche toutes les checkbox
2867                $(":checkbox").attr('checked', false);
2868                $(":checkbox").attr('value', '');
2869            }
2870        });
2871    }
2872    
2873    /**
2874     * Permet de recharger la page.
2875     */
2876    function refresh_page_return() {
2877        // Recharge la page
2878        location.reload();
2879    }

Legend:
Removed from v.2237  
changed lines
  Added in v.3349

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26