Интересно, может ли кто-нибудь мне помочь, у меня нет знания PHP, поэтому я немного борюсь.
Я установил следующие модули
Модуль списка дел - http://drupal.org/project/to_do
Настраиваемое поле просмотра - http://drupal.org/project/views_customfield - Поле, позволяющее использовать пользовательский код PHP (с доступом к результатам просмотра базы данных)
Я создал вид со следующими полями:
User: Uid (excluded from display)
Node: Title
To do list: Deadline
To do list: Priority
To do list: Start date
To do list: Status
To do assigned users: Assigned user ID (excluded from display)
To do list: Buttons (excluded from display)
Customfield: PHP code
Доступны следующие токены / шаблоны замены на основе вышеуказанных полей
* [uid] == User: Uid
* [title] == Node: Title
* [deadline] == To do list: Deadline
* [priority] == To do list: Priority
* [start_date] == To do list: Start date
* [item_status] == To do list: Status
* [uid_field] == To do assigned users: Assigned user ID
* [buttons] == To do list: Buttons
* [phpcode] == Customfield: PHP code
* [markup] == Customfield: Markup
Я хотел бы достичь:
Поскольку поле кнопки было исключено, я пытаюсь использовать поле пользователя для отображения этой кнопки. Но отображать эту кнопку можно только в том случае, если текущий пользователь является автором узла To Do.
Что я добавил в Customfield PHP code
<?php
global $user;
$data->to_do_assigned_users;
if ($user->uid == $data->uid_field)
{
print '[buttons]';
}
?>
Что происходит
Ничего не отображается с использованием вышеуказанного кода.
Я знаю, что токен [button] работает, потому что когда я использую следующий код, он отображает кнопку.
<?php
print '[buttons]';
?>
Так что я предполагаю, что нужно что-то добавить, чтобы система могла решить, является ли текущий вошедший в систему пользователь автором узла. И [UID], и [UID_FIELD] всегда отображают одно и то же значение, если я вывожу его, поэтому я думаю, что это будет работать, но это не так.
Любая помощь будет принята с благодарностью.
Чарльз
Любая помощь будет принята с благодарностью.
Charles