Las funciones
charger()
({cargar}) y
traiter()
({tratar}) pueden indicar en su respuesta que el formulario es editable o no. Esto se traduce por la recepción de un parámetro
editable
en el esqueleto, que puede servir a esconder o no el formulario (pero no los mensajes de error o de éxito).
Se utiliza así :
[(#ENV{editable}) ... contenido de <form> ... ]
:
<div class="formulaire_spip formulaire_demo">
[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
[(#ENV{editable})
<form method='post' action='#ENV{action}'><div>
#ACTION_FORMULAIRE{#ENV{action}}
<ul>
...
</ul>
<p class='boutons'><input type='submit' class='submit' value='<:bouton_enregistrer:>' /></p>
</div></form>
]
</div>
{{{En caso de un bucle en el formulario}}}
Si un bucle SPIP está presente dentro de la escritura
[(#ENV{editable}) ... ]
(o cualquier otra baliza), el compilador SPIP devuelve un error (o no devuelve correctamente la página) porque esto no está previsto en el actual lenguaje de esqueletos.
Como paliativo a esto, se puede:
-* ya sea poner el bucle en una inclusión llamada entonces por
<INCLURE{fond=mi/inclusion} />
-* ya sea utilizar el plugin Bonux y su bucle CONDITION de esta manera:
<div class="formulaire_spip formulaire_demo">
[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
<BOUCLE_editable(CONDITION){si #ENV{editable}}>
<form method='post' action='#ENV{action}'><div>
#ACTION_FORMULAIRE{#ENV{action}}
<ul>
...
</ul>
<p class='boutons'><input type='submit' class='submit' value='<:bouton_enregistrer:>' /></p>
</div></form>
</BOUCLE_editable>
</div>