Полный цикл в digital

Регистрация и авторизация из коробки

Самый простой вариант создания страницы регистрации, авторизации, восстановления пароля — создать раздел auth и в самом начале файла /auth/index.php определить константу NEED_AUTH.

<?
// обратите внимание на эту константу
define("NEED_AUTH", true);
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
$APPLICATION->SetTitle("Авторизация и регистрация");
?>
<p>Вы зарегистрированы и успешно авторизовались.</p>
<?
// ссылка для выхода из личного кабинета
$logout = $APPLICATION->GetCurPageParam(
"logout=yes&" . bitrix_sessid_get(),
array(
"login",
"logout",
"register",
"forgot_password",
"change_password"
)
);
?>
<p><a href="<?= $logout; ?>">Выйти</a></p>
<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");
?>

После этого регистрация и авторизация уже работает, теперь нам надо кастомизоровать шаблоны системных компонентов:

  1. system.auth.registration
  2. system.auth.authorize
  3. system.auth.forgotpasswd
  4. system.auth.changepasswd

Для этого копируем:

  • bitrix/components/bitrix/system.auth.registration/templates/.default
    в
    local/templates/название_сайта/components/bitrix/system.auth.registration/.default
  • bitrix/components/bitrix/system.auth.authorize/templates/.default
    в
    local/templates/название_сайта/components/bitrix/system.auth.authorize/.default
  • bitrix/components/bitrix/system.auth.forgotpasswd/templates/.default
    в
    local/templates/название_сайта/components/bitrix/system.auth.forgotpasswd/.default
  • bitrix/components/bitrix/system.auth.changepasswd/templates/.default
    в
    local/templates/название_сайта/components/bitrix/system.auth.changepasswd/.default

Шаблон компонента system.auth.registration

