/[openfoncier]/branches/3.2.x/app/js/script.js
ViewVC logotype

Diff of /branches/3.2.x/app/js/script.js

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

revision 660 by fmichon, Mon Nov 12 09:13:10 2012 UTC revision 768 by vpihour, Tue Nov 20 11:56:59 2012 UTC
# Line 179  function popupIt(objsf, link) { Line 179  function popupIt(objsf, link) {
179    
180  function changeDataSelect(tn, ds, joker){  function changeDataSelect(tn, ds, joker){
181                    
182      var idArrondissement = $("#"+ds+" option:selected").val();      var id = $("#"+ds+" option:selected").val();
183      link = "../app/listData.php?idx=" + idArrondissement + "&tn=" + tn + "&ds=" + ds;      link = "../app/listData.php?idx=" + id + "&tn=" + tn + "&ds=" + ds;
184      $.ajax({      $.ajax({
185          type: "GET",          type: "GET",
186          url: link,          url: link,
# Line 237  function tmpUpload(champ) { Line 237  function tmpUpload(champ) {
237      fenetreouverte = true;      fenetreouverte = true;
238  }  }
239    
240  //$(function() {  /*
241  //    if ( $('#date_demande').length > 0 && !$('#dossier_autorisation_type_detaille').is(':disabled') )      Ajoute le formulaire d'jout de référence cadastrale personnalisé
242  //        hideFields();   * */
243  //          $(function() {
 //      
 //});  
   
 function changeDemandeType(){  
       
     var idDossierAutorisationTypeDetaille = $("#dossier_autorisation_type_detaille option:selected").val();  
244            
245      if ( $.isNumeric(idDossierAutorisationTypeDetaille) ){      url = document.location + "" ;
246        if ( $('#date_demande').length > 0
247            && !$('#dossier_autorisation_type_detaille').is(':disabled')
248            && url.indexOf("form.php?obj=demande&action=0") != -1 ){
249                    
250          changeDataSelect('demande_type','dossier_autorisation_type_detaille');          $.ajax({
251                type: "GET",
252                url: "sousform.php?obj=demandeur&action=0&tri=&objsf=demandeur&premiersf=0",
253                cache: false,
254                success: function(html){
255                    
256                    $('.lots').append(createFieldset('test', 'test'));
257                    $('#test').html(html);
258                    $('#test .formControls').remove();
259    
260                    $('#test').html($('#test .formEntete').html());
261                    
262                    $('#test #particulier_prenom').parent().append(
263                        '<span class="om-icon om-icon-16 om-icon-fix search-part-16" title="Chercher un petitionnaire"></span>'
264                    );
265                    $('#test #personne_morale_raison_sociale').parent().append(
266                        '<span class="om-icon om-icon-16 om-icon-fix search-mor-16" title="Chercher un petitionnaire"></span>'
267                    );
268                    $('#test input[id=personne_morale_prenom]').after(
269                        '<span class="om-icon om-icon-16 om-icon-fix search-mor-16" title="Chercher un petitionnaire"></span>'
270                    );
271                    
272                    obj = $('#type_demandeur').parent();
273                    obj.empty();
274                    obj.html(
275                        '<select id="type_demandeur" class="champFormulaire selectTypeDemandeur" name="type_demandeur" size="1">' +
276                            '<option selected="selected" value="particulier">particulier</option>' +
277                            '<option value="personne_morale">personne morale</option>' +                    
278                        '</select>'
279                    );
280                    
281                    setSelectCivilite();
282                },
283                async: false
284            });
285                    
286         $('#demande_type').parent().parent().show();          $('.lots').append(createFieldset('P&eacute;titionnaire(s)', 'petitionnaire__0'));
287                  $('#petitionnaire__0').after(
288         $('.terrain_references_cadastrales_custom').append(              '<div class="field field-type-text morePetitionnaire" style="display: table-row;">' +
            '<div class="field field-type-text" >'+  
289                  '<div class="form-libelle">' +                  '<div class="form-libelle">' +
290                      '<label '+                      '<label class="libelle-more_petitionnaire" for="terrain_superficie"> + Ajouter un autre p&eacute;titionnaire </label>' +
                         'class="libelle-terrain_references_cadastrales" '+  
                         'for="terrain_references_cadastrales">'+  
                         ' terrain_references_cadastrales '+  
                     '</label>' +  
291                  '</div>' +                  '</div>' +
292                  '<div class="form-content reference_cadastrale_custom_fields">' +                  '<div class="form-content">' +
                     '<input ' +  
                         'class="champFormulaire reference_cadastrale_custom_field" ' +  
                         'type="text" ' +  
                         'onchange="VerifNum(this)" ' +  
                         'maxlength="3" ' +  
                         'size="3" ' +  
                         'value="" />' +  
                     '<input ' +  
                         'class="champFormulaire reference_cadastrale_custom_field" ' +  
                         'type="text" ' +  
                         'maxlength="2" ' +  
                         'size="2" ' +  
                         'value="" />' +  
                     '<input ' +  
                         'class="champFormulaire reference_cadastrale_custom_field" ' +  
                         'type="text" ' +  
                         'onchange="VerifNum(this)" ' +  
                         'maxlength="4" ' +  
                         'size="4" ' +  
                         'value="" />' +  
293                  '</div>' +                  '</div>' +
294             '</div>' +              '</div>');
295             '<div id="moreFieldReferenceCadastrale"> + ajouter d\'autres champs</div>'          
296         );          $('.morePetitionnaire').click( function() {
297                      $('#fieldsetpetitionnaire__0 .morePetitionnaire').before(
298         $('#moreFieldReferenceCadastrale').click( function() {                  '<div id="petitionnaire__' + $('#fieldsetpetitionnaire__0 .fieldsetContent').size() +'" class="fieldsetContent">'+
299              $('.reference_cadastrale_custom_fields').append(newInputReferenceCadastrale());                      $('#fieldsetpetitionnaire__0 .formsDemandeur').val() +
300          });                  '</div>'
301                );
302                
303                nb = $('#fieldsetpetitionnaire__0 .fieldsetContent').size() - 1;
304                
305                changeIdNameField('petitionnaire__' + nb, '_' + nb );
306                
307                addDatePicker( 'petitionnaire__' + nb + ' #particulier_date_naissance_' + nb);
308                actionVeerifyFields('petitionnaire__' + nb, '_' + nb);
309                
310                addActionSearch('petitionnaire__' + nb, '_' + nb);
311                
312                setTypeDemandeur('petitionnaire__' + nb, '_' + nb );
313                
314                $('html, body').animate({
315                    scrollTop: $('#petitionnaire__' + nb + ' #type_demandeur').offset().top
316                }, 1000);
317            });    
318            
319            $('.lots').append(createFieldset('D&eacute;l&eacute;gataire', 'delegataire'));
320            setDelegataire();
321            setPetitionnaire();
322            setTypeDemandeur('petitionnaire__0', '_0');
323            
324            $('#petitionnaire__0').before(
325                '<div id="dialog" title="Résultats de votre recherche"></div>'
326            );
327                
328            hideFields();
329        }
330      
331       if ( $('#date_demande').length > 0
332            && !$('#dossier_autorisation_type_detaille').is(':disabled')
333            && url.indexOf("form.php?obj=demande&action=1") != -1 ){
334                
335            addNewFieldReferencesCadastrales();
336            $('#terrain_references_cadastrales').parent().parent().hide();
337                    
338          $('form').submit(          reference_cadastrale = $('#terrain_references_cadastrales').val();
339              function(){          /*Formatage de la reference cadastrale*/
340            if ( reference_cadastrale != '' ){
341                
342                references_cadastrales = reference_cadastrale.split(';');
343                donnees = new Array();
344                
345                i = 0 ;
346                for ( l = 0 ; l < references_cadastrales.length - 1 ; l ++ ){
347                    
348                    k = 0;
349                    donnees[i] = '';
350                    for ( j = k ; j < references_cadastrales[l].length ; j++ )
351                        if ( references_cadastrales[l].charAt(j) >= 0 && references_cadastrales[l].charAt(j) <= 9 ){
352                            donnees[i] += references_cadastrales[l].charAt(j);
353                            k++;
354                        } else {
355                            i++;
356                            break;
357                        }
358                    
359                          
360                    donnees[i] = '';
361                    for ( j = k ; j < references_cadastrales[l].length ; j++ )
362                        if ( isAlpha(references_cadastrales[l].charAt(j)) ){
363                            donnees[i] += references_cadastrales[l].charAt(j);
364                            k++;
365                        } else {
366                            i++;
367                            break;
368                        }
369                    
370                    donnees[i] = '';
371                    for ( j = k ; j < references_cadastrales[l].length ; j++ )
372                        if ( references_cadastrales[l].charAt(j) >= 0 && references_cadastrales[l].charAt(j) <= 9 ){
373                            donnees[i] += references_cadastrales[l].charAt(j);
374                            k++;
375                        } else {
376                            break;
377                        }
378                    
379                    m = 0 ;
380                    if ( k < references_cadastrales[l].length ){
381                        
382                        for ( j = k ; j < references_cadastrales[l].length ; j++ )
383                            if ( isAlpha(references_cadastrales[l].charAt(j)) ){
384                                m++;
385                                donnees[++i] = references_cadastrales[l].charAt(j);
386                                donnees[++i] = '';
387                            }
388                            else {
389                                donnees[i] += references_cadastrales[l].charAt(j);
390                            }
391                    }
392    
393                    donnees[++i] = ';';
394                    i++;
395    
396                    if ( l > 0 )
397                        $('.reference_cadastrale_custom_fields').append( "<br/>" + fieldReferenceCadastraleBase());
398                    actionFormReferenceCadastrale();
399                    
400                    if ( m > 0 ){
401                                
402                        for ( j = 0 ; j < m ; j++ )
403                            $('#moreFieldReferenceCadastrale' + ( $('.moreFieldReferenceCadastrale').length - 1 ) ).before(newInputReferenceCadastrale());
404                    }
405                }
406    
407                actionLineFormReferenceCadastrale();
408                
409                $('.reference_cadastrale_custom_field').each(
410                    function(index) {
411                         $(this).val(donnees[index])
412                    }
413                );
414            }
415       }
416    });
417    
418    /*
419        Création du formuliare pour le petitionnaire
420     * */
421    function setPetitionnaire(){
422        $('#petitionnaire__0').prepend("<br/>" + $('#test').html() + "<br/>");
423        $('#test').parent().remove();
424        
425        addActionSearch('petitionnaire__0', '_0');
426        
427    }
428    
429    /*
430        Action au changement du select du type de demandeur
431     * */
432    function setTypeDemandeur(id, complement){
433        $('#'+id + ' select[id="type_demandeur"]').on('change',
434            function() {
435    
436                if ( $(this).find('option:selected').first().text() == 'particulier' )
437                    fieldTypeDemandeur('#' + id, true, complement);
438                else
439                    fieldTypeDemandeur('#' + id, false, complement);
440            }
441        );
442    }
443    
444    /*
445        Création du formulaire pour le délégataire
446     * */
447    function setDelegataire(){
448        $('#delegataire').html($('#test').html());
449        
450        $('#delegataire #type_demandeur').parent().parent().remove();
451        $('#delegataire #personne_morale_denomination').parent().parent().remove();
452        $('#delegataire #personne_morale_raison_sociale').parent().parent().remove();
453        $('#delegataire #personne_morale_siret').parent().parent().remove();
454        $('#delegataire #personne_morale_categorie_juridique').parent().parent().remove();
455        $('#delegataire #personne_morale_civilite').parent().parent().remove();
456        $('#delegataire #personne_morale_nom').parent().parent().remove();
457        $('#delegataire #personne_morale_prenom').parent().parent().remove();
458        $('#delegataire #frequent').parent().parent().remove();
459        $('#delegataire .search-part-16').remove();
460        
461        changeIdNameField('delegataire', '');
462        addDatePicker('delegataire #particulier_date_naissance');
463        actionVeerifyFields('delegataire', '');
464    }
465    
466    
467    
468    /*
469        Change les id et les name des champs
470     * */
471    function changeIdNameField(id, complement){
472        
473        $('#' + id + ' input').each(
474            function(){
475                $(this).attr('name', id + '__' + $(this).attr('name') );
476                $(this).attr('id', $(this).attr('id') + complement );
477            }
478        );
479    
480        $('#' + id + ' select').each(
481            function(){
482                $(this).attr('name', id + '__' + $(this).attr('name') );
483                $(this).attr('id', $(this).attr('id') + complement );
484            }
485        );
486        
487        
488    }
489    
490    function actionVeerifyFields(id, complement){
491        $('#' + id + ' #numero'+complement).change(
492            function(){
493                VerifNum(this);
494            }
495        );
496        
497        $('#' + id + ' #telephone_fixe'+complement).change(
498            function(){
499                if ( !isPhoneNumber($(this).val()) ) {
500                                    
501                  var reference_cadastrale = '';                  alert('Vous ne devez saisir que des nombres');
502                    $(this).val('');
503                }
504            }
505        );
506        
507        $('#' + id + ' #telephone_mobile'+complement).change(
508            function(){
509                if ( !isPhoneNumber($(this).val()) ) {
510                                    
511                  $('.reference_cadastrale_custom_field').each(                  alert('Vous ne devez saisir que des nombres');
512                      function(){                  $(this).val('');
513                }
514            }
515        );
516        
517        $('#' + id + ' #courriel'+complement).change(
518            function(){
519                if ( !isMail($(this).val()) ) {
520                    
521                    alert('Saisissez une adresse mail correcte');
522                }
523            }
524        );
525    }
526    
527    /*
528        Ajoute les le datespicker sur les champs de date
529     * */
530    function addDatePicker(id){
531        
532        $("#" + id ).datepicker({
533            dateFormat: dateFormat,
534            changeMonth: true,
535            changeYear: true,
536            yearRange: minYear+':'+maxYear,
537            showOn: 'button',
538            buttonImage: '../img/calendar.png',
539            buttonImageOnly: true,
540            constrainInput: true
541        });
542    }
543    
544    /*
545        Ajout de l'action de recherche des pétitionnaire fréquent dans un overlay
546     * */
547    function addActionSearch(id, complement){
548        
549        $('#' + id + ' .search-part-16').click(
550            function(){
551                
552                var donnees = "?type=particulier&par_nom=";
553                $('#' + id + ' .search_particulier_fields input').each(
554                    function(i){
555    
556                        donnees += $(this).val() + (( i == 0 ) ?  '&par_prenom='  : '') ;
557                    }
558                );
559    
560                $.ajax({
561                    type: "GET",
562                    url: "../app/findPetitionnaire.php" + donnees ,
563                    cache: false,
564                    success: function(html){
565                        
566                        res = 'Auncune correspondance trouvée.';
567                        
568                        if ( html.length > 2 ){
569                                                    
570                          reference_cadastrale += $(this).val();                          res = '<select>' ;
571                            donnees = html.split(';');
572    
573                            for ( i = 0 ; i < donnees.length - 1 ; i++ ){
574    
575                                val = donnees[i].replace('"', '');
576                                line = donnees[i].split('_');
577                                
578                                if ( line[3] != '' ){
579                                    
580                                    line[3] = ' - ' + line[3];
581                                }
582                                
583                                res += '<option value="' + val + '">' + line[1] + ' ' + line[2] + line[3] + '</option>';
584                            }
585                            
586                            res += '</select>' ;
587                      }                      }
588                  );                      
589                        $('#dialog').html(res);
590                          
591                        $( "#dialog" ).dialog({
592                            modal: true,
593                            buttons : {
594                                Valider: function(){
595                                    
596                                    if ( res != 'Auncune correspondance trouvée.' ){
597                                        donnees = $('#dialog select option:selected').val();
598                                        donnees = donnees.split('_');
599                                        
600                                        if ( $.isNumeric(donnees[4]) )
601                                            $('#' + id + ' select[id="particulier_civilite' + complement + '"] option[value="' + $.trim(donnees[4]) + '"]').attr('selected','selected');
602                                        $('#' + id + ' input[id="particulier_nom' + complement + '"]').val($.trim(donnees[1]));
603                                        $('#' + id + ' input[id="particulier_prenom' + complement + '"]').val($.trim(donnees[2]));
604                                        
605                                        /*Vérifie si la date est non vide avant de la traiter*/
606                                        date_temp = $.trim(donnees[3]);
607                                        if ( date_temp != '' ){
608                                            date = date_temp.split('-');
609                                            date = date[2] + "/" + date[1] + "/" + date[0] ;
610                                            $('#' + id + ' input[id="particulier_date_naissance' + complement + '"]').val(date);
611                                        }
612                                        $('#' + id + ' input[id="particulier_commune_naissance' + complement + '"]').val($.trim(donnees[10]));
613                                        $('#' + id + ' input[id="particulier_departement_naissance' + complement + '"]').val($.trim(donnees[11]));
614                                        
615                                        changeValInputDemandeur(id, donnees, complement);
616                                    }
617                                    
618                                    $(this).dialog( "close" );
619                                }
620                            }
621                        });
622                    },
623                    async: false
624                });
625            }
626        );
627        
628        $('#' + id + ' .search-mor-16').click(
629            function(){
630                
631                var donnees = "?type=personne_morale"+
632                    "&mor_denomination="+$('#'+id+' input[id="personne_morale_denomination' + complement + '"]').val() +
633                    "&mor_nom="+$('#'+id+' input[id="personne_morale_nom' + complement + '"]').val();
634                    
635                $.ajax({
636                    type: "GET",
637                    url: "../app/findPetitionnaire.php" + donnees ,
638                    cache: false,
639                    success: function(html){
640                        
641                        res = 'Auncune correspondance trouvée.';
642                        
643                        if ( html > 2 ){
644                            
645                            res = '<select>' ;
646                            donnees = html.split(';');
647    
648                            for ( i = 0 ; i < donnees.length - 1 ; i++ ){
649    
650                                val = donnees[i].replace('"', '');
651                                line = donnees[i].split('_');
652                                
653                                res += '<option value="' + val + '">' + line[5] + ' ' + line[6] + '</option>';
654                            }
655                            
656                            res += '</select>' ;
657                        }
658                        
659                        $('#dialog').html(res);
660                          
661                        $( "#dialog" ).dialog({
662                            modal: true,
663                            buttons : {
664                                Valider: function(){
665                                    
666                                    if ( res != 'Auncune correspondance trouvée.' ){
667                                        donnees = $('#dialog select option:selected').val();
668                                        donnees = donnees.split('_');
669                                        
670                                        if ( $.isNumeric(donnees[8]) )
671                                            $('#' + id + ' select[id="personne_morale_civilite' + complement + '"] option[value="' + $.trim(donnees[8]) + '"]').attr('selected','selected');
672                                        $('#' + id + ' input[id="personne_morale_denomination' + complement + '"]').val($.trim(donnees[5]));
673                                        $('#' + id + ' input[id="personne_morale_raison_sociale' + complement + '"]').val($.trim(donnees[12]));
674                                        $('#' + id + ' input[id="personne_morale_siret' + complement + '"]').val($.trim(donnees[6]));
675                                        $('#' + id + ' input[id="personne_morale_categorie_juridique' + complement + '"]').val($.trim(donnees[13]));
676                                        $('#' + id + ' input[id="personne_morale_nom' + complement + '"]').val($.trim(donnees[7]));
677                                        $('#' + id + ' input[id="personne_morale_prenom' + complement + '"]').val($.trim(donnees[9]));
678                                        
679                                        changeValInputDemandeur(id, donnees, complement);
680                                    }
681                                    $(this).dialog( "close" );
682                                }
683                            }
684                        });
685                    },
686                    async: false
687                });
688            }
689        );
690    }
691    
692    /*
693        Change les valeurs des champs en commun des particuliers et des personnes morales
694     * */
695    function changeValInputDemandeur(id, donnees, complement){
696        
697        $('#' + id + ' input[id="demandeur' + complement + '"]').val($.trim(donnees[0]));
698        /*Teste si la valeur retournée est TRUE*/
699        if ( donnees[28] === 't' ){
700            $('#' + id + ' input[id="notification' + complement + '"]').attr('checked', 'checked');
701            $('#' + id + ' input[id="notification' + complement + '"]').val('Oui');
702        }
703        $('#' + id + ' input[id="frequent' + complement + '"]').attr('checked','checked');
704        $('#' + id + ' input[id="frequent' + complement + '"]').val('Oui');
705        $('#' + id + ' input[id="numero' + complement + '"]').val($.trim(donnees[14]));
706        $('#' + id + ' input[id="voie' + complement + '"]').val($.trim(donnees[15]));
707        $('#' + id + ' input[id="complement' + complement + '"]').val($.trim(donnees[16]));
708        $('#' + id + ' input[id="lieu_dit' + complement + '"]').val($.trim(donnees[17]));
709        $('#' + id + ' input[id="localite' + complement + '"]').val($.trim(donnees[18]));
710        $('#' + id + ' input[id="code_postal' + complement + '"]').val($.trim(donnees[19]));
711        $('#' + id + ' input[id="bp' + complement + '"]').val($.trim(donnees[20]));
712        $('#' + id + ' input[id="cedex' + complement + '"]').val($.trim(donnees[21]));
713        $('#' + id + ' input[id="pays' + complement + '"]').val($.trim(donnees[22]));
714        $('#' + id + ' input[id="division_territoriale' + complement + '"]').val($.trim(donnees[23]));
715        $('#' + id + ' input[id="telephone_fixe' + complement + '"]').val($.trim(donnees[24]));
716        $('#' + id + ' input[id="telephone_mobile' + complement + '"]').val($.trim(donnees[25]));
717        $('#' + id + ' input[id="indicatif' + complement + '"]').val($.trim(donnees[26]));
718        $('#' + id + ' input[id="courriel' + complement + '"]').val($.trim(donnees[27]));
719    }
720    
721    /*
722        Création des select pour la civilité
723     * */
724    function setSelectCivilite(){
725        
726        $.ajax({
727            type: "GET",
728            url: "../app/civilite.php",
729            dataType: "json",
730            cache: false,
731            success: function(html){
732                if ( html != '' ){
733                    
734                    $('#particulier_civilite').parent().html('<select id="particulier_civilite" class="champFormulaire" size="1" name="particulier_civilite">' +
735                            '<option value="" selected="selected">choisir particulier_civilite</option>');
736                    $('#personne_morale_civilite').parent().html('<select id="personne_morale_civilite" class="champFormulaire" size="1" name="personne_morale_civilite">' +
737                            '<option value="" selected="selected">choisir personne_morale_civilite</option>');
738                                    
739                  $('#terrain_references_cadastrales').val(reference_cadastrale);                  civilites = html.split(';');
740                    for ( i = 0 ; i < civilites.length - 1 ; i++ ){
741                        
742                        civilite = civilites[i].split('_');
743                        $('#particulier_civilite').append('<option value="' + civilite[0] + '">' + civilite[1] + '</option>');
744                        $('#personne_morale_civilite').append('<option value="' + civilite[0] + '">' + civilite[1] + '</option>');
745                    }
746                    
747                    $('#particulier_civilite').append('</select>');
748                    $('#personne_morale_civilite').append('</select>');
749              }              }
750          );          },
751            async: false
752        });
753    }
754    
755    /*
756        Retourne le code HTML d'un fieldset
757     * */
758    function createFieldset(name, className){
759        return '<fieldset class="cadre ui-corner-all ui-widget-content" id="fieldset' + className + '">' +
760                    '<legend class="ui-corner-all ui-widget-content ui-state-active">' + name + ' </legend>' +
761                    '<input class="formsDemandeur" type="hidden" val=""/>'+
762                    '<div class="fieldsetContent " id="' + className + '">' +
763                    '</div>' +
764                    '<div class="visualClear"></div>' +
765                    '</div>' +
766               '</fieldset>';
767    }
768    
769    /*
770        Test str est une lettre de l'alphabet
771     * */
772    function isAlpha(str) {
773        return /^[a-zA-Z\/]+$/.test(str);
774    }
775    
776    function isMail(str){
777        return /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(str);
778    }
779    
780    function isPhoneNumber(str){
781        return /[0-9-()+]{3,20}/.test(str);
782    }
783    
784    /*
785        Ajoute les ations spécifiques pour le formulaire personnalisé d'ajout de référence cadastrale
786     * */
787    function actionFormReferenceCadastrale(){
788        $('form').submit(
789            function(){
790                
791                var reference_cadastrale = '';
792                var reference_cadastrale_temp = '';
793                
794                $('.reference_cadastrale_custom_field').each(
795                    function(){
796                        
797                        if ( $(this).val() == ';' ){
798                            
799                            reference_cadastrale_bis = reference_cadastrale_temp + ( ( reference_cadastrale_temp != '' && reference_cadastrale_temp.length > 0 ) ? ';' : '' );
800                            if ( /^([0-9]{1,4}[a-zA-Z]{1,3}[0-9]{1,5}([A\/]{1}[0-9]{1,4})*;)*$/.test(reference_cadastrale_bis) ){
801                                
802                                reference_cadastrale += reference_cadastrale_bis;
803                            }
804                            reference_cadastrale_temp = '';
805                        }
806                        else
807                            reference_cadastrale_temp += $(this).val();
808                        
809                    }
810                );
811                
812                $('#terrain_references_cadastrales').val(reference_cadastrale);
813            }
814        );
815    
816        $('#moreFieldReferenceCadastrale' + ($('.moreFieldReferenceCadastrale').length - 1 )).on("click", function() {
817            $(this).before(newInputReferenceCadastrale());
818        });
819        
820    }
821    
822    /*
823        Action pour l'ajout de nouvelle ligne
824     * */
825    function actionLineFormReferenceCadastrale(){
826        $('#morelineReferenceCadastrale').click(
827            function(){
828                
829                $('.reference_cadastrale_custom_fields').append( "<br/>" + fieldReferenceCadastraleBase());
830                $('#moreFieldReferenceCadastrale'+ ($('.moreFieldReferenceCadastrale').length - 1 )).on("click", function() {
831                    $(this).before(newInputReferenceCadastrale());
832                });
833                
834                
835            }
836        );
837    }
838    
839    /*
840        Met à jour le select demande_type dès qu'un dossier_autorisation_type_detaille est choisi
841     * */
842    function changeDemandeType(){
843        
844        var idDossierAutorisationTypeDetaille = $("#dossier_autorisation_type_detaille option:selected").val();
845        
846        if ( $.isNumeric(idDossierAutorisationTypeDetaille) ){
847            
848            changeDataSelect('demande_type','dossier_autorisation_type_detaille');
849            if ( $('#demande_type option').size() < 2 )
850                showFormsDemande();
851                    
852          $('.terrain_references_cadastrales_custom:').find(">:first-child").hide();         $('#demande_type').parent().parent().show();
853          
854           addNewFieldReferencesCadastrales();
855          
856           actionFormReferenceCadastrale();
857           actionLineFormReferenceCadastrale()        
858      }      }
859      else {      else {
860          hideFields();          hideFields();
861      }      }
862  }  }
863    
864    /*
865        Ajoute le code HTML des champs pour les références cadastrales
866     * */
867    function addNewFieldReferencesCadastrales(){
868        $('.references_cadastrales_new_field').remove();
869        $('.moreFieldReferenceCadastrale').remove();
870        $('#morelineReferenceCadastrale').remove();
871        $('.localisation .fieldsetContent').prepend(
872           '<div class="field field-type-text references_cadastrales_new_field" >'+
873                '<div class="form-libelle">' +
874                    '<label '+
875                        'class="libelle-terrain_references_cadastrales" '+
876                        'for="terrain_references_cadastrales">'+
877                        ' terrain_references_cadastrales '+
878                    '</label>' +
879                '</div>' +
880                '<div class="form-content reference_cadastrale_custom_fields">' +
881                     fieldReferenceCadastraleBase() +
882                '</div>' +
883           '</div>' +
884           '<div class="field field-type-text" id="morelineReferenceCadastrale">' +
885                '<div class="form-libelle"></div>' +
886                '<div class="form-content">' +
887                    ' + ajouter d\'autres lignes' +
888                '</div>' +
889           '</div>'      
890       );
891       $('#terrain_superficie').parent().parent().after('<div class="field field-type-text" >' +
892                '<div class="form-libelle"></div>' +
893                '<div class="form-content">' +
894                    '<input id="cad-adr-them" class="ui-button ui-widget ui-state-default ui-corner-all" type="button" value="Cadastrale < = > Adresse"/>' +
895                '</div>' +
896           '</div>' );
897    }
898    
899    /*
900        Séparateur caché ;
901     * */
902    function hiddenSeparatorField(){
903        return '<input ' +
904                    'class="reference_cadastrale_custom_field " ' +
905                    'type="hidden" ' +
906                    'maxlength="2" ' +
907                    'size="2" ' +
908                    'value=";" />';
909    }
910    
911    /*
912        Ajout d'une nouvelle ligne de champ
913     * */
914    function fieldReferenceCadastraleBase(){
915        return '<input ' +
916                    'class="champFormulaire reference_cadastrale_custom_field" ' +
917                    'type="text" ' +
918                    'onchange="VerifNum(this)" ' +
919                    'maxlength="4" ' +
920                    'size="4" ' +
921                    'value="" />' +
922                '<input ' +
923                    'class="champFormulaire reference_cadastrale_custom_field" ' +
924                    'type="text" ' +
925                    'maxlength="3" ' +
926                    'size="3" ' +
927                    'value="" '+
928                    'onchange="if ( !isAlpha(this.value) ){ alert(\'Vous ne devez saisir que des lettres dans ce champs.\'); this.value = \'\'; }"/>' +
929                '<input ' +
930                    'class="champFormulaire reference_cadastrale_custom_field" ' +
931                    'type="text" ' +
932                    'onchange="VerifNum(this)" ' +
933                    'maxlength="5" ' +
934                    'size="5" ' +
935                    'value="" />' +
936                '<span id="moreFieldReferenceCadastrale' + $('.moreFieldReferenceCadastrale').length + '" class="moreFieldReferenceCadastrale">' +
937                    hiddenSeparatorField() +
938                    ' + ajouter d\'autres champs' +
939                '</span>';
940    }
941    
942    /*
943        Cache les champs inutules
944     * */    
945  function hideFields(){  function hideFields(){
946      $('.bloc').each(      $('.bloc').each(
947          function(){          function(){
# Line 329  function hideFields(){ Line 955  function hideFields(){
955      $('#demande_type').parent().parent().hide();      $('#demande_type').parent().parent().hide();
956  }  }
957    
958    /*
959        Affiche les champs dont on a besoin
960     * */
961  function showFormsDemande(){  function showFormsDemande(){
962      $('.bloc').each(      $('.bloc').each(
963          function(){          function(){
# Line 339  function showFormsDemande(){ Line 968  function showFormsDemande(){
968            
969      $('.field-type-text').show();      $('.field-type-text').show();
970      $('input[type=submit]').show();      $('input[type=submit]').show();
971        $('.terrain_references_cadastrales_custom').hide();
972        
973        $('#terrain_references_cadastrales').parent().parent().hide();
974        
975        /*Cache les champs inutiles*/
976        fieldTypeDemandeur('#petitionnaire__0', true, '_0');
977        
978        $('#fieldsetpetitionnaire__0 .formsDemandeur').val($('#petitionnaire__0').html());
979        
980        changeIdNameField('petitionnaire__0', '_0');
981        actionVeerifyFields('petitionnaire__0', '_0');
982        
983        addDatePicker('petitionnaire__0 #particulier_date_naissance_0');
984        actionVeerifyFields('petitionnaire__0', '_0');
985    }
986    
987    /*
988        Cache/montre des champs selon le type de demandeur
989     * */
990    function fieldTypeDemandeur(name, particulier, complement){
991    
992        if ( particulier == true ){
993    
994            $(name + ' select[id="particulier_civilite' + complement + '"] option[value=""]').attr('selected', 'selected');
995            $(name + ' input[id="particulier_nom' + complement + '"]').val('');
996            $(name + ' input[id="particulier_prenom' + complement + '"]').val('');
997            $(name + ' input[id="particulier_date_naissance' + complement + '"]').val('');
998            $(name + ' input[id="particulier_commune_naissance' + complement + '"]').val('');
999            $(name + ' input[id="particulier_departement_naissance' + complement + '"]').val('');
1000            
1001            $( name + ' .particulier_fields').show();
1002            $( name + ' .personne_morale_fields').hide();
1003        }
1004        else{
1005            
1006            $(name + ' select[id="personne_morale_civilite' + complement + '"] option[value=""]').attr('selected', 'selected');
1007            $(name + ' input[id="personne_morale_denomination' + complement + '"]').val('');
1008            $(name + ' input[id="personne_morale_raison_sociale' + complement + '"]').val('');
1009            $(name + ' input[id="personne_morale_siret' + complement + '"]').val('');
1010            $(name + ' input[id="personne_morale_categorie_juridique' + complement + '"]').val('');
1011            $(name + ' input[id="personne_morale_nom' + complement + '"]').val('');
1012            $(name + ' input[id="personne_morale_prenom' + complement + '"]').val('');
1013            $( name + ' .particulier_fields').hide();
1014            $( name + ' .personne_morale_fields').show();
1015        }
1016  }  }
1017    
1018    /*
1019        Action au clique sur le bouton " + ajouter d'autres champs"
1020     * */
1021  function newInputReferenceCadastrale(){  function newInputReferenceCadastrale(){
1022      return '<input ' +      return '<input ' +
1023              'class="champFormulaire reference_cadastrale_custom_field" ' +              'class="champFormulaire reference_cadastrale_custom_field" ' +
1024              'type="text" ' +              'type="text" ' +
1025              'maxlength="1" ' +              'maxlength="1" ' +
1026              'size="1" ' +              'size="1" ' +
1027              'value="" />' +              'value="" ' +
1028                'onchange="testSeparator(this);"/>' +
1029          '<input ' +          '<input ' +
1030              'class="champFormulaire reference_cadastrale_custom_field" ' +              'class="champFormulaire reference_cadastrale_custom_field" ' +
1031              'type="text" ' +              'type="text" ' +
# Line 357  function newInputReferenceCadastrale(){ Line 1035  function newInputReferenceCadastrale(){
1035              'value="" />';              'value="" />';
1036  }  }
1037    
1038    function testSeparator(obj){
1039    
1040        if ( obj.value != 'A' &&
1041             obj.value != '/' ) {
1042                
1043            alert('Saisissez uniquement un A ou un / comme séparateur');
1044            obj.value = '';
1045        }
1046    }
1047    
1048  // Desactivation des fonctions widget du tableau de bord inutiles sur le nouveau  // Desactivation des fonctions widget du tableau de bord inutiles sur le nouveau
1049  // tableau de bord  // tableau de bord
1050  function widget_bind_move_actions() {}  function widget_bind_move_actions() {}
1051  function widget_bind_add_action() {}  function widget_bind_add_action() {}
1052  function widget_bind_edit_actions(widget_selector) {}  function widget_bind_edit_actions(widget_selector) {}
1053    
1054    function file(fichier) {
1055        //
1056        if (fichier == "") {
1057            alert("zone vide");
1058        }
1059        //
1060        pfenetre = window.open("../app/file.php?file="+fichier,"Visualisation","width=100,height=100,top=1,left=150,scrollbars=yes,resizable = yes");
1061        //
1062        fenetreouverte = true;
1063    }

Legend:
Removed from v.660  
changed lines
  Added in v.768

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26