/** @see WP_Widget::widget -- do not rename this */ function widget($args, $instance) { extract($args); //Our variables from the widget settings. $title = apply_filters('widget_title', $instance['title']); $num = $instance['number']; $activity = $instance['activity']; $messages = $instance['messages']; $friends = $instance['friends']; if (!is_numeric($num)) { $num = 5; } $user_id = bp_loggedin_user_id(); $width = $instance['width']; echo '<div class="' . $width . '"><div class="dash-widget">' . $before_widget; echo '<div id="vibe-tabs-student-activity" class="tabs tabbable"> <ul class="nav nav-tabs clearfix">'; if (isset($messages) && $messages && function_exists('messages_get_unread_count')) { echo '<li><a href="#tab-messages" data-toggle="tab"><i class="icon-bubble-talk-1"></i>' . messages_get_unread_count($user_id) . '</a></li>'; } if (isset($friends) && $friends) { $searchArgs = array('type' => 'online', 'page' => 1, 'per_page' => $num, 'user_id' => $user_id); if (bp_has_members($searchArgs)) { while (bp_members()) { bp_the_member(); $user_friends[] = array('avatar' => bp_get_member_avatar(), 'name' => bp_get_member_name(), 'last_active' => bp_get_member_last_active()); } } if (!is_array($user_friends)) { $user_friends = array(); } echo '<li><a href="#tab-friends" data-toggle="tab"><i class="icon-myspace-alt"></i>' . count($user_friends) . '</a></li>'; } if (isset($activity) && $activity) { echo '<li><a href="#tab-activity" data-toggle="tab"><i class="icon-atom"></i> </a></li>'; } echo '</ul><div class="tab-content">'; // Display the widget title global $wpdb, $bp; if (isset($messages) && $messages) { echo '<div id="tab-messages" class="tab-pane"> <h4>' . __('Unread Messages', 'wplms-dashboard') . '</h4>'; $message_args = array('user_id' => $user_id, 'box' => 'inbox', 'type' => 'unread', 'max' => $num); if (bp_has_message_threads($message_args)) { echo '<ul class="dash-unread-messages">'; while (bp_message_threads()) { bp_message_thread(); echo '<li>' . bp_get_message_thread_avatar() . '<a href="' . bp_get_message_thread_view_link() . '">' . bp_get_message_thread_subject() . '<span>' . bp_get_message_thread_from() . '</span></a></li>'; } echo '</ul>'; } else { echo '<div class="message error">' . __('No messages found', 'wplms-dashboard') . '</div>'; } echo '</div>'; } if (isset($friends) && $friends) { echo '<div id="tab-friends" class="tab-pane"> <h4>' . __('Friends Online', 'wplms-dashboard') . '</h4>'; if (count($user_friends)) { echo '<ul class="dash-user-friends">'; foreach ($user_friends as $user_friend) { echo '<li>' . $user_friend['avatar'] . ' ' . $user_friend['name'] . '<span>' . $user_friend['last_active'] . '</span></li>'; } echo '</ul>'; } else { echo '<div class="message error">' . __('No friends online', 'wplms-dashboard') . '</div>'; } echo '</div>'; } if (isset($activity) && $activity) { $activities = apply_filters('wplms_dashboard_activity', $wpdb->get_results($wpdb->prepare("\n\t\t\tSELECT *\n\t\t FROM {$bp->activity->table_name} AS activity\n\t\t WHERE \tactivity.user_id IN (%d)\n\t\t AND (activity.action != '' OR activity.action IS NOT NULL)\n\t\t ORDER BY activity.date_recorded DESC\n\t\t LIMIT 0,{$num}\n\t\t", $user_id))); echo '<div id="tab-activity" class="tab-pane student_activity"> <h4>' . __('Recent Activity', 'wplms-dashboard') . '</h4>'; if (isset($activities) && is_array($activities)) { echo '<ul class="dash-activities">'; foreach ($activities as $activity) { if (isset($activity->action) && $activity->action != '') { $time = tofriendlytime(time() - strtotime($activity->date_recorded)); echo '<li class="' . $activity->component . ' ' . $activity->type . '"> <div class="dash-activity"> <span class="dash-activity-time">' . $time . ' ' . __('AGO', 'wplms-dashboard') . '</span> <strong>' . $activity->action . '</strong> </div> </li>'; } } echo '</ul>'; } else { echo '<div class="message error">' . __('No activity found', 'wplms-dashboard') . '</div>'; } echo '</div>'; } echo '</div></div>' . $after_widget . '</div></div>'; }
function bp_message_thread_avatar() { echo bp_get_message_thread_avatar(); }
/** * Output the avatar for the last sender in the current message thread. * * @see bp_get_message_thread_avatar() for a description of arguments. * * @param array|string $args See {@link bp_get_message_thread_avatar()}. */ function bp_message_thread_avatar($args = '') { echo bp_get_message_thread_avatar($args); }