In the wibiya_perm() function, the permission is called 'Manage Wibiya settings'. However, in the wibiya_menu() function, the settings page is checking for 'wibiya settings'. While this does not prevent the admin account from accessing the settings page, it does prevent access by any other users who are in a role that has been given that permission. In other words, this bug prevents being able to give access to the Wibiya settings page for any users other than the admin (uid=1).
The fix is to change the following line in wibiya_menu():
'access arguments' => array('wibiya settings'),
to the following:
'access arguments' => array('Manage Wibiya settings'),
(You'll also need to clear Drupal's cache.)
Note that this bug exists in both the module located here as well as the module that can be downloaded via Wibiya's website.
| Comment | File | Size | Author |
|---|---|---|---|
| #1 | wibiya_code_cleanup.patch | 699 bytes | saturdayllc |
Comments
Comment #1
saturdayllc commentedYeah, I get the same problem.
Here is a patch.
Comment #2
EvanDonovan commentedThanks for creating the patch (so I didn't have to). This was exactly the way that I fixed as well.
Should be committed ASAP, since the module does not work without it.
Comment #3
EvanDonovan commentedBy the way, to be more specific than the OP, you have to do a menu rebuild after applying this patch, not clearing the regular cache tables from admin/settings/performance. To do this, either save admin/build/modules, or else if you have Admin Menu module, you can click "Menu" under "Flush caches" on the left-most menu.
Comment #4
EvanDonovan commentedNote that, oddly enough, the version on the Wibiya site does not have this problem. See #1143484: This module & the version on Wibiya site are out of sync.