Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
Могу сказать только хорошее в поддержку SMSfox.ru (пока что). И плагин рабочий на Joomlа 2.5.11. И CMC уходят на укр. номера. И в общем работает отлично.
Но ложка дегтя в том что он не совместим с плагином принудительного редиректа с обычной регистрации пользователей Joomla на форму региcтрации Joomshopping от Nevigen - plg_jshopping_registration_redirect. Каким то образом он перекрывает работу плагина SMSfox.
Задача стоит в том чтобы после подтверждения номера через CMC пользователя бросало на продолжение регистрации в форму JShopping, в не стандартную. Отключение стандартного плагина Аутентификация - Joomla ни к чему не привела.
Может кто подсказать - возможно ли как то установить порядок вызова переменных этих плагинов чтобы их подружить и установить в нужном порядке?
Техподдержка SMSfox.ru уже вторые сутки молчит как на сайте так и по почте. А на джумлафоруме об этом плагине (SMSfox) вообще практически никто ничего не слышал.
Ну наверно первый полезный пост. Техподдержка все же ответила и так содержательно ответила.
В плагине «СМС подтверждение регистрации для Joomla» используется 2 сессии, по которым можно определить подтвердил ли пользователь свой номер.
Сессия "smsfox_phone" - устанавливается после того, как пользователь ввел корректный номер телефона.
Сессия "smsfox_code" - устанавливается после того, как пользователь подтвердил свой номер (ввел корректный код из СМС).
Чтобы подружить плагины "Переадресация регистрации и авторизации на JoomShopping" и «СМС подтверждение регистрации для Joomla» нужно сделать следующее.
1) Перед редиректом нужно проверить на существование сессии и если она есть тогда редиректить. В файле root_your_site/plugins/system/jshopping_registration_redirect/jshopping_registration_redirect.php в событии "onAfterDispatch" нужно добавить условие, т.е. так: (приблизительные строки 33-38) ... function onAfterDispatch() { // ext. for smsfox_reg $smsSession =& JFactory::getSession(); if (!$smsSession->get('smsfox_code', false)) { return; } ...
2) Чтобы пользователь не попал на страницу регистрации (Для просмотра ссылки ВойдиилиЗарегистрируйся) без подтверждения номера нужно также проверить сессию. В файле root_your_site/components/com_jshopping/contrlollers/user.php в контроллере "register()" нужно добавить условие, т.е. так: (приблизительные строки 163-168) ... function register(){ $smsSession =& JFactory::getSession(); if (!$smsSession->get('smsfox_code', false)) { JError::raiseError(403, JText::_('Access Forbidden')); return; } ...
Должно получиться следующее, сначала идет подтверждение номера мобильного телефона плагином "smsfox_reg", затем после подтверждения плагин "jshopping_registration_redirect" редиректит на страницу регистрации компонента "com_jshopping". Далее уже пользователь регистрируется через компонент "com_jshopping".
Спасибо. Все вышло отлично. Все работает. Сперва идет проверка сессий SMS. И после успешной верификации перебрасывает дальше в форму регистрации JoomShopping.
НО! только при условии, что вызов процедуры регистрации осуществляется изначально через стандартный плагин аутентификации и компонента com_users
по таким прямым обращениям, как к примеру Для просмотра ссылки ВойдиилиЗарегистрируйсяindex.php?option=com_users&view=registration
А вот если обращаться к форме регистрации JoomShopping напрямую через элементы компонентов JoomShopping (модуль Jshopping Login, пункты меню Jshopping: мой аккаунт, регистрация и пр) по ссылкам вида:
То получается, что мы игнорируем обращение к плагину jshopping_registration_redirect и разумеется проверку первого условия которое я внес в файл
Скрыть текстовый блок
root_your_site/plugins/system/jshopping_registration_redirect/jshopping_registration_redirect.php в событии "onAfterDispatch" нужно добавить условие, т.е. так:
(приблизительные строки 33-38)
...
function onAfterDispatch()
{
// ext. for smsfox_reg
$smsSession =& JFactory::getSession();
if (!$smsSession->get('smsfox_code', false)) {
return;
}
...
И в ответ получаем отсутсвие подтверждения сесии и ошибку 403, которую, как результат я прописал в файле root_your_site/components/com_jshopping/contrlollers/user.php в контроллере "register()" нужно добавить условие, т.е. так: Скрыть текстовый блок
(приблизительные строки 163-168)
...
function register(){
$smsSession =& JFactory::getSession();
if (!$smsSession->get('smsfox_code', false)) {
JError::raiseError(403, JText::_('Access Forbidden'));
return;
}
...
UPD 2
Ну и еще сделал такой вот финт ушами.
В файле /SITE_ROOT/components/com_jshopping/templates/ВАШ_ШАБЛОН/user/register.php
Что позволяет нам вытянуть подтвержденный номер телефона прямо из текущей сессии и задать его переменной $res
Которую потом можно впихнуть в параметр строки input mobil_phone таким образом
Код: <input type = "text" name = "mobil_phone" id = "mobil_phone" value = "+<?php echo $res ?>" class = "inputbox" />
И получить на дальнейшей странице продолжения регистрации (форма регистрации joomshopping) в поле мобильный телефон уже вбитый готовый в обязательном международном формате номер. Что будет очень полезно для тех кто использует SMS уведомления о заказах в JoomShopping
На данном сайте используются файлы cookie, чтобы персонализировать контент и сохранить Ваш вход в систему, если Вы зарегистрируетесь.
Продолжая использовать этот сайт, Вы соглашаетесь на использование наших файлов cookie.