News:

Welcome to the Unofficial Help Forum



Note: The following article applies to SMF 2.* and above.

Permissions can be complicated to understand, in SMF. Generally, it is easy to understand what each permission handles, as there is help text next to each permission, as listed on the modify permissions page for each group. However, many Administrators have issues understanding how to block, or deny, a permission to a group.

In the Administration panel -> Permissions -> Settings, there is the ability to "Enable the option to deny permissions" and "Enable permissions for post count based groups". By default, these are disabled. We will enable them, now, as seen in the screenshot, below.




As the help text for "Enable the option to deny permissions" states:

Quote
Denying permissions can be useful when you want take away permission from certain members. You can add a membergroup with a 'deny'-permission to the members you wish to deny a permission.


Use with care, a denied permission will stay denied no matter what other membergroups the member is in.



This will, now, allow us to have more control over which permissions users have, depending on which group they are in and if they are allowed, disallow or denied.

Now that the ability to deny permissions is enabled, a nice warning will show up, at the top of the page, when you edit a group's permissions, as seen, below.




As the message says, it is important to remember that Denying a permission will never allow that group to have that permission, no matter what their other groups give them permission to do. So, if you DENY the regular members group from "Post new topics", even if a post count group gives that permission, no regular member will be able to post in any board, at all. It would be better to disallow that permission and allow it in the post count group permissions. It would be rare to deny permissions, unless you fully understand what denying it does.





We have, also, enabled the ability to give post count based groups permissions. So, now, you can limit or expand the permissions that users have, depending on the count of posts they have. This can be complicated to understand, due to the way the "Regular Members" group can override permissions. It is possible to remove the post count groups. But, at least one group must always exist for 0 posts.

In SMF, by default, all users that are not in a primary membergroup are in the "Regular Members" group. All users are, also, in a post count based group. This means that, if you give a post count group a permission and don't want all users to gain that permission, you have just achieved that. If you wish to not give all users permissions, use the normal non-post count groups. If you wish for users to gain permissions, lets say to be able to edit their profile once they get a certain number of posts, you would not give the permissions for editing the various profile parts to the regular members group. Instead, you would give those permissions to the correct post count group and the other post count groups that have a higher post count. Remember that if you give a new permission to a post count group, you must, also, give it to the higher post count groups.

Some administrators like to limit where a new user can post. This can be somewhat complicated. However, it can be done, easily, once you understand how permission profiles work, along with the default permissions.

Once a user has registered they are put in 2 groups. "Regular Members" and a post count group for 0 posts, as described, above.

This means that if you wish to limit what a new user can do, there are several ways to achieve this. I will go over one of those ways, here.

To start, you will need to set up the regular members group to not have posting rights by default. Users will gain their permissions to post freely, as they gain posts in the limited posting board.

Once you have done that, an edit to post count groups will need to be made. At least 2 post count groups will be needed. one group for 0 posts and another for 1 posts. You can either use the existing groups and edit the post count, or add a new group for 1 posts. The group can have any name you wish, or you can even blank-out the names, so that they dont show. If this method is used, it is important to note that it can be slightly more complicated to remember which group is which, when you can not see the name of them.

We will, now, need to create a Permissions profile, as described, here. But, you will be allowing posting permissions for the regular members group in the board you want. Of course, this would also allow all members to post in this board. If you want to limit this just to new users, add the permission to the 0 post count group and add the profile to that board.

Once you have made the permissions profile and added it to the board, there is one last step. Posting rights need to be given to the higher post count groups, so that they can post freely in all other boards on the forum, since they have the correct number of posts. This same method can be used to enable post moderation on users with 0 posts, in certain boards, and their post count will not go up until the initial post is approved. Of course, you would need to enable post moderation, under core features, in the administration panel, first.



This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.