Big problem : no index any more

This mod will make it posible to specify permissions to all "special pages, like MEMBERLIST, PROFILE VIEW and so on.
The permissions support USERGROUP, making this tool very powerfull

Moderator: Moderators

Forum rules
The content in this forum is dated Dec. 21 2005 and can be used as Archive only. This Forum is LOCKED and READ ONLY !

Postby Chavez on Thu 12. Feb, 2004 11:50

Ok i will try too help you.

In index.php you see (if loged Out) Profil, Login and Message. I think in ACP Permissions of index.php you must set to ALL.

Than every user see all.

''Other way remove the changings in index and memberlist.php''
If you want save this two fils, rollback the changes in it.

So long

Chavez

PS: Engisch is not my strength :D
Last edited by Chavez on Fri 13. Feb, 2004 22:03, edited 1 time in total.
Chavez
Poster
Poster
 
Posts: 7
Joined: Fri 06. Feb, 2004 20:12

Postby Bajazet on Fri 13. Feb, 2004 09:02

This is my index.php

Code: Select all
<?php
/***************************************************************************
*                                index.php
*                            -------------------
*   begin                : Saturday, Feb 13, 2001
*   copyright            : (C) 2001 The phpBB Group
*   email                : support@phpbb.com
*
*   $Id: index.php,v 1.99.2.1 2002/12/19 17:17:40 psotfx Exp $
*
*
***************************************************************************/

/***************************************************************************
*
*   This program is free software; you can redistribute it and/or modify
*   it under the terms of the GNU General Public License as published by
*   the Free Software Foundation; either version 2 of the License, or
*   (at your option) any later version.
*
***************************************************************************/

define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
// Start add - Extra permission PM MOD
//
// Start auth check
//
$is_auth = array();
$is_auth = auth(AUTH_READ, PAGE_INDEX_PERMISSION, $userdata);
if( !$is_auth['auth_read'] )
{
   if ( !$userdata['session_logged_in'] )
   {
      $header_location = ( @preg_match("/Microsoft|WebSTAR|Xitami/", getenv("SERVER_SOFTWARE")) ) ? "Refresh: 0; URL=" : "Location: ";
      header($header_location . append_sid("login.$phpEx?redirect=index.$phpEx", true));
      exit;
   }
   $message = sprintf ($lang['Sorry_no_auth'],$is_auth['auth_read_type']);
   message_die(GENERAL_MESSAGE, $message);
}
//
// End auth check
//
// End add - Extra permission PM MOD
$viewcat = ( !empty($HTTP_GET_VARS[POST_CAT_URL]) ) ? $HTTP_GET_VARS[POST_CAT_URL] : -1;

if( isset($HTTP_GET_VARS['mark']) || isset($HTTP_POST_VARS['mark']) )
{
   $mark_read = ( isset($HTTP_POST_VARS['mark']) ) ? $HTTP_POST_VARS['mark'] : $HTTP_GET_VARS['mark'];
}
else
{
   $mark_read = '';
}

//
// Handle marking posts
//
if( $mark_read == 'forums' )
{
   if( $userdata['session_logged_in'] )
   {
      setcookie($board_config['cookie_name'] . '_f_all', time(), 0, $board_config['cookie_path'], $board_config['cookie_domain'], $board_config['cookie_secure']);
   }

   $template->assign_vars(array(
      "META" => '<meta http-equiv="refresh" content="3;url='  .append_sid("index.$phpEx") . '">')
   );

   $message = $lang['Forums_marked_read'] . '<br /><br />' . sprintf($lang['Click_return_index'], '<a href="' . append_sid("index.$phpEx") . '">', '</a> ');

   message_die(GENERAL_MESSAGE, $message);
}
//
// End handle marking posts
//

$tracking_topics = ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_t']) ) ? unserialize($HTTP_COOKIE_VARS[$board_config['cookie_name'] . "_t"]) : array();
$tracking_forums = ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f']) ) ? unserialize($HTTP_COOKIE_VARS[$board_config['cookie_name'] . "_f"]) : array();

//
// If you don't use these stats on your index you may want to consider
// removing them
//
$total_posts = get_db_stat('postcount');
$total_users = get_db_stat('usercount');
$newest_userdata = get_db_stat('newestuser');
$newest_user = $newest_userdata['username'];
$newest_uid = $newest_userdata['user_id'];

if( $total_posts == 0 )
{
   $l_total_post_s = $lang['Posted_articles_zero_total'];
}
else if( $total_posts == 1 )
{
   $l_total_post_s = $lang['Posted_article_total'];
}
else
{
   $l_total_post_s = $lang['Posted_articles_total'];
}

