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.

CommentFileSizeAuthor
#1 wibiya_code_cleanup.patch699 bytessaturdayllc

Comments

saturdayllc’s picture

StatusFileSize
new699 bytes

Yeah, I get the same problem.

Here is a patch.

EvanDonovan’s picture

Title: permission term mismatch » permission is named wrong in hook_menu, thus no ability to access required configuration settings
Status: Active » Reviewed & tested by the community

Thanks 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.

EvanDonovan’s picture

By 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.

EvanDonovan’s picture

Note 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.