<?php
/*
* Файл local/templates/название_сайта/components/bitrix/system.auth.registration/.default/template.php
*/
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
?>
<div class="system-auth-registration">
<h2><?= GetMessage('SYS_AUTH_REGISTRATION_TITLE'); /* заголовок формы */ ?></h2>
<?php
// сообщение о том, как закончилась операция регистрации
ShowMessage($arParams["~AUTH_RESULT"]);
?>
<?php if ($arResult["USE_EMAIL_CONFIRMATION"] === "Y" && is_array($arParams["AUTH_RESULT"]) && $arParams["AUTH_RESULT"]["TYPE"] === "OK") : ?>
<p><?= GetMessage('SYS_AUTH_REGISTRATION_EMAIL_SENT'); /* отправлено письмо для подтверждения */ ?></p>
</div>
<?php return; ?>
<?php endif; ?>
<?php if ($arResult["USE_EMAIL_CONFIRMATION"] === "Y") : ?>
<p><?= GetMessage('SYS_AUTH_REGISTRATION_EMAIL_HELP'); /* будет отправлено письмо для подтверждения */ ?></p>
<?php endif; ?>
<form method="post" action="<?= $arResult["AUTH_URL"]; ?>" name="bform" enctype="multipart/form-data">
<?php if (strlen($arResult["BACKURL"]) > 0) : ?>
<input type="hidden" name="backurl" value="<?= $arResult["BACKURL"]; ?>" />
<?php endif; ?>
<input type="hidden" name="AUTH_FORM" value="Y" />
<input type="hidden" name="TYPE" value="REGISTRATION" />
<div>
<span><?= GetMessage('SYS_AUTH_REGISTRATION_FNAME'); /* имя пользователя */ ?></span>
<span><input type="text" name="USER_NAME" maxlength="50" value="<?= $arResult["USER_NAME"]; ?>" /></span>
</div>
<div>
<span><?= GetMessage('SYS_AUTH_REGISTRATION_LNAME'); /* фамилия пользователя */ ?></span>
<span><input type="text" name="USER_LAST_NAME" maxlength="50" value="<?= $arResult["USER_LAST_NAME"]; ?>" /></span>
</div>
<div>
<span><?= GetMessage('SYS_AUTH_REGISTRATION_LOGIN'); /* логин пользователя */ ?> <i>*</i> <!-- поле обязательно для заполнения --></span>
<span><input type="text" name="USER_LOGIN" maxlength="50" value="<?= $arResult["USER_LOGIN"]; ?>" /></span>
</div>
<div>
<span><?= GetMessage('SYS_AUTH_REGISTRATION_EMAIL'); /* e-mail пользователя */ ?> <?php if ($arResult["EMAIL_REQUIRED"]) : ?> <i>*</i> <!-- поле обязательно для заполнения --><?php endif; ?></span>
<span><input type="text" name="USER_EMAIL" maxlength="255" value="<?= $arResult["USER_EMAIL"]; ?>" /></span>
</div>
<div>
<span><?= GetMessage('SYS_AUTH_REGISTRATION_PASSWORD'); /* пароль пользователя */ ?> <i>*</i> <!-- поле обязательно для заполнения --></span>
<span><input type="password" name="USER_PASSWORD" maxlength="50" value="<?= $arResult["USER_PASSWORD"]; ?>" autocomplete="off" /></span>
</div>
<?php if ($arResult["SECURE_AUTH"]) : /* безопасная авторизация (зашифрованная передача пароля) */ ?>
<!-- код удален -->
<?php endif; ?>
<div>
<span><?= GetMessage('SYS_AUTH_REGISTRATION_CONFIRM'); /* подтверждение пароля */ ?> <i>*</i> <!-- поле обязательно для заполнения --></span>
<span><input type="password" name="USER_CONFIRM_PASSWORD" maxlength="50" value="<?= $arResult["USER_CONFIRM_PASSWORD"]; ?>" autocomplete="off" /></span>
</div>
<?php if ($arResult["USER_PROPERTIES"]["SHOW"] == "Y") : /* User properties */ ?>
<?php echo strlen(trim($arParams["USER_PROPERTY_NAME"])) > 0 ? $arParams["USER_PROPERTY_NAME"] : GetMessage("USER_TYPE_EDIT_TAB"); ?>
<?php foreach ($arResult["USER_PROPERTIES"]["DATA"] as $FIELD_NAME => $arUserField) : ?>
<?php if ($arUserField["MANDATORY"] == "Y") : ?> <i>*</i> <!-- поле обязательно для заполнения --><?php endif; ?>
<?= $arUserField["EDIT_FORM_LABEL"] ?>:
<?php
$APPLICATION->IncludeComponent(
"bitrix:system.field.edit",
$arUserField["USER_TYPE"]["USER_TYPE_ID"],
array(
"bVarsFromForm" => $arResult["bVarsFromForm"],
"arUserField" => $arUserField,
"form_name" => "bform"
),
null,
array("HIDE_ICONS" => "Y")
);
?>
<?php endforeach; ?>
<?php endif; ?>
<?php if ($arResult["USE_CAPTCHA"] == "Y") : /* использовать CAPTCHA? */ ?>
<div class="captcha">
<h3><?= GetMessage('SYS_AUTH_REGISTRATION_CAPTCHA_TITLE'); /* Защита от роботов */ ?></h3>
<input type="hidden" name="captcha_sid" value="<?= $arResult["CAPTCHA_CODE"]; ?>" />
<img src="/bitrix/tools/captcha.php?captcha_sid=<?= $arResult["CAPTCHA_CODE"]; ?>" width="180" height="40" alt="" />
<span><?= GetMessage('SYS_AUTH_REGISTRATION_CAPTCHA_TEXT'); /* введите код с картинки */ ?> <i>*</i> <!-- поле обязательно для заполнения --></span>
<span><input type="text" name="captcha_word" maxlength="50" value="" /></span>
</div>
<?php endif;  ?>
<?php
$APPLICATION->IncludeComponent( /* запрос согласия пользователя */
"bitrix:main.userconsent.request",
"",
array(
"ID" => COption::getOptionString("main", "new_user_agreement", ""),
"IS_CHECKED" => "Y",
"AUTO_SAVE" => "N",
"IS_LOADED" => "Y",
"ORIGINATOR_ID" => $arResult["AGREEMENT_ORIGINATOR_ID"],
"ORIGIN_ID" => $arResult["AGREEMENT_ORIGIN_ID"],
"INPUT_NAME" => $arResult["AGREEMENT_INPUT_NAME"],
"REPLACE" => array(
"button_caption" => GetMessage("AUTH_REGISTER"),
"fields" => array(
rtrim(GetMessage("AUTH_NAME"), ":"),
rtrim(GetMessage("AUTH_LAST_NAME"), ":"),
rtrim(GetMessage("AUTH_LOGIN_MIN"), ":"),
rtrim(GetMessage("AUTH_PASSWORD_REQ"), ":"),
rtrim(GetMessage("AUTH_EMAIL"), ":"),
)
),
)
);
?>
<div class="submit">
<input type="submit" name="Register" value="<?= GetMessage('SYS_AUTH_REGISTRATION_SUBMIT'); /* кнопка отправки формы */ ?>" />
</div>
</form>
<p><?= GetMessage('SYS_AUTH_REGISTRATION_LOGIN_LEN'); /* предупреждение о min длине логина */ ?></p>
<p><?= $arResult["GROUP_POLICY"]["PASSWORD_REQUIREMENTS"]; /* предупреждение о min длине пароля */ ?></p>
<p><i>*</i> <?= GetMessage('SYS_AUTH_REGISTRATION_REQUIRED'); /* Эти поля обязательны для заполнения */ ?></p>
<p><a href="<?= $arResult["AUTH_AUTH_URL"]; ?>" rel="nofollow"> <?= GetMessage('SYS_AUTH_REGISTRATION_AUTH'); /* ссылка на страницу авторизации */ ?></a></p>
<script type="text/javascript">
document.bform.USER_NAME.focus();
</script>
</div>
<?php
/*
 * Файл local/templates/название_сайта/components/bitrix/system.auth.registration/.default/lang/ru/template.php
 */
