Basato sulla descrizione qui (Understanding Discourse Trust Levels), cita:
Gli utenti di trust level 1 possono…
Usare tutte le funzioni principali di Discourse; tutte le restrizioni per i nuovi utenti vengono rimosse
Una delle restrizioni per i nuovi utenti è (cita anche):
Gli utenti di trust level 0 non possono…
Pubblicare più di 3 argomenti
Penso che questo si riferisca all’impostazione max_topics_in_first_day che viene utilizzata in questa funzione (link github):
# Ulteriori limiti di frequenza sugli argomenti: al giorno e messaggi privati al giorno
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
Sembra che new_user_posting_on_first_day non corrisponda esattamente alla descrizione della pagina del blog sopra. La sua implementazione è:
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
Come da codice: se un utente è TL1 e ha creato il suo primo post entro lo stesso giorno, allora questa funzione restituisce true e si applica il limite max_topics_in_first_day
Come da blog: se un utente è TL1, tutte le restrizioni per i nuovi utenti vengono rimosse. Quindi presumo che ‘max_topics_in_first_day’ non dovrebbe applicarsi.
Le mie domande:
- È un bug nel codice?
- Se è intenzionale, esiste un’impostazione dedicata per controllare il numero di argomenti che un utente TL1 può creare nel suo primo giorno? Vorrei che fosse superiore a quello per TL0.