function get_user_informations($user_id, $user_row)
{
    global $config, $_CORE_CONFIG, $_CLASS;
    if (!$user_id) {
        return;
    }
    if (empty($user_row)) {
        $user_row = get_userdata((int) $user_id);
    }
    // Grab ranks
    $ranks = obtain_ranks();
    // Generate online information for user
    $user_row['online'] = false;
    if ($config['load_onlinetrack']) {
        $sql = 'SELECT session_user_id, MAX(session_hidden) AS session_hidden
			FROM ' . SESSIONS_TABLE . " \n\t\t\tWHERE session_user_id = {$user_id}\n\t\t\tAND session_time < " . ($_CLASS['core_user']->time - $_CORE_CONFIG['server']['session_length']) . '
				GROUP BY session_user_id';
        $result = $_CLASS['core_db']->query_limit($sql, 1);
        $update_time = $config['load_online_time'] * 60;
        if ($row = $_CLASS['core_db']->fetch_row_assoc($result)) {
            $user_row['online'] = !$row['session_hidden'] && $user_row['user_allow_viewonline'] ? true : false;
        }
        $_CLASS['core_db']->free_result($result);
    }
    if ($user_row['user_avatar'] && $_CLASS['core_user']->optionget('viewavatars')) {
        $avatar_img = '';
        switch ($user_row['user_avatar_type']) {
            case AVATAR_UPLOAD:
                $avatar_img = $config['avatar_path'] . '/';
                break;
            case AVATAR_GALLERY:
                $avatar_img = $config['avatar_gallery_path'] . '/';
                break;
        }
        $avatar_img .= $user_row['user_avatar'];
        $user_row['avatar'] = '<img src="' . $avatar_img . '" width="' . $user_row['user_avatar_width'] . '" height="' . $user_row['user_avatar_height'] . '" border="0" alt="" />';
    }
    if (!empty($user_row['user_rank'])) {
        $user_row['rank_title'] = !empty($ranks['special'][$user_row['user_rank']]['rank_title']) ? $ranks['special'][$user_row['user_rank']]['rank_title'] : '';
        $user_row['rank_image'] = !empty($ranks['special'][$user_row['user_rank']]['rank_image']) ? '<img src="' . $config['ranks_path'] . '/' . $ranks['special'][$user_row['user_rank']]['rank_image'] . '" border="0" alt="' . $ranks['special'][$user_row['user_rank']]['rank_title'] . '" title="' . $ranks['special'][$user_row['user_rank']]['rank_title'] . '" /><br />' : '';
    } elseif (isset($ranks['normal'])) {
        foreach ($ranks['normal'] as $rank) {
            if ($user_row['user_posts'] >= $rank['rank_min']) {
                $user_row['rank_title'] = $rank['rank_title'];
                $user_row['rank_image'] = !empty($rank['rank_image']) ? '<img src="' . $config['ranks_path'] . '/' . $rank['rank_image'] . '" border="0" alt="' . $rank['rank_title'] . '" title="' . $rank['rank_title'] . '" /><br />' : '';
                break;
            }
        }
    } else {
        $user_row['rank_title'] = $user_row['rank_image'] = '';
    }
    if (!empty($user_row['user_allow_viewemail']) || $_CLASS['auth']->acl_get('a_email')) {
        $user_row['email'] = $config['board_email_form'] && $_CORE_CONFIG['email']['email_enable'] ? generate_link('Members_List&amp;mode=email&amp;u=' . $user_id) : ($config['board_hide_emails'] && !$_CLASS['auth']->acl_get('a_email') ? '' : 'mailto:' . $user_row['user_email']);
    } else {
        $user_row['email'] = '';
    }
    return $user_row;
}
Ejemplo n.º 2
0
    $limit_posts_time = '';
}
// Was a highlight request part of the URI?
$highlight_match = $highlight = '';
if ($hilit_words) {
    foreach (explode(' ', trim($hilit_words)) as $word) {
        if (trim($word)) {
            $highlight_match .= ($highlight_match != '' ? '|' : '') . str_replace('\\*', '\\w*?', preg_quote(urlencode($word), '#'));
        }
    }
    $highlight = urlencode($hilit_words);
}
// General Viewtopic URL for return links
$viewtopic_url = "Forums&amp;file=viewtopic&amp;t={$topic_id}&amp;start={$start}&amp;{$u_sort_param}" . ($highlight_match ? "&amp;hilit={$highlight}" : '');
// Grab ranks
$ranks = obtain_ranks();
// Grab icons
$icons = obtain_icons();
// Moderators
$forum_moderators = get_moderators($forum_id);
// Generate Navigation links
generate_forum_nav($topic_data);
// Generate Forum Rules
generate_forum_rules($topic_data);
gen_forum_auth_level('topic', $forum_id);
// Does this topic contain a poll?
if (!empty($poll_start)) {
    $sql = 'SELECT o.*, p.bbcode_bitfield, p.bbcode_uid
		FROM ' . FORUMS_POLL_OPTIONS_TABLE . ' o, ' . FORUMS_POSTS_TABLE . " p\n\t\tWHERE o.topic_id = {$topic_id} \n\t\t\tAND p.post_id = {$topic_first_post_id}\n\t\t\tAND p.topic_id = o.topic_id\n\t\tORDER BY o.poll_option_id";
    $result = $_CLASS['core_db']->query($sql);
    $poll_info = array();