Custom widget "Intra form" : Formulaire interne

Salut Maxime,
merci pour les précisions.

On voudrait pouvoir être sûr qu’on a bien fait la demande d’affectation sans avoir à aller fouiller dans les mails envoyés de notre client perso

Je n’ai pas bien compris je pense : je croyais que tu voulais qu’au clic, ça ouvre le client mail (équivalent formule mailto dans colonne). Donc il faudra un clic manuel pour envoyer le mail, donc je ne comprends pas comment tu seras sûr d’avoir fait la demande (tu ne pourras pas vérifier que quelqu’un a bien cliqué « Envoyer » dans le client ?)

Oui, on ne pourra pas être sûr qu’on a fini par envoyer le mail dans le client, mais on voudrait au moins se dire que quelqu’un a pensé à le faire (et qu’il est probablement allé jusqu’au bout de la démarche).

J’ai fait le mailto pré-rempli avec des champs, mais je voudrais juste mettre en valeur le fait qu’on a déjà cliqué, comme on pourrait le faire en HTML/css pour un lien a:visited

J’ai pu utiliser l’option multiligne pendant quelques temps, mais je ne peux plus. (cf image): j’ai l’impression qu’il s’agit d’une regression.

Pour ce qui est des pieces jointes, j’aurais tendance à dire que const temp_token = grist.docApi.getAccessToken({readOnly: false}) pour l’utiliser ensuite via l’API http fonctionne, où est le problème ? Est-ce à ce moment que le problème CORS intervient ?

Bonjour,

mauvaise manip de ma part, merci de l’alerte !
Cela devrait être résolu maintenant, est-ce que c’est ok de votre côté ?

