Страница благодарности за регистрацию
Уважаемые знатоки, регистрация на сайте через office. Помогите реализовать переход по определенной странице после заполнения формы, не после активации а именно после первичного заполнения.
Может кто еще сталкивался как одновременно по кнопке отправить данные и закрыть модальное окно бутсрап
Может кто еще сталкивался как одновременно по кнопке отправить данные и закрыть модальное окно бутсрап
Комментарии: 27
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Ну примерно как то так, не проверял, но в тории должно сработать.
В рамках Office можно также переопределить функцию Office.Auth:
(функцию можно переопределить так)
Если подразумевалась пошаговая инструкция, то как-то так:
1. В чанке формы регистрации (по умолчанию tpl.Office.auth.login) дописать:
2. Создаем новый js-файл и копируем в него содержимое /assets/components/office/js/auth/default.js
3. Указываем путь до него в системной настройке office_auth_frontend_js
4. В новом файле заменяем данный код:
следующим:
Опционально, если до редиректа нужно дать время пользователю на просмотр сообщения об успешной регистрации, то строчку window.location.href можно обернуть таймаутом:
Мой скайп i_nikolaevich. Напишите, куда отправить «спасибо». :)
Скажите, а есть возможность обойтись без замены JS файла? При обновлении может измениться функциональность. Хотелось бы оставить компонент и его настройки без изменения.
У меня ваш способ не заработал и я просто подставил в сообщение «Ссылка и письмо отправлены вам на почту» js код Выше Андрей предлагал вариант с плагином для modx. Этот вариант менее универсален?
modx.pro/help/15382/
UPD: плюс, на мой взгляд, с точки зрения СЕО, переадресация с помощью js здесь более уместна, чем редирект. Но, возможно, сеошники меня поправят или предложат правильный код ответа (не 301/302).
Вообще, я изначально и писал вариант с переопределением функции (без необходимости замены js), но затем обратил внимание, что родной файл итак содержит, по-сути, всего 1 функцию, которую мы и заменяем.
В итоге загружаемый браузером код увеличивается в два раза без какой-либо необходимости — поэтому я и привел вариант с подменой файла.
Так как переадресация должна происходить только после успешной регистрации, вам по-прежнему нужен сегмент, отправляющий данные на проверку и получающие ответ.
Вызов ДО основого файла будет перезаписан новой функцией от Office.
Вызов ПОСЛЕ приведет к тому, что у вас будет 2 идентичных скрипта, работать из которых будет только последний.
то остальная функциональность основного файла Office останется без изменений на случай обновления.
— когда вызывается файл main/default.js и auth/default.js, в первом определяется переменная Office и вложенные в неё общие функции, а во втором добавляется функция, работающая с авторизацией и регистрацией (и там же инициируется)
— принцип «переопределения» функции в том, что мы как бы переписываем переменную, содержащую саму функцию, и в её последующих вызовах уже будет выполняться то, что мы изменили.
И этот вариант хорош для больших файлов, где масса функций, а нам нужно изменить только одну из них. Например, в mSearch2 — таким образом мы сведем к минимуму проблемы, которые могут появиться при обновлении.
Но в файле auth/default.js всего 1 функция, которую мы и переопределяем. Поэтому в переопределении нет смысла, и вариант со своим файлом наиболее оправдан.
Если есть возможность, помогите с мультиселектом для тикетсформ:
modx.pro/help/15382/