![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Ant0ha |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
Есть ресурс - форум (forum). Есть действие - редактирование (edit) постов.
Пользователь не может редактировать посты, кроме своих. Модератор может редактировать сообщения. Также в системе есть админ.
Получается проверка прав на редактирование сообщения должна выглядеть примерно так:
Но как в таком случае запретить модерам редактировать сообщения других модеров и админов? Это сообщение отредактировал(а) Ant0ha - 18.2.2011, 08:21 |
||||
|
|||||
| Ant0ha |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
Можно в сообщении определить роль пользователя, написавшего данное сообщение ($message['role']). Но как сравнить что главнее $message['role'] или $user['role']? Если бы можно было сделать такое сравнение, думаю, проблема была бы решена...
|
|||
|
||||
| Ant0ha |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
Также нужно будет сделать еще редактирование пользователей, чтоб модер мог редактировать пользователей, но не мог редактировать других модеров и админа.
Админ чтоб мог редактировать пользователей и модеров. При этом возможно в будущем будут еще роли. Т.е. такое сравнение, имхо, необходимо... Как же в других системах на ZF решается этот вопрос?.. |
|||
|
||||
| Ant0ha |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
Проблему частично решил, расширив Zend_Acl
Но при этом пришлось изменить Zend_Acl_Role_Registry::$_roles с protected на public, что не есть гуд. Если есть какие-нибудь другие предложения, отпишитесь, плз. |
||||
|
|||||
| Ant0ha |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
И еще вариант без вмешательства в Zend_Acl, думаю, на нем пока остановлюсь, если никто ничего лучше не предложит.
Просто делать так чтоб посты мог редактировать либо user свои, либо должностное лицо (модер, админ), но только либо свои, либо тех, у кого роль user. Т.е. даже админ не может редактировать посты модеров. Примерно так:
З.Ы. Вот и поговорили))) |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |