[SPIP] v3.2.7-->v3.2.9
[lhc/web/www.git] / www / ecrire / public / assembler.php
index 706fc28..bbe6ba0 100644 (file)
@@ -345,6 +345,8 @@ function public_produire_page_dist(
 // 4: langue
 
 function inserer_balise_dynamique($contexte_exec, $contexte_compil) {
+       arguments_balise_dyn_depuis_modele(null, 'reset');
+
        if (!is_array($contexte_exec)) {
                echo $contexte_exec;
        } // message d'erreur etc
@@ -457,6 +459,29 @@ function message_page_indisponible($page, $contexte) {
        return $page;
 }
 
+/**
+ * gerer le flag qui permet de reperer qu'une balise dynamique a ete inseree depuis un modele
+ * utilisee dans les #FORMULAIRE_xx
+ *
+ * @param string|null $arg
+ * @param string $operation
+ * @return mixed
+ */
+function arguments_balise_dyn_depuis_modele($arg, $operation = 'set') {
+       static $balise_dyn_appellee_par_modele = null;
+       switch ($operation) {
+               case 'read':
+                       return $balise_dyn_appellee_par_modele;
+               case 'reset':
+                       $balise_dyn_appellee_par_modele = null;
+                       return null;
+               case 'set':
+               default:
+                       $balise_dyn_appellee_par_modele = $arg;
+                       return $arg;
+       }
+}
+
 // temporairement ici : a mettre dans le futur inc/modeles
 // creer_contexte_de_modele('left', 'autostart=true', ...) renvoie un array()
 // http://code.spip.net/@creer_contexte_de_modele