Automatic user groups based on post count
Hi,
I'm looking for a way to create automatic user ranks based on the number of posts, using Flarum user groups.
I currently use FoF Badges, but badges are cumulative, so they don't work well for this particular rank system.
What I need is something like this:
| Posts | Rank / Group |
| 0–9 | Rebobinando |
| 10–24 | Teleadicto |
| 25–49 | Recreativo |
| 50–89 | Radio |
| 90–139 | Coleccionista |
| 140–199 | 8-Bits |
| 200–299 | Tecno |
| 300–449 | VHS |
| 450–649 | 16-Bits |
| 650–899 | Retro |
| 900–1199 | Milenial |
| 1200–1599 | Cyberpunk |
| 1600+ | Leyenda |
Each rank would be a normal Flarum group, with its own name, Font Awesome icon and color.
The important part
The rank groups must be exclusive.
For example:
User has 9 posts
→ belongs to the Rebobinando group.
User reaches 10 posts
→ remove Rebobinando
→ add Teleadicto
User reaches 25 posts
→ remove Teleadicto
→ add Recreativo
And so on.
The user should have only one rank group active at a time.
Why I'm not using FoF Badges for this
FoF Badges works perfectly for achievements that I want users to keep, but it isn't suitable for these ranks.
If I create a badge for each rank and configure each badge to add its corresponding group, the previous groups remain assigned.
For example, a user could eventually have:
Rebobinando + Teleadicto + Recreativo + Radio + ...
This doesn't make sense for a rank system.
Therefore, I want to keep the two systems separate:
Badges: cumulative achievements that users keep.
Groups: the user's current rank, which automatically changes when they reach the next level.
How the ranks are intended to work
These ranks are part of a nostalgia community called REBOBIN. They are designed as a progression system based on participation, with each level representing a different stage of the community.
I have also created a post on my forum showing the concept and presentation of the new ranks:
REBOBIN – Nuevos rangos en REBOBIN:
https://rebobin.totalh.net/d/5-nuevos-rangos-en-rebobin
Is there an extension for this?
I've been looking for an extension that can:
- Check the user's post count.
- Assign a group when a certain number of posts is reached.
- Automatically remove the previous rank group.
- Assign the new rank group.
- Keep only one rank group active at a time.
I haven't found a current extension that does exactly this and is compatible with my installation.
I'm currently using Flarum 2.0.0-rc.8.
Is there currently an extension or recommended way to achieve this?
If not, would it be possible to implement a small extension specifically for this purpose?
Thanks!