Aller au contenu

Paraître dans un classement

tilttek/leaderboards

Personne n'est classé publiquement sans l'avoir choisi. Un classement montre quelque chose d'un membre aux autres ; un membre qui n'a pas choisi d'être montré ne l'est pas.

Le choix

VisibilitéCe que les autres voient sur la ligne du membre
Hidden, celle de chaque membre tant qu'il n'a pas choisiLe rang et le score, sans nom
NamedLa référence du membre, que l'application nomme
PseudonymLe pseudonyme que le membre a choisi : de 1 à 40 caractères, aucun caractère de contrôle, aucune espace à l'une ou l'autre extrémité
$leaderboards->appear($member, Appearance::named());
$leaderboards->appear($member, Appearance::pseudonym('Le Nain Gris'));
$leaderboards->appear($member, Appearance::hidden());
$leaderboards->appearance($member); // the choice kept, hidden by default

Le choix vaut pour tous les classements. Choisir d'être caché oublie le choix gardé.

Ce que voit chaque spectateur

Un membre caché garde son rang (le rang des autres ne change pas parce que quelqu'un a choisi de ne pas paraître) et voit sa propre ligne avec sa référence et self activé. Les autres voient une Row dont le membre et le pseudonyme sont tous deux nuls ; Row::isHidden() le signale, et un gabarit y écrit « Un membre ». Une ligne sous pseudonyme ne porte jamais la référence du membre, pour qu'une page ne puisse pas relier le pseudonyme à un compte.

Un instantané s'affiche selon le choix de chaque membre au moment où il est affiché, et non au moment où il a été pris : un membre qui se cache ensuite disparaît aussi des classements finaux.

Le rôle de l'application

L'application demande au membre, dans son profil, comment il veut paraître, et appelle appear() ; elle donne les noms des membres nommés quand elle produit le rendu d'un classement. L'exportation d'un membre contient son choix (Effacement).