get_config('system','sitename'),
			'$siteurl' =>  $a->get_baseurl(),
			'$username' => sprintf( t('Site Member (%s)'), $email),
			'$email' => $email,
			'$reset_link' => $a->get_baseurl() . '/lostpass?verify=' . $hash
	));
	$subject = email_header_encode(sprintf( t('Password reset requested at %s'),get_config('system','sitename')), 'UTF-8');
	$res = mail($email, $subject ,
			$message,
			'From: Administrator@' . $_SERVER['SERVER_NAME'] . "\n"
			. 'Content-type: text/plain; charset=UTF-8' . "\n"
			. 'Content-transfer-encoding: 8bit' );
	goaway(z_root());
}
function lostpass_content(&$a) {
	if(x($_GET,'verify')) {
		$verify = $_GET['verify'];
		$r = q("SELECT * FROM account WHERE account_reset = '%s' LIMIT 1",
			dbesc($verify)
		);
		if(! $r) {
			notice( t("Request could not be verified. (You may have previously submitted it.) Password reset failed.") . EOL);
			goaway(z_root());
			return;
		}
		$aid = $r[0]['account_id'];
		$email = $r[0]['account_email'];
		$new_password = autoname(6) . mt_rand(100,9999);
		$salt = random_string(32);
		$password_encoded = hash('whirlpool', $salt . $new_password);
		
		$r = q("UPDATE account SET account_salt = '%s', account_password = '%s', account_reset = '', account_flags = (account_flags & ~%d) where account_id = %d",
			dbesc($salt),
			dbesc($password_encoded),
			intval(ACCOUNT_UNVERIFIED),
			intval($aid)
		);
		if($r) {
			$tpl = get_markup_template('pwdreset.tpl');
			$o .= replace_macros($tpl,array(
				'$lbl1' => t('Password Reset'),
				'$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' => '' . t('click here to login') . '.',
				'$lbl6' => t('Your password may be changed from the Settings page after successful login.'),
				'$newpass' => $new_password,
				'$baseurl' => $a->get_baseurl()
			));
			
			info("Your password has been reset." . EOL);
			$email_tpl = get_intltext_template("passchanged_eml.tpl");
			$message = replace_macros($email_tpl, array(
			'$sitename' => $a->config['sitename'],
			'$siteurl' =>  $a->get_baseurl(),
			'$username' => sprintf( t('Site Member (%s)'), $email),
			'$email' => $email,
			'$new_password' => $new_password,
			'$uid' => $newuid ));
			$subject = email_header_encode( sprintf( t('Your password has changed at %s'), get_config('system','sitename')), 'UTF-8');
			$res = mail($email,$subject,$message,
				'From: ' . 'Administrator@' . $_SERVER['SERVER_NAME'] . "\n"
				. 'Content-type: text/plain; charset=UTF-8' . "\n"
				. 'Content-transfer-encoding: 8bit' );
			return $o;
		}
	
	}
	else {
		$tpl = get_markup_template('lostpass.tpl');
		$o .= replace_macros($tpl,array(
			'$title' => t('Forgot your Password?'),
			'$desc' => t('Enter your email address and submit to have your password reset. Then check your email for further instructions.'),
			'$name' => t('Email Address'),
			'$submit' => t('Reset') 
		));
		return $o;
	}
}