Désactiver « activer les noms » fait que l'administrateur agit de manière étrange

Le code que j’ai écrit ne supprime pas le paramètre enable names,[1] mais s’y ajoute :

  1. Ajouter un paramètre full_names_visible_to_groups (qui inclut admins et moderators comme valeurs obligatoires).
  2. Ajouter une méthode can_see_full_names? à Guardian, qui effectue une conjonction logique (and) de enable_names et de l’appartenance au groupe dans full_names_visible_to_groups.
  3. Utiliser cette nouvelle méthode dans tous les endroits appropriés où un nom complet est exposé/émis par le serveur.

Les points 1 et 2 étaient faciles. Le point 3 est plus compliqué, et je sais que j’ai rencontré des obstacles que je ne savais pas comment résoudre sans obtenir de conseils/orientations. Je dois revenir en arrière et examiner mon code et mes notes en profondeur. (Cela fait plus de 2 mois que je ne m’y suis pas plongé. :see_no_evil_monkey:)

(Si je me souviens bien, display name on posts et les paramètres similaires sont des paramètres côté client, qui affectent la présentation des données reçues du serveur. En d’autres termes, une restriction supplémentaire à ce que le serveur émet.)

Je pense que le point (1) est pris en charge si enable_names est vrai, ce qui sera probablement ce que presque tout le monde voudra une fois que le nouveau paramètre par groupe sera disponible.[2]

Je pense avoir rencontré et traité le point (2) — en grande partie.[3]

Je me souviens d’autres cas où des noms complets sont divulgués.[4]

Quoi qu’il en soit, je vais revoir mes notes et essayer de soumettre des PR cette semaine, et en même temps, je vais déterrer les questions ouvertes/les points en suspens.


  1. …pour un certain nombre de raisons, notamment : (a) je n’étais pas sûr de l’intention réelle du paramètre (voir ma question dans un message précédent ci-dessus), et (b) le laisser en place offre une voie de mise à niveau incrémentielle plus sûre. ↩︎

  2. …si l’on considère que enable_names = false signifie “Ce site n’utilise pas les noms complets de quelque manière que ce soit”. ↩︎

  3. Par exemple, lorsqu’un e-mail d’invitation est envoyé à une adresse (qui n’est évidemment pas associée à un utilisateur, sinon il n’aurait pas besoin d’invitation), l’e-mail inclut-il le nom complet de l’invitant ou non ? ↩︎

  4. Par exemple, oneboxer.rb, lors de la création d’une “onebox” d’un utilisateur local, écrit le nom complet dans le contenu du message “cuit”, ce qui le rend visible par tous et n’importe qui, pour toujours. ↩︎

4 « J'aime »