$MESS['SYS_AUTH_REGISTRATION_TITLE']         = 'Регистрация';
$MESS['SYS_AUTH_REGISTRATION_EMAIL_HELP']    = 'На указанный в форме e-mail придет запрос на подтверждение регистрации.';
$MESS['SYS_AUTH_REGISTRATION_EMAIL_SENT']    = 'На указанный в форме e-mail было выслано письмо с информацией о подтверждении регистрации.';
$MESS['SYS_AUTH_REGISTRATION_FNAME']         = 'Имя';
$MESS['SYS_AUTH_REGISTRATION_LNAME']         = 'Фамилия';
$MESS['SYS_AUTH_REGISTRATION_LOGIN']         = 'Логин';
$MESS['SYS_AUTH_REGISTRATION_PASSWORD']      = 'Пароль';
$MESS['SYS_AUTH_REGISTRATION_CONFIRM']       = 'Подтверждение пароля';
$MESS['SYS_AUTH_REGISTRATION_EMAIL']         = 'E-mail';
$MESS['SYS_AUTH_REGISTRATION_CAPTCHA_TITLE'] = 'Защита от автоматической регистрации';
$MESS['SYS_AUTH_REGISTRATION_CAPTCHA_TEXT']  = 'Введите символы с картинки';
$MESS['SYS_AUTH_REGISTRATION_SUBMIT']        = 'Регистрация';
$MESS['SYS_AUTH_REGISTRATION_LOGIN_LEN']     = 'Логин должен быть не менее 3 символов длиной.';
$MESS['SYS_AUTH_REGISTRATION_REQUIRED']      = 'Эти поля обязательны для заполнения';
$MESS['SYS_AUTH_REGISTRATION_AUTH']          = 'Авторизация';
/*
* Файл local/templates/название_сайта/components/bitrix/system.auth.registration/.default/style.css
*/
.system-auth-registration {
}
.system-auth-registration > p {
margin: 1em 0;
}
.system-auth-registration > p > a {
text-decoration: underline;
}
.system-auth-registration > form {
overflow: hidden;
}
.system-auth-registration > form > div {
width: 50%;
margin-bottom: 15px;
float: left;
box-sizing: border-box;
}
.system-auth-registration > form > div.captcha {
border: 1px solid #ccc;
padding: 20px 15px 15px 15px;
position: relative;
margin-top: 15px;
width: 49%;
clear: both;
}
.system-auth-registration > form > div.captcha > h3 {
position: absolute;
top: -10px;
font-weight: normal;
font-size: 16px;
background: #eee;
padding: 0 10px;
color: #999;
}
.system-auth-registration > form > div.captcha > span:first-of-type {
margin-top: 10px;
}
.system-auth-registration > form > div:nth-of-type(even) {
padding-left: 1%;
}
.system-auth-registration > form > div:nth-of-type(odd) {
padding-right: 1%;
}
.system-auth-registration > form > div > span {
display: block;
}
.system-auth-registration > form > div > span:first-child {
margin-bottom: 5px;
}
.system-auth-registration > form > div > span > input[type="text"],
.system-auth-registration > form > div > span > input[type="password"] {
width: 100%;
padding: 5px;
border: 1px solid #ccc;
}
.system-auth-registration > form > div.submit {
float: none;
padding-left: 0;
}
.system-auth-registration > form > div.submit > input[type="submit"] {
width: 30%;
padding: 5px;
background: #333;
color: #fff;
border: none;
margin-top: 10px;
}
.system-auth-registration i {
font-style: normal;
font-weight: bold;
color: #f00;
}

