Erreur de sujets maximum le premier jour, 4 jours après le premier sujet

Le message d’erreur était :

Vous avez atteint le nombre maximum de sujets qu’un nouvel utilisateur peut créer le premier jour. Veuillez patienter 2 heures avant de retaper.

Cela semble être contrôlé par : « nombre maximum de sujets le premier jour » - ajuster cela a supprimé l’erreur.

Le problème est que l’utilisateur a 8 sujets précédents, le premier datant d’il y a 4 jours. Je pense donc qu’il ne devrait pas être affecté par ce paramètre, car il est censé n’affecter que la période de 24 heures après le premier message de l’utilisateur. Le compte de publication est un utilisateur TL0.

La description de l’option est :

Le nombre maximum de sujets qu’un utilisateur est autorisé à créer dans les 24 heures suivant la création de son premier message

Je ferais une supposition que le paramètre pourrait en réalité être « nombre maximum de messages par jour pour les utilisateurs TL0 ».

Il pourrait être utile de vérifier si c’est également le cas pour le paramètre « nombre maximum de réponses le premier jour ».

Yes, the code seems to be checking to see if a user is TL0 - not checking that it’s the user’s first 24 hours on the site. If that’s the case, possibly the message that is displayed to the user should be changed. The default requirements for achieving TL1 are fairly low though. I’d expect that considering TL0 users to be new users is correct for most cases.

1 « J'aime »

@simon Yeah, I’m experimenting with adjusting the difficulty for users to achieve TL1+.

If the functionality of these settings are kept the same (and assuming it is the same case for max replies in first day), I think it could be good to rename them to be consistent with the other ‘newuser’ settings. As well as update the message to users as you mentioned and the setting descriptions.

E.g.
max topics in first day -> newuser max topics per day
max replies in first day -> newuser max replies per day

Est-ce que ce n’est toujours pas comme il faut ? Ce code
me semble incorrect, vérifie si le premier message de l’utilisateur a plus d’un jour ?

 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

D’accord, c’était un peu délicat à démêler, mais je pense que cela corrigera le problème :

Fondamentalement, nous avons modifié l’intention de new_user_posting_on_first_day? il y a des années, de sorte qu’elle ne correspondait plus à la description et aux erreurs. Cela restaure l’ancien comportement et ne traite pas les utilisateurs TL0 comme de nouveaux utilisateurs à tout moment aux fins de cette vérification.

3 « J'aime »