Je suis presque certain que cela fonctionnait auparavant.
Comportement attendu
Les propriétaires de groupe peuvent ajouter des membres au groupe en utilisant la fenêtre modale « ajouter des membres ».
Comportement observé
Les propriétaires de groupe voient la fenêtre modale « ajouter des membres », mais lorsqu’ils tentent de la soumettre, ils reçoivent une erreur 403 (interdit).
Je viens de récupérer le dernier code depuis GitHub et de le retester. C’est confirmé : le problème est toujours présent. Voici les étapes pour reproduire le bug :
Créez un nouvel utilisateur. Cet utilisateur ne doit pas être modérateur ni administrateur.
Créez un nouveau groupe avec les paramètres suivants : Autoriser les utilisateurs à quitter le groupe librement=True, Autoriser les utilisateurs à envoyer des demandes d'adhésion aux propriétaires du groupe=True, Qui peut voir ce groupe ?=Tout le monde, Qui peut voir les membres de ce groupe ?=Tout le monde, Qui peut @mentionner ce groupe ?=Uniquement les modérateurs et administrateurs, Qui peut envoyer des messages à ce groupe ?=Uniquement les modérateurs et administrateurs.
Définissez cet utilisateur comme propriétaire du groupe.
Connecté en tant que propriétaire du groupe, essayez d’ajouter un autre utilisateur au groupe.
@Benjamin_D a raison. C’est un problème de niveau de confiance (TL).
Il existe un paramètre du site nommé min_trust_level_to_allow_invite, qui était défini sur TL2, alors que le propriétaire du groupe avait le niveau TL1.
Un propriétaire de groupe devrait-il pouvoir inviter des utilisateurs sans qu’ils répondent aux exigences de niveau de confiance ? Cela semble confus.
Ou même simplement ajouter une erreur plus spécifique à ce sujet.
Par exemple, au lieu de lever l’erreur InvalidAccess avec le message (en) : You are not permitted to view the requested resource.
Créer une erreur InsufficientTrustLevel (peut-être en tant que sous-classe de InvalidAccess) avec un message (en) : You do not have the required trust level to view the requeted resource. Au moins, les administrateurs sauront qu’il s’agit d’un problème de niveau de confiance et non d’un bug.
Quelques notes sur l’endroit où ces éléments sont définis dans la base de code :
Bien que je convienne qu’il nous faut un message d’erreur plus clair ici, je pense en réalité que nous avons régressé.
Le rôle du propriétaire d’un groupe est de gérer les membres de son groupe. S’il ne peut pas inviter ou ajouter des utilisateurs à son groupe, alors la fonctionnalité est à moitié cassée…
Je peux me tromper, mais je pense que cette situation est survenue dans le cadre de nos travaux d’amélioration du système d’invitation. Nous normalisons les invitations afin qu’elles utilisent toutes le même système d’invitation, et nous séparons les fonctions relatives aux utilisateurs existants. Plus récemment, nous avons modifié le système pour que les utilisateurs existants soient informés des sujets via le bouton de partage dans le menu du sujet, distinctement de l’invitation de nouveaux utilisateurs à rejoindre le site et à contribuer au sujet.
Nous souhaiterons faire de même pour les groupes — cela figure déjà sur notre liste de tâches, mais je suppose que cela devient plus urgent si cela signifie qu’il n’est pas possible d’ajouter quelqu’un à un groupe sans avoir un niveau de confiance (TL) suffisant pour inviter de nouveaux utilisateurs sur le site.
Cette limite est logique lors de l’invitation d’adresses e-mail à des groupes. Cependant, elle n’a pas de sens lors de l’invitation d’utilisateurs existants. J’ai corrigé ce problème dans :
Cela résoudra le problème pour le moment, mais nous prévoyons de refondre cette section.