0 Пользователей и 1 Гость просматривают эту тему.
  • 9 Ответов
  • 2397 Просмотров
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Есть пункт меню (скрытый), который ссылается на компонент, ссылка index.php?option=com_ai_mfo&view=list, алиас пункта меню personal.

При попытке авторизации заблокированного пользователя из формы авторизации com_users (/component/users/?view=login) выводит нормальный ответ "Вход запрещён! Ваша учётная запись заблокирована или ещё не активирована", о том, что пользователь заблокирован.

При попытке авторизации заблокированного пользователя из формы штатного модуля mod_login (), в котором указано перенаправление при входе на пункт меню personal, происходит редирект не на /component/users/?view=login, как это было до J3.4, а на /component/ai_mfo/list.html, хотя и с выводом сообщения о том, что учетка блокирована.

Баг? или что-то не так у меня?
« Последнее редактирование: 11.04.2015, 19:15:09 от b2z »
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Если авторизуется неблокированный пользователь, то редирект идет также на /component/ai_mfo/list.html, а не /personal.html, как положено.
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Выявил, что в J3.4 изменили в хелпере модуля функцию getReturnURL() таким образом, чтобы она возвращала для редиректа URL не на пункт меню, а на ссылку из этого пункта меню, весьма упростив саму функцию.
Косяк, имхо, баг. Лучше тогда уж сделали бы параметр-переключатель в настройках модуля: кому надо - в меню, кому надо - непосредственно в компонент.
Вернул себе целиком хелпер из J3.3.6.
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Что, никто более не столкнулся с проблемой?
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
А може раньше был баг? Имхо, по правильному редирект должен идти на ссылку из пункта меню.
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Т.е. правильно - на /component/имя_компонента/вид ? А зачем тогда привязка к пункту меню, на котором права выставлены?
Это началось в 3.4.0, до этого что, два года с момента выхода тройки баг был? а на 2.5 до сих пор баг?

Тогда в модуле надо не пункт меню указывать, а просто поле для указания non-sef-url, в идеале - выбор типа, как в том же пункте меню, в т.ч непосредственно сам пункт меню.
« Последнее редактирование: 06.04.2015, 11:51:55 от AlekVolsk »
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
В шаблоне вида компонента, на который ссылается пункт меню, у меня имеет место быть такой код, в самом начале:
Код: php
<?php defined('_JEXEC') or die;
if (JFactory::getUser()->guest)
  JError::raiseError(401, 'Restricted access');

Теперь же мне придется делать редирект на com_users/login и выдавать соответствующее сообщение ручками. Нафига мне тогда весь механизм J, если я вынужден его дублировать в своем компоненте? Кстати, установка прав в админке для паблик и гостя на доступ к компоненту стоит "Запрещено", но это не работает для фронта.
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Взял последние изменения с ночных билдов. Да, теперь это исправили, даже в настройках модуля для выбора стали доступны только те пункты, которые ссылаются только на внутренние страницы и не являются якорями/алиасами/разделителями (раньше доступны были все подряд).
На боевых сайтах оставил пока версию от 3.3.6, посмотрим, что выйдет в оф.обнове.
Все-таки это баг.
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Взял последние изменения с ночных билдов.
А именно - для интересующихся - отсюда: http://developer.joomla.org/cms-packages/Joomla_3.4.1_to_3.4.2-dev-Development-Patch_Package.zip
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться