Webmaster общности: Predpriemach.com | SearchEngines.bg

    колко потребители разглеждат раздела

    Автор: djvato

    Урока е доста полезен и го има в много форуми , но извън България Smile в index показва колко потребителя и кой разглеждат дадения раздел …. мисля , че това за обяснение стига

    #
    #-----[ отворете ]------------------------------------------
    # index.php
    #
    #-----[ намерете ]------------------------------------------
    #
    $template->assign_block_vars('catrow.forumrow', array(
    'ROW_COLOR' => '#' . $row_color,
    
    #
    #-----[ заменете го с ]------------------------------------------
    #
    // start: forum active
    $sql = "SELECT u.username, u.user_id, u.user_allow_viewonline, u.user_level, s.session_logged_in, s.session_ip, s.session_page
    FROM ".USERS_TABLE." u, ".SESSIONS_TABLE." s
    WHERE u.user_id = s.session_user_id
    AND s.session_time >= ".( time() - 300 ) . " AND s.session_page = $forum_id
    ORDER BY u.username ASC, s.session_ip ASC";
    if( !($result = $db->sql_query($sql)) )
    {
    message_die(GENERAL_ERROR, 'Could not obtain activities in forums.', '', __LINE__, __FILE__, $sql);
    }
    
    $userlist_ary = array();
    $userlist_visible = array();
    
    $logged_visible_active = 0;
    $logged_hidden_active = 0;
    $guests_active = 0;
    $active_userlist = '';
    
    $prev_user_id = 0;
    $prev_user_ip = '';
    
    while( $row = $db->sql_fetchrow($result) )
    {
    if ( $row['session_logged_in'] )
    {
    if ( $row['user_id'] != $prev_user_id )
    {
    $style_color = '';
    if ( $row['user_level'] == ADMIN )
    {
    $row['username'] = '<b>' . $row['username'] . '</b>';
    $style_color = 'style="color:#' . $theme['fontcolor3'] . '"';
    }
    else if ( $row['user_level'] == JUNIOR_ADMIN )
    {
    $row['username'] = '<b>' . $row['username'] . '</b>';
    $style_color = 'style="color:#00B0FF"'; // color can be changed of course
    }
    else if ( $row['user_level'] == LESS_ADMIN )
    {
    $row['username'] = '<b>' . $row['username'] . '</b>';
    $style_color = 'style="color:#00B0FF"'; // color can be changed of course
    }
    else if ( $row['user_level'] == MOD )
    {
    $row['username'] = '<b>' . $row['username'] . '</b>';
    $style_color = 'style="color:#' . $theme['fontcolor2'] . '"';
    }
    
    if ( $row['user_allow_viewonline'] )
    {
    $user_active_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'>' . $row['username'] . '</a>';
    $logged_visible_active++;
    }
    else
    {
    $user_active_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'><i>' . $row['username'] . '</i></a>';
    $logged_hidden_active++;
    }
    
    if ( $row['user_allow_viewonline'] || $userdata['user_level'] == ADMIN )
    {
    $active_userlist .= ( $active_userlist != '' ) ? ', ' . $user_active_link : $user_active_link;
    }
    }
    $prev_user_id = $row['user_id'];
    }
    else
    {
    if ( $row['session_ip'] != $prev_session_ip )
    {
    $guests_active++;
    }
    }
    $prev_session_ip = $row['session_ip'];
    }
    
    $total_active_users = $logged_visible_active + $logged_hidden_active + $guests_active;
    
    $l_t_user_s = ( $total_active_users == 0 ) ? $lang['Forum_no_active'] : ( ( $total_active_users == 1 ) ? $lang['Forum_one_active'] : $lang['Forum_more_active'] );
    $l_h_user_s = ( $logged_hidden_active == 0 || $userdata['user_level'] == ADMIN ) ? '' : ( ( $logged_hidden_active == 1 ) ? $lang['Forum_one_hidden_active'] : $lang['Forum_more_hidden_active'] );
    $l_g_user_s = ( $guests_active == 0 ) ? '' : ( ( $guests_active == 1 ) ? $lang['Forum_one_guest_active'] : $lang['Forum_more_guest_active'] );
    
    $l_active_users = sprintf($l_t_user_s, $total_active_users);
    $l_active_users_info = sprintf($l_h_user_s, $logged_hidden_active);
    $l_active_users_info .= sprintf($l_g_user_s, $guests_active);
    
    $active_total = $l_active_users;
    $active_info = $l_active_users_info;
    $active = $active_userlist;
    // end: forum active
    
    $template->assign_block_vars('catrow.forumrow', array(
    'ACTIVE' => $active,
    'ACTIVE_TOTAL' => $active_total,
    'ACTIVE_INFO' => $active_info,
    'ROW_COLOR' => '#' . $row_color,
    
    
    
    #
    #-----[ отворете ]------------------------------------------
    # language/lang_english/lang_main.php
    #
    #-----[ намерете ]------------------------------------------
    #
    $lang['Moderators'] = 'Moderators';
    
    #
    #-----[ след него добавете ]------------------------------------------
    #
    // if you donґt want to display "0 users" uncomment the following
    // and put the slashes before the other "0 users" line
    // $lang['Forum_no_active'] = '';
    $lang['Forum_no_active'] = '<b>0</b> Няма разглеждащи'; // <-- this one
    $lang['Forum_one_active'] = '<b>%d</b> Разглеждащ потребител: ';
    $lang['Forum_more_active'] = '<b>%d</b> Разглеждащи потребители: ';
    $lang['Forum_one_hidden_active'] = '<b>%d</b> Скрит';
    $lang['Forum_more_hidden_active'] = '<b>%d</b> Скрити';
    $lang['Forum_one_guest_active'] = '<b>%d</b> Гост';
    $lang['Forum_more_guests_active'] = '<b>%d</b> Гости';
    
    
    
    #
    #-----[ отваряте ]------------------------------------------
    # templates/xxx/index_body.tpl
    #
    #-----[ намирате ]------------------------------------------
    #
    </span><span class="gensmall">{catrow.forumrow.L_MODERATOR} {catrow.forumrow.MODERATORS}</span></td>
    
    #
    #-----[ заменяте го с ]------------------------------------------
    # i
    #
    
    </span><span class="gensmall">{catrow.forumrow.L_MODERATOR} {catrow.forumrow.MODERATORS}</span><br />
    <span class="gensmall">{catrow.forumrow.ACTIVE_TOTAL} {catrow.forumrow.ACTIVE} {catrow.forumrow.ACTIVE_INFO}</span></td>
    

    Това е ! Успех !

    Оставете коментар