Désolé si cela a déjà été soulevé, j’ai trouvé quelque chose de similaire hier, mais mes termes de recherche ne donnent rien aujourd’hui.
Scénario :
Un serveur Discourse souhaite définir un champ, disons la date de naissance, comme champ obligatoire. Cela ne devrait pas être quelque chose qui nécessite d’être modifié après l’inscription. La solution consiste donc à définir le champ personnalisé pour décocher « modifiable après l’inscription » et ensuite à définir le champ comme « Obligatoire à l’inscription ». Cela fonctionne pour les utilisateurs qui créent un compte via l’inscription typique par e-mail/nom d’utilisateur.
Problème 1 :
Les utilisateurs qui créent des comptes via des méthodes telles que OAuth, DiscourseID, WP-Discourse, etc., ne voient jamais ces champs. Pour que ces utilisateurs aient accès à ces champs, ils doivent être marqués comme Obligatoire pour tous, ce qui nous amène à…
Problème 2 :
Obligatoire pour tous, pour des raisons évidentes, nécessite qu’un champ soit marqué comme « modifiable après l’inscription ». Malheureusement, cela permet également aux utilisateurs de modifier le champ quand ils le souhaitent… ce qui n’est pas du tout ce que nous voulons.
Fonctionnalité demandée :
Ajouter une logique qui permet à « Obligatoire pour tous » de ne pas nécessiter que « modifiable après l’inscription » soit coché. La logique vérifierait d’abord si le champ est vide ou « nul » AVANT de vérifier ce que « modifiable après l’inscription » est réglé sur. Elle ignorerait essentiellement la case à cocher modifiable pour tout champ obligatoire vide/nul. Cela permettrait aux champs personnalisés des utilisateurs d’être modifiables une seule fois, mais une fois qu’une valeur est enregistrée, de ne plus être modifiables.