Форум русской поддержки Joomla!® CMS
09.12.2016, 02:06:18 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Применение прав для пользователя без релога

 (Прочитано 191 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Rrock
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« : 22.09.2015, 14:30:38 »

Добрый день.  !
Помогите решить один вопрос.
Пользователь в группе Registred залогинен на сайте
Создаю новую группу доступа в корне Public Назовем ее Gamers
Создаю уровень доступа Gamer - Ставлю галочку группы Gamers
Создаю материал с доступом Gamer
Создаю пункт меню с доступом Gamer

Пользователь заходит на сайт. Данный пункт ему недоступен.
В это время в админке добавляю данного пользователя в группу Gamers. Сохраняю.

Пользователь обновив станицу, данный пункт не видит.
Пользователь делает релог и после этого все отображается.
А если удаляю пользователя из группы Gamers то пункт вместе с доступом к материалу опять же  пропадает только после релога.
Как можно решить данную проблему.
Нужно чтобы при изменении групп у пользователя сразу же пропадал и появлялся доступ, так как планируется  изменения уровней доступа выполнять при помощи компоненты (скриптами)
Спасибо
Записан
SeBun
Практически профи
*******

Репутация: +134/-3
Offline Offline

Пол: Мужской
Сообщений: 2287



« Ответ #1 : 22.09.2015, 14:39:40 »

Вот кстати эта фишка реализована весьма криво. Например, я в админке. Что то там делаю. После этого ушел. Возвращаюсь. Нажимаю какую нибудь кнопку - действие выполняется, и только потом выдается форма авторизации.

В вашем случае, если правами будет управлять компонент, то допишите в нем удаление сессии пользователя при смене прав. Таким образом релог произойдет автоматически. По идее должно работать.
Записан
Rrock
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #2 : 22.09.2015, 14:44:50 »

Подскажите как реализованы сессии в Joomla 3.4.4
Что где храниться.
Спасибо
Записан
SeBun
Практически профи
*******

Репутация: +134/-3
Offline Offline

Пол: Мужской
Сообщений: 2287



« Ответ #3 : 22.09.2015, 14:50:27 »

таблица #__session
Записан
SeBun
Практически профи
*******

Репутация: +134/-3
Offline Offline

Пол: Мужской
Сообщений: 2287



« Ответ #4 : 22.09.2015, 14:54:30 »

Хотя нет, я не прав, сорь. Забыл, что сессии могут хранится не только в базе. Вот статья, там рассказано, как работать с сессиями. Используется объект сессии:
Код
$session = JFactory::getSession();
Записан
b2z
Support Team
*****

Репутация: +710/-0
Offline Offline

Пол: Мужской
Сообщений: 7538


Разраблю понемногу


« Ответ #5 : 22.09.2015, 15:08:02 »

Как обновить данные текущего пользователя без его повторной авторизации

В комментах есть такое:
Цитировать
Если нужно также обновить группу, в которую входит пользователь, то надо добавить в код JAccess::clearStatics();
Иначе новые права доступа (authorised view levels) будут иметь эффект только после повторной авторизации

Лично я этот способ не проверял.
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet