/[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 670 by vpihour, Mon Nov 12 16:28:16 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() {
244  //          
245  //});      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            hideFields();
250      
251       if ( $('#date_demande').length > 0
252            && !$('#dossier_autorisation_type_detaille').is(':disabled')
253            && url.indexOf("form.php?obj=demande&action=1") != -1 ){
254                
255            addNewFieldReferencesCadastrales();
256            $('#terrain_references_cadastrales').parent().parent().hide();
257            
258            reference_cadastrale = $('#terrain_references_cadastrales').val();
259            /*Formatage de la reference cadastrale*/
260            if ( reference_cadastrale != '' ){
261                
262                
263                references_cadastrales = reference_cadastrale.split(';');
264                donnees = new Array();
265                
266                i = 0 ;
267                for ( l = 0 ; l < references_cadastrales.length - 1 ; l ++ ){
268                    
269                    k = 0;
270                    donnees[i] = '';
271                    for ( j = k ; j < references_cadastrales[l].length ; j++ )
272                        if ( references_cadastrales[l].charAt(j) >= 0 && references_cadastrales[l].charAt(j) <= 9 ){
273                            donnees[i] += references_cadastrales[l].charAt(j);
274                            k++;
275                        } else {
276                            i++;
277                            break;
278                        }
279                    
280                          
281                    donnees[i] = '';
282                    for ( j = k ; j < references_cadastrales[l].length ; j++ )
283                        if ( isAlpha(references_cadastrales[l].charAt(j)) ){
284                            donnees[i] += references_cadastrales[l].charAt(j);
285                            k++;
286                        } else {
287                            i++;
288                            break;
289                        }
290                    
291                    donnees[i] = '';
292                    for ( j = k ; j < references_cadastrales[l].length ; j++ )
293                        if ( references_cadastrales[l].charAt(j) >= 0 && references_cadastrales[l].charAt(j) <= 9 ){
294                            donnees[i] += references_cadastrales[l].charAt(j);
295                            k++;
296                        } else {
297                            break;
298                        }
299                    
300                    m = 0 ;
301                    if ( k < references_cadastrales[l].length ){
302                        
303                        for ( j = k ; j < references_cadastrales[l].length ; j++ )
304                            if ( isAlpha(references_cadastrales[l].charAt(j)) ){
305                                m++;
306                                donnees[++i] = references_cadastrales[l].charAt(j);
307                                donnees[++i] = '';
308                            }
309                            else {
310                                donnees[i] += references_cadastrales[l].charAt(j);
311                            }
312                    }
313    
314                    donnees[++i] = ';';
315                    i++;
316    
317                    if ( l > 0 )
318                        $('.reference_cadastrale_custom_fields').append( "<br/>" + fieldReferenceCadastraleBase());
319                    actionFormReferenceCadastrale();
320                    
321                    if ( m > 0 ){
322                                
323                        for ( j = 0 ; j < m ; j++ )
324                            $('#moreFieldReferenceCadastrale' + ( $('.moreFieldReferenceCadastrale').length - 1 ) ).before(newInputReferenceCadastrale());
325                    }
326                }
327                
328                actionLineFormReferenceCadastrale();
329                
330                $('.reference_cadastrale_custom_field').each(
331                    function(index) {
332                         $(this).val(donnees[index])
333                    }
334                );
335            }
336       }
337    });
338    
339    /*
340        Test str est une lettre de l'alphabet
341     * */
342    function isAlpha(str) {
343        return /^[a-zA-Z\/]+$/.test(str);
344    }
345    
346    /*
347        Ajoute les ations spécifiques pour le formulaire personnalisé d'ajout de référence cadastrale
348     * */
349    function actionFormReferenceCadastrale(){
350        $('form').submit(
351            function(){
352                
353                var reference_cadastrale = '';
354                
355                $('.reference_cadastrale_custom_field').each(
356                    function(){
357                        
358                        reference_cadastrale += $(this).val();
359                    }
360                );
361                
362                $('#terrain_references_cadastrales').val(reference_cadastrale);
363            }
364        );
365    
366        $('#moreFieldReferenceCadastrale' + ($('.moreFieldReferenceCadastrale').length - 1 )).on("click", function() {
367            $(this).before(newInputReferenceCadastrale());
368        });
369    }
370    
371    /*
372        Action pour l'ajout de nouvelle ligne
373     * */
374    function actionLineFormReferenceCadastrale(){
375        $('#morelineReferenceCadastrale').click(
376            function(){
377                
378                $('.reference_cadastrale_custom_fields').append( "<br/>" + fieldReferenceCadastraleBase());
379                $('#moreFieldReferenceCadastrale'+ ($('.moreFieldReferenceCadastrale').length - 1 )).on("click", function() {
380                    $(this).before(newInputReferenceCadastrale());
381                });
382            }
383        );
384    }
385    
386    /*
387        Met à jour le select demande_type dès qu'un dossier_autorisation_type_detaille est choisi
388     * */
389  function changeDemandeType(){  function changeDemandeType(){
390            
391      var idDossierAutorisationTypeDetaille = $("#dossier_autorisation_type_detaille option:selected").val();      var idDossierAutorisationTypeDetaille = $("#dossier_autorisation_type_detaille option:selected").val();
# Line 251  function changeDemandeType(){ Line 393  function changeDemandeType(){
393      if ( $.isNumeric(idDossierAutorisationTypeDetaille) ){      if ( $.isNumeric(idDossierAutorisationTypeDetaille) ){
394                    
395          changeDataSelect('demande_type','dossier_autorisation_type_detaille');          changeDataSelect('demande_type','dossier_autorisation_type_detaille');
396            if ( $('#demande_type option').size() < 2 )
397                showFormsDemande();
398                    
399         $('#demande_type').parent().parent().show();         $('#demande_type').parent().parent().show();
400                
401         $('.terrain_references_cadastrales_custom').append(         addNewFieldReferencesCadastrales();
            '<div class="field field-type-text" >'+  
                 '<div class="form-libelle">' +  
                     '<label '+  
                         'class="libelle-terrain_references_cadastrales" '+  
                         'for="terrain_references_cadastrales">'+  
                         ' terrain_references_cadastrales '+  
                     '</label>' +  
                 '</div>' +  
                 '<div class="form-content reference_cadastrale_custom_fields">' +  
                     '<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="" />' +  
                 '</div>' +  
            '</div>' +  
            '<div id="moreFieldReferenceCadastrale"> + ajouter d\'autres champs</div>'  
        );  
402                
403         $('#moreFieldReferenceCadastrale').click( function() {         actionFormReferenceCadastrale();
404              $('.reference_cadastrale_custom_fields').append(newInputReferenceCadastrale());         actionLineFormReferenceCadastrale()        
         });  
           
         $('form').submit(  
             function(){  
                   
                 var reference_cadastrale = '';  
                   
                 $('.reference_cadastrale_custom_field').each(  
                     function(){  
                           
                         reference_cadastrale += $(this).val();  
                     }  
                 );  
                   
                 $('#terrain_references_cadastrales').val(reference_cadastrale);  
             }  
         );  
           
         $('.terrain_references_cadastrales_custom:').find(">:first-child").hide();  
405      }      }
406      else {      else {
407          hideFields();          hideFields();
408      }      }
409  }  }
410    
411    /*
412        Ajoute le code HTML des champs pour les références cadastrales
413     * */
414    function addNewFieldReferencesCadastrales(){
415        $('.references_cadastrales_new_field').remove();
416        $('.moreFieldReferenceCadastrale').remove();
417        $('.localisation .fieldsetContent').prepend(
418           '<div class="field field-type-text references_cadastrales_new_field" >'+
419                '<div class="form-libelle">' +
420                    '<label '+
421                        'class="libelle-terrain_references_cadastrales" '+
422                        'for="terrain_references_cadastrales">'+
423                        ' terrain_references_cadastrales '+
424                    '</label>' +
425                '</div>' +
426                '<div class="form-content reference_cadastrale_custom_fields">' +
427                     fieldReferenceCadastraleBase() +
428                '</div>' +
429           '</div>' +
430           '<div class="field field-type-text" id="morelineReferenceCadastrale">' +
431                '<div class="form-libelle"></div>' +
432                '<div class="form-content">' +
433                    ' + ajouter d\'autres lignes' +
434                '</div>' +
435           '</div>'      
436       );
437    }
438    
439    /*
440        Séparateur caché ;
441     * */
442    function hiddenSeparatorField(){
443        return '<input ' +
444                    'class="reference_cadastrale_custom_field " ' +
445                    'type="hidden" ' +
446                    'maxlength="2" ' +
447                    'size="2" ' +
448                    'value=";" />';
449    }
450    
451    /*
452        Ajout d'une nouvelle ligne de champ
453     * */
454    function fieldReferenceCadastraleBase(){
455        return '<input ' +
456                    'class="champFormulaire reference_cadastrale_custom_field" ' +
457                    'type="text" ' +
458                    'onchange="VerifNum(this)" ' +
459                    'maxlength="3" ' +
460                    'size="3" ' +
461                    'value="" />' +
462                '<input ' +
463                    'class="champFormulaire reference_cadastrale_custom_field" ' +
464                    'type="text" ' +
465                    'maxlength="2" ' +
466                    'size="2" ' +
467                    'value="" />' +
468                '<input ' +
469                    'class="champFormulaire reference_cadastrale_custom_field" ' +
470                    'type="text" ' +
471                    'onchange="VerifNum(this)" ' +
472                    'maxlength="4" ' +
473                    'size="4" ' +
474                    'value="" />' +
475                '<span id="moreFieldReferenceCadastrale' + $('.moreFieldReferenceCadastrale').length + '" class="moreFieldReferenceCadastrale">' +
476                    hiddenSeparatorField() +
477                    ' + ajouter d\'autres champs' +
478                '</span>';
479    }
480    
481    /*
482        Cache les champs inutules
483     * */    
484  function hideFields(){  function hideFields(){
485      $('.bloc').each(      $('.bloc').each(
486          function(){          function(){
# Line 329  function hideFields(){ Line 494  function hideFields(){
494      $('#demande_type').parent().parent().hide();      $('#demande_type').parent().parent().hide();
495  }  }
496    
497    /*
498        Affiche les champs dont on a besoin
499     * */
500  function showFormsDemande(){  function showFormsDemande(){
501      $('.bloc').each(      $('.bloc').each(
502          function(){          function(){
# Line 339  function showFormsDemande(){ Line 507  function showFormsDemande(){
507            
508      $('.field-type-text').show();      $('.field-type-text').show();
509      $('input[type=submit]').show();      $('input[type=submit]').show();
510        $('.terrain_references_cadastrales_custom').hide();
511        
512        $('#terrain_references_cadastrales').parent().parent().hide();
513  }  }
514    
515    /*
516        Action au clique sur le bouton " + ajouter d'autres champs"
517     * */
518  function newInputReferenceCadastrale(){  function newInputReferenceCadastrale(){
519      return '<input ' +      return '<input ' +
520              'class="champFormulaire reference_cadastrale_custom_field" ' +              'class="champFormulaire reference_cadastrale_custom_field" ' +

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

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26