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_resend.php

Zuletzt modifiziert: 09.10.2024, 12:51 - Dateigröße: 5.01 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_resend
021  * Resending activation emails
022  * @package ucp
023  */
024  class ucp_resend
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          $username    = request_var('username', '', true);
034          $email        = strtolower(request_var('email', ''));
035          $submit        = (isset($_POST['submit'])) ? true : false;
036   
037          add_form_key('ucp_resend');
038   
039          if ($submit)
040          {
041              if (!check_form_key('ucp_resend'))
042              {
043                  trigger_error('FORM_INVALID');
044              }
045   
046              $sql = 'SELECT user_id, group_id, username, user_email, user_type, user_lang, user_actkey, user_inactive_reason
047                  FROM ' . USERS_TABLE . "
048                  WHERE user_email = '" . $db->sql_escape($email) . "'
049                      AND username_clean = '" . $db->sql_escape(utf8_clean_string($username)) . "'";
050              $result = $db->sql_query($sql);
051              $user_row = $db->sql_fetchrow($result);
052              $db->sql_freeresult($result);
053   
054              if (!$user_row)
055              {
056                  trigger_error('NO_EMAIL_USER');
057              }
058   
059              if ($user_row['user_type'] == USER_IGNORE)
060              {
061                  trigger_error('NO_USER');
062              }
063   
064              if (!$user_row['user_actkey'] && $user_row['user_type'] != USER_INACTIVE)
065              {
066                  trigger_error('ACCOUNT_ALREADY_ACTIVATED');
067              }
068   
069              if (!$user_row['user_actkey'] || ($user_row['user_type'] == USER_INACTIVE && $user_row['user_inactive_reason'] == INACTIVE_MANUAL))
070              {
071                  trigger_error('ACCOUNT_DEACTIVATED');
072              }
073   
074              // Determine coppa status on group (REGISTERED(_COPPA))
075              $sql = 'SELECT group_name, group_type
076                  FROM ' . GROUPS_TABLE . '
077                  WHERE group_id = ' . $user_row['group_id'];
078              $result = $db->sql_query($sql);
079              $row = $db->sql_fetchrow($result);
080              $db->sql_freeresult($result);
081   
082              if (!$row)
083              {
084                  trigger_error('NO_GROUP');
085              }
086   
087              $coppa = ($row['group_name'] == 'REGISTERED_COPPA' && $row['group_type'] == GROUP_SPECIAL) ? true : false;
088   
089              include_once($phpbb_root_path . 'includes/functions_messenger.' . $phpEx);
090              $messenger = new messenger(false);
091   
092              if ($config['require_activation'] == USER_ACTIVATION_SELF || $coppa)
093              {
094                  $messenger->template(($coppa) ? 'coppa_resend_inactive' : 'user_resend_inactive', $user_row['user_lang']);
095                  $messenger->to($user_row['user_email'], $user_row['username']);
096   
097                  $messenger->headers('X-AntiAbuse: Board servername - ' . $config['server_name']);
098                  $messenger->headers('X-AntiAbuse: User_id - ' . $user->data['user_id']);
099                  $messenger->headers('X-AntiAbuse: Username - ' . $user->data['username']);
100                  $messenger->headers('X-AntiAbuse: User IP - ' . $user->ip);
101   
102                  $messenger->assign_vars(array(
103                      'WELCOME_MSG'    => htmlspecialchars_decode(sprintf($user->lang['WELCOME_SUBJECT'], $config['sitename'])),
104                      'USERNAME'        => htmlspecialchars_decode($user_row['username']),
105                      'U_ACTIVATE'    => generate_board_url() . "/ucp.$phpEx?mode=activate&u={$user_row['user_id']}&k={$user_row['user_actkey']}")
106                  );
107   
108                  if ($coppa)
109                  {
110                      $messenger->assign_vars(array(
111                          'FAX_INFO'        => $config['coppa_fax'],
112                          'MAIL_INFO'        => $config['coppa_mail'],
113                          'EMAIL_ADDRESS'    => $user_row['user_email'])
114                      );
115                  }
116   
117                  $messenger->send(NOTIFY_EMAIL);
118              }
119   
120              if ($config['require_activation'] == USER_ACTIVATION_ADMIN)
121              {
122                  // Grab an array of user_id's with a_user permissions ... these users can activate a user
123                  $admin_ary = $auth->acl_get_list(false, 'a_user', false);
124   
125                  $sql = 'SELECT user_id, username, user_email, user_lang, user_jabber, user_notify_type
126                      FROM ' . USERS_TABLE . '
127                      WHERE ' . $db->sql_in_set('user_id', $admin_ary[0]['a_user']);
128                  $result = $db->sql_query($sql);
129   
130                  while ($row = $db->sql_fetchrow($result))
131                  {
132                      $messenger->template('admin_activate', $row['user_lang']);
133                      $messenger->to($row['user_email'], $row['username']);
134                      $messenger->im($row['user_jabber'], $row['username']);
135   
136                      $messenger->assign_vars(array(
137                          'USERNAME'            => htmlspecialchars_decode($user_row['username']),
138                          'U_USER_DETAILS'    => generate_board_url() . "/memberlist.$phpEx?mode=viewprofile&u={$user_row['user_id']}",
139                          'U_ACTIVATE'        => generate_board_url() . "/ucp.$phpEx?mode=activate&u={$user_row['user_id']}&k={$user_row['user_actkey']}")
140                      );
141   
142                      $messenger->send($row['user_notify_type']);
143                  }
144                  $db->sql_freeresult($result);
145              }
146   
147              meta_refresh(3, append_sid("{$phpbb_root_path}index.$phpEx"));
148   
149              $message = ($config['require_activation'] == USER_ACTIVATION_ADMIN) ? $user->lang['ACIVATION_EMAIL_SENT_ADMIN'] : $user->lang['ACTIVATION_EMAIL_SENT'];
150              $message .= '<br /><br />' . sprintf($user->lang['RETURN_INDEX'], '<a href="' . append_sid("{$phpbb_root_path}index.$phpEx") . '">', '</a>');
151              trigger_error($message);
152          }
153   
154          $template->assign_vars(array(
155              'USERNAME'            => $username,
156              'EMAIL'                => $email,
157              'S_PROFILE_ACTION'    => append_sid($phpbb_root_path . 'ucp.' . $phpEx, 'mode=resend_act'))
158          );
159   
160          $this->tpl_name = 'ucp_resend';
161          $this->page_title = 'UCP_RESEND';
162      }
163  }
164   
165  ?>