Your IP : 216.73.216.170
<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
if (isset($_REQUEST["backurl"]) && strlen($_REQUEST["backurl"])>0)
LocalRedirect($backurl);
$APPLICATION->SetTitle("Воccтановление пароля");
$_REQUEST['set_debug'] = 'Y';
if($USER->IsAuthorized())
LocalRedirect(SITE_DIR.'home/');
$chechByHash = reset(Veb\HL\UserForgotPassword::GetList(array(), array('UF_HASH' => $_REQUEST['bx_hash'])));
if(!$chechByHash || empty($_REQUEST['bx_hash']))
{
LocalRedirect(SITE_DIR.'home/');
}
else
{
//hash может действовать только 24 часа, делаем проверку
if(ConvertTimeStamp($chechByHash['UF_DATE']->getTimestamp()+86400) > time())
{
?>
<section class="section section-item">
<div class="container">
Ссылка недействительна. Воспользуйтесь сервисом <a class="js-popup" style="color:#0086cd" href="#vforgotpasswd">Забыли пароль</a> еще раз.
</div>
</section>
<div class="popup popup-content mfp-hide" id="vforgotpasswd">
<?
$APPLICATION->IncludeComponent(
"veb:forgot.password",
"",
Array(
)
);
?>
</div>
<?
}
else
{
if($chechByHash['UF_SEND_PSWD'])
{
?>
<section class="section section-item">
<div class="container">
Пароль уже выслан на Ваш почтовый адрес электронной почты.
</div>
</section>
<?
}
else
{
$chechUser = \Bitrix\Main\UserTable::getList(array('filter'=>array('=ID' => $chechByHash["UF_USER_ID"]), 'select' => array('ID', 'NAME', 'LAST_NAME')))->Fetch();
if($chechUser)
{
$password = Veb\User\GetRandomPassword();
$obUser = new \CUser;
$arFields = array(
"PASSWORD"=>$password,
"CONFIRM_PASSWORD"=>$password,
);
$obUser->Update($chechByHash["UF_USER_ID"], $arFields);
Bitrix\Main\Mail\Event::sendImmediate([
"EVENT_NAME" => "VEB_NEW_PSWD_FORGOT",
"LID" => SITE_ID,
"C_FIELDS" => [
"EMAIL" => $chechByHash['UF_EMAIL'],
"PASSWORD" => $password,
"LAST_NAME" => $chechUser['LAST_NAME'],
"NAME" => $chechUser['NAME'],
],
]);
Veb\HL\UserForgotPassword::Update($chechByHash['ID'], array('UF_SEND_PSWD' => true));
?>
<section class="section section-item">
<div class="container">
На Ваш почтовый адрес электронной почты отправлено письмо с новым паролем.
</div>
</section>
<?
}
else
{
?>
<section class="section section-item">
<div class="container">
Пользователен не найден.
</div>
</section>
<?
}
}
}
}
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>