Помогите пожалуйста разобраться в чем может быть ошибка.
Делаю отдельную страницу личного счета пользователя:
'title' => 'User balance',
'type' => MENU_LOCAL_TASK,
'description' => t('User balance'),
'page callback' => 'drupal_get_form',
'page arguments' => array('lot_account_user_balance'),
'access callback' => 'lot_perm_user_account',
'access arguments' => array(1),
'weight' => 5,
),
В функции lot_perm_user_account ограничиваю пользователям эту страницу в соответствии с разрешениями и также вклдака показывается если эту страницу смотрит "хозяин" или администратор.
global $user;
return user_access('has account',$account) AND ($user->uid == $account->uid OR user_access('admin'));
}
Но периодически в логе такая ошибка:
Ошибка тут: 'r.rid IN ()' - пустой список
Помогите понять в чем ошибка. Есть ощущение что подход в принципе не верный
Комментарии
http://api.drupal.org/api/drupal/modules--user--user.module/function/use... — в комментах показано, как пользоваться.
не найдено пермишенов 'has account' и 'admin'.
Да нет - они объявлены в соответствующем хуке. Да и ошибка то, судя по тексту запроса в том, что у проверяемого пользователя нет ролей.