[ Index ]

PHP Cross Reference of phpBB 3.0 Beta 3

title

Body

[close]

/includes/ucp/ -> ucp_remind.php (source)

   1  <?php
   2  /** 
   3  *
   4  * @package ucp
   5  * @version $Id: ucp_remind.php,v 1.26 2006/11/03 21:04:10 acydburn Exp $
   6  * @copyright (c) 2005 phpBB Group 
   7  * @license http://opensource.org/licenses/gpl-license.php GNU Public License 
   8  *
   9  */
  10  
  11  /**
  12  * ucp_remind
  13  * Sending password reminders
  14  * @package ucp
  15  */
  16  class ucp_remind
  17  {
  18      var $u_action;
  19  
  20  	function main($id, $mode)
  21      {
  22          global $config, $phpbb_root_path, $phpEx;
  23          global $db, $user, $auth, $template;
  24  
  25          $username    = request_var('username', '', true);
  26          $email        = request_var('email', '');
  27          $submit        = (isset($_POST['submit'])) ? true : false;
  28  
  29          if ($submit)
  30          {
  31              $sql = 'SELECT user_id, username, user_email, user_jabber, user_notify_type, user_type, user_lang
  32                  FROM ' . USERS_TABLE . "
  33                  WHERE user_email = '" . $db->sql_escape($email) . "'
  34                      AND username_clean = '" . $db->sql_escape(utf8_clean_string($username)) . "'";
  35              $result = $db->sql_query($sql);
  36              $user_row = $db->sql_fetchrow($result);
  37              $db->sql_freeresult($result);
  38  
  39              if (!$user_row)
  40              {
  41                  trigger_error('NO_EMAIL_USER');
  42              }
  43  
  44              if ($user_row['user_type'] == USER_INACTIVE)
  45              {
  46                  trigger_error('ACCOUNT_NOT_ACTIVATED');
  47              }
  48  
  49              $server_url = generate_board_url();
  50  
  51              $key_len = 54 - strlen($server_url);
  52              $key_len = ($key_len < 6) ? 6 : $key_len;
  53              $user_actkey = substr(gen_rand_string(10), 0, $key_len);
  54              $user_password = gen_rand_string(8);
  55  
  56              $sql = 'UPDATE ' . USERS_TABLE . "
  57                  SET user_newpasswd = '" . $db->sql_escape(md5($user_password)) . "', user_actkey = '" . $db->sql_escape($user_actkey) . "'
  58                  WHERE user_id = " . $user_row['user_id'];
  59              $db->sql_query($sql);
  60  
  61              include_once($phpbb_root_path . 'includes/functions_messenger.' . $phpEx);
  62  
  63              $messenger = new messenger(false);
  64  
  65              $messenger->template('user_activate_passwd', $user_row['user_lang']);
  66  
  67              $messenger->replyto($user->data['user_email']);
  68              $messenger->to($user_row['user_email'], $user_row['username']);
  69              $messenger->im($user_row['user_jabber'], $user_row['username']);
  70  
  71              $messenger->assign_vars(array(
  72                  'USERNAME'        => htmlspecialchars_decode($user_row['username']),
  73                  'PASSWORD'        => htmlspecialchars_decode($user_password),
  74                  'U_ACTIVATE'    => "$server_url/ucp.$phpEx?mode=activate&u={$user_row['user_id']}&k=$user_actkey")
  75              );
  76  
  77              $messenger->send($user_row['user_notify_type']);
  78  
  79              meta_refresh(3, append_sid("{$phpbb_root_path}index.$phpEx"));
  80  
  81              $message = $user->lang['PASSWORD_UPDATED'] . '<br /><br />' . sprintf($user->lang['RETURN_INDEX'],  '<a href="' . append_sid("{$phpbb_root_path}index.$phpEx") . '">', '</a>');
  82              trigger_error($message);
  83          }
  84  
  85          $template->assign_vars(array(
  86              'USERNAME'            => $username,
  87              'EMAIL'                => $email,
  88              'S_PROFILE_ACTION'    => append_sid($phpbb_root_path . 'ucp.' . $phpEx, 'mode=sendpassword'))
  89          );
  90  
  91          $this->tpl_name = 'ucp_remind';
  92          $this->page_title = 'UCP_REMIND';
  93      }
  94  }
  95  
  96  ?>


Generated: Wed Nov 22 00:35:05 2006 Cross-referenced by PHPXref 0.6