Skip to content
  1. Компоненты
  2. AjaxFormItLogin
  3. Сниппеты
  4. AjaxFormitLogin

AjaxFormitLogin

Сниппет для вывода формы.

Параметры

ПараметрПо умолчаниюОписание
formaflExampleFormЧанк формы
snippetFormItСниппет, который будет обрабатывать форму
hooksFormItSaveForm,emailХуки, которые будут использованы для обработки формы.
emailToEmail получателя
emailFromEmail отправителя. При использовании SMTP нужно указывать email пользователя SMTP.
emailSubjectТема письма.
emailTplaflExampleEmailЧанк письма.
successMessageФорма успешно отправлена! Менеджер свяжется с Вами в течение 5 минут.Уведомление об успешной отправке формы.
clearFieldsOnSuccess1Указывает JS очищать ли поля после отправки формы.
transmittedParams["success" => "", "error" => "aliases"]Список параметров для передачи в JS.
aliasesemail==EmailСписок псевдонимов полей для показа уведомлений об ошибках в них.
validateemail:required:emailСписок полей и их валидаторов.
showUploadProgress1Указывает JS показывать ли процесс загрузки файлов.
spamProtection1Активирует встроенную защиту от спама.
redirectTimeout2000Задержка перед переадресацией в миллисекундах.
redirectToID страницы переадресации или ссылка на страницу.
autoLoginАвторизовывать ли пользователя автоматически после регистрации учётной записи.
passwordFieldpasswordИмя поля содержащего пароль.
usernameFieldusernameИмя поля содержащего имя пользователя.
activationНужна ли активация, если да - на email пользователя будет выслано письмо с ссылкой на страницу активации.
moderateНужна ли модерация. Если нужна - профиль пользователя будет заблокирован пока модератор его не разблокирует.
activationResourceIdID ресурса, на который будет отправлен пользователь для активации аккаунта.
usergroupsFieldПоле со списком групп разделенных запятыми, в которые нужно добавить пользователя при регистрации. Можно указать так же уровень доступа (Member или SuperUser) и rank: group_id:permission_id:rank, например 2:1:0. Можно указать только два первых параметра или только ID группы.
authenticateContextsПоле со списком контекстов разделенных запятыми, в которых нужно авторизовать пользователя.
remembermeЗапоминать ли пользователя.
activationUrlTime10800Время действия ссылки на активацию в секундах.
methodМетод класса AjaxIdentification (register, login, logout, forgot, update).

Подсказка

Bы так же можете использовать любые параметры сниппета FormIt.

Как видно из таблицы по умолчанию сниппет настроен на отправку форм и сохранение их данных в админке.

Пример использования

Минимальный вызов должен выглядеть так:

fenom
{'!AjaxFormitLogin' | snippet: [
  'emailTo' => 'name@domain.ru',
  'emailFrom' => 'noreply@domain.ru',
  'emailSubject' => 'Тема письма',
]}

и обязательно должен вызываться некэшированным. В чанк формы вы можете передавать какие угодно данные, указывая их как параметры сниппета. Так же любые данные можно передавать в JS через параметр transmittedParams. А оптимальный вызов такой:

fenom
{'!AjaxFormitLogin' | snippet : [
  'form' =>  'aflExampleForm',
  'snippet' => 'FormIt',
  'hooks' => 'FormItSaveForm,email',
  'emailTo' => 'shev.art.v@yandex.ru',
  'emailFrom' => 'noreply@art-sites.ru',
  'emailSubject' => 'Тестовая форма',
  'emailTpl' => 'aflExampleEmail',
  'successMessage' => 'Форма успешно отправлена! Менеджер свяжется с Вами в течение 5 минут.',
  'clearFieldsOnSuccess' => 1,
  'transmittedParams' => ["success" => 'ym_goal', "error" => 'aliases'],
  'aliases' => 'email==Email,phone==Телефон,name==Имя,politics==Правила сервиса',
  'showUploadProgress' => 1,
  'spamProtection' => 1,
  'ym_goal' => 'TEST_GOAL',

  'validate' => 'email:required:email,name:required:minLength=^3^,phone:required,politics:minValue=^1^',
  'validationErrorMessage' => 'Исправьте, пожалуйста, ошибки!',
  'email.vTextRequired' => 'Укажите email.',
  'fullname.vTextRequired' => 'Укажите ФИО.',
  'fullname.vTextMinLength' => 'Слишком короткое ФИО.',
  'secret.vTextContains' => 'Кажется Вы робот. Если это не так, обновите страницу.',
  'politics.vTextMinValue' => 'Примите наши условия.',
]}