XF 1.3 Warning & temp groups not interacting as expected.

Xon

Well-known member
With the Warning system, you can add a group when Warning Action is triggered or directly with a Warning.

The Warning has it's own expiry date, and so does the temp group change.

However, from testing when a warning is deleted/expired before the expiry date on the group change the added group isn't removed.

Running the various cron tasks doesn't appear to help.

The idea behind this is to allow user posting rights to some nodes to be removed and then restored when the warning is deleted or expires.
 
If you're doing a warning action with a length of X, once it's triggered, it will always be applied for that length of time, regardless of what happens -- this is expected. If you want to keep it attached to an action but want it to expire when the points change, you need to set it to be applied when above the threshold.

Alternatively, you may want to attach the change to the warning itself and it will be applied as long as that warning is active.
 
If you're doing a warning action with a length of X, once it's triggered, it will always be applied for that length of time, regardless of what happens -- this is expected. If you want to keep it attached to an action but want it to expire when the points change, you need to set it to be applied when above the threshold.
Ah.

What I was hoping to-do was to create a system where as the points a user has accumulated increase, the duration of how long changes to a punishment group become longer and longer. Without needing the points to expire for the change to be removed.

As one of our admins(who I've now associated with our Xenforo licence), detailed, the plan is to permit users to have posting permissions taken away rather than entire site-access that a ban does.

Alternatively, you may want to attach the change to the warning itself and it will be applied as long as that warning is active.
Yes, this is working as expected.
 
What I was hoping to-do was to create a system where as the points a user has accumulated increase, the duration of how long changes to a punishment group become longer and longer. Without needing the points to expire for the change to be removed.
This is generally how it works. You would create warning actions with higher thresholds and more aggressive punishments. You could have a warning active for a year and a punishment active for a day. After the day, they wouldn't have the limits applied but they'd still have the same number of points. A further warning would then take them over a higher threshold for example.

There isn't a "one time limit" in place. If you're currently the punishment from a particular threshold, the code appears to remove and reapply the action (essentially refreshing it).
 
This is generally how it works. You would create warning actions with higher thresholds and more aggressive punishments. You could have a warning active for a year and a punishment active for a day. After the day, they wouldn't have the limits applied but they'd still have the same number of points. A further warning would then take them over a higher threshold for example.

There isn't a "one time limit" in place. If you're currently the punishment from a particular threshold, the code appears to remove and reapply the action (essentially refreshing it).
Yes, applying increasing number of warnings works as expect with a graduated punishment scheme.

The issue is when a warning is deleted/expired (and thus the points taken away) it was the expectation that the punishment would also be taken away. That is the aspect of the system which isn't functioning as first expected.
 
Alright, so here's the problem:

For example, in my current testing this is what happens.

100 warning points temporarily adds the user to the banned usergroup for 1 day. Now, suppose it's determined that the ban was unjustified, and an admin reverses the ban (manually removes them from the Banned Users group) and removes the points.

I'm just guessing on this, but it seems like that when the usergroup is manually removed that was originally added through warning action, there's a hidden timer for that groups expiration that isn't cleared or checked. Oddly enough though, it seems it prevents the user from being automatically added to the Banned Users group again until that hidden timer expires. In my example, no amount of points for any threshold will move the user into the Banned Users group - if I wait a day, to when the original ban expired, then the warning actions work properly again.
 
Top Bottom