if( $total_users == 0 )
{
   $l_total_user_s = $lang['Registered_users_zero_total'];
}
else if( $total_users == 1 )
{
   $l_total_user_s = $lang['Registered_user_total'];
}
else
{
   $l_total_user_s = $lang['Registered_users_total'];
}


//
// Start page proper
//
$sql = "SELECT c.cat_id, c.cat_title, c.cat_order
   FROM " . CATEGORIES_TABLE . " c
   ORDER BY c.cat_order";
if( !($result = $db->sql_query($sql)) )
{
   message_die(GENERAL_ERROR, 'Could not query categories list', '', __LINE__, __FILE__, $sql);
}

while( $category_rows[] = $db->sql_fetchrow($result) );

if( ( $total_categories = count($category_rows) ) )
{
   //
   // Define appropriate SQL
   //
   switch(SQL_LAYER)
   {
      case 'postgresql':
         $sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id
            FROM " . FORUMS_TABLE . " f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u
            WHERE p.post_id = f.forum_last_post_id
               AND u.user_id = p.poster_id 
               UNION (
                  SELECT f.*, NULL, NULL, NULL, NULL
                  FROM " . FORUMS_TABLE . " f
                  WHERE NOT EXISTS (
                     SELECT p.post_time
                     FROM " . POSTS_TABLE . " p
                     WHERE p.post_id = f.forum_last_post_id 
                  )
               )
               ORDER BY cat_id, forum_order";
         break;

      case 'oracle':
         $sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id
            FROM " . FORUMS_TABLE . " f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u
            WHERE p.post_id = f.forum_last_post_id(+)
               AND u.user_id = p.poster_id(+)
            ORDER BY f.cat_id, f.forum_order";
         break;

      default:
         $sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id
            FROM (( " . FORUMS_TABLE . " f
            LEFT JOIN " . POSTS_TABLE . " p ON p.post_id = f.forum_last_post_id )
            LEFT JOIN " . USERS_TABLE . " u ON u.user_id = p.poster_id )
            ORDER BY f.cat_id, f.forum_order";
         break;
   }
   if ( !($result = $db->sql_query($sql)) )
   {
      message_die(GENERAL_ERROR, 'Could not query forums information', '', __LINE__, __FILE__, $sql);
   }

   $forum_data = array();
   while( $row = $db->sql_fetchrow($result) )
   {
      $forum_data[] = $row;
   }

   if ( !($total_forums = count($forum_data)) )
   {
      message_die(GENERAL_MESSAGE, $lang['No_forums']);
   }

   //
   // Obtain a list of topic ids which contain
   // posts made since user last visited
   //
   if ( $userdata['session_logged_in'] )
   {
      $sql = "SELECT t.forum_id, t.topic_id, p.post_time
         FROM " . TOPICS_TABLE . " t, " . POSTS_TABLE . " p
         WHERE p.post_id = t.topic_last_post_id
            AND p.post_time > " . $userdata['user_lastvisit'] . "
            AND t.topic_moved_id = 0";
      if ( !($result = $db->sql_query($sql)) )
      {
         message_die(GENERAL_ERROR, 'Could not query new topic information', '', __LINE__, __FILE__, $sql);
      }

      $new_topic_data = array();
      while( $topic_data = $db->sql_fetchrow($result) )
      {
         $new_topic_data[$topic_data['forum_id']][$topic_data['topic_id']] = $topic_data['post_time'];
      }
   }

   //
   // Obtain list of moderators of each forum
   // First users, then groups ... broken into two queries
   //
   $sql = "SELECT aa.forum_id, u.user_id, u.username
      FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g, " . USERS_TABLE . " u
      WHERE aa.auth_mod = " . TRUE . "
         AND g.group_single_user = 1
         AND ug.group_id = aa.group_id
         AND g.group_id = aa.group_id
         AND u.user_id = ug.user_id
      GROUP BY u.user_id, u.username, aa.forum_id
      ORDER BY aa.forum_id, u.user_id";
   if ( !($result = $db->sql_query($sql)) )
   {
      message_die(GENERAL_ERROR, 'Could not query forum moderator information', '', __LINE__, __FILE__, $sql);
   }

   $forum_moderators = array();
   while( $row = $db->sql_fetchrow($result) )
   {
      $forum_moderators[$row['forum_id']][] = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '">' . $row['username'] . '</a>';
   }

   $sql = "SELECT aa.forum_id, g.group_id, g.group_name
      FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g
      WHERE aa.auth_mod = " . TRUE . "
         AND g.group_single_user = 0
         AND g.group_type <> " . GROUP_HIDDEN . "
         AND ug.group_id = aa.group_id
         AND g.group_id = aa.group_id
      GROUP BY g.group_id, g.group_name, aa.forum_id
      ORDER BY aa.forum_id, g.group_id";
   if ( !($result = $db->sql_query($sql)) )
   {
      message_die(GENERAL_ERROR, 'Could not query forum moderator information', '', __LINE__, __FILE__, $sql);
   }

   while( $row = $db->sql_fetchrow($result) )
   {
      $forum_moderators[$row['forum_id']][] = '<a href="' . append_sid("groupcp.$phpEx?" . POST_GROUPS_URL . "=" . $row['group_id']) . '">' . $row['group_name'] . '</a>';
   }

   //
   // Find which forums are visible for this user
   //
   $is_auth_ary = array();
   $is_auth_ary = auth(AUTH_VIEW, AUTH_LIST_ALL, $userdata, $forum_data);

   //
   // Start output of page
   //
   define('SHOW_ONLINE', true);
   $page_title = $lang['Index'];
   include($phpbb_root_path . 'includes/page_header.'.$phpEx);

   $template->set_filenames(array(
      'body' => 'index_body.tpl')
   );

   $template->assign_vars(array(
      'TOTAL_POSTS' => sprintf($l_total_post_s, $total_posts),
      'TOTAL_USERS' => sprintf($l_total_user_s, $total_users),
      'NEWEST_USER' => sprintf($lang['Newest_user'], '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$newest_uid") . '">', $newest_user, '</a>'),

      'FORUM_IMG' => $images['forum'],
      'FORUM_NEW_IMG' => $images['forum_new'],
      'FORUM_LOCKED_IMG' => $images['forum_locked'],
// Start add - Fully integrated shoutbox MOD
'U_SHOUTBOX' => append_sid("shoutbox.$phpEx"),
'L_SHOUTBOX' => $lang['Shoutbox'],
'U_SHOUTBOX_MAX' => append_sid("shoutbox_max.$phpEx"),
// End add - Fully integrated shoutbox MOD
      'L_FORUM' => $lang['Forum'],
      'L_TOPICS' => $lang['Topics'],
      'L_REPLIES' => $lang['Replies'],
      'L_VIEWS' => $lang['Views'],
      'L_POSTS' => $lang['Posts'],
      'L_LASTPOST' => $lang['Last_Post'],
      'L_NO_NEW_POSTS' => $lang['No_new_posts'],
      'L_NEW_POSTS' => $lang['New_posts'],
      'L_NO_NEW_POSTS_LOCKED' => $lang['No_new_posts_locked'],
      'L_NEW_POSTS_LOCKED' => $lang['New_posts_locked'],
      'L_ONLINE_EXPLAIN' => $lang['Online_explain'],

      'L_MODERATOR' => $lang['Moderators'],
      'L_FORUM_LOCKED' => $lang['Forum_is_locked'],
      'L_MARK_FORUMS_READ' => $lang['Mark_all_forums'],

      'U_MARK_READ' => append_sid("index.$phpEx?mark=forums"))
   );

   //
   // Okay, let's build the index
   //
   for($i = 0; $i < $total_categories; $i++)
   {
      $cat_id = $category_rows[$i]['cat_id'];

      //
      // Should we display this category/forum set?
      //
      $display_forums = false;
      for($j = 0; $j < $total_forums; $j++)
      {
         if ( $is_auth_ary[$forum_data[$j]['forum_id']]['auth_view'] && $forum_data[$j]['cat_id'] == $cat_id )
         {
            $display_forums = true;
         }
      }

      //
      // Yes, we should, so first dump out the category
      // title, then, if appropriate the forum list
      //
      if ( $display_forums )
      {
         $template->assign_block_vars('catrow', array(
            'CAT_ID' => $cat_id,
            'CAT_DESC' => $category_rows[$i]['cat_title'],
            'U_VIEWCAT' => append_sid("index.$phpEx?" . POST_CAT_URL . "=$cat_id"))
         );

         if ( $viewcat == $cat_id || $viewcat == -1 )
         {
            for($j = 0; $j < $total_forums; $j++)
            {
               if ( $forum_data[$j]['cat_id'] == $cat_id )
               {
                  $forum_id = $forum_data[$j]['forum_id'];

                  if ( $is_auth_ary[$forum_id]['auth_view'] )
                  {
                     if ( $forum_data[$j]['forum_status'] == FORUM_LOCKED )
                     {
                        $folder_image = $images['forum_locked'];
                        $folder_alt = $lang['Forum_locked'];
                     }
                     else
                     {
                        $unread_topics = false;
                        if ( $userdata['session_logged_in'] )
                        {
                           if ( !empty($new_topic_data[$forum_id]) )
                           {
                              $forum_last_post_time = 0;

                              while( list($check_topic_id, $check_post_time) = @each($new_topic_data[$forum_id]) )
                              {
                                 if ( empty($tracking_topics[$check_topic_id]) )
                                 {
                                    $unread_topics = true;
                                    $forum_last_post_time = max($check_post_time, $forum_last_post_time);

                                 }
                                 else
                                 {
                                    if ( $tracking_topics[$check_topic_id] < $check_post_time )
                                    {
                                       $unread_topics = true;
                                       $forum_last_post_time = max($check_post_time, $forum_last_post_time);
                                    }
                                 }
                              }

                              if ( !empty($tracking_forums[$forum_id]) )
                              {
                                 if ( $tracking_forums[$forum_id] > $forum_last_post_time )
                                 {
                                    $unread_topics = false;
                                 }
                              }

                              if ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all']) )
                              {
                                 if ( $HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all'] > $forum_last_post_time )
                                 {
                                    $unread_topics = false;
                                 }
                              }

                           }
                        }

                        $folder_image = ( $unread_topics ) ? $images['forum_new'] : $images['forum'];
                        $folder_alt = ( $unread_topics ) ? $lang['New_posts'] : $lang['No_new_posts'];
                     }

                     $posts = $forum_data[$j]['forum_posts'];
                     $topics = $forum_data[$j]['forum_topics'];

                     if ( $forum_data[$j]['forum_last_post_id'] )
                     {
                        $last_post_time = create_date($board_config['default_dateformat'], $forum_data[$j]['post_time'], $board_config['board_timezone']);

                        $last_post = $last_post_time . '<br />';

                        $last_post .= ( $forum_data[$j]['user_id'] == ANONYMOUS ) ? ( ($forum_data[$j]['post_username'] != '' ) ? $forum_data[$j]['post_username'] . ' ' : $lang['Guest'] . ' ' ) : '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . '='  . $forum_data[$j]['user_id']) . '">' . $forum_data[$j]['username'] . '</a> ';
                        
                        $last_post .= '<a href="' . append_sid("viewtopic.$phpEx?"  . POST_POST_URL . '=' . $forum_data[$j]['forum_last_post_id']) . '#' . $forum_data[$j]['forum_last_post_id'] . '"><img src="' . $images['icon_latest_reply'] . '" border="0" alt="' . $lang['View_latest_post'] . '" title="' . $lang['View_latest_post'] . '" /></a>';
                     }
                     else
                     {
                        $last_post = $lang['No_Posts'];
                     }

                     if ( count($forum_moderators[$forum_id]) > 0 )
                     {
                        $l_moderators = ( count($forum_moderators[$forum_id]) == 1 ) ? $lang['Moderator'] : $lang['Moderators'];
                        $moderator_list = implode(', ', $forum_moderators[$forum_id]);
                     }
                     else
                     {
                        $l_moderators = '&nbsp;';
                        $moderator_list = '&nbsp;';
                     }

                     $row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2'];
                     $row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];

                     $template->assign_block_vars('catrow.forumrow',   array(
                        'ROW_COLOR' => '#' . $row_color,
                        'ROW_CLASS' => $row_class,
                        'FORUM_FOLDER_IMG' => $folder_image,
                        'FORUM_NAME' => $forum_data[$j]['forum_name'],
                        'FORUM_DESC' => $forum_data[$j]['forum_desc'],
                        'POSTS' => $forum_data[$j]['forum_posts'],
                        'TOPICS' => $forum_data[$j]['forum_topics'],
                        'LAST_POST' => $last_post,
                        'MODERATORS' => $moderator_list,

                        'L_MODERATOR' => $l_moderators,
                        'L_FORUM_FOLDER_ALT' => $folder_alt,

                        'U_VIEWFORUM' => append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id"))
                     );
                  }
               }
            }
         }
      }
   } // for ... categories

}// if ... total_categories
else
{
   message_die(GENERAL_MESSAGE, $lang['No_forums']);
}

//
// Generate the page
//
$template->pparse('body');

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);

?>




And this is my memberlist.php

Code: Select all
<?php
/***************************************************************************
*                              memberlist.php
*                            -------------------
*   begin                : Friday, May 11, 2001
*   copyright            : (C) 2001 The phpBB Group
*   email                : support@phpbb.com
*
*   $Id: memberlist.php,v 1.36.2.8 2003/06/09 13:06:19 psotfx Exp $
*
***************************************************************************/

/***************************************************************************
*
*   This program is free software; you can redistribute it and/or modify
*   it under the terms of the GNU General Public License as published by
*   the Free Software Foundation; either version 2 of the License, or
*   (at your option) any later version.
*
***************************************************************************/

define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_VIEWMEMBERS);
init_userprefs($userdata);
//
// End session management
//
// Start add - Extra permission PM MOD
//
// Start auth check
//
$is_auth = array();
$is_auth = auth(AUTH_ALL, PAGE_VIEWMEMBERS, $userdata);