Шаблон компонента system.auth.authorize

<?php
/*
* Файл local/templates/название_сайта/components/bitrix/system.auth.authorize/.default/template.php
*/
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
?>
<div class="system-auth-authorize">
<h2><?= GetMessage('SYS_AUTH_AUTHORIZE_TITLE'); /* заголовок формы */ ?></h2>
<?php
// сообщение, как прошла операция авторизации
ShowMessage($arParams["~AUTH_RESULT"]);
// сообщение об ошибке при авторизации
ShowMessage($arResult['ERROR_MESSAGE']);
?>
<form name="form_auth" method="post" target="_top" action="<?= $arResult["AUTH_URL"]; ?>">
<input type="hidden" name="AUTH_FORM" value="Y" />
<input type="hidden" name="TYPE" value="AUTH" />
<?php if (strlen($arResult["BACKURL"]) > 0) : ?>
<input type="hidden" name="backurl" value="<?= $arResult["BACKURL"]; ?>" />
<?php endif; ?>
<?php foreach ($arResult["POST"] as $key => $value) : /* передача полученных POST-параметров */ ?>
<input type="hidden" name="<?= $key; ?>" value="<?= $value; ?>" />
<?php endforeach; ?>
<div>
<span><?= GetMessage('SYS_AUTH_AUTHORIZE_LOGIN'); /* поле логин */ ?></span>
<span><input type="text" name="USER_LOGIN" maxlength="255" value="<?= $arResult["LAST_LOGIN"]; ?>" /></span>
</div>
<div>
<span><?= GetMessage('SYS_AUTH_AUTHORIZE_PASSWORD'); /* поле пароль */ ?></span>
<span><input type="password" name="USER_PASSWORD" maxlength="255" autocomplete="off" /></span>
</div>
<?php if ($arResult["SECURE_AUTH"]) : /* безопасная авторизация (зашифрованная передача пароля) */ ?>
<!-- код удален -->
<?php endif; ?>
<?php if ($arResult["CAPTCHA_CODE"]) : /* если используется CAPTCHA */ ?>
<div class="captcha">
<h3><?= GetMessage('SYS_AUTH_AUTHORIZE_CAPTCHA_TITLE'); /* Защита от роботов */ ?></h3>
<input type="hidden" name="captcha_sid" value="<?= $arResult["CAPTCHA_CODE"]; ?>" />
<img src="/bitrix/tools/captcha.php?captcha_sid=<?= $arResult["CAPTCHA_CODE"]; ?>" width="180" height="40" alt="" />
<span><?= GetMessage('SYS_AUTH_AUTHORIZE_CAPTCHA_TEXT'); /* введите код с картинки */ ?> <i>*</i> <!-- поле обязательно для заполнения --></span>
<span><input type="text" name="captcha_word" maxlength="50" value="" size="15" /></span>
</div>
<?php endif; ?>
<?php if ($arResult["STORE_PASSWORD"] == "Y") : /* checkbox «Запомнить меня» */ ?>
<div class="remember">
<input type="checkbox" id="USER_REMEMBER" name="USER_REMEMBER" value="Y" />
<label for="USER_REMEMBER"><?= GetMessage('SYS_AUTH_AUTHORIZE_REMEMBER'); ?></label>
</div>
<?php endif; ?>
<div class="submit">
<input type="submit" name="Login" value="<?= GetMessage('SYS_AUTH_AUTHORIZE_SUBMIT'); /* кнопка отправки формы */ ?>" />
</div>
</form>
<?php if ($arParams["NOT_SHOW_LINKS"] != "Y") : /* ссылка для восстановления пароля */ ?>
<p><a href="<?= $arResult["AUTH_FORGOT_PASSWORD_URL"]; ?>" rel="nofollow"><?= GetMessage('SYS_AUTH_AUTHORIZE_FORGOT'); ?></a></p>
<?php endif; ?>
<?php
// ссылка на страницу регистрации
if ($arParams["NOT_SHOW_LINKS"] != "Y" && $arResult["NEW_USER_REGISTRATION"] == "Y" && $arParams["AUTHORIZE_REGISTRATION"] != "Y") :
?>
<p><a href="<?= $arResult["AUTH_REGISTER_URL"]; ?>" rel="nofollow"><?= GetMessage('SYS_AUTH_AUTHORIZE_REG_USER'); ?></a></p>
<?php endif; ?>
<script type="text/javascript">
<?php if (strlen($arResult["LAST_LOGIN"]) > 0) : ?>
try {
document.form_auth.USER_PASSWORD.focus();
} catch (e) {}
<?php else : ?>
try {
document.form_auth.USER_LOGIN.focus();
} catch (e) {}
<?php endif; ?>
</script>
</div>
<?php
/*
 * Файл local/templates/название_сайта/components/bitrix/system.auth.authorize/.default/lang/ru/template.php
 */
