Index: bp-themes/bp-sn-parent/blogs/my-blogs.php
===================================================================
--- bp-themes/bp-sn-parent/blogs/my-blogs.php	(revision 2046)
+++ bp-themes/bp-sn-parent/blogs/my-blogs.php	(working copy)
@@ -32,7 +32,7 @@
 		<?php else: ?>
 
 			<div id="message" class="info">
-				<p><?php bp_word_or_name( __( "You haven't created any blogs yet.", 'buddypress' ), __( "%s hasn't created any public blogs yet.", 'buddypress' ) ) ?> <?php bp_create_blog_link() ?> </p>
+				<p><?php bp_word_or_name( __( "You haven't created any blogs yet.", 'buddypress' ), __( "%s hasn't created any public blogs yet.", 'buddypress' ) ) ?> <?php if ( bp_can_create_blogs()) bp_create_blog_link() ?> </p>
 			</div>
 
 		<?php endif;?>
Index: bp-blogs.php
===================================================================
--- bp-blogs.php	(revision 2046)
+++ bp-blogs.php	(working copy)
@@ -131,6 +131,21 @@
 }
 add_action( 'plugins_loaded', 'bp_blogs_setup_root_component', 2 );
 
+function bp_can_create_blogs() {	
+	$active_signup = get_site_option( 'registration' );
+	if( !$active_signup )
+		$active_signup = 'all';
+
+	$active_signup = apply_filters( 'wpmu_active_signup', $active_signup );
+	
+	if ( is_site_admin() )
+		return true;
+	if ( ( $active_signup == 'blog' || $active_signup == 'all' ) && is_user_logged_in() ) 
+		return true;
+		
+	return false;
+}
+ 
 /**
  * bp_blogs_setup_nav()
  *
@@ -142,7 +157,7 @@
  */
 function bp_blogs_setup_nav() {
 	global $bp;
-	
+
 	/* Add 'Blogs' to the main navigation */
 	bp_core_new_nav_item( array( 'name' => __( 'Blogs', 'buddypress' ), 'slug' => $bp->blogs->slug, 'position' => 30, 'screen_function' => 'bp_blogs_screen_my_blogs', 'default_subnav_slug' => 'my-blogs', 'item_css_id' => $bp->blogs->id ) );
 	
@@ -152,7 +167,8 @@
 	bp_core_new_subnav_item( array( 'name' => __( 'My Blogs', 'buddypress' ), 'slug' => 'my-blogs', 'parent_url' => $blogs_link, 'parent_slug' => $bp->blogs->slug, 'screen_function' => 'bp_blogs_screen_my_blogs', 'position' => 10, 'item_css_id' => 'my-blogs-list' ) );
 	bp_core_new_subnav_item( array( 'name' => __( 'Recent Posts', 'buddypress' ), 'slug' => 'recent-posts', 'parent_url' => $blogs_link, 'parent_slug' => $bp->blogs->slug, 'screen_function' => 'bp_blogs_screen_recent_posts', 'position' => 20 ) );
 	bp_core_new_subnav_item( array( 'name' => __( 'Recent Comments', 'buddypress' ), 'slug' => 'recent-comments', 'parent_url' => $blogs_link, 'parent_slug' => $bp->blogs->slug, 'screen_function' => 'bp_blogs_screen_recent_comments', 'position' => 30 ) );
-	bp_core_new_subnav_item( array( 'name' => __( 'Create a Blog', 'buddypress' ), 'slug' => 'create-a-blog', 'parent_url' => $blogs_link, 'parent_slug' => $bp->blogs->slug, 'screen_function' => 'bp_blogs_screen_create_a_blog', 'position' => 40 ) );
+	if ( bp_can_create_blogs() )
+		bp_core_new_subnav_item( array( 'name' => __( 'Create a Blog', 'buddypress' ), 'slug' => 'create-a-blog', 'parent_url' => $blogs_link, 'parent_slug' => $bp->blogs->slug, 'screen_function' => 'bp_blogs_screen_create_a_blog', 'position' => 40 ) );
 
 	/* Set up the component options navigation for Blog */
 	if ( 'blogs' == $bp->current_component ) {