if( !$is_auth['auth_read'] )
{
   if ( !$userdata['session_logged_in'] )
   {
      $header_location = ( @preg_match("/Microsoft|WebSTAR|Xitami/", getenv("SERVER_SOFTWARE")) ) ? "Refresh: 0; URL=" : "Location: ";
      header($header_location . append_sid("login.$phpEx?redirect=memberlist.$phpEx", true));
      exit;
   }
   $message = ( !$is_auth['auth_view'] ) ? $lang['Not_Authorised'] : sprintf ($lang['Sorry_no_auth'],$is_auth['auth_read_type']);
   message_die(GENERAL_MESSAGE, $message);
}
//
// End auth check
//
// End add - Extra permission PM MOD
$start = ( isset($HTTP_GET_VARS['start']) ) ? intval($HTTP_GET_VARS['start']) : 0;

if ( isset($HTTP_GET_VARS['mode']) || isset($HTTP_POST_VARS['mode']) )
{
   $mode = ( isset($HTTP_POST_VARS['mode']) ) ? htmlspecialchars($HTTP_POST_VARS['mode']) : htmlspecialchars($HTTP_GET_VARS['mode']);
}
else
{
   $mode = 'joined';
}

if(isset($HTTP_POST_VARS['order']))
{
   $sort_order = ($HTTP_POST_VARS['order'] == 'ASC') ? 'ASC' : 'DESC';
}
else if(isset($HTTP_GET_VARS['order']))
{
   $sort_order = ($HTTP_GET_VARS['order'] == 'ASC') ? 'ASC' : 'DESC';
}
else
{
   $sort_order = 'ASC';
}

