/[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 670 by vpihour, Mon Nov 12 16:28:16 2012 UTC revision 741 by vpihour, Mon Nov 19 10:29:19 2012 UTC
# Line 245  $(function() { Line 245  $(function() {
245      url = document.location + "" ;      url = document.location + "" ;
246      if ( $('#date_demande').length > 0      if ( $('#date_demande').length > 0
247          && !$('#dossier_autorisation_type_detaille').is(':disabled')          && !$('#dossier_autorisation_type_detaille').is(':disabled')
248          && url.indexOf("form.php?obj=demande&action=0") != -1 )          && url.indexOf("form.php?obj=demande&action=0") != -1 ){
249            
250            $.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            $('.lots').append(createFieldset('P&eacute;titionnaire(s)', 'petitionnaire__0'));
287            $('#petitionnaire__0').after(
288                '<div class="field field-type-text morePetitionnaire" style="display: table-row;">' +
289                    '<div class="form-libelle">' +
290                        '<label class="libelle-more_petitionnaire" for="terrain_superficie"> + Ajouter un autre p&eacute;titionnaire </label>' +
291                    '</div>' +
292                    '<div class="form-content">' +
293                    '</div>' +
294                '</div>');
295            
296            $('.morePetitionnaire').click( function() {
297                $('#fieldsetpetitionnaire__0 .morePetitionnaire').before(
298                    '<div id="petitionnaire__' + $('#fieldsetpetitionnaire__0 .fieldsetContent').size() +'" class="fieldsetContent">'+
299                        $('#fieldsetpetitionnaire__0 .formsDemandeur').val() +
300                    '</div>'
301                );
302                
303                nb = $('#fieldsetpetitionnaire__0 .fieldsetContent').size() - 1;
304                
305                changeIdNameField('petitionnaire__' + nb );
306                
307                addDatePicker( 'petitionnaire__' + nb + '_petitionnaire_particulier_date_naissance');
308                
309                addActionSearch('petitionnaire__' + nb);
310                
311                setTypeDemandeur('petitionnaire__' + nb, 'petitionnaire__' + nb , '_petitionnaire');
312                
313                $('#petitionnaire__' + nb + '_type_demandeur').focus();
314            });    
315            
316            $('.lots').append(createFieldset('D&eacute;l&eacute;gataire', 'delegataire'));
317            setDelegataire();
318            setPetitionnaire();
319            setTypeDemandeur('petitionnaire__0', 'petitionnaire_type_demandeur', '');
320            
321            $('#petitionnaire__0').before(
322                '<div id="dialog" title="Résultats de votre recherche"></div>'
323            );
324                
325          hideFields();          hideFields();
326        }
327        
328     if ( $('#date_demande').length > 0     if ( $('#date_demande').length > 0
329          && !$('#dossier_autorisation_type_detaille').is(':disabled')          && !$('#dossier_autorisation_type_detaille').is(':disabled')
# Line 259  $(function() { Line 336  $(function() {
336          /*Formatage de la reference cadastrale*/          /*Formatage de la reference cadastrale*/
337          if ( reference_cadastrale != '' ){          if ( reference_cadastrale != '' ){
338                            
               
339              references_cadastrales = reference_cadastrale.split(';');              references_cadastrales = reference_cadastrale.split(';');
340              donnees = new Array();              donnees = new Array();
341                            
# Line 324  $(function() { Line 400  $(function() {
400                          $('#moreFieldReferenceCadastrale' + ( $('.moreFieldReferenceCadastrale').length - 1 ) ).before(newInputReferenceCadastrale());                          $('#moreFieldReferenceCadastrale' + ( $('.moreFieldReferenceCadastrale').length - 1 ) ).before(newInputReferenceCadastrale());
401                  }                  }
402              }              }
403                
404              actionLineFormReferenceCadastrale();              actionLineFormReferenceCadastrale();
405                            
406              $('.reference_cadastrale_custom_field').each(              $('.reference_cadastrale_custom_field').each(
# Line 337  $(function() { Line 413  $(function() {
413  });  });
414    
415  /*  /*
416        Création du formuliare pour le petitionnaire
417     * */
418    function setPetitionnaire(){
419        $('#petitionnaire__0').prepend("<br/>" + $('#test').html() + "<br/>");
420        $('#test').parent().remove();
421        
422        addActionSearch('petitionnaire__0');
423        
424    }
425    
426    /*
427        Action au changement du select du type de demandeur
428     * */
429    function setTypeDemandeur(id, selector, complement){
430        $('#'+selector).on('change',
431            function() {
432                
433                if ( $(this).find('option:selected').first().text() == 'particulier' )
434                    fieldTypeDemandeur('#' + id, complement, true);
435                else
436                    fieldTypeDemandeur('#' + id, complement, false);
437            }
438        );
439    }
440    
441    /*
442        Création du formulaire pour le délégataire
443     * */
444    function setDelegataire(){
445        $('#delegataire').html($('#test').html());
446        
447        $('#delegataire #type_demandeur').parent().parent().remove();
448        $('#delegataire #personne_morale_denomination').parent().parent().remove();
449        $('#delegataire #personne_morale_raison_sociale').parent().parent().remove();
450        $('#delegataire #personne_morale_siret').parent().parent().remove();
451        $('#delegataire #personne_morale_categorie_juridique').parent().parent().remove();
452        $('#delegataire #personne_morale_civilite').parent().parent().remove();
453        $('#delegataire #personne_morale_nom').parent().parent().remove();
454        $('#delegataire #personne_morale_prenom').parent().parent().remove();
455        $('#delegataire #frequent').parent().parent().remove();
456        
457        changeIdNameField('delegataire');
458        addDatePicker('delegataire_particulier_date_naissance');
459    }
460    
461    /*
462        Change les id des champs
463     * */
464    function changeIdNameField(name){
465        
466        $('#' + name + ' input').each(
467            function(){
468                $(this).attr('name', name + '__' + $(this).attr('name') );
469            }
470        );
471    
472        $('#' + name + ' select').each(
473            function(){
474                $(this).attr('name', name + '__' + $(this).attr('name') );
475            }
476        );
477        
478        
479    }
480    
481    /*
482        Ajoute les le datespicker sur les champs de date
483     * */
484    function addDatePicker(id){
485        
486        $("#" + id ).datepicker({
487            dateFormat: dateFormat,
488            changeMonth: true,
489            changeYear: true,
490            yearRange: minYear+':'+maxYear,
491            showOn: 'button',
492            buttonImage: '../img/calendar.png',
493            buttonImageOnly: true,
494            constrainInput: true
495        });
496    }
497    
498    /*
499        Ajout de l'action de recherche des pétitionnaire fréquent dans un overlay
500     * */
501    function addActionSearch(id){
502        
503        $('#' + id + ' .search-part-16').click(
504            function(){
505                
506                var donnees = "?type=particulier&nom=";
507                $('#' + id + ' .search_particulier_fields input').each(
508                    function(i){
509    
510                        donnees += $(this).val() + (( i == 0 ) ?  '&prenom='  : '') ;
511                    }
512                );
513    
514                $.ajax({
515                    type: "GET",
516                    url: "../app/findPetitionnaire.php" + donnees ,
517                    cache: false,
518                    success: function(html){
519                        
520                        res = 'Auncune correspondance trouvée.';
521                        
522                        if ( html != '' ){
523                            
524                            res = '<select>' ;
525                            donnees = html.split(';');
526    
527                            for ( i = 0 ; i < donnees.length - 1 ; i++ ){
528    
529                                val = donnees[i].replace('"', '');
530                                line = donnees[i].split('_');
531                                
532                                res += '<option value="' + val + '">' + line[1] + ' ' + line[2] + ' - ' + line[3] + '</option>';
533                            }
534                            
535                            res += '</select>' ;
536                        }
537                        
538                        $('#dialog').html(res);
539                          
540                        $( "#dialog" ).dialog({
541                            modal: true,
542                            buttons : {
543                                Valider: function(){
544                                    donnees = $('#dialog select option:selected').val();
545                                    donnees = donnees.split('_');
546                                    
547                                    if ( $.isNumeric(donnees[4]) )
548                                        $('#' + id + ' select[id="particulier_civilite"] option[value="' + $.trim(donnees[4]) + '"]').attr('selected','selected');
549                                    $('#' + id + ' input[id="particulier_nom"]').val($.trim(donnees[1]));
550                                    $('#' + id + ' input[id="particulier_prenom"]').val($.trim(donnees[2]));
551                                    date = $.trim(donnees[3]).split('-');
552                                    date = date[2] + "/" + date[1] + "/" + date[0] ;
553                                    $('#' + id + ' input[id="particulier_date_naissance"]').val(date);
554                                    $('#' + id + ' input[id="particulier_commune_naissance"]').val($.trim(donnees[10]));
555                                    $('#' + id + ' input[id="particulier_departement_naissance"]').val($.trim(donnees[11]));
556                                    
557                                    changeValInputDemandeur(id, donnees);
558                                    
559                                    $(this).dialog( "close" );
560                                }
561                            }
562                        });
563                    },
564                    async: false
565                });
566            }
567        );
568        
569        $('#' + id + ' .search-mor-16').click(
570            function(){
571                
572                var donnees = "?type=personne_morale"+
573                    "&mor_denomination="+$('#'+id+' input[id="personne_morale_denomination"]').val() +
574                    "&mor_nom="+$('#'+id+' input[id="personne_morale_nom"]').val();
575                
576                $.ajax({
577                    type: "GET",
578                    url: "../app/findPetitionnaire.php" + donnees ,
579                    cache: false,
580                    success: function(html){
581                        
582                        res = 'Auncune correspondance trouvée.';
583                        
584                        if ( html != '' ){
585                            
586                            res = '<select>' ;
587                            donnees = html.split(';');
588    
589                            for ( i = 0 ; i < donnees.length - 1 ; i++ ){
590    
591                                val = donnees[i].replace('"', '');
592                                line = donnees[i].split('_');
593                                
594                                res += '<option value="' + val + '">' + line[5] + ' ' + line[6] + '</option>';
595                            }
596                            
597                            res += '</select>' ;
598                        }
599                        
600                        $('#dialog').html(res);
601                          
602                        $( "#dialog" ).dialog({
603                            modal: true,
604                            buttons : {
605                                Valider: function(){
606                                    donnees = $('#dialog select option:selected').val();
607                                    donnees = donnees.split('_');
608                                    
609                                    if ( $.isNumeric(donnees[8]) )
610                                        $('#' + id + ' select[id="personne_morale_civilite"] option[value="' + $.trim(donnees[8]) + '"]').attr('selected','selected');
611                                    $('#' + id + ' input[id="personne_morale_denomination"]').val($.trim(donnees[5]));
612                                    $('#' + id + ' input[id="personne_morale_raison_sociale"]').val($.trim(donnees[12]));
613                                    $('#' + id + ' input[id="personne_morale_siret"]').val($.trim(donnees[6]));
614                                    $('#' + id + ' input[id="personne_morale_categorie_juridique"]').val($.trim(donnees[13]));
615                                    $('#' + id + ' input[id="personne_morale_nom"]').val($.trim(donnees[7]));
616                                    $('#' + id + ' input[id="personne_morale_prenom"]').val($.trim(donnees[9]));
617                                    
618                                    changeValInputDemandeur(id, donnees);
619                                    
620                                    $(this).dialog( "close" );
621                                }
622                            }
623                        });
624                    },
625                    async: false
626                });
627            }
628        );
629    }
630    
631    /*
632        Change les valeurs des champs en commun des particuliers et des personnes morales
633     * */
634    function changeValInputDemandeur(id, donnees){
635        
636        /*Teste si la valeur retournée est TRUE*/
637        if ( donnees[28] === 't' )
638            $('#' + id + ' input[id="notification"]').attr('checked', 'checked');
639        $('#' + id + ' input[id="frequent"]').attr('checked','checked');
640        $('#' + id + ' input[id="numero"]').val($.trim(donnees[14]));
641        $('#' + id + ' input[id="voie"]').val($.trim(donnees[15]));
642        $('#' + id + ' input[id="complement"]').val($.trim(donnees[16]));
643        $('#' + id + ' input[id="lieu_dit"]').val($.trim(donnees[17]));
644        $('#' + id + ' input[id="localite"]').val($.trim(donnees[18]));
645        $('#' + id + ' input[id="code_postal"]').val($.trim(donnees[19]));
646        $('#' + id + ' input[id="bp"]').val($.trim(donnees[20]));
647        $('#' + id + ' input[id="cedex"]').val($.trim(donnees[21]));
648        $('#' + id + ' input[id="pays"]').val($.trim(donnees[22]));
649        $('#' + id + ' input[id="division_territoriale"]').val($.trim(donnees[23]));
650        $('#' + id + ' input[id="telephone_fixe"]').val($.trim(donnees[24]));
651        $('#' + id + ' input[id="telephone_mobile"]').val($.trim(donnees[25]));
652        $('#' + id + ' input[id="indicatif"]').val($.trim(donnees[26]));
653        $('#' + id + ' input[id="courriel"]').val($.trim(donnees[27]));
654    }
655    
656    /*
657        Création des select pour la civilité
658     * */
659    function setSelectCivilite(){
660        
661        $.ajax({
662            type: "GET",
663            url: "../app/civilite.php",
664            dataType: "json",
665            cache: false,
666            success: function(html){
667                if ( html != '' ){
668                    
669                    $('#particulier_civilite').parent().html('<select id="particulier_civilite" class="champFormulaire" size="1" name="particulier_civilite">' +
670                            '<option value="" selected="selected">choisir particulier_civilite</option>');
671                    $('#personne_morale_civilite').parent().html('<select id="personne_morale_civilite" class="champFormulaire" size="1" name="personne_morale_civilite">' +
672                            '<option value="" selected="selected">choisir personne_morale_civilite</option>');
673                    
674                    civilites = html.split(';');
675                    for ( i = 0 ; i < civilites.length - 1 ; i++ ){
676                        
677                        civilite = civilites[i].split('_');
678                        $('#particulier_civilite').append('<option value="' + civilite[0] + '">' + civilite[1] + '</option>');
679                        $('#personne_morale_civilite').append('<option value="' + civilite[0] + '">' + civilite[1] + '</option>');
680                    }
681                    
682                    $('#particulier_civilite').append('</select>');
683                    $('#personne_morale_civilite').append('</select>');
684                }
685            },
686            async: false
687        });
688    }
689    
690    /*
691        Retourne le code HTML d'un fieldset
692     * */
693    function createFieldset(name, className){
694        return '<fieldset class="cadre ui-corner-all ui-widget-content" id="fieldset' + className + '">' +
695                    '<legend class="ui-corner-all ui-widget-content ui-state-active">' + name + ' </legend>' +
696                    '<input class="formsDemandeur" type="hidden" val=""/>'+
697                    '<div class="fieldsetContent " id="' + className + '">' +
698                    '</div>' +
699                    '<div class="visualClear"></div>' +
700                    '</div>' +
701               '</fieldset>';
702    }
703    
704    /*
705      Test str est une lettre de l'alphabet      Test str est une lettre de l'alphabet
706   * */   * */
707  function isAlpha(str) {  function isAlpha(str) {
# Line 351  function actionFormReferenceCadastrale() Line 716  function actionFormReferenceCadastrale()
716          function(){          function(){
717                            
718              var reference_cadastrale = '';              var reference_cadastrale = '';
719                var reference_cadastrale_temp = '';
720                            
721              $('.reference_cadastrale_custom_field').each(              $('.reference_cadastrale_custom_field').each(
722                  function(){                  function(){
723                                            
724                      reference_cadastrale += $(this).val();                      if ( $(this).val() == ';' ){
725                            
726                            reference_cadastrale += reference_cadastrale_temp + ( ( reference_cadastrale_temp != '' && reference_cadastrale_temp.length > 0 ) ? ';' : '' );
727                            reference_cadastrale_temp = '';
728                        }
729                        else
730                            reference_cadastrale_temp += $(this).val();
731                        
732                  }                  }
733              );              );
734                            
# Line 414  function changeDemandeType(){ Line 787  function changeDemandeType(){
787  function addNewFieldReferencesCadastrales(){  function addNewFieldReferencesCadastrales(){
788      $('.references_cadastrales_new_field').remove();      $('.references_cadastrales_new_field').remove();
789      $('.moreFieldReferenceCadastrale').remove();      $('.moreFieldReferenceCadastrale').remove();
790        $('#morelineReferenceCadastrale').remove();
791      $('.localisation .fieldsetContent').prepend(      $('.localisation .fieldsetContent').prepend(
792         '<div class="field field-type-text references_cadastrales_new_field" >'+         '<div class="field field-type-text references_cadastrales_new_field" >'+
793              '<div class="form-libelle">' +              '<div class="form-libelle">' +
# Line 432  function addNewFieldReferencesCadastrale Line 806  function addNewFieldReferencesCadastrale
806              '<div class="form-content">' +              '<div class="form-content">' +
807                  ' + ajouter d\'autres lignes' +                  ' + ajouter d\'autres lignes' +
808              '</div>' +              '</div>' +
809         '</div>'               '</div>'      
810     );     );
811       $('#terrain_superficie').parent().parent().after('<div class="field field-type-text" >' +
812                '<div class="form-libelle"></div>' +
813                '<div class="form-content">' +
814                    '<input id="cad-adr-them" class="ui-button ui-widget ui-state-default ui-corner-all" type="button" value="Cadastrale < = > Adresse"/>' +
815                '</div>' +
816           '</div>' );
817  }  }
818    
819  /*  /*
# Line 510  function showFormsDemande(){ Line 890  function showFormsDemande(){
890      $('.terrain_references_cadastrales_custom').hide();      $('.terrain_references_cadastrales_custom').hide();
891            
892      $('#terrain_references_cadastrales').parent().parent().hide();      $('#terrain_references_cadastrales').parent().parent().hide();
893        
894        /*Cache les champs inutiles*/
895        fieldTypeDemandeur('#petitionnaire__0', '', true);
896        
897        $('#fieldsetpetitionnaire__0 .formsDemandeur').val($('#petitionnaire__0').html());
898        
899        changeIdNameField('petitionnaire__0');
900        
901        addDatePicker('petitionnaire_particulier_date_naissance');
902    }
903    
904    /*
905        Cache/montre des champs selon le type de demandeur
906     * */
907    function fieldTypeDemandeur(name,complement, particulier){
908    
909        if ( particulier == true ){
910            
911            $(name + ' select[id="particulier_civilite"] option[value=""]').attr('selected', 'selected');
912            $(name + ' input[id="particulier_nom"]').val('');
913            $(name + ' input[id="particulier_prenom"]').val('');
914            $(name + ' input[id="particulier_date_naissance"]').val('');
915            $(name + ' input[id="particulier_commune_naissance"]').val('');
916            $(name + ' input[id="particulier_departement_naissance"]').val('');
917            
918            $( name + ' .particulier_fields').show();
919            $( name + ' .personne_morale_fields').hide();
920        }
921        else{
922            
923            $(name + ' select[id="personne_morale_civilite"] option[value=""]').attr('selected', 'selected');
924            $(name + ' input[id="personne_morale_denomination"]').val('');
925            $(name + ' input[id="personne_morale_raison_sociale"]').val('');
926            $(name + ' input[id="personne_morale_siret"]').val('');
927            $(name + ' input[id="personne_morale_categorie_juridique"]').val('');
928            $(name + ' input[id="personne_morale_nom"]').val('');
929            $(name + ' input[id="personne_morale_prenom"]').val('');
930            $( name + ' .particulier_fields').hide();
931            $( name + ' .personne_morale_fields').show();
932        }
933  }  }
934    
935  /*  /*
# Line 521  function newInputReferenceCadastrale(){ Line 941  function newInputReferenceCadastrale(){
941              'type="text" ' +              'type="text" ' +
942              'maxlength="1" ' +              'maxlength="1" ' +
943              'size="1" ' +              'size="1" ' +
944              'value="" />' +              'value="" ' +
945                'onchange="testSeparator(this);"/>' +
946          '<input ' +          '<input ' +
947              'class="champFormulaire reference_cadastrale_custom_field" ' +              'class="champFormulaire reference_cadastrale_custom_field" ' +
948              'type="text" ' +              'type="text" ' +
# Line 531  function newInputReferenceCadastrale(){ Line 952  function newInputReferenceCadastrale(){
952              'value="" />';              'value="" />';
953  }  }
954    
955    function testSeparator(obj){
956    
957        if ( (obj.value != 'a' || obj.value != 'A') &&
958             obj.value != '/' ) {
959                
960            alert('Saisissez uniquement un A ou un / comme séparateur');
961            obj.value = '';
962        }
963    }
964    
965  // Desactivation des fonctions widget du tableau de bord inutiles sur le nouveau  // Desactivation des fonctions widget du tableau de bord inutiles sur le nouveau
966  // tableau de bord  // tableau de bord
967  function widget_bind_move_actions() {}  function widget_bind_move_actions() {}
968  function widget_bind_add_action() {}  function widget_bind_add_action() {}
969  function widget_bind_edit_actions(widget_selector) {}  function widget_bind_edit_actions(widget_selector) {}
970    
971    function file(fichier) {
972        //
973        if (fichier == "") {
974            alert("zone vide");
975        }
976        //
977        pfenetre = window.open("../app/file.php?file="+fichier,"Visualisation","width=100,height=100,top=1,left=150,scrollbars=yes,resizable = yes");
978        //
979        fenetreouverte = true;
980    }

Legend:
Removed from v.670  
changed lines
  Added in v.741

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26