Добавление админом значений в поля профиля пользователя

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

Аватар пользователя fit fit 5 марта 2010 в 22:06

Суть задачи такова, что бы ТОЛЬКО админ сайта мог вносить значение в определенные поля профиля пользователя.
Например: Статус пользователя на сайте.

Как можно решить такую задачу?

Комментарии

Аватар пользователя SkyD SkyD 5 марта 2010 в 23:15

Есть модуль Advanced User - http://cli.gs/8W9DRW - попробуйте, не исключено, что поможет (я сам ещё не изучал его возможностей, но пометил себе на самое ближайшее будущее).

Кстати, если задача решится, отпишите сюда плз, - полагаю, что другим участникам (мне - точно) тоже интересна реализация полей в профиле, которые видны всем, но изменять их может только Админ.

Аватар пользователя fit fit 6 марта 2010 в 0:11

vgoodvin спасибо!
profile_permission действительно то, что нужно.
При добавлении полей в "профилях (/admin/user/profile)" в самом низу появится галочка restricted. Зажимаем, потом идем в /admin/user/permissions и там появится в списке разрешений это новое поле.

Аватар пользователя fit fit 6 марта 2010 в 0:29

Обнаружился баг!
При добавлении или изменении поля его предыдущее значение слетает..
Для правки, откройте profile_permission.module найдите строку unset($form[$category][$key]); и закоментируйте её.
После неё добавьте эти две строки:

$form[$category][$key]['#type'] = 'value';
$form[$category][$key]['#value'] = isset($form[$category][$key]['#default_value']) ? $form[$category][$key]['#default_value'] : '';
Аватар пользователя vgoodvin vgoodvin 6 марта 2010 в 7:36

"fit" wrote:
При добавлении или изменении поля его предыдущее значение слетает..

Подробнее можно про проблему? А то сейчас как начнут править.

Аватар пользователя fit fit 6 марта 2010 в 13:48

Допустим, создаем 2 поля. Одно только для админа, другое может править пользователь.
Админ вносит значение в своё поле и оно будет храниться до того момента, пока пользователь не внесет значение в свое поле. То есть после внесения изменений - поле для админа сбрасывается...