//
// Memberlist sorting
//
$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']);
$mode_types = array('joindate', 'username', 'location', 'posts', 'email', 'website', 'topten');

$select_sort_mode = '<select name="mode">';
for($i = 0; $i < count($mode_types_text); $i++)
{
   $selected = ( $mode == $mode_types[$i] ) ? ' selected="selected"' : '';
   $select_sort_mode .= '<option value="' . $mode_types[$i] . '"' . $selected . '>' . $mode_types_text[$i] . '</option>';
}
$select_sort_mode .= '</select>';

$select_sort_order = '<select name="order">';
if($sort_order == 'ASC')
{
   $select_sort_order .= '<option value="ASC" selected="selected">' . $lang['Sort_Ascending'] . '</option><option value="DESC">' . $lang['Sort_Descending'] . '</option>';
}
else
{
   $select_sort_order .= '<option value="ASC">' . $lang['Sort_Ascending'] . '</option><option value="DESC" selected="selected">' . $lang['Sort_Descending'] . '</option>';
}
$select_sort_order .= '</select>';

//
// Generate page
//
$page_title = $lang['Memberlist'];
include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
   'body' => 'memberlist_body.tpl')
);
make_jumpbox('viewforum.'.$phpEx);

$template->assign_vars(array(
   'L_SELECT_SORT_METHOD' => $lang['Select_sort_method'],
   'L_EMAIL' => $lang['Email'],
   'L_WEBSITE' => $lang['Website'],
   'L_FROM' => $lang['Location'],
   'L_ORDER' => $lang['Order'],
   'L_SORT' => $lang['Sort'],
   'L_SUBMIT' => $lang['Sort'],
   'L_AIM' => $lang['AIM'],
   'L_YIM' => $lang['YIM'],
   'L_MSNM' => $lang['MSNM'],
   'L_ICQ' => $lang['ICQ'],
   'L_JOINED' => $lang['Joined'],
   'L_POSTS' => $lang['Posts'],
   'L_PM' => $lang['Private_Message'],

   'S_MODE_SELECT' => $select_sort_mode,
   'S_ORDER_SELECT' => $select_sort_order,
   'S_MODE_ACTION' => append_sid("memberlist.$phpEx"))
);

switch( $mode )
{
   case 'joined':
      $order_by = "user_regdate $sort_order LIMIT $start, " . $board_config['topics_per_page'];
      break;
   case 'username':
      $order_by = "username $sort_order LIMIT $start, " . $board_config['topics_per_page'];
      break;
   case 'location':
      $order_by = "user_from $sort_order LIMIT $start, " . $board_config['topics_per_page'];
      break;
   case 'posts':
      $order_by = "user_posts $sort_order LIMIT $start, " . $board_config['topics_per_page'];
      break;
   case 'email':
      $order_by = "user_email $sort_order LIMIT $start, " . $board_config['topics_per_page'];
      break;
   case 'website':
      $order_by = "user_website $sort_order LIMIT $start, " . $board_config['topics_per_page'];
      break;
   case 'topten':
      $order_by = "user_posts $sort_order LIMIT 10";
      break;
   default:
      $order_by = "user_regdate $sort_order LIMIT $start, " . $board_config['topics_per_page'];
      break;
}

$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
   FROM " . USERS_TABLE . "
   WHERE user_id <> " . ANONYMOUS . "
   ORDER BY $order_by";
if( !($result = $db->sql_query($sql)) )
{
   message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
}

if ( $row = $db->sql_fetchrow($result) )
{
   $i = 0;
   do
   {
      $username = $row['username'];
      $user_id = $row['user_id'];

      $from = ( !empty($row['user_from']) ) ? $row['user_from'] : '&nbsp;';
      $joined = create_date($lang['DATE_FORMAT'], $row['user_regdate'], $board_config['board_timezone']);
      $posts = ( $row['user_posts'] ) ? $row['user_posts'] : 0;

      $poster_avatar = '';
      if ( $row['user_avatar_type'] && $user_id != ANONYMOUS && $row['user_allowavatar'] )
      {
         switch( $row['user_avatar_type'] )
         {
            case USER_AVATAR_UPLOAD:
               $poster_avatar = ( $board_config['allow_avatar_upload'] ) ? '<img src="' . $board_config['avatar_path'] . '/' . $row['user_avatar'] . '" alt="" border="0" />' : '';
               break;
            case USER_AVATAR_REMOTE:
               $poster_avatar = ( $board_config['allow_avatar_remote'] ) ? '<img src="' . $row['user_avatar'] . '" alt="" border="0" />' : '';
               break;
            case USER_AVATAR_GALLERY:
               $poster_avatar = ( $board_config['allow_avatar_local'] ) ? '<img src="' . $board_config['avatar_gallery_path'] . '/' . $row['user_avatar'] . '" alt="" border="0" />' : '';
               break;
         }
      }

      if ( !empty($row['user_viewemail']) || $userdata['user_level'] == ADMIN )
      {
         $email_uri = ( $board_config['board_email_form'] ) ? append_sid("profile.$phpEx?mode=email&amp;" . POST_USERS_URL .'=' . $user_id) : 'mailto:' . $row['user_email'];

         $email_img = '<a href="' . $email_uri . '"><img src="' . $images['icon_email'] . '" alt="' . $lang['Send_email'] . '" title="' . $lang['Send_email'] . '" border="0" /></a>';
         $email = '<a href="' . $email_uri . '">' . $lang['Send_email'] . '</a>';
      }
      else
      {
         $email_img = '&nbsp;';
         $email = '&nbsp;';
      }

      $temp_url = append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=$user_id");
      $profile_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_profile'] . '" alt="' . $lang['Read_profile'] . '" title="' . $lang['Read_profile'] . '" border="0" /></a>';
      $profile = '<a href="' . $temp_url . '">' . $lang['Read_profile'] . '</a>';

      $temp_url = append_sid("privmsg.$phpEx?mode=post&amp;" . POST_USERS_URL . "=$user_id");
      $pm_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_pm'] . '" alt="' . $lang['Send_private_message'] . '" title="' . $lang['Send_private_message'] . '" border="0" /></a>';
      $pm = '<a href="' . $temp_url . '">' . $lang['Send_private_message'] . '</a>';

      $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>' : '';
      $www = ( $row['user_website'] ) ? '<a href="' . $row['user_website'] . '" target="_userwww">' . $lang['Visit_website'] . '</a>' : '';

      if ( !empty($row['user_icq']) )
      {
         $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>';
         $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>';
         $icq =  '<a href="http://wwp.icq.com/scripts/search.dll?to=' . $row['user_icq'] . '">' . $lang['ICQ'] . '</a>';
      }
      else
      {
         $icq_status_img = '';
         $icq_img = '';
         $icq = '';
      }

      $aim_img = ( $row['user_aim'] ) ? '<a href="aim:goim?screenname=' . $row['user_aim'] . '&message=Hello+Are+you+there?"><img src="' . $images['icon_aim'] . '" alt="' . $lang['AIM'] . '" title="' . $lang['AIM'] . '" border="0" /></a>' : '';
      $aim = ( $row['user_aim'] ) ? '<a href="aim:goim?screenname=' . $row['user_aim'] . '&message=Hello+Are+you+there?">' . $lang['AIM'] . '</a>' : '';

      $temp_url = append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=$user_id");
      $msn_img = ( $row['user_msnm'] ) ? '<a href="' . $temp_url . '"><img src="' . $images['icon_msnm'] . '" alt="' . $lang['MSNM'] . '" title="' . $lang['MSNM'] . '" border="0" /></a>' : '';
      $msn = ( $row['user_msnm'] ) ? '<a href="' . $temp_url . '">' . $lang['MSNM'] . '</a>' : '';

      $yim_img = ( $row['user_yim'] ) ? '<a href="http://edit.yahoo.com/config/send_webmesg?.target=' . $row['user_yim'] . '&.src=pg"><img src="' . $images['icon_yim'] . '" alt="' . $lang['YIM'] . '" title="' . $lang['YIM'] . '" border="0" /></a>' : '';
      $yim = ( $row['user_yim'] ) ? '<a href="http://edit.yahoo.com/config/send_webmesg?.target=' . $row['user_yim'] . '&.src=pg">' . $lang['YIM'] . '</a>' : '';

      $temp_url = append_sid("search.$phpEx?search_author=" . urlencode($username) . "&amp;showresults=posts");
      $search_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_search'] . '" alt="' . $lang['Search_user_posts'] . '" title="' . $lang['Search_user_posts'] . '" border="0" /></a>';
      $search = '<a href="' . $temp_url . '">' . $lang['Search_user_posts'] . '</a>';

      $row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2'];
      $row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];

      $template->assign_block_vars('memberrow', array(
         'ROW_NUMBER' => $i + ( $HTTP_GET_VARS['start'] + 1 ),
         'ROW_COLOR' => '#' . $row_color,
         'ROW_CLASS' => $row_class,
         'USERNAME' => $username,
         'FROM' => $from,
         'JOINED' => $joined,
         'POSTS' => $posts,
         'AVATAR_IMG' => $poster_avatar,
         'PROFILE_IMG' => $profile_img,
         'PROFILE' => $profile,
         'SEARCH_IMG' => $search_img,
         'SEARCH' => $search,
         'PM_IMG' => $pm_img,
         'PM' => $pm,
         'EMAIL_IMG' => $email_img,
         'EMAIL' => $email,
         'WWW_IMG' => $www_img,
         'WWW' => $www,
         'ICQ_STATUS_IMG' => $icq_status_img,
         'ICQ_IMG' => $icq_img,
         'ICQ' => $icq,
         'AIM_IMG' => $aim_img,
         'AIM' => $aim,
         'MSN_IMG' => $msn_img,
         'MSN' => $msn,
         'YIM_IMG' => $yim_img,
         'YIM' => $yim,
         
         'U_VIEWPROFILE' => append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=$user_id"))
      );

      $i++;
   }
   while ( $row = $db->sql_fetchrow($result) );
}

