Новости Joomla

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

AlexFrost

  • Осваиваюсь на форуме
  • 25
  • 1 / 1
Добрый день.
Есть магазин на котором используется форма регистрации от VM2. После регистрации пользователь автоматически логинится и попадает в свой личный кабинет.
Суть проблемы: в настройках сайта включена активация пользователя по e-mail. Сразу после регистрации пользователь логинится (хотя активация еще не пройдена). После этого активационная ссылка из письма перестает работать, следовательно пользователь уже не сможет сам активироваться и зайти повторно на сайт.
Может кто сталкивался с подобным ? Мне бы попросту убрать автоматическую авторизацию после регистрации (не понимаю на кой черт она там вообще нужна).
*

AlexFrost

  • Осваиваюсь на форуме
  • 25
  • 1 / 1
Как убрать автоматическую авторизацию я не нашел но сделал костыль который исправляет активацию в моем случае.
Решение:
файл \components\com_users\models\registration.php
меняем кусочек кода с
Код
$db->setQuery(
'SELECT '.$db->quoteName('id').' FROM '.$db->quoteName('#__users').
' WHERE '.$db->quoteName('activation').' = '.$db->Quote($token).
' AND '.$db->quoteName('block').' = 1' .
' AND '.$db->quoteName('lastvisitDate').' = '.$db->Quote($db->getNullDate())
);
на
Код
$db->setQuery(
'SELECT '.$db->quoteName('id').' FROM '.$db->quoteName('#__users').
' WHERE '.$db->quoteName('activation').' = '.$db->Quote($token).
' AND '.$db->quoteName('block').' = 1' .
// ' AND '.$db->quoteName('lastvisitDate').' = '.$db->Quote($db->getNullDate())
''
);

это уберет проверку последнего визита для функции активации

в начало вашего шаблона вставляем
Цитировать
$user =& JFactory::getUser();

if ( ($user->block == 1) && ($user->id != 0) ) {
   $app = JFactory::getApplication();
   $app->logout( $user->id );
   $app->redirect("тут ссылка на текст с сообщением о успешной регистрации", "");
   }

что имеем на выходе - пользователя авторизует после регистрации но код из шаблона его разлогинивает (если он не активирован) и перенаправляет на страницу с сообщение о успешной регистрации, после этого код активации из письма работает корректно
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

При регистрации в VirtueMart поле Password перестало быть обязательным

Автор Slava77

Ответов: 10
Просмотров: 1541
Последний ответ 31.05.2021, 15:23:32
от Slava77
Для регистрации в VirtueMart 3 нужно в 3 поля вводить имя

Автор One

Ответов: 13
Просмотров: 8585
Последний ответ 09.02.2019, 22:02:48
от Dmitriy1
После обновления CMS до 3.9.0 перестал работать One Page Checkout

Автор fireman

Ответов: 4
Просмотров: 1872
Последний ответ 20.11.2018, 14:06:28
от fireman
Подписка на рассылку новостей при регистрации

Автор orexov_m

Ответов: 1
Просмотров: 1011
Последний ответ 29.04.2017, 22:55:14
от gartes
СМС оповещение после заказа

Автор stardel

Ответов: 0
Просмотров: 857
Последний ответ 07.03.2017, 23:19:19
от stardel