Changeset 39337 in spip-zone


Ignore:
Timestamp:
Jul 18, 2010, 7:56:01 AM (9 years ago)
Author:
esj@…
Message:

Balise #REMPLIR: report de SPIP 15846 qui élimine les doublons dans les noms de saisie et sérialise les saisies indexées.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/Association/Association_2.0/formulaires/remplir.php

    r38858 r39337  
    1515function formulaires_remplir_charger_dist($form)
    1616{
    17 
    1817        $f = charger_fonction('charger', "formulaires/$form", true);
    1918        if ($f)
     
    4039                $infos = formulaires_remplir_infos($form);
    4140                if (!is_array($infos)) return $infos; // fait ci-dessus en fait
    42                 $vars = formulaires_remplir_recense($infos['path']);
     41                $vars = formulaires_remplir_recense($infos['path'], PREG_PATTERN_ORDER);
    4342                $meta = $infos['meta'];
    44                 foreach ($vars as $regs) {
    45                         $k = $regs[2];
    46                         ecrire_meta($k, _request($k), 'oui', $meta);
     43                foreach (array_unique($vars[2]) as $k) {
     44                        $v = _request($k);
     45                        ecrire_meta($k, is_array($v) ? serialise($v) : $v, 'oui', $meta);
    4746                }
    4847                return !isset($infos['prefix']) ? array()
     
    5756// determiner la liste des noms des saisies d'un formulaire
    5857// (a refaire avec SAX)
    59 function formulaires_remplir_recense($form)
     58function formulaires_remplir_recense($form, $opt='')
    6059{
     60        if (!$opt) $opt = PREG_SET_ORDER;
    6161        $f = file_get_contents($form);
    62         if (preg_match_all(_EXTRAIRE_SAISIES, $f, $r, PREG_SET_ORDER))
     62        if ($f AND preg_match_all(_EXTRAIRE_SAISIES, $f, $r, $opt))
    6363                return $r;
     64        else return array();
    6465}
    6566
Note: See TracChangeset for help on using the changeset viewer.