Le #formulaire_charter a perdu son role de template
J'avais pas vu passer (ou pas bien vu) le refactoring. Je comprends bien que ça a amélioré la maintenabilité et lisibilité du code, mais on a perdu complètement le rôle de "hop je prend le code pour ce type de champ, je colle dans mon formulaire et ça marche":
Avant on avait par exemple pour le select:
#SET{name,select}#SET{obli,''}#SET{defaut,''}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
<div class="editer editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
<label for="#GET{name}">[(#GET{fl}|concat{':label_',#GET{name}}|_T)]</label>[
<span class='erreur_message'>(#GET{erreurs})</span>
]<select name="#GET{name}" class="select" id="#GET{name}">
#SET{val,oui}
<option value="#GET{val}"[(#ENV{#GET{name},#GET{defaut}}|=={#GET{val}}|oui)selected="selected"]>[(#GET{fl}|concat{':label_',#GET{name},'_',#GET{val}}|_T)]</option>
#SET{val,non}
<option value="#GET{val}"[(#ENV{#GET{name},#GET{defaut}}|=={#GET{val}}|oui)selected="selected"]>[(#GET{fl}|concat{':label_',#GET{name},'_',#GET{val}}|_T)]</option>
</select>
</div>
Il suffisait de faire un #SET{fl,monfichierlangue}
en début de formulaire, puis de mettre mettre les val qui vont bien dans les options, et tout était prêt à l'emploi, juste à renseigner les chaines de langues.
Maintenant on a
#SET{name,saisie_3}#SET{obli,''}#SET{defaut,''}#SET{erreurs,#ENV**{erreurs/#GET{name}}}#SET{id,#GET{name}|concat{#ENV{suffixe}}}
<div class="editer editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
<label for="#GET{id}"><:charter:label_select:></label>[
<span class='erreur_message'>(#GET{erreurs})</span>
]<select name="#GET{name}" class="select" id="#GET{id}">
#SET{val,oui}
<option value="#GET{val}"[(#ENV{#GET{name},#GET{defaut}}|=={#GET{val}}|oui)selected="selected"]><:charter:label_valeur_oui_long:></option>
#SET{val,non}
<option value="#GET{val}"[(#ENV{#GET{name},#GET{defaut}}|=={#GET{val}}|oui)selected="selected"]><:charter:label_valeur_non_long:></option>
</select>
</div>
On voit que tous les libellés sont des chaines de langue en dur, qu'il faut donc reprendre à la main une par une.
En plus on se retrouve avec le #ENV{suffixe}
qui n'a de sens que pour ce formulaire, pas quand on colle l'exemple dans un autre formulaite.
Bref, je vois bien la raison qui a guidée ce refactoring, mais du coup on a perdu l'autre usage qui était "des snippets de code prêt à l'emploi pour composer son propre formulaire"
(et je vais donc devoir me forker le formulaire pour en refaire une version prête à l'emploi... :( )