просмотр только своих нод

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

Аватар пользователя vsavelyev vsavelyev 29 марта 2013 в 12:16

как можно реализовать чтоб ноду мог просматривать только тот кто ее создал и еще одна роль которая может и просматривать и редактировать ее содержимое? в поиске под мой случай ничего не нашел...

Комментарии

Аватар пользователя Niklan Niklan 29 марта 2013 в 12:39

Вчера решал такую проблему
Данное решение позволяет смотреть только автору и администратору.

<?php
function MY_MODULE_node_access($node$op$account) {
  if (
is_object($node)) {
    if ((
$node->type == 'ТИП_НОДЫ')  && (($op == 'view') || ($op == 'update'))) {
      if (
$account->uid == $node->uid) {
        return 
NODE_ACCESS_ALLOW;
      }
      else {
        return 
NODE_ACCESS_DENY;
      }
    }
  }

  return 

NODE_ACCESS_IGNORE;
}
?>
Аватар пользователя vsavelyev vsavelyev 29 марта 2013 в 16:28

Niklan wrote:
Вчера решал такую проблему
Данное решение позволяет смотреть только автору и администратору.

<?php
function MY_MODULE_node_access($node$op$account) {
  if (
is_object($node)) {
    if ((
$node->type == 'ТИП_НОДЫ')  && (($op == 'view') || ($op == 'update'))) {
      if (
$account->uid == $node->uid) {
        return 
NODE_ACCESS_ALLOW;
      }
      else {
        return 
NODE_ACCESS_DENY;
      }
    }
  }

  return 

NODE_ACCESS_IGNORE;
}
?>

спасибо! извиняюсь за глупый вопрос.. этот код надо в node.php.tpl соответствующего материала вставить? или специально модуль нужно создать?

Аватар пользователя Niklan Niklan 29 марта 2013 в 13:08

"<a href="mailto:greenmother@drupal.org">greenmother@drupal.org</a>" wrote:

Не рекомендую данный модуль. Пробовал. beta1 ерорит и не дает создавать материалы. Создает битые записи в базе.

dev работает стабильнее, но она ломает views и rules. В issue есть эти проблемы, так что лучше не рисковать. Если это надо всего для 1-2 типов нод, лучше заюзать код который я выше написал.