/**
  * GET FEED ACTIVITES
  */
 function get_feed_activities($page = 0, $per_page = 20)
 {
     global $bp, $wpdb, $buddyboss_ajax_qs;
     $min = $page > 0 ? ($page - 1) * $per_page : 0;
     $max = ($page + 1) * $per_page;
     $per_page = bp_get_activity_per_page();
     buddyboss_log("per page: {$per_page}");
     if (isset($bp->loggedin_user) && isset($bp->loggedin_user->id) && $bp->displayed_user->id == $bp->loggedin_user->id) {
         $myprofile = true;
     } else {
         $myprofile = false;
     }
     $wpdb->show_errors = BUDDYBOSS_DEBUG;
     $user_id = $bp->displayed_user->id;
     $user_name = $bp->displayed_user->userdata->user_login;
     $filter = $bp->displayed_user->domain;
     buddyboss_log("Looking at {$user_id}");
     // Get friend's user IDs
     $user_ids = friends_get_friend_user_ids($user_id, false, false);
     // Add logged in user to news feed results
     // $user_ids[] = $user_id;
     $user_list = implode(',', $user_ids);
     // buddyboss_log( $friend_id_list );
     $table = bp_core_get_table_prefix() . 'bp_activity';
     $table2 = bp_core_get_table_prefix() . 'bp_activity_meta';
     // Default WHERE
     $where = "WHERE ( {$table}.user_id IN ({$user_list}) AND {$table}.type != 'activity_comment' )";
     // Add when user joined a group
     $group_modifier = "OR ( {$table}.user_id = {$user_id} AND {$table}.component = 'groups' ) ";
     // If we have a filter enabled, let's handle that
     $ajax_qs = !empty($buddyboss_ajax_qs) ? wp_parse_args($buddyboss_ajax_qs) : false;
     if (is_array($ajax_qs) && isset($ajax_qs['action'])) {
         // Clear group modifier
         $group_modifier = '';
         $filter_qs = $ajax_qs['action'];
         // Check for commas and adjust
         if (strpos($filter_qs, ',')) {
             $filters = explode(',', $filter_qs);
         } else {
             $filters = (array) $filter_qs;
         }
         // Clean each filter
         $filters_clean = array();
         foreach ($filters as $filter) {
             $filters_clean[] = $wpdb->escape($filter);
         }
         $filter_sql = "AND ( {$table}.type='" . implode("' OR {$table}.type='", $filters_clean) . "' )";
         $where = "WHERE ( {$table}.user_id IN ({$user_list}) {$filter_sql} )";
     }
     // Filter where SQL
     $where_filtered = apply_filters('buddyboss_wall_query_feed_activity_ids_where', $where);
     // Filter modifier SQL
     $group_filtered = apply_filters('buddyboss_wall_query_feed_activity_ids_groups', $group_modifier);
     // Build Query
     $query_sql = "SELECT DISTINCT {$table}.id FROM {$table} LEFT JOIN {$table2} ON {$table}.id = {$table2}.activity_id\n\t\t\t{$where_filtered}\n\t\t\t{$group_filtered}\n\t\t\tORDER BY date_recorded DESC LIMIT {$min}, 40";
     // Filter full query SQL
     $query_filtered = apply_filters('buddyboss_wall_query_feed_activity_ids_full', $query_sql);
     // Run query
     $activities = $wpdb->get_results($query_filtered, ARRAY_A);
     buddyboss_log($query_filtered);
     buddyboss_log($activities);
     if (empty($activities)) {
         return null;
     }
     $tmp = array();
     foreach ($activities as $a) {
         $tmp[] = $a["id"];
     }
     $activity_list = implode(",", $tmp);
     return $activity_list;
 }
 /**
  * SETUP MENU, ADD NAVIGATION OPTIONS
  *
  * @since	BuddyBoss 2.0
  * @todo: cache the amount of pics
  */
 function setup_bp_menu()
 {
     global $wpdb, $bp;
     if (!isset($bp->displayed_user->id)) {
         return;
     }
     $photos_user_id = $bp->displayed_user->id;
     $activity_table = bp_core_get_table_prefix() . 'bp_activity';
     $activity_meta_table = bp_core_get_table_prefix() . 'bp_activity_meta';
     $groups_table = bp_core_get_table_prefix() . 'bp_groups';
     // Prepare a SQL query to retrieve the activity posts
     // that have pictures associated with them
     $sql = "SELECT COUNT(*) as photo_count FROM {$activity_table} a\n\t\t\t\t\t\t\tINNER JOIN {$activity_meta_table} am ON a.id = am.activity_id\n\t\t\t\t\t\t\tLEFT JOIN (SELECT activity_id, meta_key, meta_value FROM {$activity_meta_table}\n\t\t\t\t\t\t\t           WHERE meta_key = 'activityprivacy') am2 ON a.id = am2.activity_id\n\t  \t\t\t\t\tLEFT JOIN (SELECT id FROM {$groups_table} WHERE status != 'public' ) grp ON a.item_id = grp.id\n\t\t\t\t\t\t\tWHERE a.user_id = %d\n\t\t\t\t\t\t\tAND (am.meta_key = 'buddyboss_pics_aid' OR am.meta_key = 'bboss_pics_aid')\n\t\t\t\t\t\t\tAND (a.component != 'groups' || a.item_id != grp.id)";
     $sql = $wpdb->prepare($sql, $photos_user_id);
     buddyboss_log(' MENU PHOTO COUNT SQL ');
     buddyboss_log($sql);
     $photos_cnt = $wpdb->get_var($sql);
     /* Add 'Photos' to the main user profile navigation */
     bp_core_new_nav_item(array('name' => sprintf(__('Photos <span>%d</span>', 'buddyboss'), $photos_cnt), 'slug' => BUDDYBOSS_PICS_SLUG, 'position' => 80, 'screen_function' => 'buddyboss_pics_screen_picture_grid', 'default_subnav_slug' => 'my-gallery'));
     $buddyboss_pics_link = $bp->displayed_user->domain . BUDDYBOSS_PICS_SLUG . '/';
     bp_core_new_subnav_item(array('name' => __('Photos', 'buddyboss'), 'slug' => 'my-gallery', 'parent_slug' => BUDDYBOSS_PICS_SLUG, 'parent_url' => $buddyboss_pics_link, 'screen_function' => 'buddyboss_pics_screen_picture_grid', 'position' => 10));
 }