function sp_PostIndexUserStatus($args = '', $onlineLabel = '', $offlineLabel = '')
{
    global $spThisPost, $spThisPostUser, $spThisUser;
    if ($spThisPostUser->guest) {
        return;
    }
    $defs = array('tagId' => 'spPostIndexUserStatus%ID%', 'tagClass' => 'spPostUserStatus', 'iconClass' => 'spIcon', 'onlineLabelClass' => 'spPostUserStatusOnline', 'offlineLabelClass' => 'spPostUserStatusOffline', 'onlineIcon' => 'sp_UserOnlineSmall.png', 'offlineIcon' => 'sp_UserOfflineSmall.png', 'echo' => 1, 'get' => 0);
    $a = wp_parse_args($args, $defs);
    $a = apply_filters('sph_PostIndexUserStatus_args', $a);
    extract($a, EXTR_SKIP);
    # sanitize before use
    $tagId = esc_attr($tagId);
    $tagClass = esc_attr($tagClass);
    $iconClass = esc_attr($iconClass);
    $onlineLabelClass = esc_attr($onlineLabelClass);
    $offlineLabelClass = esc_attr($offlineLabelClass);
    $onlineIcon = sanitize_file_name($onlineIcon);
    $offlineIcon = sanitize_file_name($offlineIcon);
    $onlineLabel = sp_filter_title_display($onlineLabel);
    $offlineLabel = sp_filter_title_display($offlineLabel);
    $echo = (int) $echo;
    $get = (int) $get;
    $tagId = str_ireplace('%ID%', $spThisPost->post_id, $tagId);
    $spMemberOpts = sp_get_option('sfmemberopts');
    $icon = '';
    if (($spThisUser->admin || (!$spMemberOpts['sfhidestatus'] || (!isset($spThisPostUser->hidestatus) || !$spThisPostUser->hidestatus))) && sp_is_online($spThisPostUser->ID)) {
        if (!empty($onlineIcon)) {
            $icon = sp_paint_icon($iconClass, SPTHEMEICONSURL, sanitize_file_name($onlineIcon));
        }
        $label = $onlineLabel;
        $labelClass = $onlineLabelClass;
        $status = true;
    } else {
        if (!empty($offlineIcon)) {
            $icon = sp_paint_icon($iconClass, SPTHEMEICONSURL, sanitize_file_name($offlineIcon));
        }
        $label = $offlineLabel;
        $labelClass = $offlineLabelClass;
        $status = false;
    }
    if ($get) {
        return $status;
    }
    $out = "<div id='{$tagId}' class='{$tagClass}'><span class='{$labelClass}'>\n";
    if (!empty($icon)) {
        $out .= $icon;
    }
    $out .= $label;
    $out .= "</span></div>\n";
    $out = apply_filters('sph_PostIndexUserStatus', $out, $a);
    if ($echo) {
        echo $out;
    } else {
        return $out;
    }
}
function sp_OnlineStatus($args = '', $user, $userProfile = '')
{
    global $spThisUser;
    $defs = array('tagClass' => 'spOnlineStatus', 'onlineIcon' => 'sp_UserOnline.png', 'offlineIcon' => 'sp_UserOffline.png', 'echo' => 1, 'get' => 0);
    $a = wp_parse_args($args, $defs);
    $a = apply_filters('sph_OnlineStatus_args', $a);
    extract($a, EXTR_SKIP);
    # sanitize before use
    $tagClass = esc_attr($tagClass);
    $onlineIcon = sanitize_file_name($onlineIcon);
    $offlineIcon = sanitize_file_name($offlineIcon);
    $user = (int) $user;
    $echo = (int) $echo;
    $get = (int) $get;
    # output display name
    $out = '';
    if (empty($userProfile)) {
        $userProfile = sp_get_user($user);
    }
    $spMemberOpts = sp_get_option('sfmemberopts');
    if (($spThisUser->admin || (!$spMemberOpts['sfhidestatus'] || !$userProfile->hidestatus)) && sp_is_online($user)) {
        $icon = sp_find_icon(SPTHEMEICONSURL, sanitize_file_name($onlineIcon));
        if ($get) {
            return true;
        }
    } else {
        $icon = sp_find_icon(SPTHEMEICONSURL, sanitize_file_name($offlineIcon));
        if ($get) {
            return false;
        }
    }
    $out .= "<img class='{$tagClass}' src='{$icon}' />";
    $out = apply_filters('sph_OnlineStatus', $out, $user, $a);
    if ($echo) {
        echo $out;
    } else {
        return $out;
    }
}