diff --git a/wp-content/plugins/bp-mpo-activity-filter/bp-mpo-activity-filter-bp-functions.php b/wp-content/plugins/bp-mpo-activity-filter/bp-mpo-activity-filter-bp-functions.php
index 7bb7a971036f22919df4c459f838caff3d3cd1fa..6118d0d4d23b27de864605147aae80c67ea8ff09 100644
--- a/wp-content/plugins/bp-mpo-activity-filter/bp-mpo-activity-filter-bp-functions.php
+++ b/wp-content/plugins/bp-mpo-activity-filter/bp-mpo-activity-filter-bp-functions.php
@@ -1,5 +1,10 @@
 <?php
 
+/**
+ * Reaches into the activity global and filters out items the user doesn't have access to
+ *
+ * Uses privacy settings from More Privacy Options
+ */
 function bp_mpo_activity_filter( $a, $activities ) {
 	global $bp;
 
@@ -7,9 +12,18 @@ function bp_mpo_activity_filter( $a, $activities ) {
 		return $activities;
 
 	foreach ( $activities->activities as $key => $activity ) {
-		if ( $activity->component == 'blogs' ) {
-			$blog_id = $activity->item_id;
+		if ( $activity->type == 'new_blog_post' || $activity->type == 'new_blog_comment' ) {
+
 			$current_user = $bp->loggedin_user->id;
+
+			// Account for bp-groupblog
+			if ( $activity->component == 'groups' ) {
+				$group_id = $activity->item_id;
+				$blog_id = groups_get_groupmeta( $group_id, 'groupblog_blog_id' );
+			} else {
+				$blog_id = $activity->item_id;
+			}
+
 			$privacy = get_blog_option( $blog_id, 'blog_public' );
 
 			$remove_from_stream = false;
@@ -38,17 +52,15 @@ function bp_mpo_activity_filter( $a, $activities ) {
 					break;
 
 				case '-2':
-					if ( is_user_logged_in() ) {						
-						switch_to_blog( $blog_id );
-	
-						$user = new WP_User( $current_user );
-	
-						if ( !empty( $user->caps ) )
+					if ( is_user_logged_in() ) {
+						$meta_key = 'wp_' . $blog_id . '_capabilities';
+						$caps = get_user_meta( $current_user, $meta_key, true );
+
+						if ( !empty( $caps ) ) {
 							continue;
-						else {
+						} else {
 							$remove_from_stream = true;
 						}
-						restore_current_blog();
 					} else {
 						$remove_from_stream = true;
 					}
@@ -57,9 +69,9 @@ function bp_mpo_activity_filter( $a, $activities ) {
 				case '-3':
 					if ( is_user_logged_in() ) {
 						switch_to_blog( $blog_id );
-	
+
 						$user = new WP_User( $current_user );
-	
+
 						if ( in_array( 'administrator', $user->roles ) )
 							continue;
 						else {
@@ -72,18 +84,18 @@ function bp_mpo_activity_filter( $a, $activities ) {
 					break;
 
 			}
-			
+
 			if ( $remove_from_stream ) {
 				$activities->activity_count = $activities->activity_count - 1;
 				unset( $activities->activities[$key] );
+
 			}
 		}
 	}
-	/* Renumber the array keys to account for missing items */
-	$activities_new = array_values( $activities->activities );
 
+	$activities_new = array_values( $activities->activities );
 	$activities->activities = $activities_new;
-	//print "<pre>"; print_r($activities);
+
 	return $activities;
 }
 add_action( 'bp_has_activities', 'bp_mpo_activity_filter', 10, 2 );
@@ -94,4 +106,3 @@ function bp_mpo_activity_count() {
 	return '20';
 }
 add_action( 'bp_get_activity_count', 'bp_mpo_activity_count' );
-?>
\ No newline at end of file
diff --git a/wp-content/plugins/bp-mpo-activity-filter/bp-mpo-activity-filter.php b/wp-content/plugins/bp-mpo-activity-filter/bp-mpo-activity-filter.php
index 5e09b12247a1fae350ffe24cbd7e2016aea1bcc3..697b10615dde92ba095a40fd389b406624d7ede6 100644
--- a/wp-content/plugins/bp-mpo-activity-filter/bp-mpo-activity-filter.php
+++ b/wp-content/plugins/bp-mpo-activity-filter/bp-mpo-activity-filter.php
@@ -1,17 +1,15 @@
 <?php
 /*
 Plugin Name: BP MPO Activity Filter
-Plugin URI: http://qwriting.org
+Plugin URI: http://github.com/boonebgorges/bp-mpo-activity-filter
 Description: When using More Privacy Options, this plugin removes items from BP activity streams according to user roles
-Version: 1.1.1
+Version: 1.2
 Author: Boone Gorges
-Author URI: http://teleogistic.net
+Author URI: http://boone.gorg.es
 */
 
 /* Only load the BuddyPress plugin functions if BuddyPress is loaded and initialized. */
 function bp_mpo_activity_filter_init() {
 	require( dirname( __FILE__ ) . '/bp-mpo-activity-filter-bp-functions.php' );
 }
-add_action( 'bp_init', 'bp_mpo_activity_filter_init' );
-
-?>
+add_action( 'bp_include', 'bp_mpo_activity_filter_init' );
diff --git a/wp-content/plugins/bp-mpo-activity-filter/readme.txt b/wp-content/plugins/bp-mpo-activity-filter/readme.txt
index 90ae5538675cd3d076604b0408e2cbfe3809eb6a..de61c505247c53320dfc0f35ffc46bb587675a97 100644
--- a/wp-content/plugins/bp-mpo-activity-filter/readme.txt
+++ b/wp-content/plugins/bp-mpo-activity-filter/readme.txt
@@ -2,9 +2,9 @@
 Contributors: boonebgorges, cuny-academic-commons
 Tags: buddypress, activity, privacy, more privacy options, filter
 Requires at least: WP 2.8, BuddyPress 1.2
-Tested up to: WP 3.2.1, BuddyPress 1.5.1
+Tested up to: WP 3.4.2, BuddyPress 1.6.1
 Donate link: http://teleogistic.net/donate/
-Stable tag: 1.1.1
+Stable tag: 1.2
 
 When using More Privacy Options, this plugin removes items from BP activity streams according to user roles.
 
@@ -24,6 +24,9 @@ I borrowed the idea, and a little bit of the code, from this plugin: http://blog
 
 == Changelog ==
 
+= 1.2 =
+* Refactored some queries to avoid unnecessary switch_to_blog() usage
+
 = 1.1.1 =
 * Oops