I am considering migrating from XenForo and the more I explore, the more I realize how simple everything is without being simplistic. On the contrary more powerful.
I have to iron out a few configuration and maybe mental blocks around how groups, badges, permissions work.
I will list down how I used these on XenForo and would request suggestions on how can this be achieved on Discourse. So please point me in the right direction.
Groups as Permissions
I had multiple user groups in a ladder and had set permissions based on their seniority. I see trust level is a similar and more usable concept but do I have flexibility to create a custom permission group? Like maybe if I want take away a groups permission to be able to add Avatars and I put members manually into that group.
Groups as Right of Passage
The first X posts by a new member are moderated before they move into a group which allows unrestricted posting of content.
Groups as Ladder Titles
Example of ladder title based on activity
- soldier (50 posts, 50 likes)
- sergent (100 posts, 100 likes)
- captain (100 posts, 100 likes, 1 year on the community)
- commander (500 posts, 500 likes, 2 years on the community)”
Users climb the ladders based on their activity and earn titles which show up against their names. I see we have badges for that and that we can allow them to be used as custom titles. But it looks like an either/or situation. I would want the ladder title and the custom title both to be visible.
I assume, for the activity criteria I have to write a custom SQL for the badges?
Groups as Restricted Access to Categories
I think this one is the best done for my needs. Just adjust the See, Reply, Create permissions.
Based on my limited tinkering, I assume that I can create custom custom groups and give the above permissions to those groups on a per category or sub category basis. Please confirm this.
If the above is true, how do I allow members automatic membership to a group based on their activity? For example anyone with over 100 posts will get auto access. Remember the ultimate objective is to give access to the category.
Secondly how do I selectively remove access to the category for users. For example if I have a member that qualifies the posts criteria but is a troublemaker. How can I remove their access by an overriding deny.
I see discourse only has additive permissions and not an overriding deny permissions.
Groups as Subscriptions
In continuation to the above, I would like users to be able to purchase subscriptions to get access to a group and when the subscription expires, get removed from the group (and therefore access to the category).
But if they are already in another group by virtue of activity (100 posts), then they still get access to the category even if their subscription has expired. Additive permissions to the rescue?