Talk:Tutorial.Permissions

Permissions talk page.

''Please sign and date your entries by inserting  ~  at the end. [ Start a new talk topic.]''

Just wanted to state that adding new permissions should *not* be done through an INSERT statement lonely but through the auth_admin::acl_add_option method.
 * This possibility should definately be explained as it's the prefered alternative naderman 11:17, 27 December 2006 (UTC)

Panels (in the ACP)
I've added this to the wiki:

To get the permission to show up under the right panel you need to use correct namning. a_view_foo : Administrator permissions panel m_view_foo : Moderator permissions panel u_view_foo : User permissions panel If you use the correct naming and giving it a category the permssion will show under the selected panel. Nothing more need todo.

But it needs to be reformated into a more userfriendly text.

Ztripez 20:04, 26 March 2007 (UTC)

Clear permissions using auth class method
Re-posting a message I received regarding this article...  Highway of Life  (talk)  17:05, 26 April 2007 (UTC) I think there is a little improvement possible for an article in the Olympus Wiki ... suggestion: clear permssions not by deleting cache folder, but using auth class, method /** function acl_clear_prefetch($user_id = false) and perhaps you also also must run /** function build_auth_option_statement($key, $auth_options, &$sql_opts) Perhaps this could make modding a bit easier... Well, I must back... doing some university stuff -- Greetings - Emanuelle_1982
 * Clear one or all users cached permission settings
 * Fill auth_option statement for later querying based on the supplied options

some changes in CVS
well, in the permissions file there is a comment that the permissions lang file must in language/ /acp folder, not into mods folder - it should be checked which method is correct

[EDIT:]both methods seems to be not working, even with clearing cache manually[/EDIT]

file: language/ /acp/permissions_phpbb.php /* --Emanuelle 1982 11:45, 1 May 2007 (UTC)
 * MODDERS PLEASE NOTE
 * You are able to put your permission sets into a separate file too by
 * prefixing the new file with permissions_ and putting it into the acp
 * language folder.
 * An example of how the file could look like:
 * An example of how the file could look like:
 * An example of how the file could look like:


 * Both methods work for me, but unless you have the latest cvs version, the filename must not begin with "permissions_phpbb" - see 10301.


 * OK, that was the problem, now it works *gg*

2nd way for negating a permission
Well, there is a 2nd way to negate a permission request

1st and nearly always used:

2nd (don't like it, not consistent), but is used too (in includes/mcp/mcp_topic.php)

Mention it or not? --Emanuelle 1982 16:27, 9 May 2007 (UTC)
 * Pro: it is a possibility, and is used
 * Contra: it reduces Code Readability
 * I think it is a bug, you should report it.  Highway of Life  (talk)  15:53, 10 May 2007 (UTC)


 * was reported, with the said Information, DavidMJ thought that this will not be fixed [it works, there is a substring/strpos combo] 10695
 * This has been implemented as it is a lot more efficient in some cases (not with simple acl_get) and also adds a feature to acl_getf, as you can't just use ! on an array to get forums where a user does not have a permission, this should be documented. --naderman 21:09, 10 May 2007

Adding new permission set
This example found in /**
 * MODDERS PLEASE NOTE
 * You are able to put your permission sets into a separate file too by
 * prefixing the new file with permissions_ and putting it into the acp
 * language folder.
 * An example of how the file could look like:
 * An example of how the file could look like:
 * An example of how the file could look like:

And everything works fine except this part // Adding new permission set $lang['permission_type']['bug_'] = 'Bug Permissions';

Thing is that modder can create new permission type, but can't manage it through ACP. Problem is in $this->permission_dropdown = array('u_', 'm_', 'a_'); As seen here, the ACP dropdown for managing permission sets are hardcoded only for User, Moderator and Admin. So if moder adds a new permission type he will not see it in a dropdown, (even if he has necessary permissions).

So to overcome this restriction i changed this line to: $this->permission_dropdown = array_diff(array_keys($user->lang['permission_type']), array('f_', 'global'));

P.S. After that modder won't see new permission type regardless. Because there are no admin permissions for new permission type. This query (or analog via $auth_admin class) must be executed to change that INSERT INTO phpbb_acl_options (auth_option, is_global, is_local, founder_only) VALUES ('bug_', 1, 0, 0), ('a_bugauth', 1, 0, 0);

Hope it helps someone.

Bulldozer am (talk) 16:19, 6 February 2014 (UTC)