Ver Mensaje Individual
  #7 (permalink)  
Antiguo 14/07/2004, 16:03
antichavez
 
Fecha de Ingreso: noviembre-2003
Ubicación: Venezuela
Mensajes: 344
Antigüedad: 20 años, 5 meses
Puntos: 0
2:

Código PHP:
<link href="viewonlinecss.css" rel="stylesheet" type="text/css"> 
 <?php 
/***************************************************************************
 *                              viewonline.php
 *                            -------------------
 *   begin                : Saturday, Feb 13, 2001
 *   copyright            : (C) 2001 The phpBB Group
 *   email                : [email][email protected][/email]
 *
 *   $Id: viewonline.php,v 1.54.2.2 2002/12/02 10:53:42 bartvb 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_ipPAGE_VIEWONLINE);
init_userprefs($userdata);

$page_title $lang['Who_is_Online'];
include(
$phpbb_root_path 'includes/page_header.'.$phpEx);

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

$template->assign_vars(array(
    
'L_ONLINE_EXPLAIN' => $lang['Online_explain'],
    
'L_USERNAME' => $lang['Username'],
    
'L_LAST_UPDATE' => $lang['Last_updated'])
);

//
// Get auth data
//
$is_auth_ary = array();
$is_auth_ary auth(AUTH_VIEWAUTH_LIST_ALL$userdata);

//
// Get user list
//
$sql "SELECT u.user_id, u.username, u.user_allow_viewonline, u.user_level, s.session_logged_in, s.session_time, s.session_page, s.session_ip
    FROM "
.USERS_TABLE." u, ".SESSIONS_TABLE." s
    WHERE u.user_id = s.session_user_id
        AND s.session_time >= "
.( time() - 300 ) . "
    ORDER BY u.username ASC, s.session_ip ASC"
;
if ( !(
$result $db->sql_query($sql)) )
{
    
message_die(GENERAL_ERROR'Could not obtain regd user/online information'''__LINE____FILE__$sql);
}

$guest_users 0;
$registered_users 0;
$hidden_users 0;

$reg_counter 0;
$guest_counter 0;
$prev_user 0;
$prev_ip '';

while ( 
$row $db->sql_fetchrow($result) )
{
    
$view_online false;

    if ( 
$row['session_logged_in'] ) 
    {
        
$user_id $row['user_id'];

        if ( 
$user_id != $prev_user )
        {
            
$username $row['username'];

            
$style_color '';
            if ( 
$row['user_level'] == ADMIN )
            {
                
$username '<b style="color:#' $theme['fontcolor3'] . '">' $username '</b>';
            }
            else if ( 
$row['user_level'] == MOD )
            {
                
$username '<b style="color:#' $theme['fontcolor2'] . '">' $username '</b>';
            }

            if ( !
$row['user_allow_viewonline'] )
            {
                
$view_online = ( $userdata['user_level'] == ADMIN ) ? true false;
                
$hidden_users++;

                
$username '<i>' $username '</i>';
            }
            else
            {
                
$view_online true;
                
$registered_users++;
            }

            
$which_counter 'reg_counter';
            
$which_row 'reg_user_row';
            
$prev_user $user_id;
        }
    }
    else
    {
        if ( 
$row['session_ip'] != $prev_ip )
        {
            
$username $lang['Guest'];
            
$view_online true;
            
$guest_users++;
    
            
$which_counter 'guest_counter';
            
$which_row 'guest_user_row';
        }
    }

    
$prev_ip $row['session_ip'];

    if ( 
$view_online )
    {
        if ( 
$row['session_page'] < || !$is_auth_ary[$row['session_page']]['auth_view'] )
        {
            switch( 
$row['session_page'] )
            {
                case 
PAGE_INDEX:
                    
$location $lang['Forum_index'];
                    
$location_url "index.$phpEx";
                    break;
                case 
PAGE_POSTING:
                    
$location $lang['Posting_message'];
                    
$location_url "index.$phpEx";
                    break;
                case 
PAGE_LOGIN:
                    
$location $lang['Logging_on'];
                    
$location_url "index.$phpEx";
                    break;
                case 
PAGE_SEARCH:
                    
$location $lang['Searching_forums'];
                    
$location_url "search.$phpEx";
                    break;
                case 
PAGE_PROFILE:
                    
$location $lang['Viewing_profile'];
                    
$location_url "index.$phpEx";
                    break;
                case 
PAGE_VIEWONLINE:
                    
$location $lang['Viewing_online'];
                    
$location_url "viewonline.$phpEx";
                    break;
                case 
PAGE_VIEWMEMBERS:
                    
$location $lang['Viewing_member_list'];
                    
$location_url "memberlist.$phpEx";
                    break;
                case 
PAGE_PRIVMSGS:
                    
$location $lang['Viewing_priv_msgs'];
                    
$location_url "privmsg.$phpEx";
                    break;
                case 
PAGE_FAQ:
                    
$location $lang['Viewing_FAQ'];
                    
$location_url "faq.$phpEx";
                    break;
                default:
                    
$location $lang['Forum_index'];
                    
$location_url "index.$phpEx";
            }
        }
        else
        {
            
        }

        
$row_color = ( $$which_counter ) ? $theme['td_color1'] : $theme['td_color2'];
        
$row_class = ( $$which_counter ) ? $theme['td_class1'] : $theme['td_class2'];

        
$template->assign_block_vars("$which_row", array(
            
'ROW_COLOR' => '#' $row_color,
            
'ROW_CLASS' => $row_class,
            
'USERNAME' => $username,
            
'U_USER_PROFILE' => append_sid("profile.$phpEx?mode=viewprofile&amp;" POST_USERS_URL '=' $user_id),
            
'U_FORUM_LOCATION' => append_sid($location_url))
        );

        $
$which_counter++;
    }
}

if( 
$registered_users == )
{
    
$l_r_user_s $lang['Reg_users_zero_online'];
}
else if( 
$registered_users == )
{
    
$l_r_user_s $lang['Reg_user_online'];
}
else
{
    
$l_r_user_s $lang['Reg_users_online'];
}

if( 
$hidden_users == )
{
    
$l_h_user_s $lang['Hidden_users_zero_online'];
}
else if( 
$hidden_users == )
{
    
$l_h_user_s $lang['Hidden_user_online'];
}
else
{
    
$l_h_user_s $lang['Hidden_users_online'];
}

$template->assign_vars(array(
        
'TOTAL_GUEST_USERS_ONLINE' => sprintf($l_g_user_s))
);

if ( 
$registered_users $hidden_users == )
{
    
$template->assign_vars(array(
        
'TOTAL_GUEST_USERS_ONLINE' => sprintf($l_g_user_s))
    );
}

{
    
$template->assign_vars(array(
        
'TOTAL_GUEST_USERS_ONLINE' => sprintf($l_g_user_s))
    );
}

$template->pparse('body');


?>