Browse Source

Corriger la recherche de la valeur dans l'env dans le cas où le nom de

la saisie est de type `toto/truc/bidule/chose`.
pull/97/head
Maïeul 1 year ago
parent
commit
91b9534c23
  1. 12
      inc/saisies_afficher.php
  2. 5
      saisies/textarea.html
  3. 1
      saisies_pipelines.php

12
inc/saisies_afficher.php

@ -128,7 +128,6 @@ function saisies_generer_html($champ, $env = array()) {
$options[$option] = _T_ou_typo($valeur, 'multi');
}
}
// compatibilité li_class > conteneur_class
if (!empty($options['li_class'])) {
$options['conteneur_class'] = $options['li_class'];
@ -191,6 +190,16 @@ function saisies_generer_html($champ, $env = array()) {
foreach ($index[1] as $cle) {
$contexte['valeur'] = isset($contexte['valeur'][$cle]) ? $contexte['valeur'][$cle] : null;
}
} elseif (// Cas où le nom de la saisie est du genre truc/bidule/chose (par exemple dans les CFG)
isset($contexte['nom'])
and $contexte_nom_explode = explode('/', $contexte['nom'])
and count($contexte_nom_explode) > 1
and isset($env[$contexte_nom_explode[0]])
) {
$contexte['valeur'] = $env[array_shift($contexte_nom_explode)];
foreach ($contexte_nom_explode as $cle) {
$contexte['valeur'] = isset($contexte['valeur'][$cle]) ? $contexte['valeur'][$cle] : null;
}
} elseif (isset($contexte['nom']) and isset($env[$contexte['nom']])) {
// Sinon la valeur est juste celle du nom si elle existe
$contexte['valeur'] = $env[$contexte['nom']];
@ -203,7 +212,6 @@ function saisies_generer_html($champ, $env = array()) {
if (isset($champ['saisies']) and is_array($champ['saisies'])) {
$contexte['saisies'] = $champ['saisies'];
}
// On génère la saisie
return recuperer_fond(
'saisies/_base',

5
saisies/textarea.html

@ -2,7 +2,7 @@
Parametres :
- class : classe(s) css ajoutes au textarea
- rows : nombre de ligne, par defaut : 20
- rows : nombre de ligne, par defaut : 20
- cols : nombre de caracteres de large, par defaut : 40 (cela depend aussi et surtout du CSS)
- inserer_barre : barre d'outils du porte plume à insérer (forum ou edition par défaut)
- previsualisation : si égale à 'oui', ajoute l'onglet de prévisualisation
@ -14,9 +14,8 @@
label=<:spa:couleur_foncee:>,
obligatoire=non})]
]
[(#REM) Si la valeur est un tableau, le plugin sait le transformer en chaine, plutôt que d'afficher "Array" ]
#SET{valeur, #ENV{valeur_forcee,#ENV{valeur,#ENV{defaut}}}}
#SET{valeur, #GET{valeur}|is_array|?{(#GET{valeur}|saisies_tableau2chaine), #GET{valeur}}}
<textarea name="#ENV{nom}" class="[(#ENV{class}) ][inserer_barre_(#ENV{inserer_barre}) ][(#ENV{previsualisation}|oui)inserer_previsualisation]" id="champ_[(#ENV{id,#ENV{nom}}|saisie_nom2classe)]" rows="[(#ENV{rows,20})]" cols="[(#ENV{cols,40})]"[ disabled="(#ENV{disable})"][ readonly="(#ENV{readonly})"][ placeholder="(#ENV{placeholder})"][(#ENV{obligatoire}|et{#ENV{obligatoire}|!={non}}|et{#HTML5}|oui) required="required"][ aria-describedby="(#ENV{describedby})"][ maxlength="(#ENV{longueur_max})"][ (#ENV*{attributs})]>
#GET{valeur}</textarea>
#GET{valeur}</textarea>

1
saisies_pipelines.php

@ -205,6 +205,7 @@ function saisies_formulaire_charger($flux) {
// On ajoute le tableau complet des saisies
$flux['data']['_saisies'] = $saisies;
}
return $flux;
}

Loading…
Cancel
Save