Browse Source

La lecture des config lorsqu'on a @config:xxx@ est mis dans une fonction à part, servira pour la suite niveau JS.

On en profite pour optimiser un peu : puisqu'on est deja "champ" par
"champ" un preg_match() suffit.
svn/root/tags/v3.26.0
maieul@maieul.net 3 years ago
parent
commit
86e8e92e52
  1. 13
      inc/saisies_afficher_si_commun.php
  2. 10
      inc/saisies_afficher_si_php.php

13
inc/saisies_afficher_si_commun.php

@ -45,3 +45,16 @@ function saisies_afficher_si_evaluer_plugin($champ) {
}
return $actif;
}
/**
* Retourne la valeur d'une config, si nécessaire
* @param string $champ le "champ" a tester : config:xxx ou un vrai champ
* @return string
**/
function saisies_afficher_si_get_valeur_config($champ) {
$valeur = '';
if (preg_match("#config:(.*)#", $champ, $config)) {
$config_a_tester = str_replace(":", "/", $config[1]);
$valeur = lire_config($config_a_tester);
}
return $valeur;
}

10
inc/saisies_afficher_si_php.php

@ -105,14 +105,12 @@ function saisies_set_request_null_recursivement($saisie) {
**/
function saisies_afficher_si_get_valeur_champ($champ, $env) {
$plugin = saisies_afficher_si_evaluer_plugin($champ);
$config = saisies_afficher_si_get_valeur_config($champ);
if ($plugin !== '') {
$champ = $plugin;
} elseif (preg_match_all("#config:(.*)#", $champ, $matches, PREG_SET_ORDER)) {
foreach ($matches as $config) {
$config_a_tester = str_replace(":", "/", $config[1]);
$champ = lire_config($config_a_tester);
}
} elseif (is_null($env)) {
} elseif ($config) {
$champ = $config;
} elseif (is_null($env)) {
$champ = _request($champ);
} else {
$champ = $env["valeurs"][$champ];

Loading…
Cancel
Save