[QUOTE]Иван Малышин написал:
[QUOTE] Евгений Шахов написал:
В задании [ex1-61] Изменение почтового шаблона: информация о пользователе:"Ваш статус: #STATUS#" - это тот статус, который получаем через метод CUser::IsOnLine?, я не нашел похожего поля через SQL запрос "SEL ECT * FR OM `b_user`;"[/QUOTE]
Нет. Это поле система сама подставит по идее
[QUOTE] Евгений Шахов написал:
"Вы можете изменить пароль, перейдя по следующей ссылке: [URL=http://#SERVER_NAME#/auth/index.php?change_password=yes&lang=ru&USER_CHECKWO]http://#SERVER_NAME#/auth/index.php?change_password=yes&lang=ru&USER_CHECKWO[/URL] RD=#CHECKWORD#&USER_LOGIN=#URL_LOGIN#" - требуется создать раздел "auth", в котором необходимо разместить типовой компонент авторизации или брать готовый из материалов к экзамену? Эта ссылка на смену пароля должна быть рабочей?[/QUOTE]
В этом задании это не важно, проверка завершается на шаблоне [/QUOTE]
Спасибо за ответ! Не зная, как поступить с CHECKWORD (контрольное слово, записываемое в базу и высылаемое в письме), я добился рабочей ссылки нижележащим способом, но так, похоже, делать и не надо было, раз дело заканчивается на шаблоне =))
[B]init.php:[/B]
$salt = randString(8);
$checkword = md5(CMain::GetServerUniqID().uniqid());
$_checkword = $salt.md5($salt.$checkword);
$strSql = 'UPD ATE b_user SE T CHECKWORD = "' . $_checkword . '" WHERE ID = "' . $arFields['ID'] . '";';
global $DB;
$DB->Query($strSql);
global $USER;
$arEventFields = [
"MYLOGIN" => $USER->GetLogin(),
"STATUS" => $strStatus,
"LOGIN" => $arFields['LOGIN'],
"NAME" => $arFields['NAME'],
"LAST_NAME" => $arFields['LAST_NAME'],
"URL_LOGIN" => $arFields['LOGIN'],
"CHECKWORD" => $checkword,
];
CEvent::Send("USER_UPDATE_PROFILE", s1, $arEventFields);
[B]почтовый шаблон:[/B]
Вы можете изменить пароль, перейдя по следующей ссылке:
[URL=http://#SERVER_NAME#/bitrix/admin/index.php?change_password=yes&lang=ru&USER_CHECKWORD=#CHECKWORD#&USER_LOGIN=#URL_LOGIN#]http://#SERVER_NAME#/bitrix/admin/index.php?change_password=yes&lang=ru&USER_CHECKWO...[/URL]
[QUOTE] Евгений Шахов написал:
В задании [ex1-61] Изменение почтового шаблона: информация о пользователе:"Ваш статус: #STATUS#" - это тот статус, который получаем через метод CUser::IsOnLine?, я не нашел похожего поля через SQL запрос "SEL ECT * FR OM `b_user`;"[/QUOTE]
Нет. Это поле система сама подставит по идее
[QUOTE] Евгений Шахов написал:
"Вы можете изменить пароль, перейдя по следующей ссылке: [URL=http://#SERVER_NAME#/auth/index.php?change_password=yes&lang=ru&USER_CHECKWO]http://#SERVER_NAME#/auth/index.php?change_password=yes&lang=ru&USER_CHECKWO[/URL] RD=#CHECKWORD#&USER_LOGIN=#URL_LOGIN#" - требуется создать раздел "auth", в котором необходимо разместить типовой компонент авторизации или брать готовый из материалов к экзамену? Эта ссылка на смену пароля должна быть рабочей?[/QUOTE]
В этом задании это не важно, проверка завершается на шаблоне [/QUOTE]
Спасибо за ответ! Не зная, как поступить с CHECKWORD (контрольное слово, записываемое в базу и высылаемое в письме), я добился рабочей ссылки нижележащим способом, но так, похоже, делать и не надо было, раз дело заканчивается на шаблоне =))
[B]init.php:[/B]
$salt = randString(8);
$checkword = md5(CMain::GetServerUniqID().uniqid());
$_checkword = $salt.md5($salt.$checkword);
$strSql = 'UPD ATE b_user SE T CHECKWORD = "' . $_checkword . '" WHERE ID = "' . $arFields['ID'] . '";';
global $DB;
$DB->Query($strSql);
global $USER;
$arEventFields = [
"MYLOGIN" => $USER->GetLogin(),
"STATUS" => $strStatus,
"LOGIN" => $arFields['LOGIN'],
"NAME" => $arFields['NAME'],
"LAST_NAME" => $arFields['LAST_NAME'],
"URL_LOGIN" => $arFields['LOGIN'],
"CHECKWORD" => $checkword,
];
CEvent::Send("USER_UPDATE_PROFILE", s1, $arEventFields);
[B]почтовый шаблон:[/B]
Вы можете изменить пароль, перейдя по следующей ссылке:
[URL=http://#SERVER_NAME#/bitrix/admin/index.php?change_password=yes&lang=ru&USER_CHECKWORD=#CHECKWORD#&USER_LOGIN=#URL_LOGIN#]http://#SERVER_NAME#/bitrix/admin/index.php?change_password=yes&lang=ru&USER_CHECKWO...[/URL]