Index: bp-blogs.php
===================================================================
--- bp-blogs.php	(revision 3383)
+++ bp-blogs.php	(working copy)
@@ -293,8 +293,10 @@
 	bp_blogs_update_blogmeta( $recorded_blog->blog_id, 'description', $description );
 	bp_blogs_update_blogmeta( $recorded_blog->blog_id, 'last_activity', bp_core_current_time() );
 
+    $is_blog_public = apply_filters( 'bp_is_new_blog_public', (int)$_POST['blog_public'] );
+
 	// Only record this activity if the blog is public
-	if ( (int)$_POST['blog_public'] && !$no_activity ) {
+	if ( $is_blog_public && !$no_activity ) {
 		// Record this in activity streams
 		bp_blogs_record_activity( array(
 			'user_id'      => $recorded_blog->user_id,
@@ -356,8 +358,10 @@
 	if ( $post->post_type != 'post' )
 		return false;
 
+    $is_blog_public = apply_filters( 'bp_is_blog_public', (int)get_blog_option( $blog_id, 'blog_public' ) );
+
 	if ( 'publish' == $post->post_status && '' == $post->post_password ) {
-		if ( (int)get_blog_option( $blog_id, 'blog_public' ) || !is_multisite() ) {
+		if ( $is_blog_public || !is_multisite() ) {
 			/* Record this in activity streams */
 			$post_permalink = get_permalink( $post_id );
 
@@ -426,8 +430,10 @@
 	if ( !empty( $recorded_comment->post->post_password ) )
 		return false;
 
+    $is_blog_public = apply_filters( 'bp_is_blog_public', (int)get_blog_option( $blog_id, 'blog_public' ) );
+
 	// If blog is public allow activity to be posted
-	if ( get_blog_option( $blog_id, 'blog_public' ) ) {
+	if ( $is_blog_public ) {
 
 		// Get activity related links
 		$post_permalink = get_permalink( $recorded_comment->comment_post_ID );
