Impossible d'attribuer un avatar par défaut en définissant le groupe principal

Je souhaiterais attribuer un insigne d’avatar à tous les utilisateurs d’un groupe.

Auparavant, je pouvais définir l’insigne dans les paramètres du groupe, cocher l’option « Définir automatiquement comme groupe principal », et tous les membres du groupe recevaient automatiquement l’insigne sur leur avatar.

Cependant, il semble désormais que l’insigne d’un utilisateur ne soit plus associé à son groupe principal. Je peux vérifier que le groupe principal d’un utilisateur est correctement défini, mais l’insigne n’apparaît toujours pas sur son avatar.

En explorant l’interface, j’ai remarqué un nouveau paramètre sur la page des préférences utilisateur permettant aux utilisateurs de choisir leur propre insigne.

Je suppose que l’ajout de cette préférence a rompu le lien entre le groupe principal d’un utilisateur et son insigne d’avatar.

Question : Existe-t-il désormais un moyen d’attribuer en masse l’insigne à tous les utilisateurs d’un groupe ? Je ne souhaite pas envoyer de message au groupe pour leur expliquer comment le configurer dans leurs préférences, ni passer un par un pour mettre à jour les préférences de chaque utilisateur.

Cela force les membres du groupe à avoir l’avatar du groupe :

rails c
 target_group = Group.find_by_name("=GroupSlug=")
 users = User.joins(:group_users).where(group_users:{group_id: target_group.id})
 users.each do |u|
  u.flair_group_id = target_group.id
  u.save
 end
Exit

J’ai ajouté une correction pour ce problème dans la PR ci-dessus.

Je viens d’essayer à nouveau.

J’ai remarqué que les modifications apportées au paramètre du groupe principal ne semblaient pas mettre à jour le flair de l’utilisateur pour le flair du groupe. La correction ci-dessus fonctionne-t-elle toujours ?

Sur une note positive, j’ai amélioré mon petit extrait de code de la console Rails ci-dessus afin que vous n’ayez besoin que du slug du groupe (et j’ai confirmé que cela fonctionne toujours !).