$MESS['SYS_AUTH_AUTHORIZE_TITLE']         = 'Авторизация';
$MESS['SYS_AUTH_AUTHORIZE_LOGIN']         = 'Логин';
$MESS['SYS_AUTH_AUTHORIZE_PASSWORD']      = 'Пароль';
$MESS['SYS_AUTH_AUTHORIZE_REMEMBER']      = 'Запомнить меня';
$MESS['SYS_AUTH_AUTHORIZE_CAPTCHA_TITLE'] = 'Защита от автоматической регистрации';
$MESS['SYS_AUTH_AUTHORIZE_CAPTCHA_TEXT']  = 'Введите символы с картинки';
$MESS['SYS_AUTH_AUTHORIZE_SUBMIT']        = 'Войти';
$MESS['SYS_AUTH_AUTHORIZE_REG_USER']      = 'Зарегистрироваться';
$MESS['SYS_AUTH_AUTHORIZE_FORGOT']        = 'Забыли пароль?';
/*
* Файл local/templates/название_сайта/components/bitrix/system.auth.authorize/.default/style.css
*/
.system-auth-authorize {
}
.system-auth-authorize > p {
margin: 1em 0;
}
.system-auth-authorize > p > a {
text-decoration: underline;
}
.system-auth-authorize > form > div {
width: 50%;
margin-bottom: 15px;
}
.system-auth-authorize > form > div > span {
display: block;
}
.system-auth-authorize > form > div > span:first-child {
margin-bottom: 5px;
}
.system-auth-authorize > form > div > span > input[type="text"],
.system-auth-authorize > form > div > span > input[type="password"] {
width: 100%;
padding: 5px;
border: 1px solid #ccc;
}
.system-auth-authorize > form > div.captcha {
border: 1px solid #ccc;
padding: 20px 15px 15px 15px;
position: relative;
margin-top: 15px;
width: 49%;
clear: both;
}
.system-auth-authorize > form > div.captcha > h3 {
position: absolute;
top: -10px;
font-weight: normal;
font-size: 16px;
background: #eee;
padding: 0 10px;
color: #999;
}
.system-auth-authorize > form > div.captcha > span:first-of-type {
margin-top: 10px;
}
.system-auth-authorize > form > div.remember label {
font-weight: normal;
cursor: pointer;
border-bottom: 1px dashed #333;
position: relative;
top: -3px;
margin-left: 5px;
}
.system-auth-authorize > form > div.submit > input[type="submit"] {
width: 30%;
padding: 5px;
background: #333;
color: #fff;
border: none;
}
.system-auth-authorize i {
font-style: normal;
font-weight: bold;
color: #f00;
}

Шаблон компонента system.auth.forgotpasswd

