XF 2.1 Permissions understanding

DevPunk

Member
Why doesn't the specified UserPermission take effect? Isn't this the point of user specific rules that these - dominate the others?

I mean: "time limit on editing"

screen_1674062645.webp
 
Isn't this the point of user specific rules that these - dominate the others?
Permissions are cumulative - there is no priority for standard yes/no/never permissions.

However, in the case of numeric values, as detailed in the screenshot above, the highest value does take priority.
 
Ok. But how can I assign a different edit time to a single user?
One way
Create a special group called something like Longer Edit Times and assign it a higher priority than the standard (or your highest) existing user group... then modify the edit times for that group, and assign that user to that group.
 
One way
Create a special group called something like Longer Edit Times and assign it a higher priority than the standard (or your highest) existing user group... then modify the edit times for that group, and assign that user to that group.
This would mean that one day I would have hundreds of groups...
Somehow I don't understand the sense of individual user permissions.
Then can one of the responsible explain to me why there are "user permissions"?
 
This would mean that one day I would have hundreds of groups...
Somehow I don't understand the sense of individual user permissions.
Then can one of the responsible explain to me why there are "user permissions"?
No.... you simply add more users to that same group that you want to increase the time editing permission of. You don't create a new group for each user for that permission.

You CAN use individual user permissions... but THEN you need to keep a log of ANY special permissions that you give that user in case you need to remove them later.
BTW, as for how... did you ever think to click on the user from ACP -> Users -> List All users (or doing a search on that username and clicking on it) and look off to the right of the tabs where it shows Permissions and click on that tab?

Screen Shot 2023-01-19 at 8.55.09 AM.png
Screen Shot 2023-01-19 at 8.55.32 AM.png


What you SPECIFICALLY asked for was how to grant a user more edit time. Odds are you aren't going to just do this for ONE user, you will probably eventually do it for multiple users.... and the group process as I outlined is the easiest way to do so, and removing the permissions is even easier as you simply remove them from that group instead of having to dig through custom user permissions and find the custom change.

Similar to how I have set up so that normal registered users cannot ENTER any classified ads on my site until a promotion runs, then they get added to it. If they get a "time-out" they get manually added to another group that has a higher priority that removes the classifieds entry capability by using a Never.

Individual user group permissions (to me) would be something that would strictly be a one-off proposition that I KNOW that I would not want to grant to someone else. They are strictly for micro-tweaking to a specific user that needs a special permission. If there is ANY possibility the same may need to be done for others, using a Group setting (with a custom name for that group hinting at what it does) is a better option.
 
Last edited:
Ok. But how can I assign a different edit time to a single user?
Only by it being higher than any other numeric permission.

I would handle this by the registered group having the very lowest I would want. I the have secondary groups increase the time limits.

If I wanted a single user who has those groups to have a lower limit I would remove the group/s from them.

I have never wanted to do this, but I have wanted to remove editing altogether from a single user or group and in that case use never.

It might be worth making a suggestion for the way you want it to work re: numerical permissions
 
Thank you for your effort to show me a solution.

But all this is not practical.

My users have, due to certain activities, managed to get into a group XY.
But now there is a user who should have a change in a perm.

He should no longer be allowed to edit 7200 seconds but only 30 seconds.

I would have to, so that he can use the advantages of the actual group, duplicate this and in this the reduction of the Edit time make etc..

I don't understand why specially created "user perms" are not more dominant. To me it still makes no sense.

And should I ever want to demote users here and there on certain perms, a multitude of groups would accumulate that way.
 
I don't understand why specially created "user perms" are not more dominant. To me it still makes no sense.
Let me guess... did you come from another script?
XF Permission processes are not so much user based as group based and cumulative in nature. It's one of the hardest things newer XF admins have grasping.

BUT... after looking at your image in your original post.. it looks like the user value is set at 30. Did you read it correctly?

Screen Shot 2023-01-20 at 3.34.24 AM.png
 
I would have to, so that he can use the advantages of the actual group, duplicate this and in this the reduction of the Edit time make etc..
In your case then it won't work as other permissions from those groups should be kept for that one user. But unless there are many other similar issues, then it isn't too much extra work to set up a separate group for edit time, and it's own promotion.

Over time I have gradually found that splitting up permissions over several groups ( rather than one group giving all the extra benefits) can work well and easy to mage.

e.g. I have the following promotion/groups:

Can edit
Can post links
More conversations (needs an addon to allow conversation limits)
Can post classifieds

But as mentioned, you should post a suggestion for more control over numerical permissions
 
But as mentioned, you should post a suggestion for more control over numerical permissions
Unless I'm reading it wrong... I would assume that User Value (which is set at 30) was the actual value in effect for that user, no matter the other numbers, which are for normal registered users and the other for those that have a minimum 35 "contributions" from the quick translation I had Google do.
 
So the value 30 should be the final value. Due to his number of postings he has come into a group with more rights. Which is all so correct. However, only this user, when editing, should not benefit from the advantages, because he abuses this massively.

And if I understand you correctly, I have to create another group with the same perms but with edit time only 30 assign it and remove the other one (for the user) ?

The problem is then I also have to edit all nodes and enter the group there... Since with the receipt of the group X also other nodes become accessible. This is all totally overkill in my eyes.
 
I have to create another group with the same perms but with edit time only 30


I would do it like this:

  • Group with more rights - Leave as is but remove the edit time altogether so it inherits the registered group time of 30 (or you could just make it 30 instead and keep registered at no edits if you want)
  • Create new group called longer edit time. Leave all permissions at default (e.g. no) and just change edit time to 7200
  • Use batch update (or promotion) to add longer edit time as another secondary group to all members with secondary Group with more rights
  • Now you just remove whoever you don't want to have longer edit time. I would check if manage promotion would also work as I haven't used it before.
 
Top Bottom