require_once('include/email.php');
require_once('include/enotify.php');
+require_once('include/text.php');
-function lostpass_post(&$a) {
+function lostpass_post(App &$a) {
$loginame = notags(trim($_POST['login-name']));
if(! $loginame)
dbesc($loginame)
);
- if(! count($r)) {
+ if (! dbm::is_result($r)) {
notice( t('No valid account found.') . EOL);
goaway(z_root());
}
$sitename = $a->config['sitename'];
- $siteurl = $a->get_baseurl();
- $resetlink = $a->get_baseurl() . '/lostpass?verify=' . $new_password;
+ $resetlink = App::get_baseurl() . '/lostpass?verify=' . $new_password;
- $preamble = t('Dear %1$s,
- A request was recently received at "%2$s" to reset your account
-password. In order to confirm this request, please select the verification link
-below or paste it into your web browser address bar.
+ $preamble = deindent(t('
+ Dear %1$s,
+ A request was recently received at "%2$s" to reset your account
+ password. In order to confirm this request, please select the verification link
+ below or paste it into your web browser address bar.
-If you did NOT request this change, please DO NOT follow the link
-provided and ignore and/or delete this email.
+ If you did NOT request this change, please DO NOT follow the link
+ provided and ignore and/or delete this email.
-Your password will not be changed unless we can verify that you
-issued this request.');
- $body = t('Follow this link to verify your identity:
+ Your password will not be changed unless we can verify that you
+ issued this request.'));
+ $body = deindent(t('
+ Follow this link to verify your identity:
-%1$s
+ %1$s
-You will then receive a follow-up message containing the new password.
+ You will then receive a follow-up message containing the new password.
+ You may change that password from your account settings page after logging in.
-You may change that password from your account settings page after logging in.
+ The login details are as follows:
-The login details are as follows:
-
-Site Location: %2$s
-Login Name: %3$s');
+ Site Location: %2$s
+ Login Name: %3$s'));
$preamble = sprintf($preamble, $username, $sitename);
- $body = sprintf($body, $resetlink, $siteurl, $email);
+ $body = sprintf($body, $resetlink, App::get_baseurl(), $email);
notification(array(
'type' => "SYSTEM_EMAIL",
'preamble'=> $preamble,
'body' => $body));
-
goaway(z_root());
}
-function lostpass_content(&$a) {
+function lostpass_content(App &$a) {
if(x($_GET,'verify')) {
$r = q("SELECT * FROM `user` WHERE `pwdreset` = '%s' LIMIT 1",
dbesc($hash)
);
- if(! count($r)) {
- notice( t("Request could not be verified. \x28You may have previously submitted it.\x29 Password reset failed.") . EOL);
- goaway(z_root());
- return;
+ if (! dbm::is_result($r)) {
+ $o = t("Request could not be verified. \x28You may have previously submitted it.\x29 Password reset failed.");
+ return $o;
}
$uid = $r[0]['uid'];
$username = $r[0]['username'];
'$lbl2' => t('Your password has been reset as requested.'),
'$lbl3' => t('Your new password is'),
'$lbl4' => t('Save or copy your new password - and then'),
- '$lbl5' => '<a href="' . $a->get_baseurl() . '">' . t('click here to login') . '</a>.',
+ '$lbl5' => '<a href="' . App::get_baseurl() . '">' . t('click here to login') . '</a>.',
'$lbl6' => t('Your password may be changed from the <em>Settings</em> page after successful login.'),
'$newpass' => $new_password,
- '$baseurl' => $a->get_baseurl()
+ '$baseurl' => App::get_baseurl()
));
info("Your password has been reset." . EOL);
-
- $email_tpl = get_intltext_template("passchanged_eml.tpl");
- $email_tpl = replace_macros($email_tpl, array(
- '$sitename' => $a->config['sitename'],
- '$siteurl' => $a->get_baseurl(),
- '$username' => $username,
- '$email' => $email,
- '$new_password' => $new_password,
- '$uid' => $newuid ));
-
- $subject = sprintf( t('Your password has been changed at %s'), $a->config['sitename']);
-
- $res = mail($email, email_header_encode( $subject, 'UTF-8'), $email_tpl,
- 'From: ' . 'Administrator' . '@' . $_SERVER['SERVER_NAME'] . "\n"
- . 'Content-type: text/plain; charset=UTF-8' . "\n"
- . 'Content-transfer-encoding: 8bit' );
+ $sitename = $a->config['sitename'];
+ // $username, $email, $new_password
+ $preamble = deindent(t('
+ Dear %1$s,
+ Your password has been changed as requested. Please retain this
+ information for your records (or change your password immediately to
+ something that you will remember).
+ '));
+ $body = deindent(t('
+ Your login details are as follows:
+
+ Site Location: %1$s
+ Login Name: %2$s
+ Password: %3$s
+
+ You may change that password from your account settings page after logging in.
+ '));
+
+ $preamble = sprintf($preamble, $username);
+ $body = sprintf($body, App::get_baseurl(), $email, $new_password);
+
+ notification(array(
+ 'type' => "SYSTEM_EMAIL",
+ 'to_email' => $email,
+ 'subject'=> sprintf( t('Your password has been changed at %s'),$sitename),
+ 'preamble'=> $preamble,
+ 'body' => $body));
return $o;
}