<?php
/*
* Файл local/templates/название_сайта/components/bitrix/system.auth.forgotpasswd/.default/template.php
*/
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
?>
<div class="system-auth-forgotpasswd">
<h2><?= GetMessage('SYS_AUTH_FORGOT_TITLE'); /* заголовок формы */ ?></h2>
<?php
// сообщение о результате операции смены пароля
ShowMessage($arParams["~AUTH_RESULT"]);
// после отправки письма и вывода сообщания об этом, не нужно больше показывать форму
if (isset($arParams["~AUTH_RESULT"]['TYPE']) && $arParams["~AUTH_RESULT"]['TYPE'] == 'OK') {
echo '</div>';
return;
}
?>
<p><?= GetMessage('SYS_AUTH_FORGOT_HELP'); /* сообщение о том, как происходит восстановление пароля */ ?></p>
<form name="bform" method="post" target="_top" action="<?= $arResult["AUTH_URL"]; ?>">
<?php if (strlen($arResult["BACKURL"]) > 0) : ?>
<input type="hidden" name="backurl" value="<?= $arResult["BACKURL"]; ?>" />
<?php endif; ?>
<input type="hidden" name="AUTH_FORM" value="Y">
<input type="hidden" name="TYPE" value="SEND_PWD">
<div>
<span><?= GetMessage('SYS_AUTH_FORGOT_LOGIN'); /* логин пользователя */ ?></span>
<span><input type="text" name="USER_LOGIN" maxlength="50" value="<?= $arResult["LAST_LOGIN"]; ?>" /></span>
</div>
<div>
<span><?= GetMessage('SYS_AUTH_FORGOT_EMAIL'); /* e-mail пользователя */ ?></span>
<span><input type="text" name="USER_EMAIL" maxlength="255" value="" /></span>
</div>
<?php if ($arResult["USE_CAPTCHA"]) : /* использовать CAPTCHA? */ ?>
<div class="captcha">
<h3><?= GetMessage('SYS_AUTH_FORGOT_CAPTCHA_TITLE'); /* Защита от роботов */ ?></h3>
<input type="hidden" name="captcha_sid" value="<?= $arResult["CAPTCHA_CODE"]; ?>" />
<img src="/bitrix/tools/captcha.php?captcha_sid=<?= $arResult["CAPTCHA_CODE"]; ?>" width="180" height="40" alt="CAPTCHA" />
<span><?= GetMessage('SYS_AUTH_FORGOT_CAPTCHA_TEXT'); /* введите код с картинки */ ?> <i>*</i> <!-- поле обязательно для заполнения --></span>
<span><input type="text" name="captcha_word" maxlength="50" value="" /></span>
</div>
<?php endif; ?>
<div class="submit">
<input type="submit" name="send_account_info" value="<?= GetMessage('SYS_AUTH_FORGOT_SUBMIT'); /* кнопка отправки */ ?>" />
</div>
</form>
<p><a href="<?= $arResult["AUTH_AUTH_URL"]; ?>"><?= GetMessage('SYS_AUTH_FORGOT_AUTH'); /* ссылка на страницу авторизации */ ?></a></p>
<script type="text/javascript">
document.bform.USER_LOGIN.focus();
</script>
</div>
<?php
/*
 * Файл local/templates/название_сайта/components/bitrix/system.auth.forgotpasswd/.default/lang/ru/template.php
 */
$MESS['SYS_AUTH_FORGOT_TITLE']         = 'Восстановление пароля';
$MESS['SYS_AUTH_FORGOT_HELP']          = 'Введите логин или E-mail: инструкция по смене пароля будет отправлена на Ваш почтовый адрес.';
$MESS['SYS_AUTH_FORGOT_LOGIN']         = 'Логин';
$MESS['SYS_AUTH_FORGOT_EMAIL']         = 'E-mail';
$MESS['SYS_AUTH_FORGOT_CAPTCHA_TITLE'] = 'Защита от автоматической регистрации';
$MESS['SYS_AUTH_FORGOT_CAPTCHA_TEXT']  = 'Введите символы с картинки';
$MESS['SYS_AUTH_FORGOT_SUBMIT']        = 'Отправить';
$MESS['SYS_AUTH_FORGOT_AUTH']          = 'Авторизация';
/*
* Файл local/templates/название_сайта/components/bitrix/system.auth.forgotpasswd/.default/style.css
*/
.system-auth-forgotpasswd {
}
.system-auth-forgotpasswd > p {
margin: 1em 0;
}
.system-auth-forgotpasswd > p > a {
text-decoration: underline;
}
.system-auth-forgotpasswd > form > div {
width: 50%;
margin-bottom: 15px;
}
.system-auth-forgotpasswd > form > div.captcha {
border: 1px solid #ccc;
padding: 20px 15px 15px 15px;
position: relative;
margin-top: 25px;
}
.system-auth-forgotpasswd > form > div.captcha > h3 {
position: absolute;
top: -10px;
font-weight: normal;
font-size: 16px;
background: #eee;
padding: 0 10px;
color: #999;
}
.system-auth-forgotpasswd > form > div.captcha > span:first-of-type {
margin-top: 10px;
}
.system-auth-forgotpasswd > form > div > span {
display: block;
}
.system-auth-forgotpasswd > form > div > span:first-child {
margin-bottom: 5px;
}
.system-auth-forgotpasswd > form > div > span > input[type="text"],
.system-auth-forgotpasswd > form > div > span > input[type="password"] {
width: 100%;
padding: 5px;
border: 1px solid #ccc;
}
.system-auth-forgotpasswd > form > div.submit {
margin-top: 25px;
}
.system-auth-forgotpasswd > form > div.submit > input[type="submit"] {
width: 30%;
padding: 5px;
background: #333;
color: #fff;
border: none;
}
.system-auth-forgotpasswd i {
font-style: normal;
font-weight: bold;
color: #f00;
}

