diff --git a/gamuform_fonctions.php b/gamuform_fonctions.php
index 4fb6d10..d6b8fad 100644
--- a/gamuform_fonctions.php
+++ b/gamuform_fonctions.php
@@ -13,6 +13,33 @@ if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
+/**
+ * filtre generale qui appelle un filtre spécifique, déclaré dans l'array saisies avec la cle : filtrer
+ *
+ * @param String $objet
+ * @param String $champ
+ * @param String $valeur
+ *
+ * @return String valeur modifiée ou pas par le filtre
+ */
+function gamufiltre($objet, $champ, $valeur) {
+ if (gamuform_objet_autoriser($objet)) {
+ $T = gamuform_recup_saisies($objet);
+ if (!empty($T)) {
+ foreach ($T as $s) {
+ if (
+ $s['options']['nom'] === $champ
+ and !empty($s['options']['filtrer'])
+ ) {
+ $filtre = $s['options']['filtrer'];
+ return $filtre($valeur) ?? '';
+ }
+ }
+ }
+ }
+ return $valeur;
+}
+
/**
* recuperation du tableau des saisies d'un objet
* dans : gamuform/mon_objet.php
diff --git a/json_gamuform.json.html b/json_gamuform.json.html
index 92632e0..2546f62 100644
--- a/json_gamuform.json.html
+++ b/json_gamuform.json.html
@@ -1,5 +1,6 @@
#HTTP_HEADER{Content-Type: application/json; charset=#CHARSET}
+
#SET{header,#ENV{objet}|gamuform_recup_champ}
[{
"header":{
@@ -42,7 +43,7 @@
"id": #GET{ligne/id},
"edit": [(#GET{edit}|json_encode)],
- [(#CLE|json_encode)] : [(#GET{ligne/#CLE}|json_encode)],
+ [(#CLE|json_encode)] : [(#ENV{objet}|gamufiltre{#CLE,#GET{ligne/#CLE}}|json_encode)],
"sup": [(#GET{sup}|json_encode)]
},
diff --git a/paquet.xml b/paquet.xml
index f0519b6..f3c377d 100644
--- a/paquet.xml
+++ b/paquet.xml
@@ -1,7 +1,7 @@