You can use the filter:<templateName>.build hooks. For the category page it would be filter:category.build, for a topic page it would be filter:topic.build and so on.
[nodebb-plugin-reputation-rules] Reputation Rules Plugin for NodeBB
@thebronx I just experimented with
Min rep to downvoteand found that the overlapping settings generally play nicely together. The most stringent rule (between the two) is used. If the built-in barrier is met the error message given is "You don't have enough reputation to downvote this post". If the plugin barrier is met the error message is "You don't have enough reputation".
My plan is to keep the same values in both fields. It works fine and is the least confusing to me.
@zandertrek if you are not going to change those settings frequently, fine, keep them the same
if you want to experiment, I would set one to zero and just change the other one to simplify
cause like you said, the most restrictive setting will take precedence
at least that is how I test it
if you have any suggestions let me know cause the idea behind the plugin was to make sure that reputation could be trusted but how that is achieved is very tricky
the rules that have been implemented should help, but I am sure there is more that could be done
One thing I would like to have is a log where I can see how a user got his reputation. All the votes, with their weights, the link to the post and the link to the user who voted for him.
Would be useful to tune the settings and maybe think of new rules.
Maybe in the admin panel, maybe public not sure. Anyways, I think it would be useful but it is just an idea at this point.
@thebronx The voting log is appealing to me. Definitely from the admins perspective it would be a learning tool - a way to observe trends, patterns, and anomalies. For me, this log may be most useful as a .csv that included all votes with associated information (including links to the post) that I could analyze numerous ways.
if you have any suggestions let me know
I see that more communication with the user is an area for growth in the reputation-voting-privileges ecosystem.
- Notifying users when they have accumulated enough reputation to access priviledges including upvote, downvote, profile photo, cover photo, AboutMe, website, and signature.
- Including specifics in voting error messages. Currently the error messages are generic ("you don't have enough rep") but the user would really appreciate knowing how far they have to go ("you need x more rep before you can upvote") and it gives the user a clear goal if they choose to accept the challenge.
I hope these are reasonable suggestions.
@zandertrek those are great ideas!
The first one should be in NodeBB or another plugin probably, as this plugin is more about upvoting/downvoting and not about other privileges.
But the idea of showing notifications like "you have X votes left this month" or "no more votes remaining today" and things like that could be a good way of educating users on the limits of reputation instead of just error messages.
Regarding the second one, not sure if the error popups have enough space for more detailed messages, or if there is another way of showing feedback but it would be really nice to have that. Definitely worth exploring.
Thank you for the suggestions. Not sure if I will implement them at this point but I will dedicate some time to think and mess around to see how far I can go.
I've been improving error messages a bit, now they include some important bits of information depending on the error:
Same for the Spanish translation of course:
I will be including these changes in the next release.
Edit: v1.2.3 was released with these changes
This post is deleted!
@thebronx I experienced some difficulties receiving v1.2.3 but it is now installed. I tested it using a dummy account and I really appreciate the higher level of communication that this version provides. I know the users will also.
Is this message generated from the Reputation Rules plugin? I can't find where to edit this setting.
@zandertrek yes, that is a plugin generated message.
If you go to the plugin settings, right below Global configuration there is a message (more than an option) that says how that number is calculated.
It is a formula: max votes per day is one tenth of the user reputation, with a minimum of 5 votes per day and a max of 50.
This is fixed, cannot be configured right now.
How would you like to override this setting? Would you like to set a fixed number of votes instead? Would you prefer to alter it to 20% or 50% of user's reputation?
The idea behind this being a formula was that the higher the user reputation the less likely that user would be to abuse the system. In other words, low reputation and high number of votes per day was the most risky combination that would allow spam accounts and multi-accounts to take advantage of the system.
But that of course is quite arbitrary. Why 5 votes minimum? Or 50 max? Why 10%?
So yeah, what would you like the plugin to behave?
@thebronx I like the feature. It does make sense. I would personally like to be able to manage the percentage. Everything else looks good to me as it is.