Шаблон компонента system.auth.changepasswd

<?php
/*
* Файл local/templates/название_сайта/components/bitrix/system.auth.changepasswd/.default/template.php
*/
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
?>
<div class="system-auth-changepasswd">
<h2><?= GetMessage('SYS_AUTH_CHANGE_TITLE'); /* заголовок формы */ ?></h2>
<p><?php ShowMessage($arParams["~AUTH_RESULT"]); /* сообщение о результате смены пароля */ ?></p>
<?php
// после успешной смены пароля и вывода сообщания об этом, не нужно больше показывать форму
if (isset($arParams["~AUTH_RESULT"]['TYPE']) && $arParams["~AUTH_RESULT"]['TYPE'] == 'OK') {
echo '</div>';
return;
}
?>
<form name="bform" method="post" action="<?= $arResult["AUTH_FORM"]; ?>">
<?php if (strlen($arResult["BACKURL"]) > 0) : ?>
<input type="hidden" name="backurl" value="<?= $arResult["BACKURL"]; ?>" />
<?php endif; ?>
<input type="hidden" name="AUTH_FORM" value="Y">
<input type="hidden" name="TYPE" value="CHANGE_PWD">
<div>
<span><?= GetMessage('SYS_AUTH_CHANGE_LOGIN'); /* логин пользователя */ ?> <i>*</i> <!-- поле обязательно для заполнения --></span>
<span><input type="text" name="USER_LOGIN" maxlength="50" value="<?= $arResult["LAST_LOGIN"]; ?>" /></span>
</div>
<div class="checkword">
<span><?= GetMessage('SYS_AUTH_CHANGE_CHECK'); /* контрольная строка */ ?> <i>*</i> <!-- поле обязательно для заполнения --></span>
<span><input type="text" name="USER_CHECKWORD" maxlength="50" value="<?= $arResult["USER_CHECKWORD"]; ?>" /></span>
</div>
<div>
<span><?= GetMessage('SYS_AUTH_CHANGE_PASSWORD'); /* новый пароль */ ?> <i>*</i> <!-- поле обязательно для заполнения --></span>
<span><input type="password" name="USER_PASSWORD" maxlength="50" value="<?= $arResult["USER_PASSWORD"]; ?>" autocomplete="off" /></span>
</div>
<?php if ($arResult["SECURE_AUTH"]) : /* безопасная авторизация (зашифрованная передача пароля) */ ?>
<!-- код удален -->
<?php endif; ?>
<div>
<span><?= GetMessage('SYS_AUTH_CHANGE_CONFIRM'); /* подтверждение пароля */ ?> <i>*</i> <!-- поле обязательно для заполнения --></span>
<span><input type="password" name="USER_CONFIRM_PASSWORD" maxlength="50" value="<?= $arResult["USER_CONFIRM_PASSWORD"]; ?>" autocomplete="off" /></span>
</div>
<?php if ($arResult["USE_CAPTCHA"]) : /* использовать CAPTCHA? */ ?>
<div class="captcha">
<h3><?= GetMessage('SYS_AUTH_CHANGE_CAPTCHA_TITLE'); /* Защита от роботов */ ?></h3>
<input type="hidden" name="captcha_sid" value="<?= $arResult["CAPTCHA_CODE"]; ?>" />
<img src="/bitrix/tools/captcha.php?captcha_sid=<?= $arResult["CAPTCHA_CODE"]; ?>" width="180" height="40" alt="CAPTCHA" />
<span><?= GetMessage('SYS_AUTH_CHANGE_CAPTCHA_TEXT'); /* введите код с картинки */ ?> <i>*</i> <!-- поле обязательно для заполнения --></span>
<span><input type="text" name="captcha_word" maxlength="50" value="" /></span>
</div>
<?php endif; ?>
<div class="submit">
<input type="submit" name="change_pwd" value="<?= GetMessage('SYS_AUTH_CHANGE_SUBMIT'); /* кнопка отправки формы */ ?>" />
</div>
</form>
<p><?= $arResult["GROUP_POLICY"]["PASSWORD_REQUIREMENTS"]; /* сообщение о min длине пароля */ ?></p>
<p><i>*</i> <?= GetMessage('SYS_AUTH_CHANGE_REQUIRED') /* Эти поля обязательны для заполнения */ ?></p>
<p><a href="<?= $arResult["AUTH_AUTH_URL"]; ?>"><?= GetMessage('SYS_AUTH_CHANGE_AUTH'); /* ссылка на страницу авторизации */ ?></a></p>
<script type="text/javascript">
document.bform.USER_LOGIN.focus();
</script>
</div>
<?php
/*
* Файл local/templates/название_сайта/components/bitrix/system.auth.changepasswd/.default/lang/ru/template.php
*/
$MESS['SYS_AUTH_CHANGE_TITLE']         = 'Смена пароля';
$MESS['SYS_AUTH_CHANGE_LOGIN']         = 'Логин';
$MESS['SYS_AUTH_CHANGE_CHECK']         = 'Контрольная строка';
$MESS['SYS_AUTH_CHANGE_PASSWORD']      = 'Новый пароль';
$MESS['SYS_AUTH_CHANGE_CONFIRM']       = 'Подтверждение пароля';
$MESS['SYS_AUTH_CHANGE_CAPTCHA_TITLE'] = 'Защита от автоматической регистрации';
$MESS['SYS_AUTH_CHANGE_CAPTCHA_TEXT']  = 'Введите символы с картинки';
$MESS['SYS_AUTH_CHANGE_SUBMIT']        = 'Изменить пароль';
$MESS['SYS_AUTH_CHANGE_AUTH']          = 'Авторизация';
$MESS['SYS_AUTH_CHANGE_REQUIRED']      = 'Эти поля обязательны для заполнения';
/*
* Файл local/templates/название_сайта/components/bitrix/system.auth.changepasswd/.default/style.css
*/
.system-auth-changepasswd {
}
.system-auth-changepasswd > p {
margin: 1em 0;
}
.system-auth-changepasswd > p > a {
text-decoration: underline;
}
.system-auth-changepasswd > form > div {
width: 50%;
margin-bottom: 15px;
}
.system-auth-changepasswd > form > div.checkword {
display: none;
}
.system-auth-changepasswd > form > div > span {
display: block;
}
.system-auth-changepasswd > form > div > span:first-child {
margin-bottom: 5px;
}
.system-auth-changepasswd > form > div > span > input[type="text"],
.system-auth-changepasswd > form > div > span > input[type="password"] {
width: 100%;
padding: 5px;
border: 1px solid #ccc;
}
.system-auth-changepasswd > form > div.submit {
margin-top: 25px;
}
.system-auth-changepasswd > form > div.submit > input[type="submit"] {
width: 30%;
padding: 5px;
background: #333;
color: #fff;
border: none;
}
.system-auth-changepasswd i {
font-style: normal;
font-weight: bold;
color: #f00;
}
Заполните форму уже сегодня!
Для начала сотрудничества необходимо заполнить заявку или заказать обратный звонок. В ответ получите коммерческое предложение, которое будет содержать индивидуальную стратегию с учетом требований и поставленных задач
Работаем по будням с 9:00 до 18:00. Заявки, отправленные в выходные, обрабатываем в первый рабочий день до 12:00.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг