Verzeichnisstruktur phpBB-2.0.0


Veröffentlicht
03.04.2002

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

memberlist.php

Zuletzt modifiziert: 09.10.2024, 12:50 - Dateigröße: 11.90 KiB


 001  <?php
 002  /***************************************************************************
 003   *                              memberlist.php
 004   *                            -------------------
 005   *   begin                : Friday, May 11, 2001
 006   *   copyright            : (C) 2001 The phpBB Group
 007   *   email                : support@phpbb.com
 008   *
 009   *   $Id$
 010   *
 011   ***************************************************************************/
 012   
 013  /***************************************************************************
 014   *
 015   *   This program is free software; you can redistribute it and/or modify
 016   *   it under the terms of the GNU General Public License as published by
 017   *   the Free Software Foundation; either version 2 of the License, or
 018   *   (at your option) any later version.
 019   *
 020   ***************************************************************************/
 021   
 022  define('IN_PHPBB', true);
 023  $phpbb_root_path = './';
 024  include($phpbb_root_path . 'extension.inc');
 025  include($phpbb_root_path . 'common.'.$phpEx);
 026   
 027  //
 028  // Start session management
 029  //
 030  $userdata = session_pagestart($user_ip, PAGE_VIEWMEMBERS);
 031  init_userprefs($userdata);
 032  //
 033  // End session management
 034  //
 035   
 036  $start = ( isset($HTTP_GET_VARS['start']) ) ? intval($HTTP_GET_VARS['start']) : 0;
 037  $start = ($start < 0) ? 0 : $start;
 038   
 039  if ( isset($HTTP_GET_VARS['mode']) || isset($HTTP_POST_VARS['mode']) )
 040  {
 041      $mode = ( isset($HTTP_POST_VARS['mode']) ) ? htmlspecialchars($HTTP_POST_VARS['mode']) : htmlspecialchars($HTTP_GET_VARS['mode']);
 042  }
 043  else
 044  {
 045      $mode = 'joined';
 046  }
 047   
 048  if(isset($HTTP_POST_VARS['order']))
 049  {
 050      $sort_order = ($HTTP_POST_VARS['order'] == 'ASC') ? 'ASC' : 'DESC';
 051  }
 052  else if(isset($HTTP_GET_VARS['order']))
 053  {
 054      $sort_order = ($HTTP_GET_VARS['order'] == 'ASC') ? 'ASC' : 'DESC';
 055  }
 056  else
 057  {
 058      $sort_order = 'ASC';
 059  }
 060   
 061  //
 062  // Memberlist sorting
 063  //
 064  $mode_types_text = array($lang['Sort_Joined'], $lang['Sort_Username'], $lang['Sort_Location'], $lang['Sort_Posts'], $lang['Sort_Email'],  $lang['Sort_Website'], $lang['Sort_Top_Ten']);
 065  $mode_types = array('joined', 'username', 'location', 'posts', 'email', 'website', 'topten');
 066   
 067  $select_sort_mode = '<select name="mode">';
 068  for($i = 0; $i < count($mode_types_text); $i++)
 069  {
 070      $selected = ( $mode == $mode_types[$i] ) ? ' selected="selected"' : '';
 071      $select_sort_mode .= '<option value="' . $mode_types[$i] . '"' . $selected . '>' . $mode_types_text[$i] . '</option>';
 072  }
 073  $select_sort_mode .= '</select>';
 074   
 075  $select_sort_order = '<select name="order">';
 076  if($sort_order == 'ASC')
 077  {
 078      $select_sort_order .= '<option value="ASC" selected="selected">' . $lang['Sort_Ascending'] . '</option><option value="DESC">' . $lang['Sort_Descending'] . '</option>';
 079  }
 080  else
 081  {
 082      $select_sort_order .= '<option value="ASC">' . $lang['Sort_Ascending'] . '</option><option value="DESC" selected="selected">' . $lang['Sort_Descending'] . '</option>';
 083  }
 084  $select_sort_order .= '</select>';
 085   
 086  //
 087  // Generate page
 088  //
 089  $page_title = $lang['Memberlist'];
 090  include($phpbb_root_path . 'includes/page_header.'.$phpEx);
 091   
 092  $template->set_filenames(array(
 093      'body' => 'memberlist_body.tpl')
 094  );
 095  make_jumpbox('viewforum.'.$phpEx);
 096   
 097  $template->assign_vars(array(
 098      'L_SELECT_SORT_METHOD' => $lang['Select_sort_method'],
 099      'L_EMAIL' => $lang['Email'],
 100      'L_WEBSITE' => $lang['Website'],
 101      'L_FROM' => $lang['Location'],
 102      'L_ORDER' => $lang['Order'],
 103      'L_SORT' => $lang['Sort'],
 104      'L_SUBMIT' => $lang['Sort'],
 105      'L_AIM' => $lang['AIM'],
 106      'L_YIM' => $lang['YIM'],
 107      'L_MSNM' => $lang['MSNM'],
 108      'L_ICQ' => $lang['ICQ'], 
 109      'L_JOINED' => $lang['Joined'], 
 110      'L_POSTS' => $lang['Posts'], 
 111      'L_PM' => $lang['Private_Message'], 
 112   
 113      'S_MODE_SELECT' => $select_sort_mode,
 114      'S_ORDER_SELECT' => $select_sort_order,
 115      'S_MODE_ACTION' => append_sid("memberlist.$phpEx"))
 116  );
 117   
 118  switch( $mode )
 119  {
 120      case 'joined':
 121          $order_by = "user_regdate $sort_order LIMIT $start, " . $board_config['topics_per_page'];
 122          break;
 123      case 'username':
 124          $order_by = "username $sort_order LIMIT $start, " . $board_config['topics_per_page'];
 125          break;
 126      case 'location':
 127          $order_by = "user_from $sort_order LIMIT $start, " . $board_config['topics_per_page'];
 128          break;
 129      case 'posts':
 130          $order_by = "user_posts $sort_order LIMIT $start, " . $board_config['topics_per_page'];
 131          break;
 132      case 'email':
 133          $order_by = "user_email $sort_order LIMIT $start, " . $board_config['topics_per_page'];
 134          break;
 135      case 'website':
 136          $order_by = "user_website $sort_order LIMIT $start, " . $board_config['topics_per_page'];
 137          break;
 138      case 'topten':
 139          $order_by = "user_posts $sort_order LIMIT 10";
 140          break;
 141      default:
 142          $order_by = "user_regdate $sort_order LIMIT $start, " . $board_config['topics_per_page'];
 143          break;
 144  }
 145   
 146  $sql = "SELECT username, user_id, user_viewemail, user_posts, user_regdate, user_from, user_website, user_email, user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar 
 147      FROM " . USERS_TABLE . "
 148      WHERE user_id <> " . ANONYMOUS . "
 149      ORDER BY $order_by";
 150  if( !($result = $db->sql_query($sql)) )
 151  {
 152      message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
 153  }
 154   
 155  if ( $row = $db->sql_fetchrow($result) )
 156  {
 157      $i = 0;
 158      do
 159      {
 160          $username = $row['username'];
 161          $user_id = $row['user_id'];
 162   
 163          $from = ( !empty($row['user_from']) ) ? $row['user_from'] : '&nbsp;';
 164          $joined = create_date($lang['DATE_FORMAT'], $row['user_regdate'], $board_config['board_timezone']);
 165          $posts = ( $row['user_posts'] ) ? $row['user_posts'] : 0;
 166   
 167          $poster_avatar = '';
 168          if ( $row['user_avatar_type'] && $user_id != ANONYMOUS && $row['user_allowavatar'] )
 169          {
 170              switch( $row['user_avatar_type'] )
 171              {
 172                  case USER_AVATAR_UPLOAD:
 173                      $poster_avatar = ( $board_config['allow_avatar_upload'] ) ? '<img src="' . $board_config['avatar_path'] . '/' . $row['user_avatar'] . '" alt="" border="0" />' : '';
 174                      break;
 175                  case USER_AVATAR_REMOTE:
 176                      $poster_avatar = ( $board_config['allow_avatar_remote'] ) ? '<img src="' . $row['user_avatar'] . '" alt="" border="0" />' : '';
 177                      break;
 178                  case USER_AVATAR_GALLERY:
 179                      $poster_avatar = ( $board_config['allow_avatar_local'] ) ? '<img src="' . $board_config['avatar_gallery_path'] . '/' . $row['user_avatar'] . '" alt="" border="0" />' : '';
 180                      break;
 181              }
 182          }
 183   
 184          if ( !empty($row['user_viewemail']) || $userdata['user_level'] == ADMIN )
 185          {
 186              $email_uri = ( $board_config['board_email_form'] ) ? append_sid("profile.$phpEx?mode=email&amp;" . POST_USERS_URL .'=' . $user_id) : 'mailto:' . $row['user_email'];
 187   
 188              $email_img = '<a href="' . $email_uri . '"><img src="' . $images['icon_email'] . '" alt="' . $lang['Send_email'] . '" title="' . $lang['Send_email'] . '" border="0" /></a>';
 189              $email = '<a href="' . $email_uri . '">' . $lang['Send_email'] . '</a>';
 190          }
 191          else
 192          {
 193              $email_img = '&nbsp;';
 194              $email = '&nbsp;';
 195          }
 196   
 197          $temp_url = append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=$user_id");
 198          $profile_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_profile'] . '" alt="' . $lang['Read_profile'] . '" title="' . $lang['Read_profile'] . '" border="0" /></a>';
 199          $profile = '<a href="' . $temp_url . '">' . $lang['Read_profile'] . '</a>';
 200   
 201          $temp_url = append_sid("privmsg.$phpEx?mode=post&amp;" . POST_USERS_URL . "=$user_id");
 202          $pm_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_pm'] . '" alt="' . $lang['Send_private_message'] . '" title="' . $lang['Send_private_message'] . '" border="0" /></a>';
 203          $pm = '<a href="' . $temp_url . '">' . $lang['Send_private_message'] . '</a>';
 204   
 205          $www_img = ( $row['user_website'] ) ? '<a href="' . $row['user_website'] . '" target="_userwww"><img src="' . $images['icon_www'] . '" alt="' . $lang['Visit_website'] . '" title="' . $lang['Visit_website'] . '" border="0" /></a>' : '';
 206          $www = ( $row['user_website'] ) ? '<a href="' . $row['user_website'] . '" target="_userwww">' . $lang['Visit_website'] . '</a>' : '';
 207   
 208          if ( !empty($row['user_icq']) )
 209          {
 210              $icq_status_img = '<a href="http://wwp.icq.com/' . $row['user_icq'] . '#pager"><img src="http://web.icq.com/whitepages/online?icq=' . $row['user_icq'] . '&img=5" width="18" height="18" border="0" /></a>';
 211              $icq_img = '<a href="http://wwp.icq.com/scripts/search.dll?to=' . $row['user_icq'] . '"><img src="' . $images['icon_icq'] . '" alt="' . $lang['ICQ'] . '" title="' . $lang['ICQ'] . '" border="0" /></a>';
 212              $icq =  '<a href="http://wwp.icq.com/scripts/search.dll?to=' . $row['user_icq'] . '">' . $lang['ICQ'] . '</a>';
 213          }
 214          else
 215          {
 216              $icq_status_img = '';
 217              $icq_img = '';
 218              $icq = '';
 219          }
 220   
 221          $aim_img = ( $row['user_aim'] ) ? '<a href="aim:goim?screenname=' . $row['user_aim'] . '&amp;message=Hello+Are+you+there?"><img src="' . $images['icon_aim'] . '" alt="' . $lang['AIM'] . '" title="' . $lang['AIM'] . '" border="0" /></a>' : '';
 222          $aim = ( $row['user_aim'] ) ? '<a href="aim:goim?screenname=' . $row['user_aim'] . '&amp;message=Hello+Are+you+there?">' . $lang['AIM'] . '</a>' : '';
 223   
 224          $temp_url = append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=$user_id");
 225          $msn_img = ( $row['user_msnm'] ) ? '<a href="' . $temp_url . '"><img src="' . $images['icon_msnm'] . '" alt="' . $lang['MSNM'] . '" title="' . $lang['MSNM'] . '" border="0" /></a>' : '';
 226          $msn = ( $row['user_msnm'] ) ? '<a href="' . $temp_url . '">' . $lang['MSNM'] . '</a>' : '';
 227   
 228          $yim_img = ( $row['user_yim'] ) ? '<a href="http://edit.yahoo.com/config/send_webmesg?.target=' . $row['user_yim'] . '&amp;.src=pg"><img src="' . $images['icon_yim'] . '" alt="' . $lang['YIM'] . '" title="' . $lang['YIM'] . '" border="0" /></a>' : '';
 229          $yim = ( $row['user_yim'] ) ? '<a href="http://edit.yahoo.com/config/send_webmesg?.target=' . $row['user_yim'] . '&amp;.src=pg">' . $lang['YIM'] . '</a>' : '';
 230   
 231          $temp_url = append_sid("search.$phpEx?search_author=" . urlencode($username) . "&amp;showresults=posts");
 232          $search_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_search'] . '" alt="' . sprintf($lang['Search_user_posts'], $username) . '" title="' . sprintf($lang['Search_user_posts'], $username) . '" border="0" /></a>';
 233          $search = '<a href="' . $temp_url . '">' . sprintf($lang['Search_user_posts'], $username) . '</a>';
 234   
 235          $row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2'];
 236          $row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];
 237   
 238          $template->assign_block_vars('memberrow', array(
 239              'ROW_NUMBER' => $i + ( $start + 1 ),
 240              'ROW_COLOR' => '#' . $row_color,
 241              'ROW_CLASS' => $row_class,
 242              'USERNAME' => $username,
 243              'FROM' => $from,
 244              'JOINED' => $joined,
 245              'POSTS' => $posts,
 246              'AVATAR_IMG' => $poster_avatar,
 247              'PROFILE_IMG' => $profile_img, 
 248              'PROFILE' => $profile, 
 249              'SEARCH_IMG' => $search_img,
 250              'SEARCH' => $search,
 251              'PM_IMG' => $pm_img,
 252              'PM' => $pm,
 253              'EMAIL_IMG' => $email_img,
 254              'EMAIL' => $email,
 255              'WWW_IMG' => $www_img,
 256              'WWW' => $www,
 257              'ICQ_STATUS_IMG' => $icq_status_img,
 258              'ICQ_IMG' => $icq_img, 
 259              'ICQ' => $icq, 
 260              'AIM_IMG' => $aim_img,
 261              'AIM' => $aim,
 262              'MSN_IMG' => $msn_img,
 263              'MSN' => $msn,
 264              'YIM_IMG' => $yim_img,
 265              'YIM' => $yim,
 266              
 267              'U_VIEWPROFILE' => append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=$user_id"))
 268          );
 269   
 270          $i++;
 271      }
 272      while ( $row = $db->sql_fetchrow($result) );
 273      $db->sql_freeresult($result);
 274  }
 275   
 276  if ( $mode != 'topten' || $board_config['topics_per_page'] < 10 )
 277  {
 278      $sql = "SELECT count(*) AS total
 279          FROM " . USERS_TABLE . "
 280          WHERE user_id <> " . ANONYMOUS;
 281   
 282      if ( !($result = $db->sql_query($sql)) )
 283      {
 284          message_die(GENERAL_ERROR, 'Error getting total users', '', __LINE__, __FILE__, $sql);
 285      }
 286   
 287      if ( $total = $db->sql_fetchrow($result) )
 288      {
 289          $total_members = $total['total'];
 290   
 291          $pagination = generate_pagination("memberlist.$phpEx?mode=$mode&amp;order=$sort_order", $total_members, $board_config['topics_per_page'], $start). '&nbsp;';
 292      }
 293      $db->sql_freeresult($result);
 294  }
 295  else
 296  {
 297      $pagination = '&nbsp;';
 298      $total_members = 10;
 299  }
 300   
 301  $template->assign_vars(array(
 302      'PAGINATION' => $pagination,
 303      'PAGE_NUMBER' => sprintf($lang['Page_of'], ( floor( $start / $board_config['topics_per_page'] ) + 1 ), ceil( $total_members / $board_config['topics_per_page'] )), 
 304   
 305      'L_GOTO_PAGE' => $lang['Goto_page'])
 306  );
 307   
 308  $template->pparse('body');
 309   
 310  include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
 311   
 312  ?>