Не работает переадресация при Logout (компонент Improved AJAX Login)

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

rgu2006

  • Новичок
  • *
  • 2
  • 0
Здравствуйте!
Кто-нибудь подскажите, пожалуйста, как при Logout вернуться на главную страницу.
В установленном компоненте "Improved AJAX Login" настроена переадресация при login'е и logout'е.
Для login'а работает, а для logout'а нет.
В адресной строке следующее: сайт.ru/index.php/component/users/?task=user.logout

Ниже куски кода, который, насколько я понимаю, за это отвечает
файл /modules/mod_improved_ajax_login/themes/elegant/tmpls/tmpl25.php
Код
<form action="<?php echo JRoute::_('index.php?option=com_users&task=user.logout')?>" method="post" name="ialLogout" class="ial-logout hidden">
       
      <input type="hidden" value="com_users" name="option" />
      <input type="hidden" value="user.logout" name="task" />
  <input type="hidden" name="return" value="<?php echo $return; ?>" />
    <?php echo JHtml::_('form.token')?>
   
  </form>
файл /modules/mod_improved_ajax_login/mod_improved_ajax_login.php
Код
$user = JFactory::getUser();
$guest = $user->get('guest', 0);
$return = JRequest::getVar('return', '');
if ($return) { // fix for redirect to private area on J!348
  $url = call_user_func('base'.'64_decode', $return);
  if (!preg_match('/^http/i', $url)) {
    $url = JFactory::getURI()->toString(array('scheme', 'host', 'port')). $url;
    $return = call_user_func('base'.'64_encode', $url);
  }
} else {
  $itemid = $params->get($guest? 'login' : 'logout');
  if ($itemid) {
    if (version_compare(JVERSION,'3.4.6','ge')) {
      $url = "index.php?Itemid=".$itemid;
    } else {
      $item = JFactory::getApplication()->getMenu()->getItem($itemid);     
      if ($item) $url = JRoute::_($item->link.(strpos($item->link, '?')?'&':'?').'Itemid='.$itemid, false);     
      // stay on the same page
      else $url = JFactory::getURI()->toString(array('scheme', 'host', 'port', 'path', 'query', 'fragment'));     
    } // stay on the same page
  } else $url = JFactory::getURI()->toString(array('scheme', 'host', 'port', 'path', 'query', 'fragment'));
  $return = call_user_func('base'.'64_encode', $url);
}

*

Septdir

  • Практически профи
  • *******
  • 2158
  • 108
  • JoomlaZen
У Joomla уже давно есть типа пункта меню "Выход" если вам чисто на главную при выходе, то создайте такой пунт и вставляйте короткую ссылку куда нужно. Либо часто есть в настройка модуля\комопнента
А все вот эти танцы с кодом, нужны если только возвращать на ту же страницу где был.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
________
Мои Контакты | JoomlaZen

*

rgu2006

  • Новичок
  • *
  • 2
  • 0
Пробовал,
при logout появляется страница с формой входа в теле, вместо главной, хотя Login оформлен в виде кнопки "Вход", по нажатию на которую появляется всплывающая форма входа.

*

Septdir

  • Практически профи
  • *******
  • 2158
  • 108
  • JoomlaZen
Пробовал,
при logout появляется страница с формой входа в теле, вместо главной, хотя Login оформлен в виде кнопки "Вход", по нажатию на которую появляется всплывающая форма входа.
С logout глюки через обновление. лучше alias= exit
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
________
Мои Контакты | JoomlaZen