if ( $mode != 'topten' || $board_config['topics_per_page'] < 10 )
{
   $sql = "SELECT count(*) AS total
      FROM " . USERS_TABLE . "
      WHERE user_id <> " . ANONYMOUS;

   if ( !($result = $db->sql_query($sql)) )
   {
      message_die(GENERAL_ERROR, 'Error getting total users', '', __LINE__, __FILE__, $sql);
   }

   if ( $total = $db->sql_fetchrow($result) )
   {
      $total_members = $total['total'];

      $pagination = generate_pagination("memberlist.$phpEx?mode=$mode&amp;order=$sort_order", $total_members, $board_config['topics_per_page'], $start). '&nbsp;';
   }
}
else
{
   $pagination = '&nbsp;';
   $total_members = 10;
}

$template->assign_vars(array(
   'PAGINATION' => $pagination,
   'PAGE_NUMBER' => sprintf($lang['Page_of'], ( floor( $start / $board_config['topics_per_page'] ) + 1 ), ceil( $total_members / $board_config['topics_per_page'] )),

   'L_GOTO_PAGE' => $lang['Goto_page'])
);

$template->pparse('body');

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);

?>



What does I need to change in these files?

Thanks a lot man and your english is better than mine :wink: !
Bajazet
Poster
Poster
 
