/[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 557 by nhaye, Tue Oct 30 15:52:38 2012 UTC revision 669 by vpihour, Mon Nov 12 16:09:32 2012 UTC
# Line 1  Line 1 
1  // specific openfoncier ========================================================  // specific openfoncier ========================================================
2    // OnReady
3    $(function(){
4       // Document is ready
5       $('#avis_code_barre_form #consultation').focus();
6     });
7    
8    
9  function bible(){  function bible(){
10      if(fenetreouverte==true)      if(fenetreouverte==true)
# Line 73  function messageIt(objsf, link, empty) { Line 79  function messageIt(objsf, link, empty) {
79      }else {      }else {
80          link += "&recherche=";          link += "&recherche=";
81      }      }
82      // execution de la requete en POST      // execution de la requete en GET
83      $.ajax({      $.ajax({
84          type: "GET",          type: "GET",
85          url: link,          url: link,
# Line 128  function popupIt(objsf, link) { Line 134  function popupIt(objsf, link) {
134              $(dialog).dialog({              $(dialog).dialog({
135              //OnClose suppression du contenu              //OnClose suppression du contenu
136              close: function(ev, ui) {              close: function(ev, ui) {
                 //Spécifique à la modification de consultation par retour d'avis de service  
                 var redirect = $('<form name="redirect" method="GET" action="../scr/tab.php">'+  
                 '<input type="hidden" name="obj" value="'+$.getQuery('obj')+'" />'+  
                 '<input type="hidden" name="premier" value="'+$.getQuery('premier')+'" />'+  
                 '<input type="hidden" name="advs_id" value="'+$.getQuery('advs_id')+'" />'+  
                 '<input type="hidden" name="recherche" value="'+$.getQuery('recherche')+'" />'+  
                 '<input type="hidden" name="tricol" value="'+$.getQuery('tricol')+'" />'+  
                 '<input type="hidden" name="selectioncol" value="'+$.getQuery('selectioncol')+'" />'+  
                 '</form>').insertAfter('.formControls');  
                   
137                  // Si le formulaire est submit et valide                  // Si le formulaire est submit et valide
138                  var valid=$('#sousform-'+objsf+' div.ui-state-valid');                  var valid=$('#sousform-'+objsf+' div.ui-state-valid');
139                  if(valid.length > 0) {                  if(valid.length > 0) {
140                      redirect.submit();                      document.location.href="../scr/tab.php?obj="+$.getQuery('obj')+"&premier="+$.getQuery('premier')
141                        +"&advs_id="+$.getQuery('advs_id')+"&recherche="+$.getQuery('recherche')+"&tricol="+$.getQuery('tricol')
142                        +"&selectioncol="+$.getQuery('selectioncol');
143                  }                  }
144                  $(this).remove();                  $(this).remove();
145              },              },
# Line 178  function popupIt(objsf, link) { Line 176  function popupIt(objsf, link) {
176                  }                  }
177          };          };
178  })(jQuery);  })(jQuery);
   
179    
180    function changeDataSelect(tn, ds, joker){
181            
182        var id = $("#"+ds+" option:selected").val();
183        link = "../app/listData.php?idx=" + id + "&tn=" + tn + "&ds=" + ds;
184        $.ajax({
185            type: "GET",
186            url: link,
187            cache: false,
188            dataType: "json",
189            success: function(html){
190                
191                $('#'+tn).empty();
192                
193                if ( joker == true )
194                    $('#'+tn).append(
195                        '<option value="" selected="selected">*</option>'
196                    );
197                else
198                    $('#'+tn).append(
199                        '<option value="" selected="selected">Choisir ' + tn + '</option>'
200                    );
201                
202                if ( html !== '' ){
203                    
204                    html = html.split(';');
205                    for ( i = 0 ; i < html.length - 1 ; i++ ){
206                        
207                        html_temp = html[i].split('_');
208                        $('#'+tn).append(
209                            '<option value="'+html_temp[0]+'" >'+html_temp[1]+'</option>'
210                        );
211                    }
212                }
213            },
214            async: false
215        });
216    }
217    function vuploadMulti(champ) {
218        //
219        if (fenetreouverte == true) {
220            pfenetre.close();
221        }
222        //
223        pfenetre = window.open("../spg/upload.php?origine="+champ+"&form="+$('input[name='+champ+']').closest('form').attr('name'),"upload","width=400,height=300,top=120,left=120");
224        //pfenetre = window.open("../spg/upload2.php?origine="+champ,"upload2","width=300,height=100,top=120,left=120");
225        //
226        fenetreouverte = true;
227    }
228    function tmpUpload(champ) {
229        //
230        if (fenetreouverte == true) {
231            pfenetre.close();
232        }
233        //
234        pfenetre = window.open("../app/tmpUpload.php?origine="+champ+"&form="+$('input[name='+champ+']').closest('form').attr('name'),"upload","width=400,height=300,top=120,left=120");
235        //pfenetre = window.open("../spg/upload2.php?origine="+champ,"upload2","width=300,height=100,top=120,left=120");
236        //
237        fenetreouverte = true;
238    }
239    
240    /*
241        Ajoute le formulaire d'jout de référence cadastrale personnalisé
242     * */
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    function actionLineFormReferenceCadastrale(){
372        $('#morelineReferenceCadastrale').click(
373            function(){
374                
375                $('.reference_cadastrale_custom_fields').append( "<br/>" + fieldReferenceCadastraleBase());
376                $('#moreFieldReferenceCadastrale'+ ($('.moreFieldReferenceCadastrale').length - 1 )).on("click", function() {
377                    $(this).before(newInputReferenceCadastrale());
378                });
379            }
380        );
381    }
382    
383    /*
384        Met à jour le select demande_type dès qu'un dossier_autorisation_type_detaille est choisi
385     * */
386    function changeDemandeType(){
387        
388        var idDossierAutorisationTypeDetaille = $("#dossier_autorisation_type_detaille option:selected").val();
389        
390        if ( $.isNumeric(idDossierAutorisationTypeDetaille) ){
391            
392            changeDataSelect('demande_type','dossier_autorisation_type_detaille');
393            if ( $('#demande_type option').size() < 2 )
394                showFormsDemande();
395            
396           $('#demande_type').parent().parent().show();
397          
398           addNewFieldReferencesCadastrales();
399          
400           actionFormReferenceCadastrale();
401           actionLineFormReferenceCadastrale()        
402        }
403        else {
404            hideFields();
405        }
406    }
407    
408    /*
409        Ajoute le code HTML des champs pour les références cadastrales
410     * */
411    function addNewFieldReferencesCadastrales(){
412        $('.references_cadastrales_new_field').remove();
413        $('.moreFieldReferenceCadastrale').remove();
414        $('.localisation .fieldsetContent').prepend(
415           '<div class="field field-type-text references_cadastrales_new_field" >'+
416                '<div class="form-libelle">' +
417                    '<label '+
418                        'class="libelle-terrain_references_cadastrales" '+
419                        'for="terrain_references_cadastrales">'+
420                        ' terrain_references_cadastrales '+
421                    '</label>' +
422                '</div>' +
423                '<div class="form-content reference_cadastrale_custom_fields">' +
424                     fieldReferenceCadastraleBase() +
425                '</div>' +
426           '</div>' +
427           '<div class="field field-type-text" id="morelineReferenceCadastrale">' +
428                '<div class="form-libelle"></div>' +
429                '<div class="form-content">' +
430                    ' + ajouter d\'autres lignes' +
431                '</div>' +
432           '</div>'      
433       );
434    }
435    
436    function hiddenSeparatorField(){
437        return '<input ' +
438                    'class="reference_cadastrale_custom_field " ' +
439                    'type="hidden" ' +
440                    'maxlength="2" ' +
441                    'size="2" ' +
442                    'value=";" />';
443    }
444    
445    function fieldReferenceCadastraleBase(){
446        return '<input ' +
447                    'class="champFormulaire reference_cadastrale_custom_field" ' +
448                    'type="text" ' +
449                    'onchange="VerifNum(this)" ' +
450                    'maxlength="3" ' +
451                    'size="3" ' +
452                    'value="" />' +
453                '<input ' +
454                    'class="champFormulaire reference_cadastrale_custom_field" ' +
455                    'type="text" ' +
456                    'maxlength="2" ' +
457                    'size="2" ' +
458                    'value="" />' +
459                '<input ' +
460                    'class="champFormulaire reference_cadastrale_custom_field" ' +
461                    'type="text" ' +
462                    'onchange="VerifNum(this)" ' +
463                    'maxlength="4" ' +
464                    'size="4" ' +
465                    'value="" />' +
466                '<span id="moreFieldReferenceCadastrale' + $('.moreFieldReferenceCadastrale').length + '" class="moreFieldReferenceCadastrale">' +
467                    hiddenSeparatorField() +
468                    ' + ajouter d\'autres champs' +
469                '</span>';
470    }
471    
472    /*
473        Cache les champs inutules
474     * */    
475    function hideFields(){
476        $('.bloc').each(
477            function(){
478                if ( !$(this).hasClass('dossier_type') && !$(this).hasClass('dossier_type_demande_date') )
479                    $(this).hide();
480            }
481        );
482        
483        $('.field-type-text').hide();
484        $('input[type=submit]').hide();
485        $('#demande_type').parent().parent().hide();
486    }
487    
488    /*
489        Affiche les champs dont on a besoin
490     * */
491    function showFormsDemande(){
492        $('.bloc').each(
493            function(){
494                if ( !$(this).hasClass('dossier_type') && !$(this).hasClass('dossier_type_demande_date') )
495                    $(this).show();
496            }
497        );
498        
499        $('.field-type-text').show();
500        $('input[type=submit]').show();
501        $('.terrain_references_cadastrales_custom').hide();
502        
503        $('#terrain_references_cadastrales').parent().parent().hide();
504    }
505    
506    /*
507        Action au clique sur le bouton " + ajouter d'autres champs"
508     * */
509    function newInputReferenceCadastrale(){
510        return '<input ' +
511                'class="champFormulaire reference_cadastrale_custom_field" ' +
512                'type="text" ' +
513                'maxlength="1" ' +
514                'size="1" ' +
515                'value="" />' +
516            '<input ' +
517                'class="champFormulaire reference_cadastrale_custom_field" ' +
518                'type="text" ' +
519                'onchange="VerifNum(this)" ' +
520                'maxlength="4" ' +
521                'size="4" ' +
522                'value="" />';
523    }
524    
525    // Desactivation des fonctions widget du tableau de bord inutiles sur le nouveau
526    // tableau de bord
527    function widget_bind_move_actions() {}
528    function widget_bind_add_action() {}
529    function widget_bind_edit_actions(widget_selector) {}
530    

Legend:
Removed from v.557  
changed lines
  Added in v.669

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26