Подскажите пожалуйста как можно сделать чтобы определенный flag был виден только для автора материала?
Данная примочка нужна для того чтобы автор мог в нужное время пометить свой материал что в свою очередь должно использоваться модулем Rules.
Подскажите пожалуйста как можно сделать чтобы определенный flag был виден только для автора материала?
Данная примочка нужна для того чтобы автор мог в нужное время пометить свой материал что в свою очередь должно использоваться модулем Rules.
Комментарии
Я делал через отдельный views с аргументом – Пользователь (uid). В связи надо указать, что автор флага – данный пользователь (Current user).
Вывод через Views к сожалению не убережет от ситуации в которой посторонний пользователь может вручную сформировать URL ноды и вывести ее стандартный вид со ссылкой Flag. Посему требуется именно наделять правами как на отображение так и на использование.
При чем тут url? В качестве аргумента берется uid авторизованного пользователя (User ID from logged in user).
Буду признателен если укажете на ошибку в рассуждениях.
Вывел flag в шаблоне (*.tpl.php) следующим образом:
<?php
foreach ($_GET as $k => $v) {
if ($v == 'node/'.$node->nid) {
global $user;
if ($node->name == $user->name) {
print flag_create_link('flag_name', $node->nid);
};
}
}
?>
Вроде условиям удовлетворяет:
Проверьте пожалуйста можно ли так делать?
Если бы получше знать php можно было бы добавить в настройки модуля чекбокс "Отображать только для автора" как то так.
Будет ли видна flag-ссылка если показать ноду не через Views а так как она отображается через node.tpl.php? Я имею ввиду что адрес вот этой вот страницы (не всегда и не везде) можно написать ручками по принципу node/# и тогда враг увидит ссылку и сможет ею воспользоваться.