Доступ к профилю

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

Аватар пользователя rznasa rznasa 11 марта 2014 в 1:58

Всем привет.

Создал views который выводит в профиле юзера его материалы и комментарии.
/user/%/comment и /user/%/node

Как сделать чтобы для конкретного юзера была доступна страница только с его аргументом, а если он напишет чужой, чтобы выводилось 404 ну или просто не показывало?

Например
Юзер 1
/user/1/node - 200OK
/user/1+n/node - 404

Подскажите пожалуйста.

Комментарии

Аватар пользователя sg85 sg85 11 марта 2014 в 3:02
function mymodule_node_access($node, $op, $account){
  if($op == "view"){
    return $node->nid == $account->uid ? NODE_ACCESS_ALLOW : NODE_ACCESS_DENY;
  }
  return NODE_ACCESS_IGNORE;
}

куда это совать, надеюсь, разберетесь?

Аватар пользователя sg85 sg85 11 марта 2014 в 3:17

Хотя, что-то я сперва ответил, а потом прочел вопрос Wink

В случае с представлением, Вам надо зайти в настройки аргументов(там это контекстными фильтрами обзывается), поставить галку "укажите критерии проверки", выбрать PHP код и написать что-то вроде return $GLOBALS['user']->uid == $argument;

Аватар пользователя rznasa rznasa 11 марта 2014 в 3:43

sg85 wrote:
Хотя, что-то я сперва ответил, а потом прочел вопрос Wink

В случае с представлением, Вам надо зайти в настройки аргументов(там это контекстными фильтрами обзывается), поставить галку "укажите критерии проверки", выбрать PHP код и написать что-то вроде return $GLOBALS['user']->uid == $argument;

Все работает Smile Огромнейшее спасибо. Вы мой спаситель Smile