Nous aimerions avoir un certain contrôle sur cela. En attendant, j’envisage de créer des formulaires avec des espaces pour les libellés (ainsi, l’* s’affichera toujours pour les champs obligatoires).
Après avoir montré ce formulaire et le résultat de la publication à mon équipe ce matin lors de la réunion, les réponses ont été :
Il nous manque la barre d’outils de mise en forme en haut… Je me rends compte que je ne veux pas d’un formulaire qui crée une publication ; je veux une publication normale avec quelques champs obligatoires.
et
J’aimerais que ces champs soient dans une petite boîte en haut [de la publication résultante] ou sur le côté, ou quelque chose comme ça.
Alors… nous sommes impatients de voir comment cela évolue.
Nous avons mis en place des modèles « normaux » dans les catégories pertinentes. Cela ne signifie pas que les gens fournissent les données qu’ils demandent.
Euh… Non. Il s’agissait de la présentation des données collectées à partir des entrées du formulaire.
Et dans le même ordre d’idées, pour donner aux utilisateurs la barre d’outils de formatage standard pour les réponses courtes et/ou longues dans les zones de texte.
En attendant, j’ai trouvé cette solution de contournement moche pour a) masquer les réponses de type « case à cocher », et b) afficher les questions qui ne sont pas des zones de texte sur la même ligne (<question?>: <answer>) et c) corriger l’espacement entre les éléments.
Si vous êtes un peu familier avec Javascript, vous pouvez l’adapter à vos besoins :
(Ceci doit être ajouté dans la section hooks de app.yml)
hooks:
after_code:
- exec:
# Généralement, vous avez ici les trucs de plugin
- replace:
filename: /var/www/discourse/app/assets/javascripts/discourse/app/lib/form-template-validation.js
from: 'return formattedOutput.join("\n\n");'
to: |
const formattedOutput2 = mergedData.map((item) => {
const key = Object.keys(item)[0];
const value = item[key];
const type = formTemplate.find(x => x.id == key).type;
if (type == 'checkbox') return;
if ((value) && (type != 'textarea')) return `**${labelMap[key]}**: ${value}`;
if (value) return`\n### ${labelMap[key]}\n${value}\n`;
});
return formattedOutput2.join("\n");