Version Description
Download this release
Release Info
| Developer | apeatling |
| Plugin | |
| Version | 1.0.2 |
| Comparing to | |
| See all releases | |
Code changes from version 1.0.1 to 1.0.2
- bp-activity/bp-activity-templatetags.php +10 -1
- bp-activity/feeds/bp-activity-friends-feed.php +3 -2
- bp-activity/feeds/bp-activity-personal-feed.php +3 -2
- bp-activity/feeds/bp-activity-sitewide-feed.php +4 -3
- bp-blogs.php +1 -1
- bp-blogs/bp-blogs-templatetags.php +8 -8
- bp-core.php +17 -4
- bp-core/bp-core-adminbar.php +2 -0
- bp-core/bp-core-avatars.php +4 -4
- bp-core/bp-core-templatetags.php +2 -2
- bp-core/css/admin-bar.css +1 -1
- bp-forums.php +0 -3
- bp-forums/bbpress-plugins/buddypress-enable.php +1 -5
- bp-forums/bp-forums-filters.php +0 -23
- bp-forums/bp-forums-templatetags.php +5 -3
- bp-forums/installation-readme.txt +1 -1
- bp-friends.php +28 -29
- bp-friends/bp-friends-templatetags.php +1 -1
- bp-groups.php +121 -108
- bp-groups/bp-groups-classes.php +6 -0
- bp-groups/bp-groups-templatetags.php +6 -6
- bp-loader.php +2 -2
- bp-messages.php +12 -8
- bp-messages/bp-messages-ajax.php +6 -1
- bp-messages/bp-messages-templatetags.php +10 -7
- bp-themes/bphome/style.css +1 -1
- bp-themes/bpmember/groups/admin/manage-members.php +1 -1
- bp-themes/bpmember/style.css +1 -1
- bp-themes/bpskeletonmember/groups/admin/manage-members.php +1 -1
- bp-themes/bpskeletonmember/userbar.php +1 -1
- bp-wire.php +2 -0
- bp-xprofile.php +2 -0
- bp-xprofile/bp-xprofile-signup.php +20 -16
- bp-xprofile/bp-xprofile-templatetags.php +1 -1
- readme.txt +1 -1
bp-activity/bp-activity-templatetags.php
CHANGED
|
@@ -33,7 +33,7 @@ class BP_Activity_Template {
|
|
| 33 |
if ( $type == 'friends' && ( bp_is_home() || is_site_admin() || $bp->loggedin_user->id == $user_id ) )
|
| 34 |
$this->activities = bp_activity_get_friends_activity( $user_id, $timeframe, $this->pag_num, $this->pag_page );
|
| 35 |
|
| 36 |
-
if ( !$max )
|
| 37 |
$this->total_activity_count = (int)$this->activities['total'];
|
| 38 |
else
|
| 39 |
$this->total_activity_count = (int)$max;
|
|
@@ -309,6 +309,15 @@ function bp_activities_member_rss_link() {
|
|
| 309 |
|
| 310 |
/* Template tags for RSS feed output */
|
| 311 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 312 |
function bp_activity_feed_item_title() {
|
| 313 |
echo bp_get_activity_feed_item_title();
|
| 314 |
}
|
| 33 |
if ( $type == 'friends' && ( bp_is_home() || is_site_admin() || $bp->loggedin_user->id == $user_id ) )
|
| 34 |
$this->activities = bp_activity_get_friends_activity( $user_id, $timeframe, $this->pag_num, $this->pag_page );
|
| 35 |
|
| 36 |
+
if ( !$max || $max >= (int)$this->activities['total'] )
|
| 37 |
$this->total_activity_count = (int)$this->activities['total'];
|
| 38 |
else
|
| 39 |
$this->total_activity_count = (int)$max;
|
| 309 |
|
| 310 |
/* Template tags for RSS feed output */
|
| 311 |
|
| 312 |
+
function bp_activity_feed_item_guid() {
|
| 313 |
+
echo bp_get_activity_feed_item_guid();
|
| 314 |
+
}
|
| 315 |
+
function bp_get_activity_feed_item_guid() {
|
| 316 |
+
global $activities_template;
|
| 317 |
+
|
| 318 |
+
return apply_filters( 'bp_get_activity_feed_item_title', md5( $activities_template->activity->date_recorded . '-' . $activities_template->activity->content ) );
|
| 319 |
+
}
|
| 320 |
+
|
| 321 |
function bp_activity_feed_item_title() {
|
| 322 |
echo bp_get_activity_feed_item_title();
|
| 323 |
}
|
bp-activity/feeds/bp-activity-friends-feed.php
CHANGED
|
@@ -23,16 +23,17 @@ header('Status: 200 OK');
|
|
| 23 |
<link><?php echo $bp->displayed_user->domain . $bp->activity->slug . '/my-friends/feed' ?></link>
|
| 24 |
<description><?php printf( __( '%s - Friends Activity Feed', 'buddypress' ), $bp->displayed_user->fullname ) ?></description>
|
| 25 |
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', bp_activity_get_last_updated(), false); ?></pubDate>
|
| 26 |
-
<generator>http://buddypress.org/?
|
| 27 |
<language><?php echo get_option('rss_language'); ?></language>
|
| 28 |
<?php do_action('bp_activity_friends_feed_head'); ?>
|
| 29 |
|
| 30 |
<?php if ( bp_has_activities( 'type=friends&max=50' ) ) : ?>
|
| 31 |
<?php while ( bp_activities() ) : bp_the_activity(); ?>
|
| 32 |
<item>
|
|
|
|
| 33 |
<title><![CDATA[<?php bp_activity_feed_item_title() ?>]]></title>
|
| 34 |
<link><?php echo bp_activity_feed_item_link() ?></link>
|
| 35 |
-
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000',
|
| 36 |
|
| 37 |
<description><![CDATA[<?php bp_activity_feed_item_description() ?>]]></description>
|
| 38 |
<?php do_action('bp_activity_personal_feed_item'); ?>
|
| 23 |
<link><?php echo $bp->displayed_user->domain . $bp->activity->slug . '/my-friends/feed' ?></link>
|
| 24 |
<description><?php printf( __( '%s - Friends Activity Feed', 'buddypress' ), $bp->displayed_user->fullname ) ?></description>
|
| 25 |
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', bp_activity_get_last_updated(), false); ?></pubDate>
|
| 26 |
+
<generator>http://buddypress.org/?v=<?php echo BP_VERSION ?></generator>
|
| 27 |
<language><?php echo get_option('rss_language'); ?></language>
|
| 28 |
<?php do_action('bp_activity_friends_feed_head'); ?>
|
| 29 |
|
| 30 |
<?php if ( bp_has_activities( 'type=friends&max=50' ) ) : ?>
|
| 31 |
<?php while ( bp_activities() ) : bp_the_activity(); ?>
|
| 32 |
<item>
|
| 33 |
+
<guid><?php bp_activity_feed_item_guid() ?></guid>
|
| 34 |
<title><![CDATA[<?php bp_activity_feed_item_title() ?>]]></title>
|
| 35 |
<link><?php echo bp_activity_feed_item_link() ?></link>
|
| 36 |
+
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', bp_get_activity_feed_item_date(), false); ?></pubDate>
|
| 37 |
|
| 38 |
<description><![CDATA[<?php bp_activity_feed_item_description() ?>]]></description>
|
| 39 |
<?php do_action('bp_activity_personal_feed_item'); ?>
|
bp-activity/feeds/bp-activity-personal-feed.php
CHANGED
|
@@ -23,16 +23,17 @@ header('Status: 200 OK');
|
|
| 23 |
<link><?php echo $bp->displayed_user->domain . $bp->activity->slug . '/feed' ?></link>
|
| 24 |
<description><?php printf( __( '%s - Activity Feed', 'buddypress' ), $bp->displayed_user->fullname ) ?></description>
|
| 25 |
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', bp_activity_get_last_updated(), false); ?></pubDate>
|
| 26 |
-
<generator>http://buddypress.org/?
|
| 27 |
<language><?php echo get_option('rss_language'); ?></language>
|
| 28 |
<?php do_action('bp_activity_personal_feed_head'); ?>
|
| 29 |
|
| 30 |
<?php if ( bp_has_activities( 'type=personal&max=50' ) ) : ?>
|
| 31 |
<?php while ( bp_activities() ) : bp_the_activity(); ?>
|
| 32 |
<item>
|
|
|
|
| 33 |
<title><![CDATA[<?php bp_activity_feed_item_title() ?>]]></title>
|
| 34 |
<link><?php echo bp_activity_feed_item_link() ?></link>
|
| 35 |
-
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000',
|
| 36 |
|
| 37 |
<description><![CDATA[<?php bp_activity_feed_item_description() ?>]]></description>
|
| 38 |
<?php do_action('bp_activity_personal_feed_item'); ?>
|
| 23 |
<link><?php echo $bp->displayed_user->domain . $bp->activity->slug . '/feed' ?></link>
|
| 24 |
<description><?php printf( __( '%s - Activity Feed', 'buddypress' ), $bp->displayed_user->fullname ) ?></description>
|
| 25 |
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', bp_activity_get_last_updated(), false); ?></pubDate>
|
| 26 |
+
<generator>http://buddypress.org/?v=<?php echo BP_VERSION ?></generator>
|
| 27 |
<language><?php echo get_option('rss_language'); ?></language>
|
| 28 |
<?php do_action('bp_activity_personal_feed_head'); ?>
|
| 29 |
|
| 30 |
<?php if ( bp_has_activities( 'type=personal&max=50' ) ) : ?>
|
| 31 |
<?php while ( bp_activities() ) : bp_the_activity(); ?>
|
| 32 |
<item>
|
| 33 |
+
<guid><?php bp_activity_feed_item_guid() ?></guid>
|
| 34 |
<title><![CDATA[<?php bp_activity_feed_item_title() ?>]]></title>
|
| 35 |
<link><?php echo bp_activity_feed_item_link() ?></link>
|
| 36 |
+
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', bp_get_activity_feed_item_date(), false); ?></pubDate>
|
| 37 |
|
| 38 |
<description><![CDATA[<?php bp_activity_feed_item_description() ?>]]></description>
|
| 39 |
<?php do_action('bp_activity_personal_feed_item'); ?>
|
bp-activity/feeds/bp-activity-sitewide-feed.php
CHANGED
|
@@ -24,16 +24,17 @@ header('Status: 200 OK');
|
|
| 24 |
<link><?php echo site_url() . '/' . $bp->activity->slug . '/feed' ?></link>
|
| 25 |
<description><?php _e( 'Site Wide Activity Feed', 'buddypress' ) ?></description>
|
| 26 |
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', bp_activity_get_last_updated(), false); ?></pubDate>
|
| 27 |
-
<generator>http://buddypress.org/?
|
| 28 |
<language><?php echo get_option('rss_language'); ?></language>
|
| 29 |
<?php do_action('bp_activity_sitewide_feed_head'); ?>
|
| 30 |
|
| 31 |
<?php if ( bp_has_activities( 'type=sitewide&max=50' ) ) : ?>
|
| 32 |
<?php while ( bp_activities() ) : bp_the_activity(); ?>
|
| 33 |
<item>
|
|
|
|
| 34 |
<title><![CDATA[<?php bp_activity_feed_item_title() ?>]]></title>
|
| 35 |
-
<link><?php
|
| 36 |
-
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000',
|
| 37 |
|
| 38 |
<description><![CDATA[<?php bp_activity_feed_item_description() ?>]]></description>
|
| 39 |
<?php do_action('bp_activity_personal_feed_item'); ?>
|
| 24 |
<link><?php echo site_url() . '/' . $bp->activity->slug . '/feed' ?></link>
|
| 25 |
<description><?php _e( 'Site Wide Activity Feed', 'buddypress' ) ?></description>
|
| 26 |
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', bp_activity_get_last_updated(), false); ?></pubDate>
|
| 27 |
+
<generator>http://buddypress.org/?v=<?php echo BP_VERSION ?></generator>
|
| 28 |
<language><?php echo get_option('rss_language'); ?></language>
|
| 29 |
<?php do_action('bp_activity_sitewide_feed_head'); ?>
|
| 30 |
|
| 31 |
<?php if ( bp_has_activities( 'type=sitewide&max=50' ) ) : ?>
|
| 32 |
<?php while ( bp_activities() ) : bp_the_activity(); ?>
|
| 33 |
<item>
|
| 34 |
+
<guid><?php bp_activity_feed_item_guid() ?></guid>
|
| 35 |
<title><![CDATA[<?php bp_activity_feed_item_title() ?>]]></title>
|
| 36 |
+
<link><?php bp_activity_feed_item_link() ?></link>
|
| 37 |
+
<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', bp_get_activity_feed_item_date(), false); ?></pubDate>
|
| 38 |
|
| 39 |
<description><![CDATA[<?php bp_activity_feed_item_description() ?>]]></description>
|
| 40 |
<?php do_action('bp_activity_personal_feed_item'); ?>
|
bp-blogs.php
CHANGED
|
@@ -453,7 +453,7 @@ add_action( 'edit_post', 'bp_blogs_record_post' );
|
|
| 453 |
|
| 454 |
|
| 455 |
function bp_blogs_record_comment( $comment_id, $is_approved ) {
|
| 456 |
-
global $wpdb;
|
| 457 |
|
| 458 |
if ( !$is_approved )
|
| 459 |
return false;
|
| 453 |
|
| 454 |
|
| 455 |
function bp_blogs_record_comment( $comment_id, $is_approved ) {
|
| 456 |
+
global $wpdb, $bp;
|
| 457 |
|
| 458 |
if ( !$is_approved )
|
| 459 |
return false;
|
bp-blogs/bp-blogs-templatetags.php
CHANGED
|
@@ -98,7 +98,7 @@ function bp_blogs_signup_blog( $blogname = '', $blog_title = '', $errors = '' )
|
|
| 98 |
<p>
|
| 99 |
<label for="blog_public_on"><?php _e('Privacy:', 'buddypress') ?></label>
|
| 100 |
<?php _e('I would like my blog to appear in search engines like Google and Technorati, and in public listings around this site.', 'buddypress'); ?>
|
| 101 |
-
<div
|
| 102 |
<label class="checkbox" for="blog_public_on">
|
| 103 |
<input type="radio" id="blog_public_on" name="blog_public" value="1" <?php if( !isset( $_POST['blog_public'] ) || '1' == $_POST['blog_public'] ) { ?>checked="checked"<?php } ?> />
|
| 104 |
<strong><?php _e( 'Yes' , 'buddypress'); ?></strong>
|
|
@@ -221,7 +221,7 @@ class BP_Blogs_User_Blogs_Template {
|
|
| 221 |
wp_cache_set( 'bp_blogs_for_user_' . $user_id, $this->blogs, 'bp' );
|
| 222 |
}
|
| 223 |
|
| 224 |
-
if ( !$max )
|
| 225 |
$this->total_blog_count = (int)$this->blogs['count'];
|
| 226 |
else
|
| 227 |
$this->total_blog_count = (int)$max;
|
|
@@ -397,7 +397,7 @@ class BP_Blogs_Blog_Post_Template {
|
|
| 397 |
wp_cache_set( 'bp_user_posts_' . $user_id, $this->posts, 'bp' );
|
| 398 |
}
|
| 399 |
|
| 400 |
-
if ( !$max )
|
| 401 |
$this->total_post_count = (int)$this->posts['count'];
|
| 402 |
else
|
| 403 |
$this->total_post_count = (int)$max;
|
|
@@ -831,7 +831,7 @@ class BP_Blogs_Post_Comment_Template {
|
|
| 831 |
wp_cache_set( 'bp_user_comments_' . $user_id, $this->comments, 'bp' );
|
| 832 |
}
|
| 833 |
|
| 834 |
-
if ( !$max )
|
| 835 |
$this->total_comment_count = (int)$this->comments['count'];
|
| 836 |
else
|
| 837 |
$this->total_comment_count = (int)$max;
|
|
@@ -1084,7 +1084,7 @@ class BP_Blogs_Site_Blogs_Template {
|
|
| 1084 |
}
|
| 1085 |
}
|
| 1086 |
|
| 1087 |
-
if ( !$max )
|
| 1088 |
$this->total_blog_count = (int)$this->blogs['total'];
|
| 1089 |
else
|
| 1090 |
$this->total_blog_count = (int)$max;
|
|
@@ -1227,7 +1227,7 @@ function bp_the_site_blog_avatar() {
|
|
| 1227 |
* In future BuddyPress versions you will be able to set the avatar for a blog.
|
| 1228 |
* Right now you can use a filter with the ID of the blog to change it if you wish.
|
| 1229 |
*/
|
| 1230 |
-
return apply_filters( 'bp_get_blogs_blog_avatar_' . $site_blogs_template->blog->blog_id, '<img src="http://www.gravatar.com/avatar/' . md5( $site_blogs_template->blog->blog_id . '.blogs@' . $bp->root_domain ) . '?d=identicon&s=150" class="avatar blog-avatar" alt="' . __( 'Blog Avatar', 'buddypress' ) . '" />', $site_blogs_template->blog->blog_id );
|
| 1231 |
}
|
| 1232 |
|
| 1233 |
function bp_the_site_blog_avatar_thumb() {
|
|
@@ -1236,7 +1236,7 @@ function bp_the_site_blog_avatar_thumb() {
|
|
| 1236 |
function bp_get_the_site_blog_avatar_thumb() {
|
| 1237 |
global $site_blogs_template, $bp;
|
| 1238 |
|
| 1239 |
-
return apply_filters( 'bp_get_blogs_blog_avatar_thumb_' . $site_blogs_template->blog->blog_id, '<img src="http://www.gravatar.com/avatar/' . md5( $site_blogs_template->blog->blog_id . '.blogs@' . $bp->root_domain ) . '?d=identicon&s=50" class="avatar blog-avatar thumb" alt="' . __( 'Blog Avatar', 'buddypress' ) . '" />', $site_blogs_template->blog->blog_id );
|
| 1240 |
}
|
| 1241 |
|
| 1242 |
function bp_the_site_blog_avatar_mini() {
|
|
@@ -1245,7 +1245,7 @@ function bp_the_site_blog_avatar_mini() {
|
|
| 1245 |
function bp_get_the_site_blog_avatar_mini() {
|
| 1246 |
global $site_blogs_template, $bp;
|
| 1247 |
|
| 1248 |
-
return apply_filters( 'bp_get_blogs_blog_avatar_mini_' . $site_blogs_template->blog->blog_id, '<img src="http://www.gravatar.com/avatar/' . md5( $site_blogs_template->blog->blog_id . '.blogs@' . $bp->root_domain ) . '?d=identicon&s=25" class="avatar blog-avatar mini" alt="' . __( 'Blog Avatar', 'buddypress' ) . '" />', $site_blogs_template->blog->blog_id );
|
| 1249 |
}
|
| 1250 |
|
| 1251 |
function bp_the_site_blog_link() {
|
| 98 |
<p>
|
| 99 |
<label for="blog_public_on"><?php _e('Privacy:', 'buddypress') ?></label>
|
| 100 |
<?php _e('I would like my blog to appear in search engines like Google and Technorati, and in public listings around this site.', 'buddypress'); ?>
|
| 101 |
+
<div class="clear"></div>
|
| 102 |
<label class="checkbox" for="blog_public_on">
|
| 103 |
<input type="radio" id="blog_public_on" name="blog_public" value="1" <?php if( !isset( $_POST['blog_public'] ) || '1' == $_POST['blog_public'] ) { ?>checked="checked"<?php } ?> />
|
| 104 |
<strong><?php _e( 'Yes' , 'buddypress'); ?></strong>
|
| 221 |
wp_cache_set( 'bp_blogs_for_user_' . $user_id, $this->blogs, 'bp' );
|
| 222 |
}
|
| 223 |
|
| 224 |
+
if ( !$max || $max >= (int)$this->blogs['count'] )
|
| 225 |
$this->total_blog_count = (int)$this->blogs['count'];
|
| 226 |
else
|
| 227 |
$this->total_blog_count = (int)$max;
|
| 397 |
wp_cache_set( 'bp_user_posts_' . $user_id, $this->posts, 'bp' );
|
| 398 |
}
|
| 399 |
|
| 400 |
+
if ( !$max || $max >= (int)$this->posts['count'] )
|
| 401 |
$this->total_post_count = (int)$this->posts['count'];
|
| 402 |
else
|
| 403 |
$this->total_post_count = (int)$max;
|
| 831 |
wp_cache_set( 'bp_user_comments_' . $user_id, $this->comments, 'bp' );
|
| 832 |
}
|
| 833 |
|
| 834 |
+
if ( !$max || $max >= (int)$this->comments['count'] )
|
| 835 |
$this->total_comment_count = (int)$this->comments['count'];
|
| 836 |
else
|
| 837 |
$this->total_comment_count = (int)$max;
|
| 1084 |
}
|
| 1085 |
}
|
| 1086 |
|
| 1087 |
+
if ( !$max || $max >= (int)$this->blogs['total'] )
|
| 1088 |
$this->total_blog_count = (int)$this->blogs['total'];
|
| 1089 |
else
|
| 1090 |
$this->total_blog_count = (int)$max;
|
| 1227 |
* In future BuddyPress versions you will be able to set the avatar for a blog.
|
| 1228 |
* Right now you can use a filter with the ID of the blog to change it if you wish.
|
| 1229 |
*/
|
| 1230 |
+
return apply_filters( 'bp_get_blogs_blog_avatar_' . $site_blogs_template->blog->blog_id, '<img src="' . apply_filters( 'bp_gravatar_url', 'http://www.gravatar.com/avatar/' ) . md5( $site_blogs_template->blog->blog_id . '.blogs@' . $bp->root_domain ) . '?d=identicon&s=150" class="avatar blog-avatar" alt="' . __( 'Blog Avatar', 'buddypress' ) . '" />', $site_blogs_template->blog->blog_id );
|
| 1231 |
}
|
| 1232 |
|
| 1233 |
function bp_the_site_blog_avatar_thumb() {
|
| 1236 |
function bp_get_the_site_blog_avatar_thumb() {
|
| 1237 |
global $site_blogs_template, $bp;
|
| 1238 |
|
| 1239 |
+
return apply_filters( 'bp_get_blogs_blog_avatar_thumb_' . $site_blogs_template->blog->blog_id, '<img src="' . apply_filters( 'bp_gravatar_url', 'http://www.gravatar.com/avatar/' ) . md5( $site_blogs_template->blog->blog_id . '.blogs@' . $bp->root_domain ) . '?d=identicon&s=50" class="avatar blog-avatar thumb" alt="' . __( 'Blog Avatar', 'buddypress' ) . '" />', $site_blogs_template->blog->blog_id );
|
| 1240 |
}
|
| 1241 |
|
| 1242 |
function bp_the_site_blog_avatar_mini() {
|
| 1245 |
function bp_get_the_site_blog_avatar_mini() {
|
| 1246 |
global $site_blogs_template, $bp;
|
| 1247 |
|
| 1248 |
+
return apply_filters( 'bp_get_blogs_blog_avatar_mini_' . $site_blogs_template->blog->blog_id, '<img src="' . apply_filters( 'bp_gravatar_url', 'http://www.gravatar.com/avatar/' ) . md5( $site_blogs_template->blog->blog_id . '.blogs@' . $bp->root_domain ) . '?d=identicon&s=25" class="avatar blog-avatar mini" alt="' . __( 'Blog Avatar', 'buddypress' ) . '" />', $site_blogs_template->blog->blog_id );
|
| 1249 |
}
|
| 1250 |
|
| 1251 |
function bp_the_site_blog_link() {
|
bp-core.php
CHANGED
|
@@ -21,10 +21,6 @@ if ( !defined( 'CUSTOM_USER_TABLE' ) )
|
|
| 21 |
if ( !defined( 'CUSTOM_USER_META_TABLE' ) )
|
| 22 |
define( 'CUSTOM_USER_META_TABLE', $wpdb->base_prefix . 'usermeta' );
|
| 23 |
|
| 24 |
-
/* Load the language file */
|
| 25 |
-
if ( file_exists( BP_PLUGIN_DIR . '/bp-languages/buddypress-' . get_locale() . '.mo' ) )
|
| 26 |
-
load_textdomain( 'buddypress', BP_PLUGIN_DIR . '/bp-languages/buddypress-' . get_locale() . '.mo' );
|
| 27 |
-
|
| 28 |
/* Load the files containing functions that we globally will need. */
|
| 29 |
require ( BP_PLUGIN_DIR . '/bp-core/bp-core-catchuri.php' );
|
| 30 |
require ( BP_PLUGIN_DIR . '/bp-core/bp-core-classes.php' );
|
|
@@ -1511,6 +1507,23 @@ add_action( 'wpmu_delete_user', 'bp_core_remove_data', 1 );
|
|
| 1511 |
add_action( 'delete_user', 'bp_core_remove_data', 1 );
|
| 1512 |
|
| 1513 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1514 |
/**
|
| 1515 |
* bp_core_clear_user_object_cache()
|
| 1516 |
*
|
| 21 |
if ( !defined( 'CUSTOM_USER_META_TABLE' ) )
|
| 22 |
define( 'CUSTOM_USER_META_TABLE', $wpdb->base_prefix . 'usermeta' );
|
| 23 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 24 |
/* Load the files containing functions that we globally will need. */
|
| 25 |
require ( BP_PLUGIN_DIR . '/bp-core/bp-core-catchuri.php' );
|
| 26 |
require ( BP_PLUGIN_DIR . '/bp-core/bp-core-classes.php' );
|
| 1507 |
add_action( 'delete_user', 'bp_core_remove_data', 1 );
|
| 1508 |
|
| 1509 |
|
| 1510 |
+
/**
|
| 1511 |
+
* bp_load_buddypress_textdomain()
|
| 1512 |
+
*
|
| 1513 |
+
* Load the buddypress translation file for current language
|
| 1514 |
+
*
|
| 1515 |
+
* @package BuddyPress Core
|
| 1516 |
+
*/
|
| 1517 |
+
function bp_core_load_buddypress_textdomain() {
|
| 1518 |
+
$locale = apply_filters( 'buddypress_locale', get_locale() );
|
| 1519 |
+
$mofile = BP_PLUGIN_DIR . "/bp-languages/buddypress-$locale.mo";
|
| 1520 |
+
|
| 1521 |
+
if ( file_exists( $mofile ) )
|
| 1522 |
+
load_textdomain( 'buddypress', $mofile );
|
| 1523 |
+
}
|
| 1524 |
+
add_action ( 'plugins_loaded', 'bp_core_load_buddypress_textdomain', 9 );
|
| 1525 |
+
|
| 1526 |
+
|
| 1527 |
/**
|
| 1528 |
* bp_core_clear_user_object_cache()
|
| 1529 |
*
|
bp-core/bp-core-adminbar.php
CHANGED
|
@@ -259,6 +259,8 @@ function bp_adminbar_random_menu() {
|
|
| 259 |
<li><a href="<?php echo $bp->root_domain . '/' . $bp->blogs->slug . '/?random-blog' ?>"><?php _e( 'Random Blog', 'buddypress' ) ?></a></li>
|
| 260 |
|
| 261 |
<?php endif; ?>
|
|
|
|
|
|
|
| 262 |
</ul>
|
| 263 |
</li>
|
| 264 |
<?php
|
| 259 |
<li><a href="<?php echo $bp->root_domain . '/' . $bp->blogs->slug . '/?random-blog' ?>"><?php _e( 'Random Blog', 'buddypress' ) ?></a></li>
|
| 260 |
|
| 261 |
<?php endif; ?>
|
| 262 |
+
|
| 263 |
+
<?php do_action( 'bp_adminbar_random_menu' ) ?>
|
| 264 |
</ul>
|
| 265 |
</li>
|
| 266 |
<?php
|
bp-core/bp-core-avatars.php
CHANGED
|
@@ -377,11 +377,11 @@ function bp_core_avatar_cropstore( $source, $canvas, $v1_x1, $v1_y1, $v1_w, $v1_
|
|
| 377 |
$filename_item_id = $item_id . '-';
|
| 378 |
|
| 379 |
if ( $filename != 'avatar' ) {
|
| 380 |
-
$v1_filename = '-' . $filename_item_id . $filename . '-thumb';
|
| 381 |
-
$v2_filename = '-' . $filename_item_id . $filename . '-full';
|
| 382 |
} else {
|
| 383 |
-
$v1_filename = '-avatar1';
|
| 384 |
-
$v2_filename = '-avatar2';
|
| 385 |
}
|
| 386 |
|
| 387 |
$v1_filename = apply_filters( 'bp_avatar_v1_filename', $v1_filename );
|
| 377 |
$filename_item_id = $item_id . '-';
|
| 378 |
|
| 379 |
if ( $filename != 'avatar' ) {
|
| 380 |
+
$v1_filename = '-' . md5( $filename_item_id . $filename . time() ) . '-thumb';
|
| 381 |
+
$v2_filename = '-' . md5( $filename_item_id . $filename . time() ) . '-full';
|
| 382 |
} else {
|
| 383 |
+
$v1_filename = md5( $source . time() ) . '-avatar1';
|
| 384 |
+
$v2_filename = md5( $source . time() ) . '-avatar2';
|
| 385 |
}
|
| 386 |
|
| 387 |
$v1_filename = apply_filters( 'bp_avatar_v1_filename', $v1_filename );
|
bp-core/bp-core-templatetags.php
CHANGED
|
@@ -500,7 +500,7 @@ function bp_is_page($page) {
|
|
| 500 |
}
|
| 501 |
|
| 502 |
function bp_has_custom_signup_page() {
|
| 503 |
-
if ( file_exists( WP_CONTENT_DIR . '/themes/' . get_blog_option(
|
| 504 |
return true;
|
| 505 |
|
| 506 |
return false;
|
|
@@ -797,7 +797,7 @@ class BP_Core_Members_Template {
|
|
| 797 |
}
|
| 798 |
}
|
| 799 |
|
| 800 |
-
if ( !$max )
|
| 801 |
$this->total_member_count = (int)$this->members['total'];
|
| 802 |
else
|
| 803 |
$this->total_member_count = (int)$max;
|
| 500 |
}
|
| 501 |
|
| 502 |
function bp_has_custom_signup_page() {
|
| 503 |
+
if ( file_exists( WP_CONTENT_DIR . '/themes/' . get_blog_option( BP_ROOT_BLOG, 'template') . '/register.php') )
|
| 504 |
return true;
|
| 505 |
|
| 506 |
return false;
|
| 797 |
}
|
| 798 |
}
|
| 799 |
|
| 800 |
+
if ( !$max || $max >= (int)$this->members['total'] )
|
| 801 |
$this->total_member_count = (int)$this->members['total'];
|
| 802 |
else
|
| 803 |
$this->total_member_count = (int)$max;
|
bp-core/css/admin-bar.css
CHANGED
|
@@ -199,7 +199,7 @@ body { padding-top: 28px !important; }
|
|
| 199 |
|
| 200 |
#wp-admin-bar img.avatar {
|
| 201 |
float: left !important;
|
| 202 |
-
border: 2px solid #fff !important
|
| 203 |
margin-right: 8px !important;
|
| 204 |
}
|
| 205 |
|
| 199 |
|
| 200 |
#wp-admin-bar img.avatar {
|
| 201 |
float: left !important;
|
| 202 |
+
border: 2px solid #fff !important;
|
| 203 |
margin-right: 8px !important;
|
| 204 |
}
|
| 205 |
|
bp-forums.php
CHANGED
|
@@ -154,9 +154,6 @@ function bp_forums_new_topic( $title = '', $topic_text = '', $topic_tags = '', $
|
|
| 154 |
|
| 155 |
function bp_forums_new_post( $post_text = '', $topic_id = 0 ) {
|
| 156 |
global $bbpress_live;
|
| 157 |
-
|
| 158 |
-
if ( !check_admin_referer( 'bp_forums_new_reply' ) )
|
| 159 |
-
return false;
|
| 160 |
|
| 161 |
if ( !is_object( $bbpress_live ) ) {
|
| 162 |
include_once( ABSPATH . WPINC . '/class-IXR.php' );
|
| 154 |
|
| 155 |
function bp_forums_new_post( $post_text = '', $topic_id = 0 ) {
|
| 156 |
global $bbpress_live;
|
|
|
|
|
|
|
|
|
|
| 157 |
|
| 158 |
if ( !is_object( $bbpress_live ) ) {
|
| 159 |
include_once( ABSPATH . WPINC . '/class-IXR.php' );
|
bp-forums/bbpress-plugins/buddypress-enable.php
CHANGED
|
@@ -23,10 +23,7 @@ function for_buddypress_strip_tags( $_post, $post ) {
|
|
| 23 |
$_post['poster_ip'],
|
| 24 |
$_post['pingback_queued']
|
| 25 |
);
|
| 26 |
-
|
| 27 |
-
$_post['post_text'] = str_replace( '<', '[', $_post['post_text'] );
|
| 28 |
-
$_post['post_text'] = str_replace( '>', ']', $_post['post_text'] );
|
| 29 |
-
|
| 30 |
return $_post;
|
| 31 |
}
|
| 32 |
add_filter( 'bb_xmlrpc_prepare_post', 'for_buddypress_strip_tags', 10, 2 );
|
|
@@ -49,7 +46,6 @@ add_filter( 'bb_xmlrpc_prepare_topic', 'for_buddypress_prepare_topic', 10, 2 );
|
|
| 49 |
|
| 50 |
function for_buddypress_pre_post( $post_text, $post_id, $topic_id ){
|
| 51 |
$post_text = stripslashes( stripslashes_deep($post_text) );
|
| 52 |
-
$post_text = str_replace( '/amp/', '&', $post_text );
|
| 53 |
$post_text = html_entity_decode( $post_text, ENT_COMPAT, "UTF-8" );
|
| 54 |
|
| 55 |
return $post_text;
|
| 23 |
$_post['poster_ip'],
|
| 24 |
$_post['pingback_queued']
|
| 25 |
);
|
| 26 |
+
|
|
|
|
|
|
|
|
|
|
| 27 |
return $_post;
|
| 28 |
}
|
| 29 |
add_filter( 'bb_xmlrpc_prepare_post', 'for_buddypress_strip_tags', 10, 2 );
|
| 46 |
|
| 47 |
function for_buddypress_pre_post( $post_text, $post_id, $topic_id ){
|
| 48 |
$post_text = stripslashes( stripslashes_deep($post_text) );
|
|
|
|
| 49 |
$post_text = html_entity_decode( $post_text, ENT_COMPAT, "UTF-8" );
|
| 50 |
|
| 51 |
return $post_text;
|
bp-forums/bp-forums-filters.php
CHANGED
|
@@ -1,11 +1,6 @@
|
|
| 1 |
<?php
|
| 2 |
|
| 3 |
/* BuddyPress filters */
|
| 4 |
-
add_filter( 'bp_forums_new_post_text', 'bp_forums_filter_encode' );
|
| 5 |
-
|
| 6 |
-
add_filter( 'bp_get_the_topic_post_content', 'bp_forums_filter_decode' );
|
| 7 |
-
add_filter( 'bp_get_the_topic_latest_post_excerpt', 'bp_forums_filter_decode' );
|
| 8 |
-
|
| 9 |
add_filter( 'bp_get_the_topic_latest_post_excerpt', 'bp_create_excerpt' );
|
| 10 |
|
| 11 |
/* Apply WordPress defined filters */
|
|
@@ -40,22 +35,4 @@ function bp_forums_add_allowed_tags( $allowedtags ) {
|
|
| 40 |
}
|
| 41 |
add_filter( 'edit_allowedtags', 'bp_forums_add_allowed_tags' );
|
| 42 |
|
| 43 |
-
|
| 44 |
-
function bp_forums_filter_encode( $content ) {
|
| 45 |
-
$content = htmlentities( $content, ENT_COMPAT, "UTF-8" );
|
| 46 |
-
$content = str_replace( '&', '/amp/', $content );
|
| 47 |
-
|
| 48 |
-
return $content;
|
| 49 |
-
}
|
| 50 |
-
|
| 51 |
-
function bp_forums_filter_decode( $content ) {
|
| 52 |
-
$content = str_replace( '/amp/', '&', $content );
|
| 53 |
-
$content = @html_entity_decode( $content, ENT_COMPAT, "UTF-8" );
|
| 54 |
-
$content = str_replace( '[', '<', $content );
|
| 55 |
-
$content = str_replace( ']', '>', $content );
|
| 56 |
-
$content = stripslashes( wp_filter_kses( $content ) );
|
| 57 |
-
|
| 58 |
-
return $content;
|
| 59 |
-
}
|
| 60 |
-
|
| 61 |
?>
|
| 1 |
<?php
|
| 2 |
|
| 3 |
/* BuddyPress filters */
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4 |
add_filter( 'bp_get_the_topic_latest_post_excerpt', 'bp_create_excerpt' );
|
| 5 |
|
| 6 |
/* Apply WordPress defined filters */
|
| 35 |
}
|
| 36 |
add_filter( 'edit_allowedtags', 'bp_forums_add_allowed_tags' );
|
| 37 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 38 |
?>
|
bp-forums/bp-forums-templatetags.php
CHANGED
|
@@ -30,8 +30,10 @@ class BP_Forums_Template_Forum {
|
|
| 30 |
$this->topic_count = 0;
|
| 31 |
$this->total_topic_count = 0;
|
| 32 |
} else {
|
| 33 |
-
|
| 34 |
-
|
|
|
|
|
|
|
| 35 |
else
|
| 36 |
$this->total_topic_count = (int)$max;
|
| 37 |
|
|
@@ -394,7 +396,7 @@ class BP_Forums_Template_Topic {
|
|
| 394 |
$this->post_count = 0;
|
| 395 |
$this->total_post_count = 0;
|
| 396 |
} else {
|
| 397 |
-
if ( !$max )
|
| 398 |
$this->total_post_count = (int) $forum_template->topic->topic_posts;
|
| 399 |
else
|
| 400 |
$this->total_post_count = (int)$max;
|
| 30 |
$this->topic_count = 0;
|
| 31 |
$this->total_topic_count = 0;
|
| 32 |
} else {
|
| 33 |
+
$forum_count = count( bp_forums_get_topics( $forum_id ) );
|
| 34 |
+
|
| 35 |
+
if ( !$max || $max >= $forum_count )
|
| 36 |
+
$this->total_topic_count = $forum_count;
|
| 37 |
else
|
| 38 |
$this->total_topic_count = (int)$max;
|
| 39 |
|
| 396 |
$this->post_count = 0;
|
| 397 |
$this->total_post_count = 0;
|
| 398 |
} else {
|
| 399 |
+
if ( !$max || $max >= (int) $forum_template->topic->topic_posts )
|
| 400 |
$this->total_post_count = (int) $forum_template->topic->topic_posts;
|
| 401 |
else
|
| 402 |
$this->total_post_count = (int)$max;
|
bp-forums/installation-readme.txt
CHANGED
|
@@ -59,7 +59,7 @@ Follow these steps to get forums up and running:
|
|
| 59 |
|
| 60 |
$bb->bb_xmlrpc_allow_user_switching = true;
|
| 61 |
|
| 62 |
-
12. Log into your WPMU admin interface and head to "
|
| 63 |
page. Make sure you don't leave out the ending slash on your bbPress URL. (http://example.com/bbpress/)
|
| 64 |
Enter the username and password for the user that you signed up in step 8.
|
| 65 |
|
| 59 |
|
| 60 |
$bb->bb_xmlrpc_allow_user_switching = true;
|
| 61 |
|
| 62 |
+
12. Log into your WPMU admin interface and head to "BuddyPress > Forums Setup" fill in the details on that
|
| 63 |
page. Make sure you don't leave out the ending slash on your bbPress URL. (http://example.com/bbpress/)
|
| 64 |
Enter the username and password for the user that you signed up in step 8.
|
| 65 |
|
bp-friends.php
CHANGED
|
@@ -102,6 +102,8 @@ function friends_setup_nav() {
|
|
| 102 |
$bp->bp_options_title = $bp->displayed_user->fullname;
|
| 103 |
}
|
| 104 |
}
|
|
|
|
|
|
|
| 105 |
}
|
| 106 |
add_action( 'wp', 'friends_setup_nav', 2 );
|
| 107 |
add_action( 'admin_menu', 'friends_setup_nav', 2 );
|
|
@@ -123,7 +125,10 @@ function friends_screen_requests() {
|
|
| 123 |
global $bp;
|
| 124 |
|
| 125 |
if ( isset($bp->action_variables) && 'accept' == $bp->action_variables[0] && is_numeric($bp->action_variables[1]) ) {
|
| 126 |
-
|
|
|
|
|
|
|
|
|
|
| 127 |
if ( friends_accept_friendship( $bp->action_variables[1] ) ) {
|
| 128 |
bp_core_add_message( __( 'Friendship accepted', 'buddypress' ) );
|
| 129 |
} else {
|
|
@@ -132,6 +137,9 @@ function friends_screen_requests() {
|
|
| 132 |
bp_core_redirect( $bp->loggedin_user->domain . $bp->current_component . '/' . $bp->current_action );
|
| 133 |
|
| 134 |
} else if ( isset($bp->action_variables) && 'reject' == $bp->action_variables[0] && is_numeric($bp->action_variables[1]) ) {
|
|
|
|
|
|
|
|
|
|
| 135 |
|
| 136 |
if ( friends_reject_friendship( $bp->action_variables[1] ) ) {
|
| 137 |
bp_core_add_message( __( 'Friendship rejected', 'buddypress' ) );
|
|
@@ -240,7 +248,7 @@ function friends_action_remove_friend() {
|
|
| 240 |
|
| 241 |
if ( !check_admin_referer( 'friends_remove_friend' ) )
|
| 242 |
return false;
|
| 243 |
-
|
| 244 |
if ( !friends_remove_friend( $bp->loggedin_user->id, $potential_friend_id ) ) {
|
| 245 |
bp_core_add_message( __( 'Friendship could not be canceled.', 'buddypress' ), 'error' );
|
| 246 |
} else {
|
|
@@ -574,13 +582,9 @@ function friends_check_friendship( $user_id, $possible_friend_id ) {
|
|
| 574 |
Create a new friend relationship
|
| 575 |
**************************************************************************/
|
| 576 |
|
| 577 |
-
function friends_add_friend( $initiator_userid, $friend_userid ) {
|
| 578 |
global $bp;
|
| 579 |
|
| 580 |
-
/* Check the nonce */
|
| 581 |
-
if ( !check_admin_referer( 'friends_add_friend' ) )
|
| 582 |
-
return false;
|
| 583 |
-
|
| 584 |
$friendship = new BP_Friends_Friendship;
|
| 585 |
|
| 586 |
if ( (int)$friendship->is_confirmed )
|
|
@@ -592,17 +596,24 @@ function friends_add_friend( $initiator_userid, $friend_userid ) {
|
|
| 592 |
$friendship->is_limited = 0;
|
| 593 |
$friendship->date_created = time();
|
| 594 |
|
|
|
|
|
|
|
|
|
|
| 595 |
if ( $friendship->save() ) {
|
| 596 |
|
| 597 |
-
|
| 598 |
-
|
| 599 |
-
|
| 600 |
-
|
| 601 |
-
|
| 602 |
-
|
| 603 |
-
|
| 604 |
-
|
| 605 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 606 |
return true;
|
| 607 |
}
|
| 608 |
|
|
@@ -617,10 +628,6 @@ function friends_add_friend( $initiator_userid, $friend_userid ) {
|
|
| 617 |
|
| 618 |
function friends_remove_friend( $initiator_userid, $friend_userid ) {
|
| 619 |
global $bp;
|
| 620 |
-
|
| 621 |
-
/* Check the nonce */
|
| 622 |
-
if ( !check_admin_referer( 'friends_remove_friend' ) )
|
| 623 |
-
return false;
|
| 624 |
|
| 625 |
$friendship_id = BP_Friends_Friendship::get_friendship_id( $initiator_userid, $friend_userid );
|
| 626 |
$friendship = new BP_Friends_Friendship( $friendship_id );
|
|
@@ -641,10 +648,6 @@ function friends_remove_friend( $initiator_userid, $friend_userid ) {
|
|
| 641 |
|
| 642 |
function friends_accept_friendship( $friendship_id ) {
|
| 643 |
global $bp;
|
| 644 |
-
|
| 645 |
-
/* Check the nonce */
|
| 646 |
-
if ( !check_admin_referer( 'friends_accept_friendship' ) )
|
| 647 |
-
return false;
|
| 648 |
|
| 649 |
$friendship = new BP_Friends_Friendship( $friendship_id, true, false );
|
| 650 |
|
|
@@ -672,11 +675,7 @@ function friends_accept_friendship( $friendship_id ) {
|
|
| 672 |
return false;
|
| 673 |
}
|
| 674 |
|
| 675 |
-
function friends_reject_friendship( $friendship_id ) {
|
| 676 |
-
/* Check the nonce */
|
| 677 |
-
if ( !check_admin_referer( 'friends_reject_friendship' ) )
|
| 678 |
-
return false;
|
| 679 |
-
|
| 680 |
$friendship = new BP_Friends_Friendship( $friendship_id, true, false );
|
| 681 |
|
| 682 |
if ( !$friendship->is_confirmed && BP_Friends_Friendship::reject( $friendship_id ) ) {
|
| 102 |
$bp->bp_options_title = $bp->displayed_user->fullname;
|
| 103 |
}
|
| 104 |
}
|
| 105 |
+
|
| 106 |
+
do_action( 'friends_setup_nav' );
|
| 107 |
}
|
| 108 |
add_action( 'wp', 'friends_setup_nav', 2 );
|
| 109 |
add_action( 'admin_menu', 'friends_setup_nav', 2 );
|
| 125 |
global $bp;
|
| 126 |
|
| 127 |
if ( isset($bp->action_variables) && 'accept' == $bp->action_variables[0] && is_numeric($bp->action_variables[1]) ) {
|
| 128 |
+
/* Check the nonce */
|
| 129 |
+
if ( !check_admin_referer( 'friends_accept_friendship' ) )
|
| 130 |
+
return false;
|
| 131 |
+
|
| 132 |
if ( friends_accept_friendship( $bp->action_variables[1] ) ) {
|
| 133 |
bp_core_add_message( __( 'Friendship accepted', 'buddypress' ) );
|
| 134 |
} else {
|
| 137 |
bp_core_redirect( $bp->loggedin_user->domain . $bp->current_component . '/' . $bp->current_action );
|
| 138 |
|
| 139 |
} else if ( isset($bp->action_variables) && 'reject' == $bp->action_variables[0] && is_numeric($bp->action_variables[1]) ) {
|
| 140 |
+
/* Check the nonce */
|
| 141 |
+
if ( !check_admin_referer( 'friends_reject_friendship' ) )
|
| 142 |
+
return false;
|
| 143 |
|
| 144 |
if ( friends_reject_friendship( $bp->action_variables[1] ) ) {
|
| 145 |
bp_core_add_message( __( 'Friendship rejected', 'buddypress' ) );
|
| 248 |
|
| 249 |
if ( !check_admin_referer( 'friends_remove_friend' ) )
|
| 250 |
return false;
|
| 251 |
+
|
| 252 |
if ( !friends_remove_friend( $bp->loggedin_user->id, $potential_friend_id ) ) {
|
| 253 |
bp_core_add_message( __( 'Friendship could not be canceled.', 'buddypress' ), 'error' );
|
| 254 |
} else {
|
| 582 |
Create a new friend relationship
|
| 583 |
**************************************************************************/
|
| 584 |
|
| 585 |
+
function friends_add_friend( $initiator_userid, $friend_userid, $force_accept = false ) {
|
| 586 |
global $bp;
|
| 587 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 588 |
$friendship = new BP_Friends_Friendship;
|
| 589 |
|
| 590 |
if ( (int)$friendship->is_confirmed )
|
| 596 |
$friendship->is_limited = 0;
|
| 597 |
$friendship->date_created = time();
|
| 598 |
|
| 599 |
+
if ( $force_accept )
|
| 600 |
+
$friendship->is_confirmed = 1;
|
| 601 |
+
|
| 602 |
if ( $friendship->save() ) {
|
| 603 |
|
| 604 |
+
if ( !$force_accept ) {
|
| 605 |
+
// Add the on screen notification
|
| 606 |
+
bp_core_add_notification( $friendship->initiator_user_id, $friendship->friend_user_id, 'friends', 'friendship_request' );
|
| 607 |
+
|
| 608 |
+
// Send the email notification
|
| 609 |
+
require_once( BP_PLUGIN_DIR . '/bp-friends/bp-friends-notifications.php' );
|
| 610 |
+
friends_notification_new_request( $friendship->id, $friendship->initiator_user_id, $friendship->friend_user_id );
|
| 611 |
+
|
| 612 |
+
do_action( 'friends_friendship_requested', $friendship->id, $friendship->initiator_user_id, $friendship->friend_user_id );
|
| 613 |
+
} else {
|
| 614 |
+
do_action( 'friends_friendship_accepted', $friendship->id, $friendship->initiator_user_id, $friendship->friend_user_id );
|
| 615 |
+
}
|
| 616 |
+
|
| 617 |
return true;
|
| 618 |
}
|
| 619 |
|
| 628 |
|
| 629 |
function friends_remove_friend( $initiator_userid, $friend_userid ) {
|
| 630 |
global $bp;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 631 |
|
| 632 |
$friendship_id = BP_Friends_Friendship::get_friendship_id( $initiator_userid, $friend_userid );
|
| 633 |
$friendship = new BP_Friends_Friendship( $friendship_id );
|
| 648 |
|
| 649 |
function friends_accept_friendship( $friendship_id ) {
|
| 650 |
global $bp;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 651 |
|
| 652 |
$friendship = new BP_Friends_Friendship( $friendship_id, true, false );
|
| 653 |
|
| 675 |
return false;
|
| 676 |
}
|
| 677 |
|
| 678 |
+
function friends_reject_friendship( $friendship_id ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
| 679 |
$friendship = new BP_Friends_Friendship( $friendship_id, true, false );
|
| 680 |
|
| 681 |
if ( !$friendship->is_confirmed && BP_Friends_Friendship::reject( $friendship_id ) ) {
|
bp-friends/bp-friends-templatetags.php
CHANGED
|
@@ -46,7 +46,7 @@ class BP_Friendship_Template {
|
|
| 46 |
$this->friendships = $this->friendships['requests'];
|
| 47 |
$this->friendship_count = count($this->friendships);
|
| 48 |
} else {
|
| 49 |
-
if ( !$max )
|
| 50 |
$this->total_friend_count = (int)$this->friendships['total'];
|
| 51 |
else
|
| 52 |
$this->total_friend_count = (int)$max;
|
| 46 |
$this->friendships = $this->friendships['requests'];
|
| 47 |
$this->friendship_count = count($this->friendships);
|
| 48 |
} else {
|
| 49 |
+
if ( !$max || $max >= (int)$this->friendships['total'] )
|
| 50 |
$this->total_friend_count = (int)$this->friendships['total'];
|
| 51 |
else
|
| 52 |
$this->total_friend_count = (int)$max;
|
bp-groups.php
CHANGED
|
@@ -283,6 +283,8 @@ function groups_setup_nav() {
|
|
| 283 |
}
|
| 284 |
}
|
| 285 |
}
|
|
|
|
|
|
|
| 286 |
}
|
| 287 |
add_action( 'wp', 'groups_setup_nav', 2 );
|
| 288 |
add_action( 'admin_menu', 'groups_setup_nav', 2 );
|
|
@@ -318,6 +320,9 @@ function groups_screen_group_invites() {
|
|
| 318 |
$group_id = $bp->action_variables[1];
|
| 319 |
|
| 320 |
if ( isset($bp->action_variables) && in_array( 'accept', $bp->action_variables ) && is_numeric($group_id) ) {
|
|
|
|
|
|
|
|
|
|
| 321 |
|
| 322 |
if ( !groups_accept_invite( $bp->loggedin_user->id, $group_id ) ) {
|
| 323 |
bp_core_add_message( __('Group invite could not be accepted', 'buddypress'), 'error' );
|
|
@@ -331,7 +336,10 @@ function groups_screen_group_invites() {
|
|
| 331 |
bp_core_redirect( $bp->loggedin_user->domain . $bp->current_component . '/' . $bp->current_action );
|
| 332 |
|
| 333 |
} else if ( isset($bp->action_variables) && in_array( 'reject', $bp->action_variables ) && is_numeric($group_id) ) {
|
| 334 |
-
|
|
|
|
|
|
|
|
|
|
| 335 |
if ( !groups_reject_invite( $bp->loggedin_user->id, $group_id ) ) {
|
| 336 |
bp_core_add_message( __('Group invite could not be rejected', 'buddypress'), 'error' );
|
| 337 |
} else {
|
|
@@ -430,6 +438,10 @@ function groups_screen_group_forum() {
|
|
| 430 |
|
| 431 |
/* Posting a reply */
|
| 432 |
if ( isset( $_POST['submit_reply'] ) && function_exists( 'bp_forums_new_post') ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
| 433 |
groups_new_group_forum_post( $_POST['reply_text'], $topic_id );
|
| 434 |
bp_core_redirect( bp_get_group_permalink( $group_obj ) . '/forum/topic/' . $topic_id );
|
| 435 |
}
|
|
@@ -442,6 +454,10 @@ function groups_screen_group_forum() {
|
|
| 442 |
|
| 443 |
/* Posting a topic */
|
| 444 |
if ( isset( $_POST['submit_topic'] ) && function_exists( 'bp_forums_new_topic') ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
| 445 |
groups_new_group_forum_topic( $_POST['topic_title'], $_POST['topic_text'], $_POST['topic_tags'], $forum_id );
|
| 446 |
bp_core_redirect( bp_get_group_permalink( $group_obj ) . '/forum/' );
|
| 447 |
}
|
|
@@ -462,7 +478,10 @@ function groups_screen_group_wire() {
|
|
| 462 |
|
| 463 |
if ( $bp->is_single_item ) {
|
| 464 |
if ( 'post' == $wire_action && BP_Groups_Member::check_is_member( $bp->loggedin_user->id, $group_obj->id ) ) {
|
| 465 |
-
|
|
|
|
|
|
|
|
|
|
| 466 |
if ( !groups_new_wire_post( $group_obj->id, $_POST['wire-post-textarea'] ) ) {
|
| 467 |
bp_core_add_message( __('Wire message could not be posted.', 'buddypress'), 'error' );
|
| 468 |
} else {
|
|
@@ -478,6 +497,10 @@ function groups_screen_group_wire() {
|
|
| 478 |
} else if ( 'delete' == $wire_action && BP_Groups_Member::check_is_member( $bp->loggedin_user->id, $group_obj->id ) ) {
|
| 479 |
$wire_message_id = $bp->action_variables[1];
|
| 480 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 481 |
if ( !groups_delete_wire_post( $wire_message_id, $bp->groups->table_name_wire ) ) {
|
| 482 |
bp_core_add_message( __('There was an error deleting the wire message.', 'buddypress'), 'error' );
|
| 483 |
} else {
|
|
@@ -515,6 +538,10 @@ function groups_screen_group_invite() {
|
|
| 515 |
|
| 516 |
if ( $bp->is_single_item ) {
|
| 517 |
if ( isset($bp->action_variables) && 'send' == $bp->action_variables[0] ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
| 518 |
// Send the invites.
|
| 519 |
groups_send_invites($group_obj);
|
| 520 |
|
|
@@ -576,6 +603,10 @@ function groups_screen_group_request_membership() {
|
|
| 576 |
if ( 'private' == $group_obj->status ) {
|
| 577 |
// If the user has submitted a request, send it.
|
| 578 |
if ( isset( $_POST['group-request-send']) ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
| 579 |
if ( !groups_send_membership_request( $bp->loggedin_user->id, $group_obj->id ) ) {
|
| 580 |
bp_core_add_message( __( 'There was an error sending your group membership request, please try again.', 'buddypress' ), 'error' );
|
| 581 |
} else {
|
|
@@ -611,6 +642,10 @@ function groups_screen_group_admin_edit_details() {
|
|
| 611 |
|
| 612 |
// If the edit form has been submitted, save the edited details
|
| 613 |
if ( isset( $_POST['save'] ) ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
| 614 |
if ( !groups_edit_base_group_details( $_POST['group-id'], $_POST['group-name'], $_POST['group-desc'], $_POST['group-news'], (int)$_POST['group-notify-members'] ) ) {
|
| 615 |
bp_core_add_message( __( 'There was an error updating group details, please try again.', 'buddypress' ), 'error' );
|
| 616 |
} else {
|
|
@@ -646,7 +681,13 @@ function groups_screen_group_admin_settings() {
|
|
| 646 |
$enable_forum = ( isset($_POST['group-show-forum'] ) ) ? 1 : 0;
|
| 647 |
$enable_photos = ( isset($_POST['group-show-photos'] ) ) ? 1 : 0;
|
| 648 |
$photos_admin_only = ( $_POST['group-photos-status'] != 'all' ) ? 1 : 0;
|
| 649 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 650 |
|
| 651 |
if ( !groups_edit_group_settings( $_POST['group-id'], $enable_wire, $enable_forum, $enable_photos, $photos_admin_only, $status ) ) {
|
| 652 |
bp_core_add_message( __( 'There was an error updating group settings, please try again.', 'buddypress' ), 'error' );
|
|
@@ -722,6 +763,10 @@ function groups_screen_group_admin_manage_members() {
|
|
| 722 |
if ( 'promote' == $bp->action_variables[1] && is_numeric( $bp->action_variables[2] ) ) {
|
| 723 |
$user_id = $bp->action_variables[2];
|
| 724 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 725 |
// Promote a user.
|
| 726 |
if ( !groups_promote_member( $user_id, $group_obj->id ) ) {
|
| 727 |
bp_core_add_message( __( 'There was an error when promoting that user, please try again', 'buddypress' ), 'error' );
|
|
@@ -736,7 +781,11 @@ function groups_screen_group_admin_manage_members() {
|
|
| 736 |
|
| 737 |
if ( 'demote' == $bp->action_variables[1] && is_numeric( $bp->action_variables[2] ) ) {
|
| 738 |
$user_id = $bp->action_variables[2];
|
| 739 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 740 |
// Demote a user.
|
| 741 |
if ( !groups_demote_member( $user_id, $group_obj->id ) ) {
|
| 742 |
bp_core_add_message( __( 'There was an error when demoting that user, please try again', 'buddypress' ), 'error' );
|
|
@@ -751,7 +800,11 @@ function groups_screen_group_admin_manage_members() {
|
|
| 751 |
|
| 752 |
if ( 'ban' == $bp->action_variables[1] && is_numeric( $bp->action_variables[2] ) ) {
|
| 753 |
$user_id = $bp->action_variables[2];
|
| 754 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 755 |
// Ban a user.
|
| 756 |
if ( !groups_ban_member( $user_id, $group_obj->id ) ) {
|
| 757 |
bp_core_add_message( __( 'There was an error when banning that user, please try again', 'buddypress' ), 'error' );
|
|
@@ -766,7 +819,11 @@ function groups_screen_group_admin_manage_members() {
|
|
| 766 |
|
| 767 |
if ( 'unban' == $bp->action_variables[1] && is_numeric( $bp->action_variables[2] ) ) {
|
| 768 |
$user_id = $bp->action_variables[2];
|
| 769 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 770 |
// Remove a ban for user.
|
| 771 |
if ( !groups_unban_member( $user_id, $group_obj->id ) ) {
|
| 772 |
bp_core_add_message( __( 'There was an error when unbanning that user, please try again', 'buddypress' ), 'error' );
|
|
@@ -804,6 +861,10 @@ function groups_screen_group_admin_requests() {
|
|
| 804 |
if ( isset($request_action) && isset($membership_id) ) {
|
| 805 |
if ( 'accept' == $request_action && is_numeric($membership_id) ) {
|
| 806 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 807 |
// Accept the membership request
|
| 808 |
if ( !groups_accept_membership_request( $membership_id ) ) {
|
| 809 |
bp_core_add_message( __( 'There was an error accepting the membership request, please try again.', 'buddypress' ), 'error' );
|
|
@@ -812,7 +873,10 @@ function groups_screen_group_admin_requests() {
|
|
| 812 |
}
|
| 813 |
|
| 814 |
} else if ( 'reject' == $request_action && is_numeric($membership_id) ) {
|
| 815 |
-
|
|
|
|
|
|
|
|
|
|
| 816 |
// Reject the membership request
|
| 817 |
if ( !groups_reject_membership_request( $membership_id ) ) {
|
| 818 |
bp_core_add_message( __( 'There was an error rejecting the membership request, please try again.', 'buddypress' ), 'error' );
|
|
@@ -843,6 +907,10 @@ function groups_screen_group_admin_delete_group() {
|
|
| 843 |
return false;
|
| 844 |
|
| 845 |
if ( isset( $_POST['delete-group-button'] ) && isset( $_POST['delete-group-understand'] ) ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
| 846 |
// Group admin has deleted the group, now do it.
|
| 847 |
if ( !groups_delete_group( $_POST['group-id']) ) {
|
| 848 |
bp_core_add_message( __( 'There was an error deleting the group, please try again.', 'buddypress' ), 'error' );
|
|
@@ -1095,11 +1163,11 @@ function groups_format_notifications( $action, $item_id, $secondary_item_id, $to
|
|
| 1095 |
case 'new_membership_request':
|
| 1096 |
$group_id = $secondary_item_id;
|
| 1097 |
$requesting_user_id = $item_id;
|
| 1098 |
-
|
| 1099 |
$group = new BP_Groups_Group( $group_id, false, false );
|
| 1100 |
|
| 1101 |
$group_link = bp_get_group_permalink( $group );
|
| 1102 |
-
|
| 1103 |
if ( (int)$total_items > 1 ) {
|
| 1104 |
return apply_filters( 'bp_groups_multiple_new_membership_requests_notification', '<a href="' . $group_link . '/admin/membership-requests/" title="' . __( 'Group Membership Requests', 'buddypress' ) . '">' . sprintf( __('%d new membership requests for the group "%s"', 'buddypress' ), (int)$total_items, $group->name ) . '</a>', $group_link, $total_items, $group->name );
|
| 1105 |
} else {
|
|
@@ -1517,7 +1585,7 @@ function groups_create_group( $step, $group_id ) {
|
|
| 1517 |
if ( !check_admin_referer( 'groups_step4_save' ) )
|
| 1518 |
return false;
|
| 1519 |
|
| 1520 |
-
groups_send_invites( $group_obj
|
| 1521 |
|
| 1522 |
do_action( 'groups_created_group', $group_obj->id );
|
| 1523 |
|
|
@@ -1531,7 +1599,10 @@ function groups_create_group( $step, $group_id ) {
|
|
| 1531 |
|
| 1532 |
function groups_check_slug( $slug ) {
|
| 1533 |
global $bp;
|
| 1534 |
-
|
|
|
|
|
|
|
|
|
|
| 1535 |
if ( in_array( $slug, $bp->groups->forbidden_names ) ) {
|
| 1536 |
$slug = $slug . '-' . rand();
|
| 1537 |
}
|
|
@@ -1543,9 +1614,6 @@ function groups_check_slug( $slug ) {
|
|
| 1543 |
while ( BP_Groups_Group::check_slug( $slug ) );
|
| 1544 |
}
|
| 1545 |
|
| 1546 |
-
if ( 'wp' == substr( $slug, 0, 2 ) )
|
| 1547 |
-
$slug = substr( $slug, 2, strlen( $slug ) - 2 );
|
| 1548 |
-
|
| 1549 |
return $slug;
|
| 1550 |
}
|
| 1551 |
|
|
@@ -1591,10 +1659,6 @@ function groups_new_group_forum( $group_id = false, $group_name = false, $group_
|
|
| 1591 |
|
| 1592 |
function groups_new_group_forum_post( $post_text, $topic_id ) {
|
| 1593 |
global $group_obj, $bp;
|
| 1594 |
-
|
| 1595 |
-
/* Check the nonce */
|
| 1596 |
-
if ( !check_admin_referer( 'bp_forums_new_reply' ) )
|
| 1597 |
-
return false;
|
| 1598 |
|
| 1599 |
if ( $forum_post = bp_forums_new_post( $post_text, $topic_id ) ) {
|
| 1600 |
bp_core_add_message( __( 'Reply posted successfully!', 'buddypress') );
|
|
@@ -1613,10 +1677,6 @@ function groups_new_group_forum_post( $post_text, $topic_id ) {
|
|
| 1613 |
|
| 1614 |
function groups_new_group_forum_topic( $topic_title, $topic_text, $topic_tags, $forum_id ) {
|
| 1615 |
global $group_obj, $bp;
|
| 1616 |
-
|
| 1617 |
-
/* Check the nonce */
|
| 1618 |
-
if ( !check_admin_referer( 'bp_forums_new_topic' ) )
|
| 1619 |
-
return false;
|
| 1620 |
|
| 1621 |
if ( $topic = bp_forums_new_topic( $topic_title, $topic_text, $topic_tags, $forum_id ) ) {
|
| 1622 |
bp_core_add_message( __( 'Topic posted successfully!', 'buddypress') );
|
|
@@ -1635,10 +1695,6 @@ function groups_new_group_forum_topic( $topic_title, $topic_text, $topic_tags, $
|
|
| 1635 |
|
| 1636 |
function groups_invite_user( $user_id, $group_id ) {
|
| 1637 |
global $bp;
|
| 1638 |
-
|
| 1639 |
-
/* Check the nonce */
|
| 1640 |
-
if ( !check_admin_referer( 'groups_invite_uninvite_user' ) )
|
| 1641 |
-
return false;
|
| 1642 |
|
| 1643 |
if ( groups_is_user_member( $user_id, $group_id ) )
|
| 1644 |
return false;
|
|
@@ -1658,16 +1714,8 @@ function groups_invite_user( $user_id, $group_id ) {
|
|
| 1658 |
return true;
|
| 1659 |
}
|
| 1660 |
|
| 1661 |
-
function groups_uninvite_user( $user_id, $group_id, $
|
| 1662 |
global $bp;
|
| 1663 |
-
|
| 1664 |
-
/* Because this is called on groups_leave_group() and a nonce has already been
|
| 1665 |
-
* checked, we need a way of overriding a double check.
|
| 1666 |
-
*/
|
| 1667 |
-
if ( !$skip_check ) {
|
| 1668 |
-
if ( !check_admin_referer( 'groups_invite_uninvite_user' ) )
|
| 1669 |
-
return false;
|
| 1670 |
-
}
|
| 1671 |
|
| 1672 |
if ( !BP_Groups_Member::delete( $user_id, $group_id ) )
|
| 1673 |
return false;
|
|
@@ -1679,10 +1727,6 @@ function groups_uninvite_user( $user_id, $group_id, $skip_check = false ) {
|
|
| 1679 |
|
| 1680 |
function groups_accept_invite( $user_id, $group_id ) {
|
| 1681 |
global $group_obj;
|
| 1682 |
-
|
| 1683 |
-
/* Check the nonce */
|
| 1684 |
-
if ( !check_admin_referer( 'groups_accept_invite' ) )
|
| 1685 |
-
return false;
|
| 1686 |
|
| 1687 |
if ( groups_is_user_member( $user_id, $group_id ) )
|
| 1688 |
return false;
|
|
@@ -1734,13 +1778,8 @@ function groups_get_invites_for_user( $user_id = false ) {
|
|
| 1734 |
return BP_Groups_Member::get_invites( $user_id );
|
| 1735 |
}
|
| 1736 |
|
| 1737 |
-
function groups_send_invites( $group_obj, $
|
| 1738 |
global $bp;
|
| 1739 |
-
|
| 1740 |
-
if ( !$skip_check ) {
|
| 1741 |
-
if ( !check_admin_referer( 'groups_send_invites', '_wpnonce_send_invites' ) )
|
| 1742 |
-
return false;
|
| 1743 |
-
}
|
| 1744 |
|
| 1745 |
require_once ( BP_PLUGIN_DIR . '/bp-groups/bp-groups-notifications.php' );
|
| 1746 |
|
|
@@ -1770,11 +1809,7 @@ function groups_check_group_exists( $group_id ) {
|
|
| 1770 |
|
| 1771 |
function groups_leave_group( $group_id, $user_id = false ) {
|
| 1772 |
global $bp;
|
| 1773 |
-
|
| 1774 |
-
/* Check the nonce */
|
| 1775 |
-
if ( !check_admin_referer( 'groups_leave_group' ) )
|
| 1776 |
-
return false;
|
| 1777 |
-
|
| 1778 |
if ( !$user_id )
|
| 1779 |
$user_id = $bp->loggedin_user->id;
|
| 1780 |
|
|
@@ -1796,10 +1831,6 @@ function groups_leave_group( $group_id, $user_id = false ) {
|
|
| 1796 |
|
| 1797 |
function groups_join_group( $group_id, $user_id = false ) {
|
| 1798 |
global $bp;
|
| 1799 |
-
|
| 1800 |
-
/* Check the nonce */
|
| 1801 |
-
if ( !check_admin_referer( 'groups_join_group' ) )
|
| 1802 |
-
return false;
|
| 1803 |
|
| 1804 |
if ( !$user_id )
|
| 1805 |
$user_id = $bp->loggedin_user->id;
|
|
@@ -1857,10 +1888,6 @@ function groups_is_group_mod( $user_id, $group_id ) {
|
|
| 1857 |
function groups_new_wire_post( $group_id, $content ) {
|
| 1858 |
global $group_obj, $bp;
|
| 1859 |
|
| 1860 |
-
/* Check the nonce first. */
|
| 1861 |
-
if ( !check_admin_referer( 'bp_wire_post' ) )
|
| 1862 |
-
return false;
|
| 1863 |
-
|
| 1864 |
$private = false;
|
| 1865 |
if ( $group_obj->status != 'public' )
|
| 1866 |
$private = true;
|
|
@@ -1876,11 +1903,7 @@ function groups_new_wire_post( $group_id, $content ) {
|
|
| 1876 |
|
| 1877 |
function groups_delete_wire_post( $wire_post_id, $table_name ) {
|
| 1878 |
global $bp;
|
| 1879 |
-
|
| 1880 |
-
/* Check the nonce first. */
|
| 1881 |
-
if ( !check_admin_referer( 'bp_wire_delete_link' ) )
|
| 1882 |
-
return false;
|
| 1883 |
-
|
| 1884 |
if ( bp_wire_delete_post( $wire_post_id, $bp->groups->slug, $table_name ) ) {
|
| 1885 |
do_action( 'groups_deleted_wire_post', $wire_post_id );
|
| 1886 |
return true;
|
|
@@ -1891,11 +1914,7 @@ function groups_delete_wire_post( $wire_post_id, $table_name ) {
|
|
| 1891 |
|
| 1892 |
function groups_edit_base_group_details( $group_id, $group_name, $group_desc, $group_news, $notify_members ) {
|
| 1893 |
global $bp;
|
| 1894 |
-
|
| 1895 |
-
/* Check the nonce first. */
|
| 1896 |
-
if ( !check_admin_referer( 'groups_edit_group_details' ) )
|
| 1897 |
-
return false;
|
| 1898 |
-
|
| 1899 |
if ( empty( $group_name ) || empty( $group_desc ) )
|
| 1900 |
return false;
|
| 1901 |
|
|
@@ -1920,15 +1939,20 @@ function groups_edit_base_group_details( $group_id, $group_name, $group_desc, $g
|
|
| 1920 |
function groups_edit_group_settings( $group_id, $enable_wire, $enable_forum, $enable_photos, $photos_admin_only, $status ) {
|
| 1921 |
global $bp;
|
| 1922 |
|
| 1923 |
-
/* Check the nonce first. */
|
| 1924 |
-
if ( !check_admin_referer( 'groups_edit_group_settings' ) )
|
| 1925 |
-
return false;
|
| 1926 |
-
|
| 1927 |
$group = new BP_Groups_Group( $group_id, false, false );
|
| 1928 |
$group->enable_wire = $enable_wire;
|
| 1929 |
$group->enable_forum = $enable_forum;
|
| 1930 |
$group->enable_photos = $enable_photos;
|
| 1931 |
$group->photos_admin_only = $photos_admin_only;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1932 |
$group->status = $status;
|
| 1933 |
|
| 1934 |
if ( !$group->save() )
|
|
@@ -1948,10 +1972,6 @@ function groups_edit_group_settings( $group_id, $enable_wire, $enable_forum, $en
|
|
| 1948 |
|
| 1949 |
function groups_promote_member( $user_id, $group_id ) {
|
| 1950 |
global $bp;
|
| 1951 |
-
|
| 1952 |
-
/* Check the nonce first. */
|
| 1953 |
-
if ( !check_admin_referer( 'groups_promote_member' ) )
|
| 1954 |
-
return false;
|
| 1955 |
|
| 1956 |
if ( !$bp->is_item_admin )
|
| 1957 |
return false;
|
|
@@ -1965,10 +1985,6 @@ function groups_promote_member( $user_id, $group_id ) {
|
|
| 1965 |
|
| 1966 |
function groups_demote_member( $user_id, $group_id ) {
|
| 1967 |
global $bp;
|
| 1968 |
-
|
| 1969 |
-
/* Check the nonce first. */
|
| 1970 |
-
if ( !check_admin_referer( 'groups_demote_member' ) )
|
| 1971 |
-
return false;
|
| 1972 |
|
| 1973 |
if ( !$bp->is_item_admin )
|
| 1974 |
return false;
|
|
@@ -1983,10 +1999,6 @@ function groups_demote_member( $user_id, $group_id ) {
|
|
| 1983 |
function groups_ban_member( $user_id, $group_id ) {
|
| 1984 |
global $bp;
|
| 1985 |
|
| 1986 |
-
/* Check the nonce first. */
|
| 1987 |
-
if ( !check_admin_referer( 'groups_ban_member' ) )
|
| 1988 |
-
return false;
|
| 1989 |
-
|
| 1990 |
if ( !$bp->is_item_admin )
|
| 1991 |
return false;
|
| 1992 |
|
|
@@ -1999,10 +2011,6 @@ function groups_ban_member( $user_id, $group_id ) {
|
|
| 1999 |
|
| 2000 |
function groups_unban_member( $user_id, $group_id ) {
|
| 2001 |
global $bp;
|
| 2002 |
-
|
| 2003 |
-
/* Check the nonce first. */
|
| 2004 |
-
if ( !check_admin_referer( 'groups_unban_member' ) )
|
| 2005 |
-
return false;
|
| 2006 |
|
| 2007 |
if ( !$bp->is_item_admin )
|
| 2008 |
return false;
|
|
@@ -2017,10 +2025,6 @@ function groups_unban_member( $user_id, $group_id ) {
|
|
| 2017 |
function groups_send_membership_request( $requesting_user_id, $group_id ) {
|
| 2018 |
global $bp;
|
| 2019 |
|
| 2020 |
-
/* Check the nonce first. */
|
| 2021 |
-
if ( !check_admin_referer( 'groups_request_membership' ) )
|
| 2022 |
-
return false;
|
| 2023 |
-
|
| 2024 |
$requesting_user = new BP_Groups_Member;
|
| 2025 |
$requesting_user->group_id = $group_id;
|
| 2026 |
$requesting_user->user_id = $requesting_user_id;
|
|
@@ -2049,14 +2053,14 @@ function groups_send_membership_request( $requesting_user_id, $group_id ) {
|
|
| 2049 |
return false;
|
| 2050 |
}
|
| 2051 |
|
| 2052 |
-
function groups_accept_membership_request( $membership_id ) {
|
| 2053 |
global $bp;
|
| 2054 |
|
| 2055 |
-
|
| 2056 |
-
|
| 2057 |
-
|
|
|
|
| 2058 |
|
| 2059 |
-
$membership = new BP_Groups_Member( false, false, $membership_id );
|
| 2060 |
$membership->accept_request();
|
| 2061 |
|
| 2062 |
if ( !$membership->save() )
|
|
@@ -2077,13 +2081,11 @@ function groups_accept_membership_request( $membership_id ) {
|
|
| 2077 |
return true;
|
| 2078 |
}
|
| 2079 |
|
| 2080 |
-
function groups_reject_membership_request( $membership_id ) {
|
| 2081 |
-
|
| 2082 |
-
|
| 2083 |
-
|
| 2084 |
-
|
| 2085 |
-
|
| 2086 |
-
$membership = new BP_Groups_Member( false, false, $membership_id );
|
| 2087 |
|
| 2088 |
if ( !BP_Groups_Member::delete( $membership->user_id, $membership->group_id ) )
|
| 2089 |
return false;
|
|
@@ -2097,6 +2099,21 @@ function groups_reject_membership_request( $membership_id ) {
|
|
| 2097 |
return true;
|
| 2098 |
}
|
| 2099 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2100 |
function groups_redirect_to_random_group() {
|
| 2101 |
global $bp, $wpdb;
|
| 2102 |
|
|
@@ -2110,10 +2127,6 @@ add_action( 'wp', 'groups_redirect_to_random_group', 6 );
|
|
| 2110 |
|
| 2111 |
function groups_delete_group( $group_id ) {
|
| 2112 |
global $bp;
|
| 2113 |
-
|
| 2114 |
-
/* Check the nonce first. */
|
| 2115 |
-
if ( !check_admin_referer( 'groups_delete_group' ) )
|
| 2116 |
-
return false;
|
| 2117 |
|
| 2118 |
// Check the user is the group admin.
|
| 2119 |
if ( !$bp->is_item_admin )
|
| 283 |
}
|
| 284 |
}
|
| 285 |
}
|
| 286 |
+
|
| 287 |
+
do_action( 'groups_setup_nav', $has_access );
|
| 288 |
}
|
| 289 |
add_action( 'wp', 'groups_setup_nav', 2 );
|
| 290 |
add_action( 'admin_menu', 'groups_setup_nav', 2 );
|
| 320 |
$group_id = $bp->action_variables[1];
|
| 321 |
|
| 322 |
if ( isset($bp->action_variables) && in_array( 'accept', $bp->action_variables ) && is_numeric($group_id) ) {
|
| 323 |
+
/* Check the nonce */
|
| 324 |
+
if ( !check_admin_referer( 'groups_accept_invite' ) )
|
| 325 |
+
return false;
|
| 326 |
|
| 327 |
if ( !groups_accept_invite( $bp->loggedin_user->id, $group_id ) ) {
|
| 328 |
bp_core_add_message( __('Group invite could not be accepted', 'buddypress'), 'error' );
|
| 336 |
bp_core_redirect( $bp->loggedin_user->domain . $bp->current_component . '/' . $bp->current_action );
|
| 337 |
|
| 338 |
} else if ( isset($bp->action_variables) && in_array( 'reject', $bp->action_variables ) && is_numeric($group_id) ) {
|
| 339 |
+
/* Check the nonce */
|
| 340 |
+
if ( !check_admin_referer( 'groups_reject_invite' ) )
|
| 341 |
+
return false;
|
| 342 |
+
|
| 343 |
if ( !groups_reject_invite( $bp->loggedin_user->id, $group_id ) ) {
|
| 344 |
bp_core_add_message( __('Group invite could not be rejected', 'buddypress'), 'error' );
|
| 345 |
} else {
|
| 438 |
|
| 439 |
/* Posting a reply */
|
| 440 |
if ( isset( $_POST['submit_reply'] ) && function_exists( 'bp_forums_new_post') ) {
|
| 441 |
+
/* Check the nonce */
|
| 442 |
+
if ( !check_admin_referer( 'bp_forums_new_reply' ) )
|
| 443 |
+
return false;
|
| 444 |
+
|
| 445 |
groups_new_group_forum_post( $_POST['reply_text'], $topic_id );
|
| 446 |
bp_core_redirect( bp_get_group_permalink( $group_obj ) . '/forum/topic/' . $topic_id );
|
| 447 |
}
|
| 454 |
|
| 455 |
/* Posting a topic */
|
| 456 |
if ( isset( $_POST['submit_topic'] ) && function_exists( 'bp_forums_new_topic') ) {
|
| 457 |
+
/* Check the nonce */
|
| 458 |
+
if ( !check_admin_referer( 'bp_forums_new_topic' ) )
|
| 459 |
+
return false;
|
| 460 |
+
|
| 461 |
groups_new_group_forum_topic( $_POST['topic_title'], $_POST['topic_text'], $_POST['topic_tags'], $forum_id );
|
| 462 |
bp_core_redirect( bp_get_group_permalink( $group_obj ) . '/forum/' );
|
| 463 |
}
|
| 478 |
|
| 479 |
if ( $bp->is_single_item ) {
|
| 480 |
if ( 'post' == $wire_action && BP_Groups_Member::check_is_member( $bp->loggedin_user->id, $group_obj->id ) ) {
|
| 481 |
+
/* Check the nonce first. */
|
| 482 |
+
if ( !check_admin_referer( 'bp_wire_post' ) )
|
| 483 |
+
return false;
|
| 484 |
+
|
| 485 |
if ( !groups_new_wire_post( $group_obj->id, $_POST['wire-post-textarea'] ) ) {
|
| 486 |
bp_core_add_message( __('Wire message could not be posted.', 'buddypress'), 'error' );
|
| 487 |
} else {
|
| 497 |
} else if ( 'delete' == $wire_action && BP_Groups_Member::check_is_member( $bp->loggedin_user->id, $group_obj->id ) ) {
|
| 498 |
$wire_message_id = $bp->action_variables[1];
|
| 499 |
|
| 500 |
+
/* Check the nonce first. */
|
| 501 |
+
if ( !check_admin_referer( 'bp_wire_delete_link' ) )
|
| 502 |
+
return false;
|
| 503 |
+
|
| 504 |
if ( !groups_delete_wire_post( $wire_message_id, $bp->groups->table_name_wire ) ) {
|
| 505 |
bp_core_add_message( __('There was an error deleting the wire message.', 'buddypress'), 'error' );
|
| 506 |
} else {
|
| 538 |
|
| 539 |
if ( $bp->is_single_item ) {
|
| 540 |
if ( isset($bp->action_variables) && 'send' == $bp->action_variables[0] ) {
|
| 541 |
+
|
| 542 |
+
if ( !check_admin_referer( 'groups_send_invites', '_wpnonce_send_invites' ) )
|
| 543 |
+
return false;
|
| 544 |
+
|
| 545 |
// Send the invites.
|
| 546 |
groups_send_invites($group_obj);
|
| 547 |
|
| 603 |
if ( 'private' == $group_obj->status ) {
|
| 604 |
// If the user has submitted a request, send it.
|
| 605 |
if ( isset( $_POST['group-request-send']) ) {
|
| 606 |
+
/* Check the nonce first. */
|
| 607 |
+
if ( !check_admin_referer( 'groups_request_membership' ) )
|
| 608 |
+
return false;
|
| 609 |
+
|
| 610 |
if ( !groups_send_membership_request( $bp->loggedin_user->id, $group_obj->id ) ) {
|
| 611 |
bp_core_add_message( __( 'There was an error sending your group membership request, please try again.', 'buddypress' ), 'error' );
|
| 612 |
} else {
|
| 642 |
|
| 643 |
// If the edit form has been submitted, save the edited details
|
| 644 |
if ( isset( $_POST['save'] ) ) {
|
| 645 |
+
/* Check the nonce first. */
|
| 646 |
+
if ( !check_admin_referer( 'groups_edit_group_details' ) )
|
| 647 |
+
return false;
|
| 648 |
+
|
| 649 |
if ( !groups_edit_base_group_details( $_POST['group-id'], $_POST['group-name'], $_POST['group-desc'], $_POST['group-news'], (int)$_POST['group-notify-members'] ) ) {
|
| 650 |
bp_core_add_message( __( 'There was an error updating group details, please try again.', 'buddypress' ), 'error' );
|
| 651 |
} else {
|
| 681 |
$enable_forum = ( isset($_POST['group-show-forum'] ) ) ? 1 : 0;
|
| 682 |
$enable_photos = ( isset($_POST['group-show-photos'] ) ) ? 1 : 0;
|
| 683 |
$photos_admin_only = ( $_POST['group-photos-status'] != 'all' ) ? 1 : 0;
|
| 684 |
+
|
| 685 |
+
$allowed_status = apply_filters( 'groups_allowed_status', array( 'public', 'private', 'hidden' ) );
|
| 686 |
+
$status = ( in_array( $_POST['group-status'], $allowed_status ) ) ? $_POST['group-status'] : 'public';
|
| 687 |
+
|
| 688 |
+
/* Check the nonce first. */
|
| 689 |
+
if ( !check_admin_referer( 'groups_edit_group_settings' ) )
|
| 690 |
+
return false;
|
| 691 |
|
| 692 |
if ( !groups_edit_group_settings( $_POST['group-id'], $enable_wire, $enable_forum, $enable_photos, $photos_admin_only, $status ) ) {
|
| 693 |
bp_core_add_message( __( 'There was an error updating group settings, please try again.', 'buddypress' ), 'error' );
|
| 763 |
if ( 'promote' == $bp->action_variables[1] && is_numeric( $bp->action_variables[2] ) ) {
|
| 764 |
$user_id = $bp->action_variables[2];
|
| 765 |
|
| 766 |
+
/* Check the nonce first. */
|
| 767 |
+
if ( !check_admin_referer( 'groups_promote_member' ) )
|
| 768 |
+
return false;
|
| 769 |
+
|
| 770 |
// Promote a user.
|
| 771 |
if ( !groups_promote_member( $user_id, $group_obj->id ) ) {
|
| 772 |
bp_core_add_message( __( 'There was an error when promoting that user, please try again', 'buddypress' ), 'error' );
|
| 781 |
|
| 782 |
if ( 'demote' == $bp->action_variables[1] && is_numeric( $bp->action_variables[2] ) ) {
|
| 783 |
$user_id = $bp->action_variables[2];
|
| 784 |
+
|
| 785 |
+
/* Check the nonce first. */
|
| 786 |
+
if ( !check_admin_referer( 'groups_demote_member' ) )
|
| 787 |
+
return false;
|
| 788 |
+
|
| 789 |
// Demote a user.
|
| 790 |
if ( !groups_demote_member( $user_id, $group_obj->id ) ) {
|
| 791 |
bp_core_add_message( __( 'There was an error when demoting that user, please try again', 'buddypress' ), 'error' );
|
| 800 |
|
| 801 |
if ( 'ban' == $bp->action_variables[1] && is_numeric( $bp->action_variables[2] ) ) {
|
| 802 |
$user_id = $bp->action_variables[2];
|
| 803 |
+
|
| 804 |
+
/* Check the nonce first. */
|
| 805 |
+
if ( !check_admin_referer( 'groups_ban_member' ) )
|
| 806 |
+
return false;
|
| 807 |
+
|
| 808 |
// Ban a user.
|
| 809 |
if ( !groups_ban_member( $user_id, $group_obj->id ) ) {
|
| 810 |
bp_core_add_message( __( 'There was an error when banning that user, please try again', 'buddypress' ), 'error' );
|
| 819 |
|
| 820 |
if ( 'unban' == $bp->action_variables[1] && is_numeric( $bp->action_variables[2] ) ) {
|
| 821 |
$user_id = $bp->action_variables[2];
|
| 822 |
+
|
| 823 |
+
/* Check the nonce first. */
|
| 824 |
+
if ( !check_admin_referer( 'groups_unban_member' ) )
|
| 825 |
+
return false;
|
| 826 |
+
|
| 827 |
// Remove a ban for user.
|
| 828 |
if ( !groups_unban_member( $user_id, $group_obj->id ) ) {
|
| 829 |
bp_core_add_message( __( 'There was an error when unbanning that user, please try again', 'buddypress' ), 'error' );
|
| 861 |
if ( isset($request_action) && isset($membership_id) ) {
|
| 862 |
if ( 'accept' == $request_action && is_numeric($membership_id) ) {
|
| 863 |
|
| 864 |
+
/* Check the nonce first. */
|
| 865 |
+
if ( !check_admin_referer( 'groups_accept_membership_request' ) )
|
| 866 |
+
return false;
|
| 867 |
+
|
| 868 |
// Accept the membership request
|
| 869 |
if ( !groups_accept_membership_request( $membership_id ) ) {
|
| 870 |
bp_core_add_message( __( 'There was an error accepting the membership request, please try again.', 'buddypress' ), 'error' );
|
| 873 |
}
|
| 874 |
|
| 875 |
} else if ( 'reject' == $request_action && is_numeric($membership_id) ) {
|
| 876 |
+
/* Check the nonce first. */
|
| 877 |
+
if ( !check_admin_referer( 'groups_reject_membership_request' ) )
|
| 878 |
+
return false;
|
| 879 |
+
|
| 880 |
// Reject the membership request
|
| 881 |
if ( !groups_reject_membership_request( $membership_id ) ) {
|
| 882 |
bp_core_add_message( __( 'There was an error rejecting the membership request, please try again.', 'buddypress' ), 'error' );
|
| 907 |
return false;
|
| 908 |
|
| 909 |
if ( isset( $_POST['delete-group-button'] ) && isset( $_POST['delete-group-understand'] ) ) {
|
| 910 |
+
/* Check the nonce first. */
|
| 911 |
+
if ( !check_admin_referer( 'groups_delete_group' ) )
|
| 912 |
+
return false;
|
| 913 |
+
|
| 914 |
// Group admin has deleted the group, now do it.
|
| 915 |
if ( !groups_delete_group( $_POST['group-id']) ) {
|
| 916 |
bp_core_add_message( __( 'There was an error deleting the group, please try again.', 'buddypress' ), 'error' );
|
| 1163 |
case 'new_membership_request':
|
| 1164 |
$group_id = $secondary_item_id;
|
| 1165 |
$requesting_user_id = $item_id;
|
| 1166 |
+
|
| 1167 |
$group = new BP_Groups_Group( $group_id, false, false );
|
| 1168 |
|
| 1169 |
$group_link = bp_get_group_permalink( $group );
|
| 1170 |
+
|
| 1171 |
if ( (int)$total_items > 1 ) {
|
| 1172 |
return apply_filters( 'bp_groups_multiple_new_membership_requests_notification', '<a href="' . $group_link . '/admin/membership-requests/" title="' . __( 'Group Membership Requests', 'buddypress' ) . '">' . sprintf( __('%d new membership requests for the group "%s"', 'buddypress' ), (int)$total_items, $group->name ) . '</a>', $group_link, $total_items, $group->name );
|
| 1173 |
} else {
|
| 1585 |
if ( !check_admin_referer( 'groups_step4_save' ) )
|
| 1586 |
return false;
|
| 1587 |
|
| 1588 |
+
groups_send_invites( $group_obj );
|
| 1589 |
|
| 1590 |
do_action( 'groups_created_group', $group_obj->id );
|
| 1591 |
|
| 1599 |
|
| 1600 |
function groups_check_slug( $slug ) {
|
| 1601 |
global $bp;
|
| 1602 |
+
|
| 1603 |
+
if ( 'wp' == substr( $slug, 0, 2 ) )
|
| 1604 |
+
$slug = substr( $slug, 2, strlen( $slug ) - 2 );
|
| 1605 |
+
|
| 1606 |
if ( in_array( $slug, $bp->groups->forbidden_names ) ) {
|
| 1607 |
$slug = $slug . '-' . rand();
|
| 1608 |
}
|
| 1614 |
while ( BP_Groups_Group::check_slug( $slug ) );
|
| 1615 |
}
|
| 1616 |
|
|
|
|
|
|
|
|
|
|
| 1617 |
return $slug;
|
| 1618 |
}
|
| 1619 |
|
| 1659 |
|
| 1660 |
function groups_new_group_forum_post( $post_text, $topic_id ) {
|
| 1661 |
global $group_obj, $bp;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1662 |
|
| 1663 |
if ( $forum_post = bp_forums_new_post( $post_text, $topic_id ) ) {
|
| 1664 |
bp_core_add_message( __( 'Reply posted successfully!', 'buddypress') );
|
| 1677 |
|
| 1678 |
function groups_new_group_forum_topic( $topic_title, $topic_text, $topic_tags, $forum_id ) {
|
| 1679 |
global $group_obj, $bp;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1680 |
|
| 1681 |
if ( $topic = bp_forums_new_topic( $topic_title, $topic_text, $topic_tags, $forum_id ) ) {
|
| 1682 |
bp_core_add_message( __( 'Topic posted successfully!', 'buddypress') );
|
| 1695 |
|
| 1696 |
function groups_invite_user( $user_id, $group_id ) {
|
| 1697 |
global $bp;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1698 |
|
| 1699 |
if ( groups_is_user_member( $user_id, $group_id ) )
|
| 1700 |
return false;
|
| 1714 |
return true;
|
| 1715 |
}
|
| 1716 |
|
| 1717 |
+
function groups_uninvite_user( $user_id, $group_id, $deprecated = true ) {
|
| 1718 |
global $bp;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1719 |
|
| 1720 |
if ( !BP_Groups_Member::delete( $user_id, $group_id ) )
|
| 1721 |
return false;
|
| 1727 |
|
| 1728 |
function groups_accept_invite( $user_id, $group_id ) {
|
| 1729 |
global $group_obj;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1730 |
|
| 1731 |
if ( groups_is_user_member( $user_id, $group_id ) )
|
| 1732 |
return false;
|
| 1778 |
return BP_Groups_Member::get_invites( $user_id );
|
| 1779 |
}
|
| 1780 |
|
| 1781 |
+
function groups_send_invites( $group_obj, $deprecated = true ) {
|
| 1782 |
global $bp;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1783 |
|
| 1784 |
require_once ( BP_PLUGIN_DIR . '/bp-groups/bp-groups-notifications.php' );
|
| 1785 |
|
| 1809 |
|
| 1810 |
function groups_leave_group( $group_id, $user_id = false ) {
|
| 1811 |
global $bp;
|
| 1812 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1813 |
if ( !$user_id )
|
| 1814 |
$user_id = $bp->loggedin_user->id;
|
| 1815 |
|
| 1831 |
|
| 1832 |
function groups_join_group( $group_id, $user_id = false ) {
|
| 1833 |
global $bp;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1834 |
|
| 1835 |
if ( !$user_id )
|
| 1836 |
$user_id = $bp->loggedin_user->id;
|
| 1888 |
function groups_new_wire_post( $group_id, $content ) {
|
| 1889 |
global $group_obj, $bp;
|
| 1890 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1891 |
$private = false;
|
| 1892 |
if ( $group_obj->status != 'public' )
|
| 1893 |
$private = true;
|
| 1903 |
|
| 1904 |
function groups_delete_wire_post( $wire_post_id, $table_name ) {
|
| 1905 |
global $bp;
|
| 1906 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1907 |
if ( bp_wire_delete_post( $wire_post_id, $bp->groups->slug, $table_name ) ) {
|
| 1908 |
do_action( 'groups_deleted_wire_post', $wire_post_id );
|
| 1909 |
return true;
|
| 1914 |
|
| 1915 |
function groups_edit_base_group_details( $group_id, $group_name, $group_desc, $group_news, $notify_members ) {
|
| 1916 |
global $bp;
|
| 1917 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1918 |
if ( empty( $group_name ) || empty( $group_desc ) )
|
| 1919 |
return false;
|
| 1920 |
|
| 1939 |
function groups_edit_group_settings( $group_id, $enable_wire, $enable_forum, $enable_photos, $photos_admin_only, $status ) {
|
| 1940 |
global $bp;
|
| 1941 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1942 |
$group = new BP_Groups_Group( $group_id, false, false );
|
| 1943 |
$group->enable_wire = $enable_wire;
|
| 1944 |
$group->enable_forum = $enable_forum;
|
| 1945 |
$group->enable_photos = $enable_photos;
|
| 1946 |
$group->photos_admin_only = $photos_admin_only;
|
| 1947 |
+
|
| 1948 |
+
/***
|
| 1949 |
+
* Before we potentially switch the group status, if it has been changed to public
|
| 1950 |
+
* from private and there are outstanding membership requests, auto-accept those requests.
|
| 1951 |
+
*/
|
| 1952 |
+
if ( 'private' == $group->status && 'public' == $status )
|
| 1953 |
+
groups_accept_all_pending_membership_requests( $group->id );
|
| 1954 |
+
|
| 1955 |
+
/* Now update the status */
|
| 1956 |
$group->status = $status;
|
| 1957 |
|
| 1958 |
if ( !$group->save() )
|
| 1972 |
|
| 1973 |
function groups_promote_member( $user_id, $group_id ) {
|
| 1974 |
global $bp;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1975 |
|
| 1976 |
if ( !$bp->is_item_admin )
|
| 1977 |
return false;
|
| 1985 |
|
| 1986 |
function groups_demote_member( $user_id, $group_id ) {
|
| 1987 |
global $bp;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1988 |
|
| 1989 |
if ( !$bp->is_item_admin )
|
| 1990 |
return false;
|
| 1999 |
function groups_ban_member( $user_id, $group_id ) {
|
| 2000 |
global $bp;
|
| 2001 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2002 |
if ( !$bp->is_item_admin )
|
| 2003 |
return false;
|
| 2004 |
|
| 2011 |
|
| 2012 |
function groups_unban_member( $user_id, $group_id ) {
|
| 2013 |
global $bp;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2014 |
|
| 2015 |
if ( !$bp->is_item_admin )
|
| 2016 |
return false;
|
| 2025 |
function groups_send_membership_request( $requesting_user_id, $group_id ) {
|
| 2026 |
global $bp;
|
| 2027 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2028 |
$requesting_user = new BP_Groups_Member;
|
| 2029 |
$requesting_user->group_id = $group_id;
|
| 2030 |
$requesting_user->user_id = $requesting_user_id;
|
| 2053 |
return false;
|
| 2054 |
}
|
| 2055 |
|
| 2056 |
+
function groups_accept_membership_request( $membership_id, $user_id = false, $group_id = false ) {
|
| 2057 |
global $bp;
|
| 2058 |
|
| 2059 |
+
if ( $user_id && $group_id )
|
| 2060 |
+
$membership = new BP_Groups_Member( $user_id, $group_id );
|
| 2061 |
+
else
|
| 2062 |
+
$membership = new BP_Groups_Member( false, false, $membership_id );
|
| 2063 |
|
|
|
|
| 2064 |
$membership->accept_request();
|
| 2065 |
|
| 2066 |
if ( !$membership->save() )
|
| 2081 |
return true;
|
| 2082 |
}
|
| 2083 |
|
| 2084 |
+
function groups_reject_membership_request( $membership_id, $user_id = false, $group_id = false ) {
|
| 2085 |
+
if ( $user_id && $group_id )
|
| 2086 |
+
$membership = new BP_Groups_Member( $user_id, $group_id );
|
| 2087 |
+
else
|
| 2088 |
+
$membership = new BP_Groups_Member( false, false, $membership_id );
|
|
|
|
|
|
|
| 2089 |
|
| 2090 |
if ( !BP_Groups_Member::delete( $membership->user_id, $membership->group_id ) )
|
| 2091 |
return false;
|
| 2099 |
return true;
|
| 2100 |
}
|
| 2101 |
|
| 2102 |
+
function groups_accept_all_pending_membership_requests( $group_id ) {
|
| 2103 |
+
$user_ids = BP_Groups_Member::get_all_membership_request_user_ids( $group_id );
|
| 2104 |
+
|
| 2105 |
+
if ( !$user_ids )
|
| 2106 |
+
return false;
|
| 2107 |
+
|
| 2108 |
+
foreach ( (array) $user_ids as $user_id ) {
|
| 2109 |
+
groups_accept_membership_request( false, $user_id, $group_id );
|
| 2110 |
+
}
|
| 2111 |
+
|
| 2112 |
+
do_action( 'groups_accept_all_pending_membership_requests', $group_id );
|
| 2113 |
+
|
| 2114 |
+
return true;
|
| 2115 |
+
}
|
| 2116 |
+
|
| 2117 |
function groups_redirect_to_random_group() {
|
| 2118 |
global $bp, $wpdb;
|
| 2119 |
|
| 2127 |
|
| 2128 |
function groups_delete_group( $group_id ) {
|
| 2129 |
global $bp;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2130 |
|
| 2131 |
// Check the user is the group admin.
|
| 2132 |
if ( !$bp->is_item_admin )
|
bp-groups/bp-groups-classes.php
CHANGED
|
@@ -916,6 +916,12 @@ Class BP_Groups_Member {
|
|
| 916 |
return $wpdb->get_results( $wpdb->prepare( "SELECT user_id, date_modified FROM {$bp->groups->table_name_members} WHERE group_id = %d AND is_mod = 1 AND is_banned = 0", $group_id ) );
|
| 917 |
}
|
| 918 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 919 |
function get_all_for_group( $group_id, $limit = false, $page = false, $exclude_admins_mods = true, $exclude_banned = true ) {
|
| 920 |
global $bp, $wpdb;
|
| 921 |
|
| 916 |
return $wpdb->get_results( $wpdb->prepare( "SELECT user_id, date_modified FROM {$bp->groups->table_name_members} WHERE group_id = %d AND is_mod = 1 AND is_banned = 0", $group_id ) );
|
| 917 |
}
|
| 918 |
|
| 919 |
+
function get_all_membership_request_user_ids( $group_id ) {
|
| 920 |
+
global $bp, $wpdb;
|
| 921 |
+
|
| 922 |
+
return $wpdb->get_col( $wpdb->prepare( "SELECT user_id FROM {$bp->groups->table_name_members} WHERE group_id = %d AND is_confirmed = 0 AND inviter_id = 0", $group_id ) );
|
| 923 |
+
}
|
| 924 |
+
|
| 925 |
function get_all_for_group( $group_id, $limit = false, $page = false, $exclude_admins_mods = true, $exclude_banned = true ) {
|
| 926 |
global $bp, $wpdb;
|
| 927 |
|
bp-groups/bp-groups-templatetags.php
CHANGED
|
@@ -306,7 +306,7 @@ function bp_groups_random_selection( $total_groups = 5 ) {
|
|
| 306 |
?>
|
| 307 |
<li>
|
| 308 |
<div class="item-avatar">
|
| 309 |
-
<a href="<?php echo bp_get_group_permalink( $group ) ?>" title="<?php echo bp_get_group_name( $group ) ?>"><?php echo
|
| 310 |
</div>
|
| 311 |
|
| 312 |
<div class="item">
|
|
@@ -467,7 +467,7 @@ class BP_Groups_User_Groups_Template {
|
|
| 467 |
$this->total_group_count = 1;
|
| 468 |
$this->group_count = 1;
|
| 469 |
} else {
|
| 470 |
-
if ( !$max )
|
| 471 |
$this->total_group_count = (int)$this->groups['total'];
|
| 472 |
else
|
| 473 |
$this->total_group_count = (int)$max;
|
|
@@ -980,7 +980,7 @@ function bp_group_all_members_permalink( $deprecated = true, $deprecated2 = fals
|
|
| 980 |
if ( !$group )
|
| 981 |
$group =& $groups_template->group;
|
| 982 |
|
| 983 |
-
return apply_filters( 'bp_get_group_all_members_permalink', bp_get_group_permalink( $group ) . '/'
|
| 984 |
}
|
| 985 |
|
| 986 |
function bp_group_random_members( $group = false ) {
|
|
@@ -1641,7 +1641,7 @@ class BP_Groups_Group_Members_Template {
|
|
| 1641 |
|
| 1642 |
$this->members = BP_Groups_Member::get_all_for_group( $group_id, $this->pag_num, $this->pag_page, $exclude_admins_mods, $exclude_banned );
|
| 1643 |
|
| 1644 |
-
if ( !$max )
|
| 1645 |
$this->total_member_count = (int)$this->members['count'];
|
| 1646 |
else
|
| 1647 |
$this->total_member_count = (int)$max;
|
|
@@ -1917,7 +1917,7 @@ class BP_Groups_Site_Groups_Template {
|
|
| 1917 |
}
|
| 1918 |
}
|
| 1919 |
|
| 1920 |
-
if ( !$max )
|
| 1921 |
$this->total_group_count = (int)$this->groups['total'];
|
| 1922 |
else
|
| 1923 |
$this->total_group_count = (int)$max;
|
|
@@ -2222,7 +2222,7 @@ class BP_Groups_Membership_Requests_Template {
|
|
| 2222 |
|
| 2223 |
$this->requests = BP_Groups_Group::get_membership_requests( $group_id, $this->pag_num, $this->pag_page );
|
| 2224 |
|
| 2225 |
-
if ( !$max )
|
| 2226 |
$this->total_request_count = (int)$this->requests['total'];
|
| 2227 |
else
|
| 2228 |
$this->total_request_count = (int)$max;
|
| 306 |
?>
|
| 307 |
<li>
|
| 308 |
<div class="item-avatar">
|
| 309 |
+
<a href="<?php echo bp_get_group_permalink( $group ) ?>" title="<?php echo bp_get_group_name( $group ) ?>"><?php echo bp_get_group_avatar_thumb( $group ) ?></a>
|
| 310 |
</div>
|
| 311 |
|
| 312 |
<div class="item">
|
| 467 |
$this->total_group_count = 1;
|
| 468 |
$this->group_count = 1;
|
| 469 |
} else {
|
| 470 |
+
if ( !$max || $max >= (int)$this->groups['total'] )
|
| 471 |
$this->total_group_count = (int)$this->groups['total'];
|
| 472 |
else
|
| 473 |
$this->total_group_count = (int)$max;
|
| 980 |
if ( !$group )
|
| 981 |
$group =& $groups_template->group;
|
| 982 |
|
| 983 |
+
return apply_filters( 'bp_get_group_all_members_permalink', bp_get_group_permalink( $group ) . '/members' );
|
| 984 |
}
|
| 985 |
|
| 986 |
function bp_group_random_members( $group = false ) {
|
| 1641 |
|
| 1642 |
$this->members = BP_Groups_Member::get_all_for_group( $group_id, $this->pag_num, $this->pag_page, $exclude_admins_mods, $exclude_banned );
|
| 1643 |
|
| 1644 |
+
if ( !$max || $max >= (int)$this->members['count'] )
|
| 1645 |
$this->total_member_count = (int)$this->members['count'];
|
| 1646 |
else
|
| 1647 |
$this->total_member_count = (int)$max;
|
| 1917 |
}
|
| 1918 |
}
|
| 1919 |
|
| 1920 |
+
if ( !$max || $max >= (int)$this->groups['total'] )
|
| 1921 |
$this->total_group_count = (int)$this->groups['total'];
|
| 1922 |
else
|
| 1923 |
$this->total_group_count = (int)$max;
|
| 2222 |
|
| 2223 |
$this->requests = BP_Groups_Group::get_membership_requests( $group_id, $this->pag_num, $this->pag_page );
|
| 2224 |
|
| 2225 |
+
if ( !$max || $max >= (int)$this->requests['total'] )
|
| 2226 |
$this->total_request_count = (int)$this->requests['total'];
|
| 2227 |
else
|
| 2228 |
$this->total_request_count = (int)$max;
|
bp-loader.php
CHANGED
|
@@ -4,12 +4,12 @@ Plugin Name: BuddyPress
|
|
| 4 |
Plugin URI: http://buddypress.org/download/
|
| 5 |
Description: BuddyPress will add social networking features to a new or existing WordPress MU installation.
|
| 6 |
Author: The BuddyPress Community
|
| 7 |
-
Version: 1.0.
|
| 8 |
Author URI: http://buddypress.org/developers/
|
| 9 |
Site Wide Only: true
|
| 10 |
*/
|
| 11 |
|
| 12 |
-
define( 'BP_VERSION', '1.0.
|
| 13 |
|
| 14 |
/***
|
| 15 |
* This file will load in each BuddyPress component based on which
|
| 4 |
Plugin URI: http://buddypress.org/download/
|
| 5 |
Description: BuddyPress will add social networking features to a new or existing WordPress MU installation.
|
| 6 |
Author: The BuddyPress Community
|
| 7 |
+
Version: 1.0.2
|
| 8 |
Author URI: http://buddypress.org/developers/
|
| 9 |
Site Wide Only: true
|
| 10 |
*/
|
| 11 |
|
| 12 |
+
define( 'BP_VERSION', '1.0.2' );
|
| 13 |
|
| 14 |
/***
|
| 15 |
* This file will load in each BuddyPress component based on which
|
bp-messages.php
CHANGED
|
@@ -158,6 +158,8 @@ function messages_setup_nav() {
|
|
| 158 |
$bp->bp_options_title = $bp->displayed_user->fullname;
|
| 159 |
}
|
| 160 |
}
|
|
|
|
|
|
|
| 161 |
}
|
| 162 |
add_action( 'wp', 'messages_setup_nav', 2 );
|
| 163 |
add_action( 'admin_menu', 'messages_setup_nav', 2 );
|
|
@@ -191,6 +193,9 @@ function messages_screen_compose() {
|
|
| 191 |
}
|
| 192 |
|
| 193 |
if ( $recipients || ( isset($_POST['send-notice']) && is_site_admin() ) ) {
|
|
|
|
|
|
|
|
|
|
| 194 |
messages_send_message( $recipients, $_POST['subject'], $_POST['content'], $_POST['thread_id'], false, true );
|
| 195 |
}
|
| 196 |
|
|
@@ -300,7 +305,9 @@ function messages_action_delete_message() {
|
|
| 300 |
if ( !$thread_id || !is_numeric($thread_id) || !BP_Messages_Thread::check_access($thread_id) ) {
|
| 301 |
bp_core_redirect( $bp->displayed_user->domain . $bp->current_component . '/' . $bp->current_action );
|
| 302 |
} else {
|
| 303 |
-
|
|
|
|
|
|
|
| 304 |
// delete message
|
| 305 |
if ( !messages_delete_thread($thread_id) ) {
|
| 306 |
bp_core_add_message( __('There was an error deleting that message.', 'buddypress'), 'error' );
|
|
@@ -324,6 +331,9 @@ function messages_action_bulk_delete() {
|
|
| 324 |
if ( !$thread_ids || !BP_Messages_Thread::check_access($thread_ids) ) {
|
| 325 |
bp_core_redirect( $bp->displayed_user->domain . $bp->current_component . '/' . $bp->current_action );
|
| 326 |
} else {
|
|
|
|
|
|
|
|
|
|
| 327 |
if ( !messages_delete_thread( $thread_ids ) ) {
|
| 328 |
bp_core_add_message( __('There was an error deleting messages.', 'buddypress'), 'error' );
|
| 329 |
} else {
|
|
@@ -382,10 +392,7 @@ function messages_send_message( $recipients, $subject, $content, $thread_id, $fr
|
|
| 382 |
global $pmessage;
|
| 383 |
global $message, $type;
|
| 384 |
global $bp, $current_user;
|
| 385 |
-
|
| 386 |
-
if ( !check_admin_referer( 'messages_send_message' ) )
|
| 387 |
-
return false;
|
| 388 |
-
|
| 389 |
messages_add_callback_values( $recipients, $subject, $content );
|
| 390 |
|
| 391 |
if ( isset( $_POST['send-notice'] ) ) {
|
|
@@ -542,9 +549,6 @@ function messages_send_notice( $subject, $message, $from_template ) {
|
|
| 542 |
**************************************************************************/
|
| 543 |
|
| 544 |
function messages_delete_thread( $thread_ids ) {
|
| 545 |
-
if ( !check_admin_referer( 'messages_delete_thread' ) )
|
| 546 |
-
return false;
|
| 547 |
-
|
| 548 |
if ( is_array($thread_ids) ) {
|
| 549 |
$error = 0;
|
| 550 |
for ( $i = 0; $i < count($thread_ids); $i++ ) {
|
| 158 |
$bp->bp_options_title = $bp->displayed_user->fullname;
|
| 159 |
}
|
| 160 |
}
|
| 161 |
+
|
| 162 |
+
do_action( 'messages_setup_nav' );
|
| 163 |
}
|
| 164 |
add_action( 'wp', 'messages_setup_nav', 2 );
|
| 165 |
add_action( 'admin_menu', 'messages_setup_nav', 2 );
|
| 193 |
}
|
| 194 |
|
| 195 |
if ( $recipients || ( isset($_POST['send-notice']) && is_site_admin() ) ) {
|
| 196 |
+
if ( !check_admin_referer( 'messages_send_message' ) )
|
| 197 |
+
return false;
|
| 198 |
+
|
| 199 |
messages_send_message( $recipients, $_POST['subject'], $_POST['content'], $_POST['thread_id'], false, true );
|
| 200 |
}
|
| 201 |
|
| 305 |
if ( !$thread_id || !is_numeric($thread_id) || !BP_Messages_Thread::check_access($thread_id) ) {
|
| 306 |
bp_core_redirect( $bp->displayed_user->domain . $bp->current_component . '/' . $bp->current_action );
|
| 307 |
} else {
|
| 308 |
+
if ( !check_admin_referer( 'messages_delete_thread' ) )
|
| 309 |
+
return false;
|
| 310 |
+
|
| 311 |
// delete message
|
| 312 |
if ( !messages_delete_thread($thread_id) ) {
|
| 313 |
bp_core_add_message( __('There was an error deleting that message.', 'buddypress'), 'error' );
|
| 331 |
if ( !$thread_ids || !BP_Messages_Thread::check_access($thread_ids) ) {
|
| 332 |
bp_core_redirect( $bp->displayed_user->domain . $bp->current_component . '/' . $bp->current_action );
|
| 333 |
} else {
|
| 334 |
+
if ( !check_admin_referer( 'messages_delete_thread' ) )
|
| 335 |
+
return false;
|
| 336 |
+
|
| 337 |
if ( !messages_delete_thread( $thread_ids ) ) {
|
| 338 |
bp_core_add_message( __('There was an error deleting messages.', 'buddypress'), 'error' );
|
| 339 |
} else {
|
| 392 |
global $pmessage;
|
| 393 |
global $message, $type;
|
| 394 |
global $bp, $current_user;
|
| 395 |
+
|
|
|
|
|
|
|
|
|
|
| 396 |
messages_add_callback_values( $recipients, $subject, $content );
|
| 397 |
|
| 398 |
if ( isset( $_POST['send-notice'] ) ) {
|
| 549 |
**************************************************************************/
|
| 550 |
|
| 551 |
function messages_delete_thread( $thread_ids ) {
|
|
|
|
|
|
|
|
|
|
| 552 |
if ( is_array($thread_ids) ) {
|
| 553 |
$error = 0;
|
| 554 |
for ( $i = 0; $i < count($thread_ids); $i++ ) {
|
bp-messages/bp-messages-ajax.php
CHANGED
|
@@ -28,10 +28,15 @@ add_action( 'wp_ajax_messages_send_reply', 'messages_ajax_send_reply' );
|
|
| 28 |
|
| 29 |
function messages_ajax_autocomplete_results() {
|
| 30 |
global $bp;
|
|
|
|
|
|
|
| 31 |
|
| 32 |
// Get the friend ids based on the search terms
|
| 33 |
-
|
|
|
|
| 34 |
|
|
|
|
|
|
|
| 35 |
if ( $friends['friends'] ) {
|
| 36 |
foreach ( $friends['friends'] as $user_id ) {
|
| 37 |
$ud = get_userdata($user_id);
|
| 28 |
|
| 29 |
function messages_ajax_autocomplete_results() {
|
| 30 |
global $bp;
|
| 31 |
+
|
| 32 |
+
$friends = false;
|
| 33 |
|
| 34 |
// Get the friend ids based on the search terms
|
| 35 |
+
if ( function_exists( 'friends_search_friends' ) )
|
| 36 |
+
$friends = friends_search_friends( $_GET['q'], $bp->loggedin_user->id, $_GET['limit'], 1 );
|
| 37 |
|
| 38 |
+
$friends = apply_filters( 'bp_friends_autocomplete_list', $friends, $_GET['q'], $_GET['limit'] );
|
| 39 |
+
|
| 40 |
if ( $friends['friends'] ) {
|
| 41 |
foreach ( $friends['friends'] as $user_id ) {
|
| 42 |
$ud = get_userdata($user_id);
|
bp-messages/bp-messages-templatetags.php
CHANGED
|
@@ -15,7 +15,7 @@ Class BP_Messages_Template {
|
|
| 15 |
var $pag_num;
|
| 16 |
var $pag_links;
|
| 17 |
|
| 18 |
-
function bp_messages_template( $user_id, $box, $per_page, $max ) {
|
| 19 |
$this->pag_page = isset( $_GET['mpage'] ) ? intval( $_GET['mpage'] ) : 1;
|
| 20 |
$this->pag_num = isset( $_GET['num'] ) ? intval( $_GET['num'] ) : $per_page;
|
| 21 |
$this->user_id = $user_id;
|
|
@@ -24,17 +24,19 @@ Class BP_Messages_Template {
|
|
| 24 |
if ( 'notices' == $this->box )
|
| 25 |
$this->threads = BP_Messages_Notice::get_notices();
|
| 26 |
else
|
| 27 |
-
$this->threads = BP_Messages_Thread::get_current_threads_for_user( $this->user_id, $this->box, $this->pag_num, $this->pag_page );
|
| 28 |
|
| 29 |
if ( !$this->threads ) {
|
| 30 |
$this->thread_count = 0;
|
| 31 |
$this->total_thread_count = 0;
|
| 32 |
} else {
|
| 33 |
-
|
|
|
|
|
|
|
| 34 |
if ( 'notices' == $this->box )
|
| 35 |
-
$this->total_thread_count =
|
| 36 |
else
|
| 37 |
-
$this->total_thread_count = BP_Messages_Thread::get_total_threads_for_user( $this->user_id, $this->box );
|
| 38 |
} else {
|
| 39 |
$this->total_thread_count = (int)$max;
|
| 40 |
}
|
|
@@ -112,7 +114,8 @@ function bp_has_message_threads( $args = '' ) {
|
|
| 112 |
'user_id' => $bp->loggedin_user->id,
|
| 113 |
'box' => 'inbox',
|
| 114 |
'per_page' => 10,
|
| 115 |
-
'max' => false
|
|
|
|
| 116 |
);
|
| 117 |
|
| 118 |
$r = wp_parse_args( $args, $defaults );
|
|
@@ -130,7 +133,7 @@ function bp_has_message_threads( $args = '' ) {
|
|
| 130 |
if ( 'notices' == $bp->current_action )
|
| 131 |
$box = 'notices';
|
| 132 |
|
| 133 |
-
$messages_template = new BP_Messages_Template( $user_id, $box, $per_page, $max );
|
| 134 |
}
|
| 135 |
|
| 136 |
return $messages_template->has_threads();
|
| 15 |
var $pag_num;
|
| 16 |
var $pag_links;
|
| 17 |
|
| 18 |
+
function bp_messages_template( $user_id, $box, $per_page, $max, $type ) {
|
| 19 |
$this->pag_page = isset( $_GET['mpage'] ) ? intval( $_GET['mpage'] ) : 1;
|
| 20 |
$this->pag_num = isset( $_GET['num'] ) ? intval( $_GET['num'] ) : $per_page;
|
| 21 |
$this->user_id = $user_id;
|
| 24 |
if ( 'notices' == $this->box )
|
| 25 |
$this->threads = BP_Messages_Notice::get_notices();
|
| 26 |
else
|
| 27 |
+
$this->threads = BP_Messages_Thread::get_current_threads_for_user( $this->user_id, $this->box, $this->pag_num, $this->pag_page, $type );
|
| 28 |
|
| 29 |
if ( !$this->threads ) {
|
| 30 |
$this->thread_count = 0;
|
| 31 |
$this->total_thread_count = 0;
|
| 32 |
} else {
|
| 33 |
+
$total_notice_count = BP_Messages_Notice::get_total_notice_count();
|
| 34 |
+
|
| 35 |
+
if ( !$max || $max >= (int)$total_notice_count ) {
|
| 36 |
if ( 'notices' == $this->box )
|
| 37 |
+
$this->total_thread_count = (int)$total_notice_count;
|
| 38 |
else
|
| 39 |
+
$this->total_thread_count = (int)BP_Messages_Thread::get_total_threads_for_user( $this->user_id, $this->box, $type );
|
| 40 |
} else {
|
| 41 |
$this->total_thread_count = (int)$max;
|
| 42 |
}
|
| 114 |
'user_id' => $bp->loggedin_user->id,
|
| 115 |
'box' => 'inbox',
|
| 116 |
'per_page' => 10,
|
| 117 |
+
'max' => false,
|
| 118 |
+
'type' => 'all'
|
| 119 |
);
|
| 120 |
|
| 121 |
$r = wp_parse_args( $args, $defaults );
|
| 133 |
if ( 'notices' == $bp->current_action )
|
| 134 |
$box = 'notices';
|
| 135 |
|
| 136 |
+
$messages_template = new BP_Messages_Template( $user_id, $box, $per_page, $max, $type );
|
| 137 |
}
|
| 138 |
|
| 139 |
return $messages_template->has_threads();
|
bp-themes/bphome/style.css
CHANGED
|
@@ -2,7 +2,7 @@
|
|
| 2 |
Theme Name: BuddyPress Default Home Theme
|
| 3 |
Theme URI: http://buddypress.com/
|
| 4 |
Description: A widget framework theme for the home of a BuddyPress enabled installation. This theme is not required to use BuddyPress.
|
| 5 |
-
Version: 1.0.
|
| 6 |
Author: Andy Peatling
|
| 7 |
Author URI: http://apeatling.wordpress.com
|
| 8 |
*/
|
| 2 |
Theme Name: BuddyPress Default Home Theme
|
| 3 |
Theme URI: http://buddypress.com/
|
| 4 |
Description: A widget framework theme for the home of a BuddyPress enabled installation. This theme is not required to use BuddyPress.
|
| 5 |
+
Version: 1.0.2
|
| 6 |
Author: Andy Peatling
|
| 7 |
Author URI: http://apeatling.wordpress.com
|
| 8 |
*/
|
bp-themes/bpmember/groups/admin/manage-members.php
CHANGED
|
@@ -44,7 +44,7 @@
|
|
| 44 |
|
| 45 |
<ul id="members-list" class="item-list single-line">
|
| 46 |
<?php while ( bp_group_members() ) : bp_group_the_member(); ?>
|
| 47 |
-
<?php if (
|
| 48 |
<li class="banned-user">
|
| 49 |
<?php bp_group_member_avatar_mini() ?>
|
| 50 |
|
| 44 |
|
| 45 |
<ul id="members-list" class="item-list single-line">
|
| 46 |
<?php while ( bp_group_members() ) : bp_group_the_member(); ?>
|
| 47 |
+
<?php if ( bp_get_group_member_is_banned() ) : ?>
|
| 48 |
<li class="banned-user">
|
| 49 |
<?php bp_group_member_avatar_mini() ?>
|
| 50 |
|
bp-themes/bpmember/style.css
CHANGED
|
@@ -2,7 +2,7 @@
|
|
| 2 |
Theme Name: BuddyPress Default Member Theme
|
| 3 |
Theme URI: http://buddypress.org
|
| 4 |
Description: The default member theme for BuddyPress. This theme handles all non-blog pages.
|
| 5 |
-
Version: 1.0.
|
| 6 |
Author: Andy Peatling
|
| 7 |
Author URI: http://apeatling.wordpress.com
|
| 8 |
*/
|
| 2 |
Theme Name: BuddyPress Default Member Theme
|
| 3 |
Theme URI: http://buddypress.org
|
| 4 |
Description: The default member theme for BuddyPress. This theme handles all non-blog pages.
|
| 5 |
+
Version: 1.0.2
|
| 6 |
Author: Andy Peatling
|
| 7 |
Author URI: http://apeatling.wordpress.com
|
| 8 |
*/
|
bp-themes/bpskeletonmember/groups/admin/manage-members.php
CHANGED
|
@@ -59,7 +59,7 @@
|
|
| 59 |
<ul id="members-list" class="item-list single-line">
|
| 60 |
<?php while ( bp_group_members() ) : bp_group_the_member(); ?>
|
| 61 |
|
| 62 |
-
<?php if (
|
| 63 |
|
| 64 |
<li class="banned-user">
|
| 65 |
<?php bp_group_member_avatar_mini() ?>
|
| 59 |
<ul id="members-list" class="item-list single-line">
|
| 60 |
<?php while ( bp_group_members() ) : bp_group_the_member(); ?>
|
| 61 |
|
| 62 |
+
<?php if ( bp_get_group_member_is_banned() ) : ?>
|
| 63 |
|
| 64 |
<li class="banned-user">
|
| 65 |
<?php bp_group_member_avatar_mini() ?>
|
bp-themes/bpskeletonmember/userbar.php
CHANGED
|
@@ -27,7 +27,7 @@
|
|
| 27 |
<?php else : ?>
|
| 28 |
|
| 29 |
<p class="avatar">
|
| 30 |
-
<img src="<?php echo
|
| 31 |
</p>
|
| 32 |
|
| 33 |
<p id="login-text"><?php _e( 'You must log in to access your account.', 'buddypress' ) ?></p>
|
| 27 |
<?php else : ?>
|
| 28 |
|
| 29 |
<p class="avatar">
|
| 30 |
+
<img src="<?php echo BP_PLUGIN_URL . '/bp-core/images/mystery-man.jpg' ?>" alt="No User" width="50" height="50" />
|
| 31 |
</p>
|
| 32 |
|
| 33 |
<p id="login-text"><?php _e( 'You must log in to access your account.', 'buddypress' ) ?></p>
|
bp-wire.php
CHANGED
|
@@ -56,6 +56,8 @@ function bp_wire_setup_nav() {
|
|
| 56 |
$bp->bp_options_title = $bp->displayed_user->fullname;
|
| 57 |
}
|
| 58 |
}
|
|
|
|
|
|
|
| 59 |
}
|
| 60 |
add_action( 'wp', 'bp_wire_setup_nav', 2 );
|
| 61 |
add_action( 'admin_menu', 'bp_wire_setup_nav', 2 );
|
| 56 |
$bp->bp_options_title = $bp->displayed_user->fullname;
|
| 57 |
}
|
| 58 |
}
|
| 59 |
+
|
| 60 |
+
do_action( 'bp_wire_setup_nav' );
|
| 61 |
}
|
| 62 |
add_action( 'wp', 'bp_wire_setup_nav', 2 );
|
| 63 |
add_action( 'admin_menu', 'bp_wire_setup_nav', 2 );
|
bp-xprofile.php
CHANGED
|
@@ -215,6 +215,8 @@ function xprofile_setup_nav() {
|
|
| 215 |
$bp->bp_options_title = $bp->displayed_user->fullname;
|
| 216 |
}
|
| 217 |
}
|
|
|
|
|
|
|
| 218 |
}
|
| 219 |
add_action( 'wp', 'xprofile_setup_nav', 2 );
|
| 220 |
add_action( 'admin_menu', 'xprofile_setup_nav', 2 );
|
| 215 |
$bp->bp_options_title = $bp->displayed_user->fullname;
|
| 216 |
}
|
| 217 |
}
|
| 218 |
+
|
| 219 |
+
do_action( 'xprofile_setup_nav' );
|
| 220 |
}
|
| 221 |
add_action( 'wp', 'xprofile_setup_nav', 2 );
|
| 222 |
add_action( 'admin_menu', 'xprofile_setup_nav', 2 );
|
bp-xprofile/bp-xprofile-signup.php
CHANGED
|
@@ -1,5 +1,11 @@
|
|
| 1 |
<?php
|
| 2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3 |
/**************************************************************************
|
| 4 |
xprofile_add_signup_fields()
|
| 5 |
|
|
@@ -94,7 +100,7 @@ function xprofile_validate_signup_fields( $result ) {
|
|
| 94 |
if ( $_POST['stage'] != 'validate-user-signup' ) return $result;
|
| 95 |
|
| 96 |
extract($result);
|
| 97 |
-
|
| 98 |
if ( $bp_signup_has_errors || $bp_signup_avatar_has_errors )
|
| 99 |
$errors->add( 'bp_xprofile_errors', '' );
|
| 100 |
|
|
@@ -103,12 +109,12 @@ function xprofile_validate_signup_fields( $result ) {
|
|
| 103 |
add_filter( 'wpmu_validate_user_signup', 'xprofile_validate_signup_fields', 10, 1 );
|
| 104 |
|
| 105 |
function xprofile_add_profile_meta( $meta ) {
|
| 106 |
-
global $bp, $bp_blog_signup_meta;
|
| 107 |
|
| 108 |
if ( $_POST['stage'] == 'validate-blog-signup' ) {
|
| 109 |
$bp_meta = $bp_blog_signup_meta;
|
| 110 |
} else if ( $_POST['stage'] == 'validate-user-signup' ) {
|
| 111 |
-
$bp_meta =
|
| 112 |
} else {
|
| 113 |
$bp_meta = $meta;
|
| 114 |
}
|
|
@@ -123,9 +129,10 @@ function xprofile_load_signup_meta() {
|
|
| 123 |
global $canvas, $original;
|
| 124 |
global $current_site, $active_signup;
|
| 125 |
global $wp_upload_error;
|
|
|
|
| 126 |
|
| 127 |
if ( $_POST['stage'] != 'validate-user-signup' ) return;
|
| 128 |
-
|
| 129 |
$counter = 0;
|
| 130 |
$bp_signup_has_errors = false;
|
| 131 |
$prev_field_id = -1;
|
|
@@ -175,7 +182,7 @@ function xprofile_load_signup_meta() {
|
|
| 175 |
}
|
| 176 |
|
| 177 |
// validate the avatar upload if there is one.
|
| 178 |
-
$
|
| 179 |
$checked_upload = false;
|
| 180 |
$checked_size = false;
|
| 181 |
$checked_type = false;
|
|
@@ -221,22 +228,19 @@ function xprofile_load_signup_meta() {
|
|
| 221 |
}
|
| 222 |
}
|
| 223 |
|
| 224 |
-
if ( !$bp_signup_has_errors && !$bp_signup_avatar_has_errors ) {
|
| 225 |
-
/* Destroy and existing cookies */
|
| 226 |
-
setcookie( 'bp_xprofile_meta', false, time()-1000, COOKIEPATH );
|
| 227 |
-
|
| 228 |
$public = (int) $_POST['blog_public'];
|
| 229 |
|
| 230 |
// put the user profile meta in a session ready to store.
|
| 231 |
for ( $i = 0; $i < count($bp_xprofile_callback); $i++ ) {
|
| 232 |
-
$
|
| 233 |
}
|
| 234 |
|
| 235 |
-
$
|
| 236 |
-
$
|
| 237 |
-
$
|
| 238 |
|
| 239 |
-
setcookie( 'bp_xprofile_meta', serialize($
|
| 240 |
}
|
| 241 |
}
|
| 242 |
add_action( 'init', 'xprofile_load_signup_meta' );
|
|
@@ -245,7 +249,7 @@ function xprofile_load_blog_signup_meta() {
|
|
| 245 |
global $bp_blog_signup_meta;
|
| 246 |
|
| 247 |
if ( $_POST['stage'] != 'validate-blog-signup' ) return;
|
| 248 |
-
|
| 249 |
$blog_meta = array(
|
| 250 |
'public' => $_POST['blog_public'],
|
| 251 |
'lang_id' => 1, // deprecated
|
|
@@ -276,7 +280,7 @@ function xprofile_on_activate_blog( $blog_id, $user_id, $password, $title, $meta
|
|
| 276 |
add_action( 'wpmu_activate_blog', 'xprofile_on_activate_blog', 1, 5 );
|
| 277 |
|
| 278 |
|
| 279 |
-
function xprofile_on_activate_user( $user_id, $password, $meta ) {
|
| 280 |
xprofile_extract_signup_meta( $user_id, $meta );
|
| 281 |
|
| 282 |
if ( bp_has_custom_activation_page() )
|
| 1 |
<?php
|
| 2 |
|
| 3 |
+
function xprofile_clear_signup_cookie() {
|
| 4 |
+
if ( !isset( $_REQUEST['action'] ) && $_POST['stage'] != 'validate-blog-signup' && $_POST['stage'] != 'validate-user-signup' )
|
| 5 |
+
setcookie( 'bp_xprofile_meta', false, time()-1000, COOKIEPATH );
|
| 6 |
+
}
|
| 7 |
+
add_action( 'init', 'xprofile_clear_signup_cookie' );
|
| 8 |
+
|
| 9 |
/**************************************************************************
|
| 10 |
xprofile_add_signup_fields()
|
| 11 |
|
| 100 |
if ( $_POST['stage'] != 'validate-user-signup' ) return $result;
|
| 101 |
|
| 102 |
extract($result);
|
| 103 |
+
|
| 104 |
if ( $bp_signup_has_errors || $bp_signup_avatar_has_errors )
|
| 105 |
$errors->add( 'bp_xprofile_errors', '' );
|
| 106 |
|
| 109 |
add_filter( 'wpmu_validate_user_signup', 'xprofile_validate_signup_fields', 10, 1 );
|
| 110 |
|
| 111 |
function xprofile_add_profile_meta( $meta ) {
|
| 112 |
+
global $bp, $bp_blog_signup_meta, $bp_user_signup_meta;
|
| 113 |
|
| 114 |
if ( $_POST['stage'] == 'validate-blog-signup' ) {
|
| 115 |
$bp_meta = $bp_blog_signup_meta;
|
| 116 |
} else if ( $_POST['stage'] == 'validate-user-signup' ) {
|
| 117 |
+
$bp_meta = $bp_user_signup_meta;
|
| 118 |
} else {
|
| 119 |
$bp_meta = $meta;
|
| 120 |
}
|
| 129 |
global $canvas, $original;
|
| 130 |
global $current_site, $active_signup;
|
| 131 |
global $wp_upload_error;
|
| 132 |
+
global $bp_user_signup_meta;
|
| 133 |
|
| 134 |
if ( $_POST['stage'] != 'validate-user-signup' ) return;
|
| 135 |
+
|
| 136 |
$counter = 0;
|
| 137 |
$bp_signup_has_errors = false;
|
| 138 |
$prev_field_id = -1;
|
| 182 |
}
|
| 183 |
|
| 184 |
// validate the avatar upload if there is one.
|
| 185 |
+
$bp_signup_avatar_has_errors = false;
|
| 186 |
$checked_upload = false;
|
| 187 |
$checked_size = false;
|
| 188 |
$checked_type = false;
|
| 228 |
}
|
| 229 |
}
|
| 230 |
|
| 231 |
+
if ( !$bp_signup_has_errors && !$bp_signup_avatar_has_errors ) {
|
|
|
|
|
|
|
|
|
|
| 232 |
$public = (int) $_POST['blog_public'];
|
| 233 |
|
| 234 |
// put the user profile meta in a session ready to store.
|
| 235 |
for ( $i = 0; $i < count($bp_xprofile_callback); $i++ ) {
|
| 236 |
+
$bp_user_signup_meta['field_' . $bp_xprofile_callback[$i]['field_id']] .= $bp_xprofile_callback[$i]['value'];
|
| 237 |
}
|
| 238 |
|
| 239 |
+
$bp_user_signup_meta['xprofile_field_ids'] = $_POST['xprofile_ids'];
|
| 240 |
+
$bp_user_signup_meta['avatar_image_resized'] = $canvas;
|
| 241 |
+
$bp_user_signup_meta['avatar_image_original'] = $original;
|
| 242 |
|
| 243 |
+
setcookie( 'bp_xprofile_meta', serialize($bp_user_signup_meta), time()+60*60*24, COOKIEPATH );
|
| 244 |
}
|
| 245 |
}
|
| 246 |
add_action( 'init', 'xprofile_load_signup_meta' );
|
| 249 |
global $bp_blog_signup_meta;
|
| 250 |
|
| 251 |
if ( $_POST['stage'] != 'validate-blog-signup' ) return;
|
| 252 |
+
|
| 253 |
$blog_meta = array(
|
| 254 |
'public' => $_POST['blog_public'],
|
| 255 |
'lang_id' => 1, // deprecated
|
| 280 |
add_action( 'wpmu_activate_blog', 'xprofile_on_activate_blog', 1, 5 );
|
| 281 |
|
| 282 |
|
| 283 |
+
function xprofile_on_activate_user( $user_id, $password, $meta ) {
|
| 284 |
xprofile_extract_signup_meta( $user_id, $meta );
|
| 285 |
|
| 286 |
if ( bp_has_custom_activation_page() )
|
bp-xprofile/bp-xprofile-templatetags.php
CHANGED
|
@@ -312,7 +312,7 @@ function bp_profile_group_name( $deprecated = true ) {
|
|
| 312 |
echo bp_get_profile_group_name();
|
| 313 |
}
|
| 314 |
}
|
| 315 |
-
function bp_get_profile_group_name(
|
| 316 |
global $bp;
|
| 317 |
|
| 318 |
$group_id = $bp->action_variables[1];
|
| 312 |
echo bp_get_profile_group_name();
|
| 313 |
}
|
| 314 |
}
|
| 315 |
+
function bp_get_profile_group_name() {
|
| 316 |
global $bp;
|
| 317 |
|
| 318 |
$group_id = $bp->action_variables[1];
|
readme.txt
CHANGED
|
@@ -3,7 +3,7 @@ Contributors: apeatling
|
|
| 3 |
Tags: wpmu, buddypress, social, networking, profiles, messaging, friends, groups, forums, activity
|
| 4 |
Requires at least: 2.7.1
|
| 5 |
Tested up to: 2.7.1
|
| 6 |
-
Stable tag: 1.0.
|
| 7 |
|
| 8 |
BuddyPress is a suite of WordPress MU social networking plugins and themes.
|
| 9 |
|
| 3 |
Tags: wpmu, buddypress, social, networking, profiles, messaging, friends, groups, forums, activity
|
| 4 |
Requires at least: 2.7.1
|
| 5 |
Tested up to: 2.7.1
|
| 6 |
+
Stable tag: 1.0.2
|
| 7 |
|
| 8 |
BuddyPress is a suite of WordPress MU social networking plugins and themes.
|
| 9 |
|
