Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Можно ли дать доступ только на редактирование объекта?

04.12.2006, 16:54
Гость
Гость

Можно ли дать пользователю возможность редактировать только один объект в разделе? Т.е. чтобы у него не было возможности ни просматривать админку, ни другие объекты в этом разделе. Только единственную запись - открыл, отредактировал, сохранил, закрыл...
06.12.2006, 22:29
Bash
Х

Зарегистрирован:
2006-12-06
Сообщений: 23

Можно разрешить пользователям редактировать только те объекты, которые они сами и создали.
Например так:
Код:
".opt($current_user[User_ID]==$f_UserID,"[<a href=/netcat/message.php?catalogue=$catalogue&sub=$sub&cc=$cc&message=$f_RowID>Редактировать</a>]")."


Можно жестко привязать конкретный объект к конкретному пользователю.
Это будет так:
Код:
".opt($current_user[User_ID]==2 AND $f_RowID==27,"[<a href=/netcat/message.php?catalogue=$catalogue&sub=$sub&cc=$cc&message=$f_RowID>Редактировать</a>]")."


Также, необходимо добавить эти-же проверки в поле "условия изменения" шаблона.
Типа этого:
Код:

if ($current_user[User_ID]==2 && $f_RowID!=27)
{
$warnText = "У вас нет прав на редактирование этой записи";
$posting = 0;
}


И последнее, что нужно сделать - изменить поле "действие после изменения объекта", чтобы пользователю после изменения объекта давали ссылку на возврат в обычный режим, а не в режим администрирования:
Код:

".opt(Authorize()&& $current_user[User_ID]==2 && $f_RowID==27),"
Изменения изменены улыбка
<br>
<br>
<a href=$current_sub[Hidden_URL]>Вернуться назад, в обычный режим</a>
")."


Чтобы вся эта бодяга работала, надо объявить переменную $current_user глобальной в "системных настройках" шаблона:
Код:
global $current_user;


И присвоить этому пользователю права "Администратор шаблона в разделе" - просмотр+изменение+модерирование
07.12.2006, 22:51
Гость
Гость

Интересное решение, попробую, спасибо!
19.01.2007, 14:57
Гость
Гость

сделал по вашему способу...
но как сделать так, чтобы пользователь не видел:
-поле приоритета объекта
-галку включения/выключения объекта
19.01.2007, 18:47
MihaKot
Аксарин Константин

Зарегистрирован:
2005-01-22
Сообщений: 38

сделай альтернативную форму изменения записи
10.02.2007, 00:47
Гость
Гость

А почему current_user может не работать? Точнее, у меня он работает только когда в админке, а когда залогинен, но просто в режиме просмотра, то не работает грустный
198 196 2007-02-10 00:47:12 8823
Описание проекта