Seguito: Ho iniziato a lavorare su un’implementazione di questo. Il mio approccio di base è:
- Aggiungere una nuova impostazione del sito, “Nomi completi visibili ai gruppi” (cioè, “gruppi ai quali il nome completo di qualsiasi utente è visibile”).
- Aggiungere un nuovo predicato
can_see_full_names?aGuardian, che controlla l’impostazione del sito. - Sostituire (molte) istanze di
SiteSetting.enable_namescon il predicatocan_see_full_names?.
Questo è stato per lo più semplice: l’ostacolo più grande è stato che i serializzatori non inoltrano i loro parametri scope, e questo si è trasformato nel suo piccolo sottoprogetto.