Вызываем сниппет 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 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 Необязательно. Если указано, загрузит пользователя с указанным идентификатором или именем пользователя вместо активного пользователя.  
← Восстановить доступСниппет ChangePassword. Login. Настройка →