function get_posts_for_user($user_id = null)
 {
     global $bp, $wpdb;
     if (!$bp->blogs) {
         bp_blogs_setup_globals();
     }
     if (!$user_id) {
         $user_id = $bp->displayed_user->id;
     }
     // Show a logged in user their posts on private blogs, but not anyone else.
     if (!bp_is_home()) {
         $post_ids = $wpdb->get_results($wpdb->prepare("SELECT p.post_id, p.blog_id FROM {$bp->blogs->table_name_blog_posts} p LEFT JOIN {$wpdb->base_prefix}blogs b ON p.blog_id = b.blog_id WHERE b.public = 1 AND b.deleted = 0 AND b.archived = '0' AND b.spam = 0 AND b.mature = 0 AND p.user_id = %d ORDER BY p.date_created DESC", $user_id));
         $total_post_count = $wpdb->get_var($wpdb->prepare("SELECT count(p.post_id) FROM {$bp->blogs->table_name_blog_posts} p LEFT JOIN {$wpdb->base_prefix}blogs b ON p.blog_id = b.blog_id WHERE b.public = 1 AND b.deleted = 0 AND b.archived = '0' AND b.spam = 0 AND b.mature = 0 AND p.user_id = %d", $user_id));
     } else {
         $post_ids = $wpdb->get_results($wpdb->prepare("SELECT p.post_id, p.blog_id FROM {$bp->blogs->table_name_blog_posts} p LEFT JOIN {$wpdb->base_prefix}blogs b ON p.blog_id = b.blog_id WHERE b.deleted = 0 AND b.archived = '0' AND b.spam = 0 AND b.mature = 0 AND p.user_id = %d ORDER BY p.date_created DESC", $user_id));
         $total_post_count = $wpdb->get_var($wpdb->prepare("SELECT count(p.post_id) FROM {$bp->blogs->table_name_blog_posts} p LEFT JOIN {$wpdb->base_prefix}blogs b ON p.blog_id = b.blog_id WHERE b.deleted = 0 AND b.archived = '0' AND b.spam = 0 AND b.mature = 0 AND p.user_id = %d", $user_id));
     }
     for ($i = 0; $i < count($post_ids); $i++) {
         $posts[$i] = BP_Blogs_Post::fetch_post_content($post_ids[$i]);
     }
     return array('posts' => $posts, 'count' => $total_post_count);
 }
Example #2
0
function bp_blogs_remove_data($user_id)
{
    /* If this is regular blog, delete all data for that blog. */
    BP_Blogs_Blog::delete_blogs_for_user($user_id);
    BP_Blogs_Post::delete_posts_for_user($user_id);
    BP_Blogs_Comment::delete_comments_for_user($user_id);
    do_action('bp_blogs_remove_data', $user_id);
}