Changeset 49140 in spip-zone


Ignore:
Timestamp:
Jun 28, 2011, 8:24:09 PM (9 years ago)
Author:
marcimat@…
Message:

Commentaire + saisies_voir n'emmetant pas de faux env sur les enfants de fieldset.

Location:
_plugins_/saisies
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/saisies/inc/saisies.php

    r49130 r49140  
    617617
    618618                // on sauve l'ancien environnement
    619                 // car les sous-saisies ne doivent pas en être affectees.
     619                // car les sous-saisies ne doivent pas être affectees
     620                // par les modification sur l'environnement servant à generer la saisie mère
    620621                $contexte['_env'] = $env;
    621622               
     
    652653        else
    653654                $contexte['valeur'] = $env[$contexte['nom']];
    654        
     655
    655656        // Si ya des enfants on les remonte dans le contexte
    656657        if (is_array($champ['saisies']))
     
    676677        if (!is_array($saisie))
    677678                return '';
    678        
     679
    679680        $contexte = array();
    680        
     681               
    681682        // On sélectionne le type de saisie
    682683        $contexte['type_saisie'] = $saisie['saisie'];
     
    690691        // On ajoute les options propres à la saisie
    691692        $contexte = array_merge($contexte, $options);
    692        
     693
    693694        // Si env est définie dans les options ou qu'il y a des enfants, on ajoute tout l'environnement
    694695        if(isset($contexte['env']) or is_array($saisie['saisies'])){
    695696                unset($contexte['env']);
    696                
     697
     698                // on sauve l'ancien environnement
     699                // car les sous-saisies ne doivent pas être affectees
     700                // par les modification sur l'environnement servant à generer la saisie mère
     701                $contexte['_env'] = $env;
     702                               
    697703                // À partir du moment où on passe tout l'environnement, il faut enlever
    698704                // certains éléments qui ne doivent absolument provenir que des options
     
    707713                $contexte = array_merge($env, $contexte);
    708714        }
    709        
     715
    710716        // Dans tous les cas on récupère de l'environnement la valeur actuelle du champ
    711717       
     
    726732        else
    727733                $contexte['valeur'] = $env[$contexte['nom']];
    728        
     734
    729735        // Si ya des enfants on les remonte dans le contexte
    730736        if (is_array($saisie['saisies']))
  • _plugins_/saisies/inclure/voir_saisies.html

    r40888 r49140  
    11[(#REM) S'il y a des options afficher_si, il faut vérifier que les conditions sont remplies ]
    22[(#SET{saisies,#ENV{saisies}|saisies_verifier_afficher_si{#ENV**|unserialize}})]
    3 
    43<BOUCLE_saisies(POUR){tableau #GET{saisies}}>
    54[(#VAL{saisie}|array_key_exists{#VALEUR}|oui)
    6         [(#VALEUR|saisies_generer_vue{#ENV**|unserialize})]
     5        [(#VALEUR|saisies_generer_vue{#ENV{_env}|sinon{#ENV**|unserialize}})]
    76]
    87</BOUCLE_saisies>
Note: See TracChangeset for help on using the changeset viewer.