Nous intégrons Discourse à la plateforme Php/Laravel où nous avons implémenté le SSO. La photo personnalisée des utilisateurs n’est mise à jour qu’une seule fois. Cependant, si je change la photo de profil dans la plateforme Laravel, la photo personnalisée n’est pas mise à jour dans Discourse, même après que je me sois déconnecté et reconnecté.
Même si j’ai passé ‘avatar_force_update’ à true, la photo personnalisée de l’avatar n’est pas remplacée.
Je peux voir l’URL de la photo de profil mise à jour dans l’enregistrement SSO, cependant la nouvelle image de profil n’est pas reflétée dans Discourse, même après que je me sois déconnecté et reconnecté.
Merci pour votre réponse. Si je recharge le navigateur, que j’ouvre en mode incognito, ou même que je me déconnecte et me reconnecte, cela ne se met pas à jour.
Comme mentionné, cela ne se met à jour que la première fois. Par exemple :
Un nouvel utilisateur a un avatar et se connecte à Discourse pour la première fois via SSO, l’avatar est mis à jour.
Ou un utilisateur n’a pas d’avatar initialement, et met à jour son avatar sur la plateforme, et dans ce cas, cela se reflète dans Discourse.
Mais un utilisateur a un avatar et s’il en met un nouveau sur la plateforme, il ne sera pas mis à jour dans Discourse, même si je me déconnecte/reconnecte, ou que j’essaie dans un autre navigateur. Je peux voir l’URL de la photo de profil mise à jour dans l’enregistrement SSO, mais l’avatar n’est pas mis à jour.
Il pourrait être utile d’activer le paramètre discourse connect overrides avatar, de vous déconnecter de Discourse, puis de vous reconnecter. Je suis à peu près sûr qu’il est prévu que l’avatar puisse être mis à jour sans que ce paramètre soit activé tant que le paramètre avatar_force_update est défini sur true dans la charge utile SSO. Le code qui gère cela est assez complexe cependant : discourse/app/models/discourse_connect.rb at 2ff3f44b957268718e03554fb25d485e1d449ed5 · discourse/discourse · GitHub.
Si vous ne pouvez pas activer ce paramètre, ou si vous êtes simplement curieux de savoir ce qui se passe, une autre chose à vérifier est de vous assurer que la valeur que vous passez pour le paramètre avatar_force_update est interprétée comme la valeur booléenne true par Discourse. Il existe des frameworks (notamment WordPress) où les valeurs booléennes sont converties en 0 ou 1. Pour contourner ce problème, Discourse acceptera la chaîne de caractères \"true\" comme valeur booléenne dans la charge utile SSO. Vous pouvez probablement confirmer cela en examinant la valeur du champ avatar_force_update dans l’enregistrement SSO affiché sur la page d’administration de l’utilisateur. Ou en activant le paramètre de journalisation détaillée que Jay a mentionné.