Контроллер Profile позволяет авторизованным пользователям редактировать свои профили, в том числе менять пароль.
При изменении профиля следует проверять уникальность email. В контроллере предусмотрено соответствующее правило:
&rules=`{
"email":{
"required":"Введите email",
"email":"Неверный email",
"custom":{
"function":"\\FormLister\\Profile::uniqueEmail",
"message":"Этот email уже использует другой пользователь"
}
}
}`
Аналогично с полем username:
&rules=`{
"username":{
"required":"Введите имя пользователя",
"alphaNumeric":"Только буквы и цифры",
"custom":{
"function":"\\FormLister\\Profile::uniqueUsername",
"message":"Имя уже занято"
}
}
}`
Если поле с паролем пустое, то пароль остается прежний. Новый пароль сохраняется в поле user.password.
Активация пользователя сбрасывается, если изменяется поле, заданное в параметре verificationField. При этом, если включена проверка активации (параметр checkActivation), пользователь должен авторизоваться заново.
Класс для работы с пользователями.
Возможные значения - имя класса. Для Evo 3.x следует использовать модель Pathologic\EvolutionCMS\MODxAPI\modUsers из пакета pathologic/modxapi.
Значение по умолчанию - \modUsers
Путь к файлу класса для работы с пользователями.
Возможные значения - относительный путь к файлу.
Значение по умолчанию - assets/lib/MODxAPI/modUsers.php
Разрешенные для обработки поля. Поля, не указанные в списке, игнорируются. Если пользователь меняет пароль, то в разрешенные поля добавляется поле password. Если у пользователей совпадают поля e-mail и username, то при изменении e-mail будет изменено и поле username, если значение этого поля не задано. В этом случае поле username будет добавлено в список разрешенных.
Если не задано, то разрешены все поля.
Возможные значения - имена полей формы, разделенные запятой.
Значение по умолчанию - пусто.
Запрещенные для обработки поля. Поля, указанные в списке, игнорируются. Поля password и username исключаются из списка по аналогии с allowedFields.
Возможные значения - имена полей формы, разделенные запятой.
Значение по умолчанию - пусто.
Поле, изменение которого приводит к сбросу активации.
Возможные значения - имя поля.
Значение по умолчанию - email.
Если включено, то при изменении поля, указанного в параметре verificationField, потребуется повторная авторизация.
Возможные значения - 0 или 1.
Значение по умолчанию - 0.
Позволяет выполнить обработку данных после сохранения.
Возможные значения - имена сниппетов, анонимные функции, статические методы загруженных классов.
Значение по умолчанию - пусто.
Перенаправляет пользователя на указанную страницу после сохранения профиля.
Возможные значения - id целевой страницы.
Значение по умолчанию - пусто.
Перенаправляет неавторизованного пользователя на указанную страницу.
Возможные значения - id целевой страницы или массив.
Значение по умолчанию - пусто.
Шаблон сообщения для неавторизованного пользователя.
Возможные значения - имя шаблона, указанное по правилам задания шаблонов в DocLister.
Значение по умолчанию - запись из лексикона Profile с ключом [+profile.default_skipTpl+]
Шаблон сообщения об успешном обновлении профиля. Если не задан, то генерируется сообщение об успешном сохранении формы.
Возможные значения - имя шаблона, указанное по правилам задания шаблонов в DocLister.
Значение по умолчанию - пусто.
Формат даты для поля dob.
Возможные значения - формат даты по правилам функции date (например, "d.m.Y").