taxonomy access убивает мой список пользователей

Главные вкладки

Аватар пользователя dyp@drupal.org dyp@drupal.org 30 ноября 2006 в 23:21

На сайте есть страница на которой выводится список пользователей с определенной ролью.
Сделано с помощью page и такого кода
<?php
$rid = 3;
$nlimit = 20;
$result = pager_query(db_rewrite_sql("SELECT u.uid, u.created FROM {users} u INNER JOIN {users_roles} ur ON u.uid=ur.uid WHERE ur.rid = $rid ORDER BY u.created ASC"), variable_get(0, $nlimit));
$fields = array();
while ($account = db_fetch_object($result)) {
$account = user_load(array('uid' => $account->uid));
$profile = _profile_update_user_fields($fields, $account);
$output .= theme('profile_listing', $account, $profile);
}
$output .= theme('pager', NULL, $nlimit);
print ($output);
?>

Все работало нормально, но после установки taxonomy access вылезает ошибка:

Warning: Unknown table 'n' in on clause query: SELECT COUNT(*) FROM users u INNER JOIN users_roles ur ON u.uid=ur.uid INNER JOIN node_access na ON na.nid = n.nid WHERE (na.grant_view >= 1 AND ((na.gid = 0 AND na.realm = 'all') OR (na.gid = 2 AND na.realm = 'term_access') OR (na.gid = 4 AND na.realm = 'term_access'))) AND ur.rid = 3 in z:\home\site\www\includes\database.mysql.inc on line 121

Warning: Unknown table 'n' in on clause query: SELECT u.uid, u.created FROM users u INNER JOIN users_roles ur ON u.uid=ur.uid INNER JOIN node_access na ON na.nid = n.nid WHERE (na.grant_view >= 1 AND ((na.gid = 0 AND na.realm = 'all') OR (na.gid = 2 AND na.realm = 'term_access') OR (na.gid = 4 AND na.realm = 'term_access'))) AND ur.rid = 3 ORDER BY u.created ASC LIMIT 0, 20 in z:\home\site\www\includes\database.mysql.inc on line 121

Как я понял этот модуль добавляет в запрос проверку на доступ к ноде, n.nid и т.д. но т.к. у нас не список нод то это приводит к ошибке.
Как исправить ума не приложу, надеюсь на вашу поддержку.

Комментарии

Аватар пользователя axel axel 1 декабря 2006 в 0:57

Если это пользователей, то независимо от категорий они видны всем. Значит проверки taxonomy access здесь не нужны. Значит надо убрать db_rewrite_sql().

--
Администратор сайта «Drupal — Россия»
на вопросы по Drupal отвечаю только на форумах, не пишите в почту и приватом!