Вызываем сниппет UpdateProfile:
[[!UpdateProfile?
&validate=`fullname:required,email:required:email`
]]
Вызываем чанк:
<div class="update-profile">
<div class="updprof-error">[[+error.message]]</div>
[[+login.update_success:is=`1`:then=`[[%login.profile_updated? &namespace=`login` &topic=`updateprofile`]]`]]
<form class="form" action="[[~[[*id]]]]" method="post">
<input type="hidden" name="nospam" value="" />
<label for="fullname">[[!%login.fullname? &namespace=`login` &topic=`updateprofile`]]
<span class="error">[[+error.fullname]]</span>
</label>
<input type="text" name="fullname" id="fullname" value="[[+fullname]]" />
<label for="email">[[!%login.email]]
<span class="error">[[+error.email]]</span>
</label>
<input type="text" name="email" id="email" value="[[+email]]" />
<label for="phone">[[!%login.phone]]
<span class="error">[[+error.phone]]</span>
</label>
<input type="text" name="phone" id="phone" value="[[+phone]]" />
<label for="mobilephone">[[!%login.mobilephone]]
<span class="error">[[+error.mobilephone]]</span>
</label>
<input type="text" name="mobilephone" id="mobilephone" value="[[+mobilephone]]" />
<label for="fax">[[!%login.fax]]
<span class="error">[[+error.fax]]</span>
</label>
<input type="text" name="fax" id="fax" value="[[+fax]]" />
<label for="address">[[!%login.address]]
<span class="error">[[+error.address]]</span>
</label>
<input type="text" name="address" id="address" value="[[+address]]" />
<label for="country">[[!%login.country]]
<span class="error">[[+error.country]]</span>
</label>
<input type="text" name="country" id="country" value="[[+country]]" />
<label for="city">[[!%login.city]]
<span class="error">[[+error.city]]</span>
</label>
<input type="text" name="city" id="city" value="[[+city]]" />
<label for="state">[[!%login.state]]
<span class="error">[[+error.state]]</span>
</label>
<input type="text" name="state" id="state" value="[[+state]]" />
<label for="zip">[[!%login.zip]]
<span class="error">[[+error.zip]]</span>
</label>
<input type="text" name="zip" id="zip" value="[[+zip]]" />
<label for="website">[[!%login.website]]
<span class="error">[[+error.website]]</span>
</label>
<input type="text" name="website" id="website" value="[[+website]]" />
<br class="clear" />
<div class="form-buttons">
<input type="submit" name="login-updprof-btn" value="[[!%login.update_profile]]" />
</div>
</form>
</div>
| Параметр | Описание | По умолчанию |
| allowedExtendedFields | Необязательно. Если установлено, поля, которые обновляются в расширенных полях, будут ограничены именами полей в этом списке (разделенные запятыми). | |
| allowedFields | Необязательно. Если установлено, обновляемые поля будут ограничены именами полей в этом списке (разделенные запятыми). | |
| emailField | Тег name для поля email | |
| excludeExtended | Список полей, разделенных запятыми, которые следует исключить из настройки в качестве расширенных полей. | |
| placeholderPrefix | Префикс для плейсхолдеров. Например, значения плейсхолдеров для поля email с учётом префикса reg.: [[!+reg.email]] (значения поля), [[!+reg.error.email]] (значение ошибки). |
|
| postHooks | Какие скрипты запускать, если они есть, после регистрации пользователя. Это может быть список хуков, разделенных запятыми, и если первый не сработает, последующие не сработают. Хук также может быть именем сниппета, который будет выполнять этот сниппет. | |
| preHooks | Какие скрипты запускать, если таковые имеются, до того, как форма пройдет проверку. Это может быть список хуков, разделенных запятыми, и если первый не сработает, последующие не сработают. Хук также может быть именем сниппета, который будет выполнять этот сниппет. | |
| redirectToLogin | Если пользователь не вошел в систему и не имеет доступ к этому Ресурсу, перенаправить его на страницу авторизации | true |
| reloadOnSuccess | Если true, страница будет перенаправлена сама на себя с параметром GET, чтобы предотвратить двойную обратную передачу. Если false, он просто установит плейсхолдер успеха. | true |
| submitVar | Переменная, которую нужно проверить, чтобы загрузить функциональность UpdateProfile. Если он пуст или имеет значение false, UpdateProfile будет обрабатывать форму во всех POST-запросах. | |
| syncUsername | Если установлено имя столбца в Profile, UpdateProfile попытается синхронизировать имя пользователя с этим полем после успешного сохранения. | |
| useExtended | Следует ли устанавливать какие-либо дополнительные поля в форме. Это может быть полезно для хранения дополнительных пользовательских полей. | true |
| user | Необязательно. Если указано, загрузит пользователя с указанным идентификатором или именем пользователя вместо активного пользователя. |