Finally ready with the User Reputation Badge plugin, as discussed here. What this badge will do is allow users to have a small custom badge/text next to their name (Junior Member, Senior Member, etc). Something like this:
As shown above, the user (with trust level 4) has a badge/title next to their name. This can be styled as you wish.
This is accomplished by creating five groups and syncing them with the automatic trust level groups. Once users are put into custom groups based on their trust level, and the group set to ‘primary’, the users can then be styled based on their groups, ie. their trust levels.
Here is how to set it up:
After rebuilding, Add five groups - for example New, Basic, Member, Regular, Leader. You can do this however you like - New Member, Junior Member, etc or whatever fits your community style.
Check the field ‘Automatically set as primary group’.
Under the field that says ‘Users who register with an email domain that exactly matches one in this list will be automatically added to this group:’ write the trust level of the users you want to put in the group as follows:
Trust Level 0 - Write ‘trustlevel0.com’ (without the quotes)
Trust Level 1 - Write ‘trustlevel1.com’ (without the quotes)
Trust Level 2 - Write ‘trustlevel2.com’ (without the quotes)
Trust Level 3 - Write ‘trustlevel3.com’ (without the quotes)
Trust Level 4 - Write ‘trustlevel4.com’ (without the quotes)
So, you would write trustlevel0.com for the New group, trustlevel1.com for the Basic group, and so on.
Click save. The job will automatically keep running every minute (we will adjust the time based on how it performs and scales). You can trigger it manually via Sidekiq to check if the plugin is running properly.
Once you have confirmed that users are getting added to the right groups, you can style them with css. For example, you can play with this code:
.topic-meta-data .username.Leader::after {
content: "Leader";
margin-left: 1.6em;
background-color: #5bc0de;
border-radius: 0.40em;
padding: .2em .6em .3em;
color: white;
}
Change .username.Leader to your group name, for example, .username.GroupName
Thank you to the people who made this possible - @ambisoft, the dev and also @stevenpslade and @OnceWas for their time and help.
Update: This is broken atm, please do not install.