Как повторно отправить письмо для подтверждения регистрации? [Решено]
Использую пакет «Login».
Как можно повторно инициировать отправку письма для подтверждения регистрации?
В случаях если пользователь удалил письмо или просто отправить напоминание с соответствующей ссылкой.
UPD [решение]:
Как можно повторно инициировать отправку письма для подтверждения регистрации?
В случаях если пользователь удалил письмо или просто отправить напоминание с соответствующей ссылкой.
UPD [решение]:
$user_id = 321;
$activationUrlTime = 10800; //срок жизни 3 часа
$activationResourceId = 8;
function base64url_encode($str) {
return rtrim(strtr(base64_encode($str), '+/', '-_'), '=');
}
if ($user = $modx->getObject('modUser', $user_id)) {
$username = $user->get('username');
$pword = $user->generatePassword();
$modx->getService('registry', 'registry.modRegistry');
$modx->registry->addRegister('login','registry.modFileRegister');
$modx->registry->login->connect();
$modx->registry->login->subscribe('/useractivation/');
$modx->registry->login->send('/useractivation/', array($username => $pword), array('ttl' => ($activationUrlTime)));
$user->set('cachepwd', md5($pword));
$cachepwd = $user->get('cachepwd');
$user->save();
$confirmParams['lp'] = base64url_encode($pword);
$confirmParams['lu'] = base64url_encode($username);
return $modx->makeUrl($activationResourceId, '', $confirmParams, 'full');
} Комментарии: 10
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Нет понимания можно ли как-то повторно сгенерировать ссылку.
Сделал франкенштейна из разных кусков :)
UPD. Она устареет же, так что не вариант
Обновил информацию в посте