Posts: 7
Joined: Wed 11. Feb, 2004 04:42

Postby Chavez on Fri 13. Feb, 2004 22:06

Code: Select all
// Start add - Extra permission PM MOD
//
// Start auth check
//
$is_auth = array();
$is_auth = auth(AUTH_READ, PAGE_INDEX_PERMISSION, $userdata);
if( !$is_auth['auth_read'] )
{
   if ( !$userdata['session_logged_in'] )
   {
      $header_location = ( @preg_match("/Microsoft|WebSTAR|Xitami/", getenv("SERVER_SOFTWARE")) ) ? "Refresh: 0; URL=" : "Location: ";
      header($header_location . append_sid("login.$phpEx?redirect=index.$phpEx", true));
      exit;
   }
   $message = sprintf ($lang['Sorry_no_auth'],$is_auth['auth_read_type']);
   message_die(GENERAL_MESSAGE, $message);
}
//
// End auth check
//
// End add - Extra permission PM MOD


ReMove this part. It should help.

So Long Chavez
Chavez
Poster
Poster
 
Posts: 7
Joined: Fri 06. Feb, 2004 20:12

Postby Art_Giacosa on Sun 15. Feb, 2004 01:51

Need help.

Installed this mod and my index was gone. I then deleted the code as said in this thread. I got my index back but I don't have the memberlist and usergroup in the overall header. I also don't have anything in the ACP that would allow me to control permissions.