Pour les PJs, l’erreur cors est au moment de l’appel api d’upload (https://{gristhost}/api/docs/{docId}/attachments). Nous sommes en train d’analyser cette solution proposée par un utilisateur sur github : Allow attachment upload from a custom widget · Issue #2040 · gristlabs/grist-core · GitHub :crossed_fingers:

Merci pour les précisions !
Comme cela peut complexifier le formulaire, j’aimerais savoir si d’autres personnes ont le même besoin.

N’hésitez-pas à liker ce post si vous souhaitez aussi qu’au moment du clic sur le bouton « Valider », cela déclenche l’ouverture de votre client mail, avec un même destinataire pour toutes les soumissions, et dans le contenu du mail, les réponses soumises via le form ?

Oui c’est réglé merci !

Est-ce que cela nécessitera de changer les paramètres de notre instance grist ?

Si c’est le cas, ça serait super que les guides de déploiement de Grist donnent cette information.

Bonjour, quelques nouveautés dans le widget :slight_smile: N’hésitez-pas à me signaler en cas de bugs/régressions.

nouveautés

polices

  • La police Marianne (réservée à l’État) : est disponible

Le choix se fait en haut de la configuration de la vue. La police s’applique à tout le formulaire.

D’autres jolies polices sont aussi disponibles :

marges

Possibilité de choisir entre 3 tailles de marges : petites, moyennes ou grandes

éditeur de texte

Vous pouvez ajouter des liens, du gras, italique, liste à puces, emojis, couleur, surlignage, style (3 titres disponibles, ou paragraphe).
Ce sont les mêmes options que le Custom widget “Clean Text”

corrections

  • il n’est plus possible de rajouter directement des titres - devenu inutile car les titres sont disponibles dans l’éditeur de texte libre. Cependant, les titres que vous auriez déjà ajoutés au custom widget sont préservés
  • les colonnes formule ne sont plus disponibles à l’ajout, vu qu’elles ne peuvent pas être éditées par l’utilisateur·ice final
  • les colonnes PJs ne sont plus dispos à l’ajout en attendant de débloquer le souci de chargement dans la table (cf ici)
1 « J'aime »

Je vois que les « jolies police » sont fournies par Google Fonts, avec appel à fonts.googleapis.com

Problème : cet appel enfreint le RGPD et il y a déjà eu une jurisprudence en Europe à ce sujet. Donc je déconseillerais cette fonctionnalité dans un widget destiné à l’administration et un outil scruté de près par nos DPO…

1 « J'aime »

Hello,
Oui tout à fait, j’ai enlevé la dépendance et elles sont maintenant hébergées en local. Merci de ta vigilance !

2 « J'aime »

Rebonjour

J’aimerais aider pour l’ajout de pièces jointes dans le formulaire (nous avons un cas d’usage où ce serait très utile).
Je n’arrive pas à comprendre d’où vient la limitation. En particulier, je suis très surpris que les pièces jointes fonctionnent sur les formulaire grist classiques. Comme si il y avait moins de restrictions de sécurité pour communiquer avec l’API via un site externe que depuis la même page. (Il est possible que le formulaire utilise un mécanisme complètement différent, mais je trouve cela surprenant tout de même). J’ai ajouté un commentaire dans la discussion github.
Dans le cas où cela nécessite réellement de changer les headers côté infrastructure, quel stratégie penses-tu adopter ? Est-ce que tu ajouterais les champs de type « attachment » dans ton widget avec un warning expliquant la configuration nécessaire ?

Merci pour le super travail :+1:

Bonsoir @audezu ,

Merci pour ce super widget. Pour ma part j’ai toujours le problème c’est la première colonne de la table qui s’affiche.

Est il prévu de pouvoir rajouter plusieurs conditions ?

Bonjour @JCE,
avec plaisir et désolée pour les références, c’est rétabli. Que voulez vous dire exactement par rajouter plusieurs conditions ?

Bonjour @Antonin_P, merci pour ton aide ! Maintenant que la question du chargement de PJ dans table est réglée (cf Import et sauvegarde d'un fichier via un Custom Widget Builder - #8 par audezu), je vais ajouter l’option de pouvoir ajouter une PJ via le formulaire interne.

Nous travaillerons ensuite avec @florent.fayolle pour l’améliorer et l’intégrer à la bibliothèque de l’instance.

Je vous tiens au courant !

1 « J'aime »

Merci @audezu pour la correction et la réactivité, ça marche nickel.

L’affichage conditionnel « ne permet » (c’est déjà très bien) qu’une condition ‹ est égal à ›, je pensais peut être à une condition supplémentaire ‹ est différent de › voire du multi conditions avec ‹ et ›/‹ ou ›.
J’ai contourné mon problème en modifiant mon formulaire (j’avais une liste de choix unique avec 3 possibilités et je voulais l’affichage conditionnel d’un champ pour 2 de ces choix).

Bon WE

Bonjour,
Je n’ai pas ce besoin dans l’immédiat, mais je trouve la fonctionnalité intéressante. Peut-être pourrait-on y adjoindre un bouton d’activation / désactivation ou bien deux boutons , « Valider » et « Valider avec mail » ?

Bonjour
Bravo pour commencer, beaucoup d’éléments intéressants dans cette proposition.
je constate un comportement différent entre les formulaires de grist et celui-ci.
Dans le formulaire de grist, lorsqu’on insère un booléen et qu’on le rend obligatoire, le formulaire ne peut être validé tant que le booléen n’est pas modifié. C’est pratique pour faire accepter une règle de fonctionnement par exemple.
Dans le votre, le formulaire est accepté, même si le booléen n’est pas modifié.
Y aurait-il moyen d’avoir une option qui rendrait obligatoire la mise à true de ce champ ?
Merci encore pour tout ce travail

Bonjour @JCE , effectivement j’y avais pensé au début (comme dans framaform notamment), c’est une bonne idée que j’ajoute à la todo ! merci !

Bonjour @Arnault , merci des retours :slight_smile: oui en effet ça fait sens, j’ajoute à la todo !

Bonjour,
Merci pour ce widget.
Est-il possible de prévoir la possibilité de présenter le formulaire sur plusieurs pages ?
Merci !
Christophe

1 « J'aime »

@audezu
je viens d’utiliser ton widget (trop bien)
Une remarque : je l’utilise pour de la saisie de remontées de notes et si je saisis 4,5 ça ne passe que 4 il me faut saisir 4.5
ça peut être bloquant pour les utilisateurs .

1 « J'aime »