Source for file remind_password.php
Documentation is available at remind_password.php
* @copyright (c) 2004-15 bitweaver.org
require_once( '../kernel/setup_inc.php' );
$gBitSystem->verifyFeature( 'users_forgot_pass' );
$pageTitle = tra( 'Request Password Reminder' );
if( $gBitUser->isRegistered() ) {
} elseif (isset ($_REQUEST["remind"])) {
$pLogin = trim( $_REQUEST["username"] );
$loginCol = strpos( $pLogin, '@' ) ? 'email' : 'login';
$userInfo = $gBitUser->getUserInfo( array( $loginCol => $pLogin ) );
if ( $gBitSystem->isFeatureActive( 'users_clear_passwords' ) && !empty($userInfo['user_password']) ) {
$gBitSmarty->assign( 'userPass', $userInfo['user_password'] );
$tmp['success'] = tra("A password reminder email has been sent ");
$pass = $userInfo['user_password'];
$pass = $gBitUser->genPass();
list ($pass,$provpass) = $gBitUser->createTempPassword( $_REQUEST["username"], $pass );
$gBitSmarty->assign( 'mailProvPass', $provpass );
$gBitSmarty->assign( 'mailUserId', $userInfo['user_id'] );
$pageTitle = tra( 'Change Your Password' );
$tmp['success'] = tra("Information to change your password has been sent ");
$tmp['success'] .= tra("to the registered email address for"). " " . $_REQUEST["username"] . ".";
$gBitSmarty->assign('mail_user', $userInfo[$loginCol]);
$gBitSmarty->assign('mail_same', $gBitSystem->isFeatureActive( 'users_clear_passwords' ));
$gBitSmarty->assign('mail_pass', $pass);
$gBitSmarty->assign('linkUri', $gBitSystem->isFeatureActive("site_https_login_required") ? 'https://'. $_SERVER['HTTP_HOST']. USERS_PKG_URL : USERS_PKG_URI );
$mail_data = $gBitSmarty->fetch('bitpackage:users/password_reminder.tpl');
$subject = tra( "Your password for" ). ": ". $gBitSystem->getConfig( 'site_title', $_SERVER['HTTP_HOST'] );
mail( $userInfo['email'], $subject, $mail_data, "From: ". $gBitSystem->getConfig( 'site_sender_email' ). "\nContent-type: text/plain;charset=utf-8\n");
// Just show "success" message and no form
// Show error message (and leave form visible so user can fix problem)
$gBitSmarty->assign('showmsg', 'e');
$tmp['error'] = tra("Invalid or unknown username"). ": ". $_REQUEST["username"];
$gBitSmarty->assign('msg', $tmp);
$gBitSystem->display( 'bitpackage:users/remind_password.tpl', $pageTitle, array( 'display_mode' => 'display' ));
|