Please help. I need the memberlist/usergroup back and I need to block guests from using the shoutbox.

Thanks.
Art_Giacosa
Poster
Poster
 
Posts: 1
Joined: Sun 15. Feb, 2004 01:45

Postby Bajazet on Mon 16. Feb, 2004 09:20

Well Thanks a lot Chavez but, nothing work :( . I will uninstall this mod and find another ''Small Chat'' in other forum like ''Chatbox'' or better version of Shoutbox. In fact, I install extra permission just for my small chat and because I didn't see anything else good with this mod (extra perm).

Thanks a lot!
Bajazet
Poster
Poster
 
Posts: 7
Joined: Wed 11. Feb, 2004 04:42

Postby Bajazet on Mon 16. Feb, 2004 10:25

holy fucking shit!!! After my last post, I decided to test the mod with other templates and my index is complete. After, I read the installation files to see what line make some change to templates and I find this:

Code: Select all
#-----[ OPEN ]------------------------------------------------
#
templates/subSilver/overall_header.tpl

#
#-----[ FIND ]------------------------------------------------
#
<a href="{U_MEMBERLIST}" class="mainmenu">

#
#-----[ BEFORE, ADD ]-----------------------------------------
#

<!-- BEGIN switch_memberlist_on -->

#
#-----[ AFTER, ADD ]------------------------------------------
#

<!-- END switch_memberlist_on -->

#
#-----[ SAVE/CLOSE ALL FILES ]--------------------------------


I delete these lines and all my problem is ok. I don't know if these lines are realy important but, now my forum work perfect.

Thanks again Chavez!
Bajazet
Poster
Poster
 
Posts: 7
Joined: Wed 11. Feb, 2004 04:42

Postby Chavez on Mon 16. Feb, 2004 22:21

It works. Congratulations.

It should also function, if <!-- BEGIN switch_memberlist_on --> and <!-- END switch_memberlist_on -->set to the correct places.

See overall_header.tpl and set it bevor and after the memberlist button. it sounds like you set it around the whole main menu.

Regard Chavez
Chavez
Poster
Poster
 
Posts: 7
Joined: Fri 06. Feb, 2004 20:12

Postby Bajazet on Tue 17. Feb, 2004 00:08

Okkkkkkkk! I understand! I put these commands on the right place and all work perfect.

lol thanks again!
Bajazet
Poster
Poster
 
Posts: 7
Joined: Wed 11. Feb, 2004 04:42

PreviousNext

Return to Extra permission [2.0.6/EM]

Who is online

Users browsing this forum: No registered users and 1 guest

cron