Verzeichnisstruktur phpBB-3.0.0


Veröffentlicht
12.12.2007

So funktioniert es


Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück

Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis.
Auf den Verzeichnisnamen klicken, dies zeigt nur das Verzeichnis mit Inhalt an

(Beispiel Datei-Icons)

Auf das Icon klicken um den Quellcode anzuzeigen

ucp_activate.php

Zuletzt modifiziert: 09.10.2024, 12:51 - Dateigröße: 2.98 KiB


001  <?php
002  /**
003  *
004  * @package ucp
005  * @version $Id$
006  * @copyright (c) 2005 phpBB Group
007  * @license http://opensource.org/licenses/gpl-license.php GNU Public License
008  *
009  */
010   
011  /**
012  * @ignore
013  */
014  if (!defined('IN_PHPBB'))
015  {
016      exit;
017  }
018   
019  /**
020  * ucp_activate
021  * User activation
022  * @package ucp
023  */
024  class ucp_activate
025  {
026      var $u_action;
027   
028      function main($id, $mode)
029      {
030          global $config, $phpbb_root_path, $phpEx;
031          global $db, $user, $auth, $template;
032   
033          $user_id = request_var('u', 0);
034          $key = request_var('k', '');
035   
036          $sql = 'SELECT user_id, username, user_type, user_email, user_newpasswd, user_lang, user_notify_type, user_actkey, user_inactive_reason
037              FROM ' . USERS_TABLE . "
038              WHERE user_id = $user_id";
039          $result = $db->sql_query($sql);
040          $user_row = $db->sql_fetchrow($result);
041          $db->sql_freeresult($result);
042   
043          if (!$user_row)
044          {
045              trigger_error('NO_USER');
046          }
047   
048          if ($user_row['user_type'] <> USER_INACTIVE && !$user_row['user_newpasswd'])
049          {
050              meta_refresh(3, append_sid("{$phpbb_root_path}index.$phpEx"));
051              trigger_error('ALREADY_ACTIVATED');
052          }
053   
054          if ($user_row['user_actkey'] != $key)
055          {
056              trigger_error('WRONG_ACTIVATION');
057          }
058   
059          $update_password = ($user_row['user_newpasswd']) ? true : false;
060   
061          if ($update_password)
062          {
063              $sql_ary = array(
064                  'user_actkey'        => '',
065                  'user_password'        => $user_row['user_newpasswd'],
066                  'user_newpasswd'    => '',
067                  'user_pass_convert'    => 0,
068              );
069   
070              $sql = 'UPDATE ' . USERS_TABLE . '
071                  SET ' . $db->sql_build_array('UPDATE', $sql_ary) . '
072                  WHERE user_id = ' . $user_row['user_id'];
073              $db->sql_query($sql);
074          }
075   
076          if (!$update_password)
077          {
078              include_once($phpbb_root_path . 'includes/functions_user.' . $phpEx);
079   
080              user_active_flip('activate', $user_row['user_id']);
081   
082              $sql = 'UPDATE ' . USERS_TABLE . "
083                  SET user_actkey = ''
084                  WHERE user_id = {$user_row['user_id']}";
085              $db->sql_query($sql);
086          }
087   
088          if ($config['require_activation'] == USER_ACTIVATION_ADMIN && !$update_password)
089          {
090              include_once($phpbb_root_path . 'includes/functions_messenger.' . $phpEx);
091   
092              $messenger = new messenger(false);
093   
094              $messenger->template('admin_welcome_activated', $user_row['user_lang']);
095   
096              $messenger->to($user_row['user_email'], $user_row['username']);
097   
098              $messenger->headers('X-AntiAbuse: Board servername - ' . $config['server_name']);
099              $messenger->headers('X-AntiAbuse: User_id - ' . $user->data['user_id']);
100              $messenger->headers('X-AntiAbuse: Username - ' . $user->data['username']);
101              $messenger->headers('X-AntiAbuse: User IP - ' . $user->ip);
102   
103              $messenger->assign_vars(array(
104                  'USERNAME'    => htmlspecialchars_decode($user_row['username']))
105              );
106   
107              $messenger->send($user_row['user_notify_type']);
108   
109              $message = 'ACCOUNT_ACTIVE_ADMIN';
110          }
111          else
112          {
113              if (!$update_password)
114              {
115                  $message = ($user_row['user_inactive_reason'] == INACTIVE_PROFILE) ? 'ACCOUNT_ACTIVE_PROFILE' : 'ACCOUNT_ACTIVE';
116              }
117              else
118              {
119                  $message = 'PASSWORD_ACTIVATED';
120              }
121          }
122   
123          meta_refresh(3, append_sid("{$phpbb_root_path}index.$phpEx"));
124          trigger_error($user->lang[$message]);
125      }
126  }
127   
128  ?>