Basé sur la description ici (Understanding Discourse Trust Levels), cite :
Les utilisateurs de niveau de confiance 1 peuvent…
Utiliser toutes les fonctions de base de Discourse ; toutes les restrictions pour les nouveaux utilisateurs sont supprimées
L’une des restrictions pour les utilisateurs est (cite également) :
Les utilisateurs de niveau de confiance 0 ne peuvent pas…
Poster plus de 3 sujets
Je pense que cela fait référence au paramètre max_topics_in_first_day qui est utilisé dans cette fonction (lien github) :
# Limites supplémentaires sur les sujets : par jour et messages privés par jour
def limit_topics_per_day
return unless regular?
if user && user.new_user_posting_on_first_day?
limit_first_day_topics_per_day
else
apply_per_day_rate_limit_for("topics", :max_topics_per_day)
end
end
Il semble que new_user_posting_on_first_day ne corresponde pas exactement à la description de la page du blog ci-dessus. Son implémentation est :
def new_user_posting_on_first_day?
!staff? && trust_level < TrustLevel[2] &&
(
trust_level == TrustLevel[0] || self.first_post_created_at.nil? ||
self.first_post_created_at >= 24.hours.ago
)
end
Selon le code : si un utilisateur est TL1 et qu’il a créé son premier message dans la même journée, alors cette fonction renvoie vrai et la limite max_topics_in_first_day s’applique.
Selon le blog : si un utilisateur est TL1, toutes les restrictions pour les nouveaux utilisateurs sont supprimées. Je suppose donc que max_topics_in_first_day ne devrait pas s’appliquer.
Mes questions :
- Est-ce un bug dans le code ?
- Si c’est intentionnel, existe-t-il un paramètre dédié pour contrôler le nombre de sujets qu’un utilisateur TL1 peut créer le premier jour ? Je voudrais qu’il soit plus élevé que pour TL0.