BuddyPress - Version 1.0.1

Version Description

Download this release

Release Info

Developer apeatling
Plugin Icon 128x128 BuddyPress
Version 1.0.1
Comparing to
See all releases

Code changes from version 1.0 to 1.0.1

Files changed (59) hide show
  1. bp-activity.php +0 -1
  2. bp-activity/bp-activity-filters.php +10 -1
  3. bp-activity/bp-activity-templatetags.php +5 -3
  4. bp-activity/bp-activity-widgets.php +3 -5
  5. bp-blogs.php +17 -18
  6. bp-blogs/bp-blogs-widgets.php +6 -4
  7. bp-core.php +300 -107
  8. bp-core/bp-core-admin.php +3 -3
  9. bp-core/bp-core-adminbar.php +2 -2
  10. bp-core/bp-core-ajax-handler.php +0 -11
  11. bp-core/bp-core-ajax.php +5 -0
  12. bp-core/bp-core-avatars.php +2 -2
  13. bp-core/bp-core-catchuri.php +19 -10
  14. bp-core/bp-core-classes.php +1 -1
  15. bp-core/bp-core-cssjs.php +3 -1
  16. bp-core/bp-core-settings.php +4 -2
  17. bp-core/bp-core-templatetags.php +24 -34
  18. bp-core/bp-core-widgets.php +19 -16
  19. bp-forums.php +1 -3
  20. bp-friends.php +87 -7
  21. bp-friends/bp-friends-notifications.php +2 -2
  22. bp-friends/bp-friends-templatetags.php +1 -1
  23. bp-groups.php +26 -21
  24. bp-groups/bp-groups-admin.php +3 -3
  25. bp-groups/bp-groups-ajax.php +11 -11
  26. bp-groups/bp-groups-filters.php +1 -0
  27. bp-groups/bp-groups-notifications.php +2 -2
  28. bp-groups/bp-groups-templatetags.php +16 -16
  29. bp-groups/bp-groups-widgets.php +10 -8
  30. bp-languages/buddypress.pot +190 -195
  31. bp-loader.php +12 -12
  32. bp-messages.php +16 -17
  33. bp-messages/autocomplete/bp-messages-autocomplete.php +0 -22
  34. bp-messages/bp-messages-ajax.php +17 -0
  35. bp-messages/bp-messages-classes.php +3 -3
  36. bp-messages/bp-messages-cssjs.php +17 -4
  37. bp-messages/bp-messages-notifications.php +4 -4
  38. bp-messages/bp-messages-templatetags.php +8 -8
  39. bp-messages/js/autocomplete/init.php +0 -16
  40. bp-messages/js/autocomplete/jquery.autocomplete.js +3 -1
  41. bp-themes/bphome/comments-popup.php +1 -1
  42. bp-themes/bphome/comments.php +1 -1
  43. bp-themes/bphome/css/base.css +5 -3
  44. bp-themes/bphome/style.css +1 -1
  45. bp-themes/bpmember/css/base.css +3 -2
  46. bp-themes/bpmember/messages/compose.php +1 -1
  47. bp-themes/bpmember/style.css +1 -1
  48. bp-themes/bpskeletonmember/directories/blogs/index.php +1 -1
  49. bp-themes/bpskeletonmember/directories/groups/index.php +1 -1
  50. bp-themes/bpskeletonmember/directories/members/index.php +1 -1
  51. bp-themes/bpskeletonmember/header.php +1 -1
  52. bp-themes/bpskeletonmember/messages/compose.php +2 -2
  53. bp-wire.php +0 -2
  54. bp-wire/bp-wire-templatetags.php +1 -1
  55. bp-xprofile.php +4 -5
  56. bp-xprofile/bp-xprofile-classes.php +3 -3
  57. bp-xprofile/bp-xprofile-notifications.php +1 -1
  58. bp-xprofile/bp-xprofile-signup.php +68 -47
  59. readme.txt +10 -2
bp-activity.php CHANGED
@@ -1,6 +1,5 @@
1
  <?php
2
 
3
- define ( 'BP_ACTIVITY_VERSION', '1.0' );
4
  define ( 'BP_ACTIVITY_DB_VERSION', '1300' );
5
 
6
  /* Define the slug for the component */
1
  <?php
2
 
 
3
  define ( 'BP_ACTIVITY_DB_VERSION', '1300' );
4
 
5
  /* Define the slug for the component */
bp-activity/bp-activity-filters.php CHANGED
@@ -1,6 +1,8 @@
1
  <?php
2
 
3
  /* Apply WordPress defined filters */
 
 
4
  add_filter( 'bp_get_activity_content', 'wptexturize' );
5
 
6
  add_filter( 'bp_get_activity_content', 'convert_smilies' );
@@ -9,8 +11,15 @@ add_filter( 'bp_get_activity_content', 'convert_chars' );
9
 
10
  add_filter( 'bp_get_activity_content', 'wpautop' );
11
 
 
 
12
  add_filter( 'bp_get_activity_content', 'stripslashes_deep' );
13
 
14
- add_filter( 'bp_get_activity_content', 'make_clickable' );
 
 
 
 
 
15
 
16
  ?>
1
  <?php
2
 
3
  /* Apply WordPress defined filters */
4
+ add_filter( 'bp_get_activity_content', 'wp_filter_kses', 1 );
5
+
6
  add_filter( 'bp_get_activity_content', 'wptexturize' );
7
 
8
  add_filter( 'bp_get_activity_content', 'convert_smilies' );
11
 
12
  add_filter( 'bp_get_activity_content', 'wpautop' );
13
 
14
+ add_filter( 'bp_get_activity_content', 'make_clickable' );
15
+
16
  add_filter( 'bp_get_activity_content', 'stripslashes_deep' );
17
 
18
+ function bp_activity_add_allowed_tags( $allowedtags ) {
19
+ $allowedtags['span'] = array();
20
+ $allowedtags['span']['class'] = array();
21
+ return $allowedtags;
22
+ }
23
+ add_filter( 'edit_allowedtags', 'bp_activity_add_allowed_tags', 1 );
24
 
25
  ?>
bp-activity/bp-activity-templatetags.php CHANGED
@@ -219,14 +219,16 @@ function bp_activity_content() {
219
  echo bp_get_activity_content();
220
  }
221
  function bp_get_activity_content() {
222
- global $activities_template;
223
 
224
  if ( bp_is_home() && $activities_template->activity_type == 'personal' ) {
225
- return apply_filters( 'bp_get_activity_content', bp_activity_content_filter( $activities_template->activity->content, $activities_template->activity->date_recorded, $activities_template->full_name ) );
226
  } else {
227
  $activities_template->activity->content = bp_activity_insert_time_since( $activities_template->activity->content, $activities_template->activity->date_recorded );
228
- return apply_filters( 'bp_get_activity_content', $activities_template->activity->content );
229
  }
 
 
230
  }
231
 
232
  function bp_activity_content_filter( $content, $date_recorded, $full_name, $insert_time = true, $filter_words = true, $filter_you = true ) {
219
  echo bp_get_activity_content();
220
  }
221
  function bp_get_activity_content() {
222
+ global $activities_template, $allowed_tags;
223
 
224
  if ( bp_is_home() && $activities_template->activity_type == 'personal' ) {
225
+ $content = bp_activity_content_filter( $activities_template->activity->content, $activities_template->activity->date_recorded, $activities_template->full_name );
226
  } else {
227
  $activities_template->activity->content = bp_activity_insert_time_since( $activities_template->activity->content, $activities_template->activity->date_recorded );
228
+ $content = $activities_template->activity->content;
229
  }
230
+
231
+ return apply_filters( 'bp_get_activity_content', $content );
232
  }
233
 
234
  function bp_activity_content_filter( $content, $date_recorded, $full_name, $insert_time = true, $filter_words = true, $filter_you = true ) {
bp-activity/bp-activity-widgets.php CHANGED
@@ -27,9 +27,8 @@ function bp_activity_widget_sitewide_activity($args) {
27
  . $after_title; ?>
28
 
29
  <?php
30
- if ( empty( $options['max_items'] ) ) {
31
  $options['max_items'] = 20;
32
- }
33
  ?>
34
 
35
  <?php
@@ -46,7 +45,7 @@ function bp_activity_widget_sitewide_activity($args) {
46
  <ul id="site-wide-stream" class="activity-list">
47
  <?php foreach( $activity['activities'] as $item ) : ?>
48
  <li class="<?php echo $item['component_name'] ?>">
49
- <?php echo apply_filters( 'bp_activity_content', bp_activity_content_filter( $item['content'], $item['date_recorded'], '', true, false, true ) ); ?>
50
  </li>
51
  <?php endforeach; ?>
52
  </ul>
@@ -74,9 +73,8 @@ function bp_activity_widget_sitewide_activity_control() {
74
  update_blog_option( $current_blog->blog_id, 'bp_activity_widget_sitewide_activity', $options );
75
  }
76
 
77
- $max_items = attribute_escape( $options['max_items'] );
78
  ?>
79
- <p><label for="bp-activity-widget-sitewide-items-max"><?php _e('Max Number of Items:', 'buddypress'); ?> <input class="widefat" id="bp-activity-widget-sitewide-items-max" name="bp-activity-widget-sitewide-items-max" type="text" value="<?php echo $max_items; ?>" style="width: 30%" /></label></p>
80
  <input type="hidden" id="bp-activity-widget-sitewide-submit" name="bp-activity-widget-sitewide-submit" value="1" />
81
  <?php
82
  }
27
  . $after_title; ?>
28
 
29
  <?php
30
+ if ( !$options['max_items'] || empty( $options['max_items'] ) )
31
  $options['max_items'] = 20;
 
32
  ?>
33
 
34
  <?php
45
  <ul id="site-wide-stream" class="activity-list">
46
  <?php foreach( $activity['activities'] as $item ) : ?>
47
  <li class="<?php echo $item['component_name'] ?>">
48
+ <?php echo apply_filters( 'bp_get_activity_content', bp_activity_content_filter( $item['content'], $item['date_recorded'], '', true, false, true ) ); ?>
49
  </li>
50
  <?php endforeach; ?>
51
  </ul>
73
  update_blog_option( $current_blog->blog_id, 'bp_activity_widget_sitewide_activity', $options );
74
  }
75
 
 
76
  ?>
77
+ <p><label for="bp-activity-widget-sitewide-items-max"><?php _e('Max Number of Items:', 'buddypress'); ?> <input class="widefat" id="bp-activity-widget-sitewide-items-max" name="bp-activity-widget-sitewide-items-max" type="text" value="<?php echo attribute_escape( $options['max_items'] ); ?>" style="width: 30%" /></label></p>
78
  <input type="hidden" id="bp-activity-widget-sitewide-submit" name="bp-activity-widget-sitewide-submit" value="1" />
79
  <?php
80
  }
bp-blogs.php CHANGED
@@ -1,6 +1,5 @@
1
  <?php
2
 
3
- define ( 'BP_BLOGS_VERSION', '1.0' );
4
  define ( 'BP_BLOGS_DB_VERSION', '1300' );
5
 
6
  /* Define the slug for the component */
@@ -194,7 +193,7 @@ function bp_blogs_directory_blogs_setup() {
194
  bp_core_load_template( apply_filters( 'bp_blogs_template_directory_blogs_setup', 'directories/blogs/index' ) );
195
  }
196
  }
197
- add_action( 'wp', 'bp_blogs_directory_blogs_setup', 5 );
198
 
199
  function bp_blogs_screen_my_blogs() {
200
  do_action( 'bp_blogs_screen_my_blogs' );
@@ -380,7 +379,7 @@ function bp_blogs_record_blog( $blog_id, $user_id ) {
380
  $is_private = 1;
381
 
382
  // Record in activity streams
383
- bp_blogs_record_activity( array( 'item_id' => $recorded_blog_id, 'component_name' => 'blogs', 'component_action' => 'new_blog', 'is_private' => $is_private, 'user_id' => $recorded_blog->user_id ) );
384
 
385
  do_action( 'bp_blogs_new_blog', $recorded_blog, $is_private, $is_recorded );
386
  }
@@ -418,7 +417,7 @@ function bp_blogs_record_post( $post_id, $blog_id = false, $user_id = false ) {
418
  $recorded_post_id = $recorded_post->save();
419
 
420
  bp_blogs_update_blogmeta( $recorded_post->blog_id, 'last_activity', time() );
421
- bp_blogs_record_activity( array( 'item_id' => $recorded_post->id, 'component_name' => 'blogs', 'component_action' => 'new_blog_post', 'is_private' => bp_blogs_is_blog_hidden( $recorded_post->blog_id ), 'user_id' => $recorded_post->user_id, 'recorded_time' => strtotime( $post->post_date ) ) );
422
  }
423
  } else {
424
  $existing_post = new BP_Blogs_Post( null, $blog_id, $post_id );
@@ -443,8 +442,8 @@ function bp_blogs_record_post( $post_id, $blog_id = false, $user_id = false ) {
443
  $recorded_post = $existing_post;
444
 
445
  /* Delete and re-add the activity stream item to reflect potential content changes. */
446
- bp_blogs_delete_activity( array( 'item_id' => $recorded_post->id, 'component_name' => 'blogs', 'component_action' => 'new_blog_post', 'user_id' => $recorded_post->user_id ) );
447
- bp_blogs_record_activity( array( 'item_id' => $recorded_post->id, 'component_name' => 'blogs', 'component_action' => 'new_blog_post', 'is_private' => bp_blogs_is_blog_hidden( $recorded_post->blog_id ), 'user_id' => $recorded_post->user_id, 'recorded_time' => strtotime( $post->post_date ) ) );
448
  }
449
 
450
  do_action( 'bp_blogs_new_blog_post', $recorded_post, $is_private, $is_recorded );
@@ -478,7 +477,7 @@ function bp_blogs_record_comment( $comment_id, $is_approved ) {
478
  $recorded_commment_id = $recorded_comment->save();
479
 
480
  bp_blogs_update_blogmeta( $recorded_comment->blog_id, 'last_activity', time() );
481
- bp_blogs_record_activity( array( 'item_id' => $recorded_comment->blog_id, 'secondary_item_id' => $recorded_commment_id, 'component_name' => 'blogs', 'component_action' => 'new_blog_comment', 'is_private' => $is_private, 'user_id' => $recorded_comment->user_id, 'recorded_time' => $recorded_comment->date_created ) );
482
  }
483
  add_action( 'comment_post', 'bp_blogs_record_comment', 10, 2 );
484
 
@@ -487,8 +486,8 @@ function bp_blogs_approve_comment( $comment_id, $comment ) {
487
 
488
  $recorded_comment = bp_blogs_record_comment( $comment_id, true );
489
 
490
- bp_blogs_delete_activity( array( 'item_id' => $recorded_comment->blog_id, 'secondary_item_id' => $recorded_commment_id, 'component_name' => 'blogs', 'component_action' => 'new_blog_comment', 'user_id' => $recorded_comment->user_id ) );
491
- bp_blogs_record_activity( array( 'item_id' => $recorded_comment->blog_id, 'secondary_item_id' => $recorded_commment_id, 'component_name' => 'blogs', 'component_action' => 'new_blog_comment', 'is_private' => $is_private, 'user_id' => $recorded_comment->user_id, 'recorded_time' => $recorded_comment->date_created ) );
492
  }
493
  add_action( 'comment_approved_', 'bp_blogs_approve_comment', 10, 2 );
494
 
@@ -519,7 +518,7 @@ function bp_blogs_remove_blog( $blog_id ) {
519
  BP_Blogs_Blog::delete_blog_for_all( $blog_id );
520
 
521
  // Delete activity stream item
522
- bp_blogs_delete_activity( array( 'item_id' => $blog_id, 'component_name' => 'blogs', 'component_action' => 'new_blog', 'user_id' => $bp->loggedin_user->id ) );
523
 
524
  do_action( 'bp_blogs_remove_blog', $blog_id );
525
  }
@@ -534,7 +533,7 @@ function bp_blogs_remove_blog_for_user( $user_id, $blog_id ) {
534
  BP_Blogs_Blog::delete_blog_for_user( $blog_id, $user_id );
535
 
536
  // Delete activity stream item
537
- bp_blogs_delete_activity( array( 'item_id' => $blog_id, 'component_name' => 'blogs', 'component_action' => 'new_blog', 'user_id' => $current_user->ID ) );
538
 
539
  do_action( 'bp_blogs_remove_blog_for_user', $blog_id, $user_id );
540
  }
@@ -552,7 +551,7 @@ function bp_blogs_remove_post( $post_id ) {
552
  BP_Blogs_Post::delete( $post_id, $blog_id );
553
 
554
  // Delete activity stream item
555
- bp_blogs_delete_activity( array( 'item_id' => $post->id, 'component_name' => 'blogs', 'component_action' => 'new_blog_post', 'user_id' => $post->user_id ) );
556
 
557
  do_action( 'bp_blogs_remove_post', $blog_id, $post_id, $post->user_id );
558
  }
@@ -565,7 +564,7 @@ function bp_blogs_remove_comment( $comment_id ) {
565
  BP_Blogs_Comment::delete( $comment_id, $wpdb->blogid );
566
 
567
  // Delete activity stream item
568
- bp_blogs_delete_activity( array( 'item_id' => $recorded_comment->blog_id, 'secondary_item_id' => $recorded_comment->id, 'component_name' => 'blogs', 'component_action' => 'new_blog_comment', 'user_id' => $recorded_comment->user_id ) );
569
 
570
  do_action( 'bp_blogs_remove_comment', $blog_id, $comment_id, $bp->loggedin_user->id );
571
  }
@@ -580,7 +579,7 @@ function bp_blogs_remove_data_for_blog( $blog_id ) {
580
  BP_Blogs_Comment::delete_comments_for_blog( $blog_id );
581
 
582
  // Delete activity stream item
583
- bp_blogs_delete_activity( array( 'item_id' => $blog_id, 'component_name' => 'blogs', 'component_action' => false, 'user_id' => $bp->loggedin_user->id ) );
584
 
585
  do_action( 'bp_blogs_remove_data_for_blog', $blog_id );
586
  }
@@ -757,8 +756,8 @@ function bp_blogs_force_buddypress_theme( $template ) {
757
  if ( empty( $member_theme ) )
758
  $member_theme = 'bpmember';
759
 
760
- add_filter( 'theme_root', 'bp_core_set_member_theme_root' );
761
- add_filter( 'theme_root_uri', 'bp_core_set_member_theme_root_uri' );
762
 
763
  return $member_theme;
764
  } else {
@@ -776,8 +775,8 @@ function bp_blogs_force_buddypress_stylesheet( $stylesheet ) {
776
  if ( empty( $member_theme ) )
777
  $member_theme = 'bpmember';
778
 
779
- add_filter( 'theme_root', 'bp_core_set_member_theme_root' );
780
- add_filter( 'theme_root_uri', 'bp_core_set_member_theme_root_uri' );
781
 
782
  return $member_theme;
783
  } else {
1
  <?php
2
 
 
3
  define ( 'BP_BLOGS_DB_VERSION', '1300' );
4
 
5
  /* Define the slug for the component */
193
  bp_core_load_template( apply_filters( 'bp_blogs_template_directory_blogs_setup', 'directories/blogs/index' ) );
194
  }
195
  }
196
+ add_action( 'wp', 'bp_blogs_directory_blogs_setup', 2 );
197
 
198
  function bp_blogs_screen_my_blogs() {
199
  do_action( 'bp_blogs_screen_my_blogs' );
379
  $is_private = 1;
380
 
381
  // Record in activity streams
382
+ bp_blogs_record_activity( array( 'item_id' => $recorded_blog_id, 'component_name' => $bp->blogs->slug, 'component_action' => 'new_blog', 'is_private' => $is_private, 'user_id' => $recorded_blog->user_id ) );
383
 
384
  do_action( 'bp_blogs_new_blog', $recorded_blog, $is_private, $is_recorded );
385
  }
417
  $recorded_post_id = $recorded_post->save();
418
 
419
  bp_blogs_update_blogmeta( $recorded_post->blog_id, 'last_activity', time() );
420
+ bp_blogs_record_activity( array( 'item_id' => $recorded_post->id, 'component_name' => $bp->blogs->slug, 'component_action' => 'new_blog_post', 'is_private' => bp_blogs_is_blog_hidden( $recorded_post->blog_id ), 'user_id' => $recorded_post->user_id, 'recorded_time' => strtotime( $post->post_date ) ) );
421
  }
422
  } else {
423
  $existing_post = new BP_Blogs_Post( null, $blog_id, $post_id );
442
  $recorded_post = $existing_post;
443
 
444
  /* Delete and re-add the activity stream item to reflect potential content changes. */
445
+ bp_blogs_delete_activity( array( 'item_id' => $recorded_post->id, 'component_name' => $bp->blogs->slug, 'component_action' => 'new_blog_post', 'user_id' => $recorded_post->user_id ) );
446
+ bp_blogs_record_activity( array( 'item_id' => $recorded_post->id, 'component_name' => $bp->blogs->slug, 'component_action' => 'new_blog_post', 'is_private' => bp_blogs_is_blog_hidden( $recorded_post->blog_id ), 'user_id' => $recorded_post->user_id, 'recorded_time' => strtotime( $post->post_date ) ) );
447
  }
448
 
449
  do_action( 'bp_blogs_new_blog_post', $recorded_post, $is_private, $is_recorded );
477
  $recorded_commment_id = $recorded_comment->save();
478
 
479
  bp_blogs_update_blogmeta( $recorded_comment->blog_id, 'last_activity', time() );
480
+ bp_blogs_record_activity( array( 'item_id' => $recorded_comment->blog_id, 'secondary_item_id' => $recorded_commment_id, 'component_name' => $bp->blogs->slug, 'component_action' => 'new_blog_comment', 'is_private' => $is_private, 'user_id' => $recorded_comment->user_id, 'recorded_time' => $recorded_comment->date_created ) );
481
  }
482
  add_action( 'comment_post', 'bp_blogs_record_comment', 10, 2 );
483
 
486
 
487
  $recorded_comment = bp_blogs_record_comment( $comment_id, true );
488
 
489
+ bp_blogs_delete_activity( array( 'item_id' => $recorded_comment->blog_id, 'secondary_item_id' => $recorded_commment_id, 'component_name' => $bp->blogs->slug, 'component_action' => 'new_blog_comment', 'user_id' => $recorded_comment->user_id ) );
490
+ bp_blogs_record_activity( array( 'item_id' => $recorded_comment->blog_id, 'secondary_item_id' => $recorded_commment_id, 'component_name' => $bp->blogs->slug, 'component_action' => 'new_blog_comment', 'is_private' => $is_private, 'user_id' => $recorded_comment->user_id, 'recorded_time' => $recorded_comment->date_created ) );
491
  }
492
  add_action( 'comment_approved_', 'bp_blogs_approve_comment', 10, 2 );
493
 
518
  BP_Blogs_Blog::delete_blog_for_all( $blog_id );
519
 
520
  // Delete activity stream item
521
+ bp_blogs_delete_activity( array( 'item_id' => $blog_id, 'component_name' => $bp->blogs->slug, 'component_action' => 'new_blog', 'user_id' => $bp->loggedin_user->id ) );
522
 
523
  do_action( 'bp_blogs_remove_blog', $blog_id );
524
  }
533
  BP_Blogs_Blog::delete_blog_for_user( $blog_id, $user_id );
534
 
535
  // Delete activity stream item
536
+ bp_blogs_delete_activity( array( 'item_id' => $blog_id, 'component_name' => $bp->blogs->slug, 'component_action' => 'new_blog', 'user_id' => $current_user->ID ) );
537
 
538
  do_action( 'bp_blogs_remove_blog_for_user', $blog_id, $user_id );
539
  }
551
  BP_Blogs_Post::delete( $post_id, $blog_id );
552
 
553
  // Delete activity stream item
554
+ bp_blogs_delete_activity( array( 'item_id' => $post->id, 'component_name' => $bp->blogs->slug, 'component_action' => 'new_blog_post', 'user_id' => $post->user_id ) );
555
 
556
  do_action( 'bp_blogs_remove_post', $blog_id, $post_id, $post->user_id );
557
  }
564
  BP_Blogs_Comment::delete( $comment_id, $wpdb->blogid );
565
 
566
  // Delete activity stream item
567
+ bp_blogs_delete_activity( array( 'item_id' => $recorded_comment->blog_id, 'secondary_item_id' => $recorded_comment->id, 'component_name' => $bp->blogs->slug, 'component_action' => 'new_blog_comment', 'user_id' => $recorded_comment->user_id ) );
568
 
569
  do_action( 'bp_blogs_remove_comment', $blog_id, $comment_id, $bp->loggedin_user->id );
570
  }
579
  BP_Blogs_Comment::delete_comments_for_blog( $blog_id );
580
 
581
  // Delete activity stream item
582
+ bp_blogs_delete_activity( array( 'item_id' => $blog_id, 'component_name' => $bp->blogs->slug, 'component_action' => false, 'user_id' => $bp->loggedin_user->id ) );
583
 
584
  do_action( 'bp_blogs_remove_data_for_blog', $blog_id );
585
  }
756
  if ( empty( $member_theme ) )
757
  $member_theme = 'bpmember';
758
 
759
+ add_filter( 'theme_root', 'bp_core_filter_buddypress_theme_root' );
760
+ add_filter( 'theme_root_uri', 'bp_core_filter_buddypress_theme_root_uri' );
761
 
762
  return $member_theme;
763
  } else {
775
  if ( empty( $member_theme ) )
776
  $member_theme = 'bpmember';
777
 
778
+ add_filter( 'theme_root', 'bp_core_filter_buddypress_theme_root' );
779
+ add_filter( 'theme_root_uri', 'bp_core_filter_buddypress_theme_root_uri' );
780
 
781
  return $member_theme;
782
  } else {
bp-blogs/bp-blogs-widgets.php CHANGED
@@ -20,14 +20,17 @@ function bp_blogs_widget_recent_posts($args) {
20
 
21
  extract($args);
22
  $options = get_blog_option( $current_blog->blog_id, 'bp_blogs_widget_recent_posts' );
 
 
 
23
  ?>
24
  <?php echo $before_widget; ?>
25
  <?php echo $before_title
26
  . $widget_name
27
  . $after_title; ?>
28
 
29
- <?php $posts = bp_blogs_get_latest_posts( null, $options['max_posts'] ) ?>
30
- <?php $counter = 0; ?>
31
 
32
  <?php if ( $posts ) : ?>
33
  <div class="item-options" id="recent-posts-options">
@@ -75,9 +78,8 @@ function bp_blogs_widget_recent_posts_control() {
75
  update_blog_option( $current_blog->blog_id, 'bp_blogs_widget_recent_posts', $options );
76
  }
77
 
78
- $max_posts = attribute_escape( $options['max_posts'] );
79
  ?>
80
- <p><label for="bp-blogs-widget-recent-posts-max"><?php _e('Max Number of Posts:', 'buddypress'); ?> <input class="widefat" id="bp-blogs-widget-recent-posts-max" name="bp-blogs-widget-recent-posts-max" type="text" value="<?php echo $max_posts; ?>" style="width: 30%" /></label></p>
81
  <input type="hidden" id="bp-blogs-widget-recent-posts-submit" name="bp-blogs-widget-recent-posts-submit" value="1" />
82
  <?php
83
  }
20
 
21
  extract($args);
22
  $options = get_blog_option( $current_blog->blog_id, 'bp_blogs_widget_recent_posts' );
23
+
24
+ if ( empty( $options['max_posts'] ) || !$options['max_posts'] )
25
+ $options['max_posts'] = 5;
26
  ?>
27
  <?php echo $before_widget; ?>
28
  <?php echo $before_title
29
  . $widget_name
30
  . $after_title; ?>
31
 
32
+ <?php $posts = bp_blogs_get_latest_posts( null, $options['max_posts'] ) ?>
33
+ <?php $counter = 0; ?>
34
 
35
  <?php if ( $posts ) : ?>
36
  <div class="item-options" id="recent-posts-options">
78
  update_blog_option( $current_blog->blog_id, 'bp_blogs_widget_recent_posts', $options );
79
  }
80
 
 
81
  ?>
82
+ <p><label for="bp-blogs-widget-recent-posts-max"><?php _e('Max Number of Posts:', 'buddypress'); ?> <input class="widefat" id="bp-blogs-widget-recent-posts-max" name="bp-blogs-widget-recent-posts-max" type="text" value="<?php echo attribute_escape( $options['max_posts'] ); ?>" style="width: 30%" /></label></p>
83
  <input type="hidden" id="bp-blogs-widget-recent-posts-submit" name="bp-blogs-widget-recent-posts-submit" value="1" />
84
  <?php
85
  }
bp-core.php CHANGED
@@ -1,7 +1,5 @@
1
  <?php
2
-
3
  /* Define the current version number for checking if DB tables are up to date. */
4
- define( 'BP_CORE_VERSION', '1.0' );
5
  define( 'BP_CORE_DB_VERSION', '1300' );
6
 
7
  /* Define the path and url of the BuddyPress plugins directory */
@@ -38,8 +36,9 @@ require ( BP_PLUGIN_DIR . '/bp-core/bp-core-widgets.php' );
38
  require ( BP_PLUGIN_DIR . '/bp-core/bp-core-ajax.php' );
39
  require ( BP_PLUGIN_DIR . '/bp-core/bp-core-notifications.php' );
40
 
 
41
  if ( !defined( 'BP_DISABLE_ADMIN_BAR') )
42
- require ( 'bp-core/bp-core-adminbar.php' );
43
 
44
  /* Define the slug for member pages and the members directory (e.g. domain.com/[members] ) */
45
  if ( !defined( 'BP_MEMBERS_SLUG' ) )
@@ -139,8 +138,8 @@ function bp_core_setup_globals() {
139
  $bp->grav_default = get_site_option( 'user-avatar-default' );
140
 
141
  /* Fetch the full name for the logged in and current user */
142
- $bp->loggedin_user->fullname = bp_core_global_user_fullname( $bp->loggedin_user->id );
143
- $bp->displayed_user->fullname = bp_core_global_user_fullname( $bp->displayed_user->id );
144
 
145
  /* Used to determine if user has admin rights on current content. If the logged in user is viewing
146
  their own profile and wants to delete a post on their wire, is_item_admin is used. This is a
@@ -158,9 +157,20 @@ function bp_core_setup_globals() {
158
  $bp->current_component = $bp->default_component;
159
  }
160
  add_action( 'plugins_loaded', 'bp_core_setup_globals', 3 );
161
- add_action( '_admin_menu', 'bp_core_setup_globals', 1 ); // must be _admin_menu hook.
 
162
 
163
- function bp_core_setup_root_components() {
 
 
 
 
 
 
 
 
 
 
164
  /* Add core root components */
165
  bp_core_add_root_component( BP_MEMBERS_SLUG );
166
  bp_core_add_root_component( BP_REGISTER_SLUG );
@@ -168,18 +178,20 @@ function bp_core_setup_root_components() {
168
  bp_core_add_root_component( BP_SEARCH_SLUG );
169
  bp_core_add_root_component( BP_HOME_BLOG_SLUG );
170
  }
171
- add_action( 'plugins_loaded', 'bp_core_setup_root_components', 1 );
172
 
173
- function bp_core_setup_session() {
174
- // Start a session for error/success feedback on redirect and for signup functions.
175
- @session_start();
176
-
177
- // Render any error/success feedback on the template
178
- if ( $_SESSION['message'] != '' )
179
- add_action( 'template_notices', 'bp_core_render_notice' );
180
- }
181
- add_action( 'wp', 'bp_core_setup_session', 3 );
182
 
 
 
 
 
 
 
 
 
 
 
 
183
  function bp_core_install() {
184
  global $wpdb, $bp;
185
 
@@ -244,6 +256,38 @@ function bp_core_check_installed() {
244
  }
245
  add_action( 'admin_menu', 'bp_core_check_installed' );
246
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
247
  /**
248
  * bp_core_add_admin_menu()
249
  *
@@ -322,7 +366,18 @@ function bp_core_setup_nav() {
322
  add_action( 'wp', 'bp_core_setup_nav', 2 );
323
  add_action( 'admin_menu', 'bp_core_setup_nav', 2 );
324
 
325
- function bp_core_directory_members() {
 
 
 
 
 
 
 
 
 
 
 
326
  global $bp;
327
 
328
  if ( !is_home() && is_null( $bp->displayed_user->id ) && $bp->current_component == $bp->default_component ) {
@@ -333,7 +388,7 @@ function bp_core_directory_members() {
333
  bp_core_load_template( apply_filters( 'bp_core_template_directory_members', 'directories/members/index' ) );
334
  }
335
  }
336
- add_action( 'wp', 'bp_core_directory_members', 5 );
337
 
338
  /**
339
  * bp_core_get_user_domain()
@@ -353,7 +408,7 @@ function bp_core_get_user_domain( $user_id ) {
353
 
354
  $ud = get_userdata($user_id);
355
 
356
- return $bp->root_domain . '/' . BP_MEMBERS_SLUG . '/' . $ud->user_login . '/';
357
  }
358
 
359
  /**
@@ -367,7 +422,7 @@ function bp_core_get_user_domain( $user_id ) {
367
  * @return $domain The domain URL for the blog.
368
  */
369
  function bp_core_get_root_domain() {
370
- return get_blog_option( BP_ROOT_BLOG, 'siteurl' );
371
  }
372
 
373
  /**
@@ -382,7 +437,7 @@ function bp_core_get_root_domain() {
382
  * @return The user id for the user that is currently being displayed, return zero if this is not a user home and just a normal blog.
383
  */
384
  function bp_core_get_displayed_userid( $user_login ) {
385
- return bp_core_get_userid_from_user_login( $user_login );
386
  }
387
 
388
  /**
@@ -606,14 +661,14 @@ function bp_core_add_root_component( $slug ) {
606
  function bp_core_get_random_member() {
607
  global $bp, $wpdb;
608
 
609
- if ( $bp->current_component == BP_MEMBERS_SLUG && isset( $_GET['random'] ) ) {
610
  $user = BP_Core_User::get_random_users(1);
611
-
612
  $ud = get_userdata( $user['users'][0]->user_id );
613
  bp_core_redirect( $bp->root_domain . '/' . BP_MEMBERS_SLUG . '/' . $ud->user_login );
614
  }
615
  }
616
- add_action( 'wp', 'bp_core_get_random_member', 6 );
617
 
618
  /**
619
  * bp_core_get_userid()
@@ -629,26 +684,12 @@ add_action( 'wp', 'bp_core_get_random_member', 6 );
629
  function bp_core_get_userid( $username ) {
630
  global $wpdb;
631
 
632
- $sql = $wpdb->prepare( "SELECT ID FROM " . CUSTOM_USER_TABLE . " WHERE user_login = %s", $username );
633
- return $wpdb->get_var($sql);
634
- }
635
-
636
- /**
637
- * bp_core_get_userid_from_user_login()
638
- *
639
- * Returns the user_id from a user login
640
- * @package BuddyPress Core
641
- * @param $path str Path to check.
642
- * @global $wpdb WordPress DB access object.
643
- * @return false on no match
644
- * @return int the user ID of the matched user.
645
- */
646
- function bp_core_get_userid_from_user_login( $user_login ) {
647
- global $wpdb;
648
-
649
- if ( !empty( $user_login ) )
650
- return $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM " . CUSTOM_USER_TABLE . " WHERE user_login = %s", $user_login ) );
651
  }
 
 
 
652
 
653
  /**
654
  * bp_core_get_username()
@@ -666,12 +707,14 @@ function bp_core_get_username( $uid ) {
666
  global $userdata;
667
 
668
  if ( $uid == $userdata->ID )
669
- return __( 'You', 'buddypress' );
670
 
671
  if ( !$ud = get_userdata($uid) )
672
  return false;
673
 
674
- return $ud->user_login;
 
 
675
  }
676
 
677
  /**
@@ -694,7 +737,7 @@ function bp_core_get_userurl( $uid ) {
694
 
695
  $ud = get_userdata($uid);
696
 
697
- return $bp->root_domain . '/' . BP_MEMBERS_SLUG . '/' . $ud->user_login . '/';
698
  }
699
 
700
  /**
@@ -710,7 +753,7 @@ function bp_core_get_userurl( $uid ) {
710
  */
711
  function bp_core_get_user_email( $uid ) {
712
  $ud = get_userdata($uid);
713
- return $ud->user_email;
714
  }
715
 
716
  /**
@@ -744,7 +787,7 @@ function bp_core_get_userlink( $user_id, $no_anchor = false, $just_link = false,
744
  return false;
745
 
746
  if ( function_exists('bp_fetch_user_fullname') ) {
747
- $display_name = bp_fetch_user_fullname( $user_id, false );
748
 
749
  if ( $with_s )
750
  $display_name = sprintf( __( "%s's", 'buddypress' ), $display_name );
@@ -753,9 +796,6 @@ function bp_core_get_userlink( $user_id, $no_anchor = false, $just_link = false,
753
  $display_name = $ud->display_name;
754
  }
755
 
756
- // if ( $user_id == $userdata->ID && !$no_you )
757
- // $display_name = 'You';
758
-
759
  if ( $no_anchor )
760
  return $display_name;
761
 
@@ -768,26 +808,54 @@ function bp_core_get_userlink( $user_id, $no_anchor = false, $just_link = false,
768
  return '<a href="' . $url . '">' . $display_name . '</a>';
769
  }
770
 
 
771
  /**
772
- * bp_core_global_user_fullname()
773
  *
774
- * Returns the full name for the user, or the display name if Xprofile component is not installed.
 
775
  *
776
  * @package BuddyPress Core
777
- * @param $user_id string The user ID of the user.
778
- * @param
779
- * @uses bp_fetch_user_fullname() Returns the full name for a user based on user ID.
780
- * @uses get_userdata() Fetches a new userdata object for the user ID passed.
781
- * @return Either the users full name, or the display name.
 
782
  */
783
- function bp_core_global_user_fullname( $user_id ) {
784
- if ( function_exists('bp_fetch_user_fullname') ) {
785
- return bp_fetch_user_fullname( $user_id, false );
786
- } else {
787
- $ud = get_userdata($user_id);
788
- return $current_user->display_name;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
789
  }
 
 
790
  }
 
 
 
791
 
792
  /**
793
  * bp_core_get_userlink_by_email()
@@ -802,9 +870,10 @@ function bp_core_global_user_fullname( $user_id ) {
802
  */
803
  function bp_core_get_userlink_by_email( $email ) {
804
  $user = get_user_by_email( $email );
805
- return bp_core_get_userlink( $user->ID, false, false, true );
806
  }
807
 
 
808
  /**
809
  * bp_core_get_userlink_by_username()
810
  *
@@ -819,9 +888,10 @@ function bp_core_get_userlink_by_username( $username ) {
819
  global $wpdb;
820
 
821
  $user_id = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM " . CUSTOM_USER_TABLE . " WHERE user_login = %s", $username ) );
822
- return bp_core_get_userlink( $user_id, false, false, true );
823
  }
824
 
 
825
  /**
826
  * bp_core_get_user_email()
827
  *
@@ -843,14 +913,23 @@ function bp_core_format_time( $time, $just_date = false ) {
843
  return $date;
844
  }
845
 
 
 
 
 
 
 
 
 
846
  function bp_core_add_message( $message, $type = false ) {
847
  if ( !$type )
848
  $type = 'success';
849
-
850
- $_SESSION['message'] = $message;
851
- $_SESSION['message_type'] = $type;
852
  }
853
 
 
854
  /**
855
  * bp_core_render_notice()
856
  *
@@ -861,20 +940,18 @@ function bp_core_add_message( $message, $type = false ) {
861
  * @global $bp The global BuddyPress settings variable created in bp_core_setup_globals()
862
  */
863
  function bp_core_render_notice() {
864
- if ( $_SESSION['message'] ) {
865
- $type = ( 'success' == $_SESSION['message_type'] ) ? 'updated' : 'error';
866
  ?>
867
  <div id="message" class="<?php echo $type; ?>">
868
- <p><?php echo $_SESSION['message']; ?></p>
869
  </div>
870
- <?php
871
- unset( $_SESSION['message'] );
872
- unset( $_SESSION['message_type'] );
873
-
874
  do_action( 'bp_core_render_notice' );
875
  }
876
  }
877
 
 
878
  /**
879
  * bp_core_time_since()
880
  *
@@ -952,6 +1029,7 @@ function bp_core_time_since( $older_date, $newer_date = false ) {
952
  return $output;
953
  }
954
 
 
955
  /**
956
  * bp_core_record_activity()
957
  *
@@ -1004,6 +1082,7 @@ function bp_core_get_last_activity( $last_activity_date, $string ) {
1004
  return $last_active;
1005
  }
1006
 
 
1007
  /**
1008
  * bp_core_get_all_posts_for_user()
1009
  *
@@ -1023,6 +1102,7 @@ function bp_core_get_all_posts_for_user( $user_id = null ) {
1023
  return $wpdb->get_col( $wpdb->prepare( "SELECT post_id FROM $wpdb->posts WHERE post_author = %d AND post_status = 'publish' AND post_type = 'post'", $user_id ) );
1024
  }
1025
 
 
1026
  /**
1027
  * bp_core_get_site_path()
1028
  *
@@ -1038,6 +1118,16 @@ function bp_core_get_site_path() {
1038
  return $current_site->path;
1039
  }
1040
 
 
 
 
 
 
 
 
 
 
 
1041
  function bp_core_redirect( $location, $status = 302 ) {
1042
  global $bp_no_status_set;
1043
 
@@ -1126,8 +1216,17 @@ function bp_core_referrer() {
1126
  return implode( '/', $referer );
1127
  }
1128
 
1129
- function bp_core_get_member_themes() {
1130
- add_filter( 'theme_root', 'bp_core_set_member_theme_root' );
 
 
 
 
 
 
 
 
 
1131
  $themes = get_themes();
1132
 
1133
  if ( $themes ) {
@@ -1145,15 +1244,68 @@ function bp_core_get_member_themes() {
1145
 
1146
  return $member_themes;
1147
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1148
 
1149
- function bp_core_set_member_theme_root() {
1150
- return apply_filters( 'bp_core_set_member_theme_root', WP_CONTENT_DIR . "/bp-themes" );
 
 
 
 
 
 
 
1151
  }
1152
 
1153
- function bp_core_set_member_theme_root_uri() {
1154
- return apply_filters( 'bp_core_set_member_theme_root_uri', WP_CONTENT_URL . '/bp-themes' );
 
 
 
 
 
 
 
 
1155
  }
1156
 
 
 
 
 
 
 
 
 
 
 
 
 
1157
  function bp_core_add_illegal_names() {
1158
  global $bp;
1159
 
@@ -1189,6 +1341,7 @@ function bp_core_email_from_name_filter() {
1189
  }
1190
  add_filter( 'wp_mail_from_name', 'bp_core_email_from_name_filter' );
1191
 
 
1192
  /**
1193
  * bp_core_email_from_name_filter()
1194
  *
@@ -1205,47 +1358,78 @@ function bp_core_email_from_address_filter() {
1205
  add_filter( 'wp_mail_from', 'bp_core_email_from_address_filter' );
1206
 
1207
 
 
 
 
 
 
 
 
 
 
 
 
1208
  function bp_core_delete_account() {
1209
  global $bp;
1210
 
1211
  // Be careful with this function!
1212
 
 
 
 
 
 
 
 
1213
  require_once( ABSPATH . '/wp-admin/includes/mu.php' );
1214
  require_once( ABSPATH . '/wp-admin/includes/user.php' );
1215
 
1216
  return wpmu_delete_user( $bp->loggedin_user->id );
1217
  }
1218
 
1219
- function bp_core_search_site() {
 
 
 
 
 
 
 
 
 
 
1220
  global $bp;
1221
-
1222
  if ( $bp->current_component == BP_SEARCH_SLUG ) {
1223
  $search_terms = $_POST['search-terms'];
1224
  $search_which = $_POST['search-which'];
1225
 
1226
- switch ( $search_which ) {
1227
- case 'members': default:
1228
- $search = BP_MEMBERS_SLUG;
1229
- break;
1230
- case 'groups':
1231
- $search = BP_GROUPS_SLUG;
1232
- break;
1233
- case 'blogs':
1234
- $search = BP_BLOGS_SLUG;
1235
- break;
 
 
1236
  }
1237
-
1238
- $search_url = apply_filters( 'bp_core_search_site', site_url( $search . '/?s=' . urlencode($search_terms) ), $search_terms );
1239
 
1240
  bp_core_redirect( $search_url );
1241
  }
1242
  }
1243
- add_action( 'wp', 'bp_core_search_site', 5 );
 
1244
 
1245
  /**
1246
  * bp_core_ucfirst()
1247
  *
1248
- * Localization save ucfirst() support.
1249
  *
1250
  * @package BuddyPress Core
1251
  */
@@ -1258,6 +1442,7 @@ function bp_core_ucfirst( $str ) {
1258
  }
1259
  }
1260
 
 
1261
  /**
1262
  * bp_core_strip_username_spaces()
1263
  *
@@ -1270,6 +1455,7 @@ function bp_core_strip_username_spaces( $username ) {
1270
  }
1271
  add_action( 'pre_user_login', 'bp_core_strip_username_spaces' );
1272
 
 
1273
  /**
1274
  * bp_core_clear_cache()
1275
  * REQUIRES WP-SUPER-CACHE
@@ -1289,14 +1475,13 @@ function bp_core_clear_cache() {
1289
  }
1290
  }
1291
 
1292
- function bp_core_print_version_numbers() {
1293
- global $bp;
1294
-
1295
- foreach ( $bp->version_numbers as $name => $version ) {
1296
- echo ucwords($name) . ': <b>' . $version . '</b> / ';
1297
- }
1298
- }
1299
-
1300
  function bp_core_print_generation_time() {
1301
  global $wpdb;
1302
  ?>
@@ -1325,6 +1510,14 @@ function bp_core_remove_data( $user_id ) {
1325
  add_action( 'wpmu_delete_user', 'bp_core_remove_data', 1 );
1326
  add_action( 'delete_user', 'bp_core_remove_data', 1 );
1327
 
 
 
 
 
 
 
 
 
1328
  function bp_core_clear_user_object_cache( $user_id ) {
1329
  wp_cache_delete( 'bp_user_' . $user_id, 'bp' );
1330
  wp_cache_delete( 'bp_core_avatar_v1_u' . $user_id, 'bp' );
1
  <?php
 
2
  /* Define the current version number for checking if DB tables are up to date. */
 
3
  define( 'BP_CORE_DB_VERSION', '1300' );
4
 
5
  /* Define the path and url of the BuddyPress plugins directory */
36
  require ( BP_PLUGIN_DIR . '/bp-core/bp-core-ajax.php' );
37
  require ( BP_PLUGIN_DIR . '/bp-core/bp-core-notifications.php' );
38
 
39
+ /* If BP_DISABLE_ADMIN_BAR is defined, do not load the global admin bar */
40
  if ( !defined( 'BP_DISABLE_ADMIN_BAR') )
41
+ require ( BP_PLUGIN_DIR . '/bp-core/bp-core-adminbar.php' );
42
 
43
  /* Define the slug for member pages and the members directory (e.g. domain.com/[members] ) */
44
  if ( !defined( 'BP_MEMBERS_SLUG' ) )
138
  $bp->grav_default = get_site_option( 'user-avatar-default' );
139
 
140
  /* Fetch the full name for the logged in and current user */
141
+ $bp->loggedin_user->fullname = bp_core_get_user_displayname( $bp->loggedin_user->id );
142
+ $bp->displayed_user->fullname = bp_core_get_user_displayname( $bp->displayed_user->id );
143
 
144
  /* Used to determine if user has admin rights on current content. If the logged in user is viewing
145
  their own profile and wants to delete a post on their wire, is_item_admin is used. This is a
157
  $bp->current_component = $bp->default_component;
158
  }
159
  add_action( 'plugins_loaded', 'bp_core_setup_globals', 3 );
160
+ add_action( '_admin_menu', 'bp_core_setup_globals', 3 ); // must be _admin_menu hook.
161
+
162
 
163
+ /**
164
+ * bp_core_setup_root_uris()
165
+ *
166
+ * Adds the core URIs that should run in the root of the installation.
167
+ *
168
+ * For example: http://example.org/search or http://example.org/members
169
+ *
170
+ * @package BuddyPress Core
171
+ * @uses bp_core_add_root_component() Adds a slug to the root components global variable.
172
+ */
173
+ function bp_core_setup_root_uris() {
174
  /* Add core root components */
175
  bp_core_add_root_component( BP_MEMBERS_SLUG );
176
  bp_core_add_root_component( BP_REGISTER_SLUG );
178
  bp_core_add_root_component( BP_SEARCH_SLUG );
179
  bp_core_add_root_component( BP_HOME_BLOG_SLUG );
180
  }
181
+ add_action( 'plugins_loaded', 'bp_core_setup_root_uris', 2 );
182
 
 
 
 
 
 
 
 
 
 
183
 
184
+ /**
185
+ * bp_core_install()
186
+ *
187
+ * Installs the core DB tables for BuddyPress.
188
+ *
189
+ * @package BuddyPress Core
190
+ * @global $bp The global BuddyPress settings variable created in bp_core_setup_globals()
191
+ * @global $wpdb WordPress DB access object.
192
+ * @uses dbDelta() Performs a table creation, or upgrade based on what already exists in the DB.
193
+ * @uses bp_core_add_illegal_names() Adds illegal blog names to the WP settings
194
+ */
195
  function bp_core_install() {
196
  global $wpdb, $bp;
197
 
256
  }
257
  add_action( 'admin_menu', 'bp_core_check_installed' );
258
 
259
+
260
+ /**
261
+ * bp_core_setup_cookies()
262
+ *
263
+ * Checks if there is a feedback message in the WP cookie, if so, adds a "template_notices" action
264
+ * so that the message can be parsed into the template and displayed to the user.
265
+ *
266
+ * After the message is displayed, it removes the message vars from the cookie so that the message
267
+ * is not shown to the user multiple times.
268
+ *
269
+ * @package BuddyPress Core
270
+ * @global $bp_message The message text
271
+ * @global $bp_message_type The type of message (error/success)
272
+ * @uses setcookie() Sets a cookie value for the user.
273
+ */
274
+ function bp_core_setup_cookies() {
275
+ global $bp_message, $bp_message_type;
276
+
277
+ // Render any error/success feedback on the template
278
+ if ( $_COOKIE['bp-message'] == '' || !isset( $_COOKIE['bp-message'] ) )
279
+ return false;
280
+
281
+ $bp_message = $_COOKIE['bp-message'];
282
+ $bp_message_type = $_COOKIE['bp-message-type'];
283
+ add_action( 'template_notices', 'bp_core_render_notice' );
284
+
285
+ setcookie( 'bp-message', false, time() - 1000, COOKIEPATH );
286
+ setcookie( 'bp-message-type', false, time() - 1000, COOKIEPATH );
287
+ }
288
+ add_action( 'init', 'bp_core_setup_cookies' );
289
+
290
+
291
  /**
292
  * bp_core_add_admin_menu()
293
  *
366
  add_action( 'wp', 'bp_core_setup_nav', 2 );
367
  add_action( 'admin_menu', 'bp_core_setup_nav', 2 );
368
 
369
+ /**
370
+ * bp_core_action_directory_members()
371
+ *
372
+ * Listens to the $bp component and action variables to determine if the user is viewing the members
373
+ * directory page. If they are, it will set up the directory and load the members directory template.
374
+ *
375
+ * @package BuddyPress Core
376
+ * @global $bp The global BuddyPress settings variable created in bp_core_setup_globals()
377
+ * @uses wp_enqueue_script() Loads a JS script into the header of the page.
378
+ * @uses bp_core_load_template() Loads a specific template file.
379
+ */
380
+ function bp_core_action_directory_members() {
381
  global $bp;
382
 
383
  if ( !is_home() && is_null( $bp->displayed_user->id ) && $bp->current_component == $bp->default_component ) {
388
  bp_core_load_template( apply_filters( 'bp_core_template_directory_members', 'directories/members/index' ) );
389
  }
390
  }
391
+ add_action( 'wp', 'bp_core_action_directory_members', 2 );
392
 
393
  /**
394
  * bp_core_get_user_domain()
408
 
409
  $ud = get_userdata($user_id);
410
 
411
+ return apply_filters( 'bp_core_get_user_domain', $bp->root_domain . '/' . BP_MEMBERS_SLUG . '/' . $ud->user_login . '/' );
412
  }
413
 
414
  /**
422
  * @return $domain The domain URL for the blog.
423
  */
424
  function bp_core_get_root_domain() {
425
+ return apply_filters( 'bp_core_get_root_domain', get_blog_option( BP_ROOT_BLOG, 'siteurl' ) );
426
  }
427
 
428
  /**
437
  * @return The user id for the user that is currently being displayed, return zero if this is not a user home and just a normal blog.
438
  */
439
  function bp_core_get_displayed_userid( $user_login ) {
440
+ return apply_filters( 'bp_core_get_displayed_userid', bp_core_get_userid_from_user_login( $user_login ) );
441
  }
442
 
443
  /**
661
  function bp_core_get_random_member() {
662
  global $bp, $wpdb;
663
 
664
+ if ( !$bp->current_component && isset( $_GET['random-member'] ) ) {
665
  $user = BP_Core_User::get_random_users(1);
666
+
667
  $ud = get_userdata( $user['users'][0]->user_id );
668
  bp_core_redirect( $bp->root_domain . '/' . BP_MEMBERS_SLUG . '/' . $ud->user_login );
669
  }
670
  }
671
+ add_action( 'wp', 'bp_core_get_random_member' );
672
 
673
  /**
674
  * bp_core_get_userid()
684
  function bp_core_get_userid( $username ) {
685
  global $wpdb;
686
 
687
+ if ( !empty( $username ) )
688
+ return apply_filters( 'bp_core_get_userid', $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM " . CUSTOM_USER_TABLE . " WHERE user_login = %s", $username ) ) );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
689
  }
690
+ function bp_core_get_userid_from_user_login( $deprecated ) {
691
+ return bp_core_get_userid( $deprecated );
692
+ }
693
 
694
  /**
695
  * bp_core_get_username()
707
  global $userdata;
708
 
709
  if ( $uid == $userdata->ID )
710
+ $username = __( 'You', 'buddypress' );
711
 
712
  if ( !$ud = get_userdata($uid) )
713
  return false;
714
 
715
+ $username = $ud->user_login;
716
+
717
+ return apply_filters( 'bp_core_get_username', $username );
718
  }
719
 
720
  /**
737
 
738
  $ud = get_userdata($uid);
739
 
740
+ return apply_filters( 'bp_core_get_userurl', $bp->root_domain . '/' . BP_MEMBERS_SLUG . '/' . $ud->user_login . '/' );
741
  }
742
 
743
  /**
753
  */
754
  function bp_core_get_user_email( $uid ) {
755
  $ud = get_userdata($uid);
756
+ return apply_filters( 'bp_core_get_user_email', $ud->user_email );
757
  }
758
 
759
  /**
787
  return false;
788
 
789
  if ( function_exists('bp_fetch_user_fullname') ) {
790
+ $display_name = bp_core_get_user_displayname( $user_id );
791
 
792
  if ( $with_s )
793
  $display_name = sprintf( __( "%s's", 'buddypress' ), $display_name );
796
  $display_name = $ud->display_name;
797
  }
798
 
 
 
 
799
  if ( $no_anchor )
800
  return $display_name;
801
 
808
  return '<a href="' . $url . '">' . $display_name . '</a>';
809
  }
810
 
811
+
812
  /**
813
+ * bp_core_get_user_displayname()
814
  *
815
+ * Fetch the display name for a user. This will use the "Name" field in xprofile if it is installed.
816
+ * Otherwise, it will fall back to the normal WP display_name, or user_nicename, depending on what has been set.
817
  *
818
  * @package BuddyPress Core
819
+ * @global $bp The global BuddyPress settings variable created in bp_core_setup_globals()
820
+ * @uses wp_cache_get() Will try and fetch the value from the cache, rather than querying the DB again.
821
+ * @uses get_userdata() Fetches the WP userdata for a specific user.
822
+ * @uses xprofile_set_field_data() Will update the field data for a user based on field name and user id.
823
+ * @uses wp_cache_set() Adds a value to the cache.
824
+ * @return str The display name for the user in question.
825
  */
826
+ function bp_core_get_user_displayname( $user_id ) {
827
+ global $bp;
828
+
829
+ if ( !$user_id )
830
+ return false;
831
+
832
+ if ( !$fullname = wp_cache_get( 'bp_user_fullname_' . $user_id, 'bp' ) ) {
833
+ if ( function_exists('xprofile_install') ) {
834
+ $fullname = xprofile_get_field_data( BP_XPROFILE_FULLNAME_FIELD_NAME, $user_id );
835
+
836
+ if ( empty($fullname) || !$fullname ) {
837
+ $ud = get_userdata($user_id);
838
+
839
+ if ( empty( $ud->display_name ) )
840
+ $fullname = $ud->user_nicename;
841
+ else
842
+ $fullname = $ud->display_name;
843
+
844
+ xprofile_set_field_data( BP_XPROFILE_FULLNAME_FIELD_NAME, $user_id, $fullname );
845
+ }
846
+ } else {
847
+ $ud = get_userdata($user_id);
848
+ $fullname = $ud->display_name;
849
+ }
850
+
851
+ wp_cache_set( 'bp_user_fullname_' . $user_id, $fullname, 'bp' );
852
  }
853
+
854
+ return apply_filters( 'bp_core_get_user_displayname', stripslashes( trim( $fullname ) ) );
855
  }
856
+ /* DEPRECATED Use: bp_core_get_user_displayname */
857
+ function bp_core_global_user_fullname( $user_id ) { return bp_core_get_user_displayname( $user_id ); }
858
+
859
 
860
  /**
861
  * bp_core_get_userlink_by_email()
870
  */
871
  function bp_core_get_userlink_by_email( $email ) {
872
  $user = get_user_by_email( $email );
873
+ return apply_filters( 'bp_core_get_userlink_by_email', bp_core_get_userlink( $user->ID, false, false, true ) );
874
  }
875
 
876
+
877
  /**
878
  * bp_core_get_userlink_by_username()
879
  *
888
  global $wpdb;
889
 
890
  $user_id = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM " . CUSTOM_USER_TABLE . " WHERE user_login = %s", $username ) );
891
+ return apply_filters( 'bp_core_get_userlink_by_username', bp_core_get_userlink( $user_id, false, false, true ) );
892
  }
893
 
894
+
895
  /**
896
  * bp_core_get_user_email()
897
  *
913
  return $date;
914
  }
915
 
916
+
917
+ /**
918
+ * bp_core_add_message()
919
+ *
920
+ * Adds a feedback (error/success) message to the WP cookie so it can be displayed after the page reloads.
921
+ *
922
+ * @package BuddyPress Core
923
+ */
924
  function bp_core_add_message( $message, $type = false ) {
925
  if ( !$type )
926
  $type = 'success';
927
+
928
+ setcookie( 'bp-message', $message, time()+60*60*24, COOKIEPATH );
929
+ setcookie( 'bp-message-type', $type, time()+60*60*24, COOKIEPATH );
930
  }
931
 
932
+
933
  /**
934
  * bp_core_render_notice()
935
  *
940
  * @global $bp The global BuddyPress settings variable created in bp_core_setup_globals()
941
  */
942
  function bp_core_render_notice() {
943
+ if ( $_COOKIE['bp-message'] ) {
944
+ $type = ( 'success' == $_COOKIE['bp-message-type'] ) ? 'updated' : 'error';
945
  ?>
946
  <div id="message" class="<?php echo $type; ?>">
947
+ <p><?php echo stripslashes( $_COOKIE['bp-message'] ); ?></p>
948
  </div>
949
+ <?php
 
 
 
950
  do_action( 'bp_core_render_notice' );
951
  }
952
  }
953
 
954
+
955
  /**
956
  * bp_core_time_since()
957
  *
1029
  return $output;
1030
  }
1031
 
1032
+
1033
  /**
1034
  * bp_core_record_activity()
1035
  *
1082
  return $last_active;
1083
  }
1084
 
1085
+
1086
  /**
1087
  * bp_core_get_all_posts_for_user()
1088
  *
1102
  return $wpdb->get_col( $wpdb->prepare( "SELECT post_id FROM $wpdb->posts WHERE post_author = %d AND post_status = 'publish' AND post_type = 'post'", $user_id ) );
1103
  }
1104
 
1105
+
1106
  /**
1107
  * bp_core_get_site_path()
1108
  *
1118
  return $current_site->path;
1119
  }
1120
 
1121
+ /**
1122
+ * bp_core_redirect()
1123
+ *
1124
+ * Performs a status safe wp_redirect() that is compatible with bp_catch_uri()
1125
+ *
1126
+ * @package BuddyPress Core
1127
+ * @global $bp_no_status_set Makes sure that there are no conflicts with status_header() called in bp_core_do_catch_uri()
1128
+ * @uses get_themes()
1129
+ * @return An array containing all of the themes.
1130
+ */
1131
  function bp_core_redirect( $location, $status = 302 ) {
1132
  global $bp_no_status_set;
1133
 
1216
  return implode( '/', $referer );
1217
  }
1218
 
1219
+ /**
1220
+ * bp_core_get_buddypress_themes()
1221
+ *
1222
+ * Gets an array of all the BuddyPress themes in the /bp-themes/ directory.
1223
+ *
1224
+ * @package BuddyPress Core
1225
+ * @uses get_themes()
1226
+ * @return An array containing all of the themes.
1227
+ */
1228
+ function bp_core_get_buddypress_themes() {
1229
+ add_filter( 'theme_root', 'bp_core_filter_buddypress_theme_root' );
1230
  $themes = get_themes();
1231
 
1232
  if ( $themes ) {
1244
 
1245
  return $member_themes;
1246
  }
1247
+ function bp_core_get_member_themes() { return bp_core_get_buddypress_themes(); } // DEPRECATED
1248
+
1249
+
1250
+ /**
1251
+ * bp_get_buddypress_theme_uri()
1252
+ *
1253
+ * Get the url of the selected BuddyPress theme.
1254
+ *
1255
+ * @package BuddyPress Core
1256
+ */
1257
+ function bp_get_buddypress_theme_uri() {
1258
+ return apply_filters( 'bp_get_buddypress_theme_uri', WP_CONTENT_URL . '/bp-themes/' . get_site_option( 'active-member-theme' ) );
1259
+ }
1260
+
1261
+
1262
+ /**
1263
+ * bp_get_buddypress_theme_path()
1264
+ *
1265
+ * Get the path of the selected BuddyPress theme.
1266
+ *
1267
+ * @package BuddyPress Core
1268
+ */
1269
+ function bp_get_buddypress_theme_path() {
1270
+ return apply_filters( 'bp_get_buddypress_theme_path', WP_CONTENT_DIR . '/bp-themes/' . get_site_option( 'active-member-theme' ) );
1271
+ }
1272
+
1273
 
1274
+ /**
1275
+ * bp_core_filter_buddypress_theme_root()
1276
+ *
1277
+ * Adds a filter that changes the root path of the theme directory to the bp-themes directory.
1278
+ *
1279
+ * @package BuddyPress Core
1280
+ */
1281
+ function bp_core_filter_buddypress_theme_root() {
1282
+ return apply_filters( 'bp_core_filter_buddypress_theme_root', WP_CONTENT_DIR . "/bp-themes" );
1283
  }
1284
 
1285
+
1286
+ /**
1287
+ * bp_core_filter_buddypress_theme_root_uri()
1288
+ *
1289
+ * Adds a filter that changes the root URI of the theme directory to the bp-themes directory.
1290
+ *
1291
+ * @package BuddyPress Core
1292
+ */
1293
+ function bp_core_filter_buddypress_theme_root_uri() {
1294
+ return apply_filters( 'bp_core_filter_buddypress_theme_root_uri', WP_CONTENT_URL . '/bp-themes' );
1295
  }
1296
 
1297
+
1298
+ /**
1299
+ * bp_core_add_illegal_names()
1300
+ *
1301
+ * Adds illegal names to WP so that root components will not conflict with
1302
+ * blog names on a subdirectory installation.
1303
+ *
1304
+ * For example, it would stop someone creating a blog with the slug "groups".
1305
+ *
1306
+ * @package BuddyPress Core
1307
+ * @global $bp The global BuddyPress settings variable created in bp_core_setup_globals()
1308
+ */
1309
  function bp_core_add_illegal_names() {
1310
  global $bp;
1311
 
1341
  }
1342
  add_filter( 'wp_mail_from_name', 'bp_core_email_from_name_filter' );
1343
 
1344
+
1345
  /**
1346
  * bp_core_email_from_name_filter()
1347
  *
1358
  add_filter( 'wp_mail_from', 'bp_core_email_from_address_filter' );
1359
 
1360
 
1361
+ /**
1362
+ * bp_core_delete_account()
1363
+ *
1364
+ * Allows a user to completely remove their account from the system
1365
+ *
1366
+ * @package BuddyPress Core
1367
+ * @global $bp The global BuddyPress settings variable created in bp_core_setup_globals()
1368
+ * @uses check_admin_referer() Checks for a valid security nonce.
1369
+ * @uses is_site_admin() Checks to see if the user is a site administrator.
1370
+ * @uses wpmu_delete_user() Deletes a user from the system.
1371
+ */
1372
  function bp_core_delete_account() {
1373
  global $bp;
1374
 
1375
  // Be careful with this function!
1376
 
1377
+ if ( !check_admin_referer( 'delete-account' ) )
1378
+ return false;
1379
+
1380
+ /* Site admins should not be allowed to delete their accounts */
1381
+ if ( is_site_admin() )
1382
+ return false;
1383
+
1384
  require_once( ABSPATH . '/wp-admin/includes/mu.php' );
1385
  require_once( ABSPATH . '/wp-admin/includes/user.php' );
1386
 
1387
  return wpmu_delete_user( $bp->loggedin_user->id );
1388
  }
1389
 
1390
+
1391
+ /**
1392
+ * bp_core_search_site()
1393
+ *
1394
+ * A javascript free implementation of the search functions in BuddyPress
1395
+ *
1396
+ * @package BuddyPress Core
1397
+ * @global $bp The global BuddyPress settings variable created in bp_core_setup_globals()
1398
+ * @param $slug The slug to redirect to for searching.
1399
+ */
1400
+ function bp_core_action_search_site( $slug = false ) {
1401
  global $bp;
1402
+
1403
  if ( $bp->current_component == BP_SEARCH_SLUG ) {
1404
  $search_terms = $_POST['search-terms'];
1405
  $search_which = $_POST['search-which'];
1406
 
1407
+ if ( !$slug || empty( $slug ) ) {
1408
+ switch ( $search_which ) {
1409
+ case 'members': default:
1410
+ $slug = BP_MEMBERS_SLUG;
1411
+ break;
1412
+ case 'groups':
1413
+ $slug = BP_GROUPS_SLUG;
1414
+ break;
1415
+ case 'blogs':
1416
+ $slug = BP_BLOGS_SLUG;
1417
+ break;
1418
+ }
1419
  }
1420
+
1421
+ $search_url = apply_filters( 'bp_core_search_site', site_url( $slug . '/?s=' . urlencode($search_terms) ), $search_terms );
1422
 
1423
  bp_core_redirect( $search_url );
1424
  }
1425
  }
1426
+ add_action( 'init', 'bp_core_action_search_site', 5 );
1427
+
1428
 
1429
  /**
1430
  * bp_core_ucfirst()
1431
  *
1432
+ * Localization safe ucfirst() support.
1433
  *
1434
  * @package BuddyPress Core
1435
  */
1442
  }
1443
  }
1444
 
1445
+
1446
  /**
1447
  * bp_core_strip_username_spaces()
1448
  *
1455
  }
1456
  add_action( 'pre_user_login', 'bp_core_strip_username_spaces' );
1457
 
1458
+
1459
  /**
1460
  * bp_core_clear_cache()
1461
  * REQUIRES WP-SUPER-CACHE
1475
  }
1476
  }
1477
 
1478
+ /**
1479
+ * bp_core_print_generation_time()
1480
+ *
1481
+ * Prints the generation time in the footer of the site.
1482
+ *
1483
+ * @package BuddyPress Core
1484
+ */
 
1485
  function bp_core_print_generation_time() {
1486
  global $wpdb;
1487
  ?>
1510
  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
+ *
1517
+ * Clears all cached objects for a user, or a user is part of.
1518
+ *
1519
+ * @package BuddyPress Core
1520
+ */
1521
  function bp_core_clear_user_object_cache( $user_id ) {
1522
  wp_cache_delete( 'bp_user_' . $user_id, 'bp' );
1523
  wp_cache_delete( 'bp_core_avatar_v1_u' . $user_id, 'bp' );
bp-core/bp-core-admin.php CHANGED
@@ -37,7 +37,7 @@ function bp_core_admin_settings() {
37
  </div>
38
  <?php endif; ?>
39
 
40
- <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" id="bp-admin-form">
41
 
42
  <table class="form-table">
43
  <tbody>
@@ -88,7 +88,7 @@ function bp_core_admin_settings() {
88
  <tr>
89
  <th scope="row"><?php _e('Select theme to use for BuddyPress generated pages', 'buddypress' ) ?>:</th>
90
  <td>
91
- <?php $themes = bp_core_get_member_themes() ?>
92
  <?php if ( $themes ) : ?>
93
  <select name="bp-admin[active-member-theme]" id="active-member-theme">
94
  <?php
@@ -169,7 +169,7 @@ function bp_core_admin_component_setup() {
169
  </div>
170
  <?php endif; ?>
171
 
172
- <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" id="bp-admin-component-form">
173
 
174
  <p>
175
  <?php _e(
37
  </div>
38
  <?php endif; ?>
39
 
40
+ <form action="" method="post" id="bp-admin-form">
41
 
42
  <table class="form-table">
43
  <tbody>
88
  <tr>
89
  <th scope="row"><?php _e('Select theme to use for BuddyPress generated pages', 'buddypress' ) ?>:</th>
90
  <td>
91
+ <?php $themes = bp_core_get_buddypress_themes() ?>
92
  <?php if ( $themes ) : ?>
93
  <select name="bp-admin[active-member-theme]" id="active-member-theme">
94
  <?php
169
  </div>
170
  <?php endif; ?>
171
 
172
+ <form action="" method="post" id="bp-admin-component-form">
173
 
174
  <p>
175
  <?php _e(
bp-core/bp-core-adminbar.php CHANGED
@@ -249,10 +249,10 @@ function bp_adminbar_random_menu() {
249
  <li class="align-right" id="bp-adminbar-visitrandom-menu">
250
  <a href="#"><?php _e( 'Visit', 'buddypress' ) ?></a>
251
  <ul class="random-list">
252
- <li><a href="<?php echo $bp->root_domain . '/' . BP_MEMBERS_SLUG . '/?random' ?>"><?php _e( 'Random Member', 'buddypress' ) ?></a></li>
253
 
254
  <?php if ( function_exists('groups_install') ) : ?>
255
- <li class="alt"><a href="<?php echo $bp->root_domain . '/' . $bp->groups->slug . '/?random' ?>"><?php _e( 'Random Group', 'buddypress' ) ?></a></li>
256
  <?php endif; ?>
257
 
258
  <?php if ( function_exists('bp_blogs_install') ) : ?>
249
  <li class="align-right" id="bp-adminbar-visitrandom-menu">
250
  <a href="#"><?php _e( 'Visit', 'buddypress' ) ?></a>
251
  <ul class="random-list">
252
+ <li><a href="<?php echo $bp->root_domain . '/' . BP_MEMBERS_SLUG . '/?random-member' ?>"><?php _e( 'Random Member', 'buddypress' ) ?></a></li>
253
 
254
  <?php if ( function_exists('groups_install') ) : ?>
255
+ <li class="alt"><a href="<?php echo $bp->root_domain . '/' . $bp->groups->slug . '/?random-group' ?>"><?php _e( 'Random Group', 'buddypress' ) ?></a></li>
256
  <?php endif; ?>
257
 
258
  <?php if ( function_exists('bp_blogs_install') ) : ?>
bp-core/bp-core-ajax-handler.php DELETED
@@ -1,11 +0,0 @@
1
- <?php
2
- define('DOING_AJAX', true);
3
- require_once( preg_replace('%(.*)[/\\\\]wp-content[/\\\\].*%', '\1', $_SERVER['SCRIPT_FILENAME'] ) . '/wp-load.php' );
4
-
5
- wp();
6
-
7
- do_action( 'wp_ajax_' . $_POST['action'] );
8
-
9
- /* Head shot! */
10
- die('0');
11
- ?>
 
 
 
 
 
 
 
 
 
 
 
bp-core/bp-core-ajax.php CHANGED
@@ -1,5 +1,10 @@
1
  <?php
2
 
 
 
 
 
 
3
  function bp_core_ajax_widget_members() {
4
  global $bp;
5
 
1
  <?php
2
 
3
+ function bp_core_add_ajax_hook() {
4
+ do_action( 'wp_ajax_' . $_REQUEST['action'] );
5
+ }
6
+ add_action( 'init', 'bp_core_add_ajax_hook' );
7
+
8
  function bp_core_ajax_widget_members() {
9
  global $bp;
10
 
bp-core/bp-core-avatars.php CHANGED
@@ -45,7 +45,7 @@ function bp_core_get_avatar( $user, $version = 1, $width = null, $height = null,
45
  if ( $no_tag )
46
  return $url;
47
  else
48
- return apply_filters( 'bp_core_get_avatar', '<img src="' . $url . '" alt="" class="avatar photo" width="' . $width . '" height="' . $height . '" />', $user, $version, $width, $height, $no_tag );
49
  } else {
50
  $ud = get_userdata($user);
51
 
@@ -61,7 +61,7 @@ function bp_core_get_avatar( $user, $version = 1, $width = null, $height = null,
61
  if ( $no_tag )
62
  return apply_filters( 'bp_core_get_avatar', $gravatar . constant('CORE_AVATAR_V' . $version . '_W'), $user, $version, $width, $height, $no_tag );
63
  else
64
- return apply_filters( 'bp_core_get_avatar', '<img src="' . $gravatar . constant('CORE_AVATAR_V' . $version . '_W') . '" alt="" class="avatar" width="' . $width . '" height="' . $height . '" />', $user, $version, $width, $height, $no_tag );
65
  }
66
  }
67
 
45
  if ( $no_tag )
46
  return $url;
47
  else
48
+ return apply_filters( 'bp_core_get_avatar', '<img src="' . attribute_escape( $url ) . '" alt="" class="avatar photo" width="' . attribute_escape( $width ) . '" height="' . attribute_escape( $height ) . '" />', $user, $version, $width, $height, $no_tag );
49
  } else {
50
  $ud = get_userdata($user);
51
 
61
  if ( $no_tag )
62
  return apply_filters( 'bp_core_get_avatar', $gravatar . constant('CORE_AVATAR_V' . $version . '_W'), $user, $version, $width, $height, $no_tag );
63
  else
64
+ return apply_filters( 'bp_core_get_avatar', '<img src="' . attribute_escape( $gravatar ) . constant('CORE_AVATAR_V' . $version . '_W') . '" alt="" class="avatar" width="' . attribute_escape( $width ) . '" height="' . attribute_escape( $height ) . '" />', $user, $version, $width, $height, $no_tag );
65
  }
66
  }
67
 
bp-core/bp-core-catchuri.php CHANGED
@@ -32,11 +32,13 @@ function bp_core_set_uri_globals() {
32
  global $bp_unfiltered_uri;
33
  global $bp, $current_blog;
34
 
35
- /* Only catch URI's on the root blog */
36
- if ( BP_ROOT_BLOG != (int) $current_blog->blog_id )
37
- return false;
 
 
38
 
39
- if ( strpos( $_SERVER['REQUEST_URI'], 'bp-core-ajax-handler.php' ) )
40
  $path = bp_core_referrer();
41
  else
42
  $path = clean_url( $_SERVER['REQUEST_URI'] );
@@ -51,6 +53,13 @@ function bp_core_set_uri_globals() {
51
  /* Fetch the current URI and explode each part seperated by '/' into an array */
52
  $bp_uri = explode( "/", $path );
53
 
 
 
 
 
 
 
 
54
  /* Take empties off the end of complete URI */
55
  if ( empty( $bp_uri[count($bp_uri) - 1] ) )
56
  array_pop( $bp_uri );
@@ -93,7 +102,7 @@ function bp_core_set_uri_globals() {
93
  $bp_unfiltered_uri = $bp_uri;
94
 
95
  /* Catch a member page and set the current member ID */
96
- if ( $bp_uri[0] == BP_MEMBERS_SLUG || in_array( 'bp-core-ajax-handler.php', $bp_uri ) ) {
97
  $is_member_page = true;
98
  $is_root_component = true;
99
 
@@ -262,7 +271,7 @@ function bp_core_catch_profile_uri() {
262
 
263
  function bp_core_force_buddypress_theme( $template ) {
264
  global $is_member_page, $bp;
265
-
266
  $member_theme = get_site_option( 'active-member-theme' );
267
 
268
  if ( empty( $member_theme ) )
@@ -270,8 +279,8 @@ function bp_core_force_buddypress_theme( $template ) {
270
 
271
  if ( $is_member_page ) {
272
 
273
- add_filter( 'theme_root', 'bp_core_set_member_theme_root' );
274
- add_filter( 'theme_root_uri', 'bp_core_set_member_theme_root_uri' );
275
 
276
  return $member_theme;
277
  } else {
@@ -289,8 +298,8 @@ function bp_core_force_buddypress_stylesheet( $stylesheet ) {
289
  $member_theme = 'bpmember';
290
 
291
  if ( $is_member_page ) {
292
- add_filter( 'theme_root', 'bp_core_set_member_theme_root' );
293
- add_filter( 'theme_root_uri', 'bp_core_set_member_theme_root_uri' );
294
 
295
  return $member_theme;
296
  } else {
32
  global $bp_unfiltered_uri;
33
  global $bp, $current_blog;
34
 
35
+ if ( !defined( 'BP_ENABLE_MULTIBLOG' ) ) {
36
+ /* Only catch URI's on the root blog if we are not running BP on multiple blogs */
37
+ if ( BP_ROOT_BLOG != (int) $current_blog->blog_id )
38
+ return false;
39
+ }
40
 
41
+ if ( strpos( $_SERVER['REQUEST_URI'], 'wp-load.php' ) )
42
  $path = bp_core_referrer();
43
  else
44
  $path = clean_url( $_SERVER['REQUEST_URI'] );
53
  /* Fetch the current URI and explode each part seperated by '/' into an array */
54
  $bp_uri = explode( "/", $path );
55
 
56
+ if ( defined( 'BP_ENABLE_MULTIBLOG' ) ) {
57
+ /* If we are running BuddyPress on any blog, not just a root blog, we need to first
58
+ shift off the blog name if we are running a subdirectory install of WPMU. */
59
+ if ( $current_blog->path != '/' )
60
+ array_shift( $bp_uri );
61
+ }
62
+
63
  /* Take empties off the end of complete URI */
64
  if ( empty( $bp_uri[count($bp_uri) - 1] ) )
65
  array_pop( $bp_uri );
102
  $bp_unfiltered_uri = $bp_uri;
103
 
104
  /* Catch a member page and set the current member ID */
105
+ if ( $bp_uri[0] == BP_MEMBERS_SLUG || in_array( 'wp-load.php', $bp_uri ) ) {
106
  $is_member_page = true;
107
  $is_root_component = true;
108
 
271
 
272
  function bp_core_force_buddypress_theme( $template ) {
273
  global $is_member_page, $bp;
274
+
275
  $member_theme = get_site_option( 'active-member-theme' );
276
 
277
  if ( empty( $member_theme ) )
279
 
280
  if ( $is_member_page ) {
281
 
282
+ add_filter( 'theme_root', 'bp_core_filter_buddypress_theme_root' );
283
+ add_filter( 'theme_root_uri', 'bp_core_filter_buddypress_theme_root_uri' );
284
 
285
  return $member_theme;
286
  } else {
298
  $member_theme = 'bpmember';
299
 
300
  if ( $is_member_page ) {
301
+ add_filter( 'theme_root', 'bp_core_filter_buddypress_theme_root' );
302
+ add_filter( 'theme_root_uri', 'bp_core_filter_buddypress_theme_root_uri' );
303
 
304
  return $member_theme;
305
  } else {
bp-core/bp-core-classes.php CHANGED
@@ -62,7 +62,7 @@ class BP_Core_User {
62
  $this->user_url = bp_core_get_userurl( $this->id );
63
  $this->user_link = bp_core_get_userlink( $this->id );
64
 
65
- $this->fullname = bp_fetch_user_fullname( $this->id, false );
66
  $this->email = bp_core_get_user_email( $this->id );
67
  $this->last_active = bp_core_get_last_activity( get_usermeta( $this->id, 'last_activity' ), __( 'active %s ago', 'buddypress' ) );
68
 
62
  $this->user_url = bp_core_get_userurl( $this->id );
63
  $this->user_link = bp_core_get_userlink( $this->id );
64
 
65
+ $this->fullname = bp_core_get_user_displayname( $this->id );
66
  $this->email = bp_core_get_user_email( $this->id );
67
  $this->last_active = bp_core_get_last_activity( get_usermeta( $this->id, 'last_activity' ), __( 'active %s ago', 'buddypress' ) );
68
 
bp-core/bp-core-cssjs.php CHANGED
@@ -25,8 +25,10 @@ add_action( 'admin_menu', 'bp_core_add_js' );
25
  * @uses get_option() Selects a site setting from the DB.
26
  */
27
  function bp_core_add_ajax_js() {
 
 
28
  echo
29
- '<script type="text/javascript">var ajaxurl = "' . BP_PLUGIN_URL . '/bp-core/bp-core-ajax-handler.php";</script>
30
  ';
31
  }
32
  add_action( 'wp_head', 'bp_core_add_ajax_js' );
25
  * @uses get_option() Selects a site setting from the DB.
26
  */
27
  function bp_core_add_ajax_js() {
28
+ global $bp;
29
+
30
  echo
31
+ '<script type="text/javascript">var ajaxurl = "' . $bp->root_domain . str_replace( 'index.php', 'wp-load.php', $_SERVER['SCRIPT_NAME'] ) . '";</script>
32
  ';
33
  }
34
  add_action( 'wp_head', 'bp_core_add_ajax_js' );
bp-core/bp-core-settings.php CHANGED
@@ -8,7 +8,9 @@ function bp_core_add_settings_nav() {
8
 
9
  bp_core_add_subnav_item( 'settings', 'general', __('General', 'buddypress'), $bp->loggedin_user->domain . 'settings/', 'bp_core_screen_general_settings', false, bp_is_home() );
10
  bp_core_add_subnav_item( 'settings', 'notifications', __('Notifications', 'buddypress'), $bp->loggedin_user->domain . 'settings/', 'bp_core_screen_notification_settings', false, bp_is_home() );
11
- bp_core_add_subnav_item( 'settings', 'delete-account', __('Delete Account', 'buddypress'), $bp->loggedin_user->domain . 'settings/', 'bp_core_screen_delete_account', false, bp_is_home() );
 
 
12
  }
13
  add_action( 'wp', 'bp_core_add_settings_nav', 2 );
14
  add_action( 'admin_menu', 'bp_core_add_settings_nav', 2 );
@@ -73,7 +75,7 @@ function bp_core_screen_general_settings_content() {
73
 
74
  <form action="<?php echo $bp->loggedin_user->domain . 'settings/general' ?>" method="post" id="settings-form">
75
  <label for="email"><?php _e( 'Account Email', 'buddypress' ) ?></label>
76
- <input type="text" name="email" id="email" value="<?php echo $current_user->user_email ?>" class="settings-input" />
77
 
78
  <label for="pass1"><?php _e( 'Change Password <span>(leave blank for no change)</span>', 'buddypress' ) ?></label>
79
  <input type="password" name="pass1" id="pass1" size="16" value="" class="settings-input small" /> &nbsp;<?php _e( 'New Password', 'buddypress' ) ?>
8
 
9
  bp_core_add_subnav_item( 'settings', 'general', __('General', 'buddypress'), $bp->loggedin_user->domain . 'settings/', 'bp_core_screen_general_settings', false, bp_is_home() );
10
  bp_core_add_subnav_item( 'settings', 'notifications', __('Notifications', 'buddypress'), $bp->loggedin_user->domain . 'settings/', 'bp_core_screen_notification_settings', false, bp_is_home() );
11
+
12
+ if ( !is_site_admin() )
13
+ bp_core_add_subnav_item( 'settings', 'delete-account', __('Delete Account', 'buddypress'), $bp->loggedin_user->domain . 'settings/', 'bp_core_screen_delete_account', false, bp_is_home() );
14
  }
15
  add_action( 'wp', 'bp_core_add_settings_nav', 2 );
16
  add_action( 'admin_menu', 'bp_core_add_settings_nav', 2 );
75
 
76
  <form action="<?php echo $bp->loggedin_user->domain . 'settings/general' ?>" method="post" id="settings-form">
77
  <label for="email"><?php _e( 'Account Email', 'buddypress' ) ?></label>
78
+ <input type="text" name="email" id="email" value="<?php echo attribute_escape( $current_user->user_email ); ?>" class="settings-input" />
79
 
80
  <label for="pass1"><?php _e( 'Change Password <span>(leave blank for no change)</span>', 'buddypress' ) ?></label>
81
  <input type="password" name="pass1" id="pass1" size="16" value="" class="settings-input small" /> &nbsp;<?php _e( 'New Password', 'buddypress' ) ?>
bp-core/bp-core-templatetags.php CHANGED
@@ -176,7 +176,7 @@ function bp_get_options_title() {
176
  if ( empty( $bp->bp_options_title ) )
177
  $bp->bp_options_title = __( 'Options', 'buddypress' );
178
 
179
- echo apply_filters( 'bp_get_options_avatar', $bp->bp_options_title );
180
  }
181
 
182
  function bp_comment_author_avatar() {
@@ -230,34 +230,12 @@ function bp_is_home() {
230
  return false;
231
  }
232
 
 
233
  function bp_fetch_user_fullname( $user_id, $echo = true ) {
234
- global $bp;
235
-
236
- if ( !$user_id )
237
- return false;
238
-
239
- if ( !$fullname = wp_cache_get( 'bp_user_fullname_' . $user_id, 'bp' ) ) {
240
- if ( function_exists('xprofile_install') ) {
241
- $fullname = xprofile_get_field_data( BP_XPROFILE_FULLNAME_FIELD_NAME, $user_id );
242
-
243
- if ( empty($fullname) || !$fullname ) {
244
- $ud = get_userdata($user_id);
245
- $fullname = $ud->display_name;
246
-
247
- xprofile_set_field_data( BP_XPROFILE_FULLNAME_FIELD_NAME, $user_id, $fullname );
248
- }
249
- } else {
250
- $ud = get_userdata($user_id);
251
- $fullname = $ud->display_name;
252
- }
253
-
254
- wp_cache_set( 'bp_user_fullname_' . $user_id, $fullname, 'bp' );
255
- }
256
-
257
  if ( $echo )
258
- echo apply_filters( 'bp_fetch_user_fullname', stripslashes( trim( $fullname ) ) );
259
  else
260
- return apply_filters( 'bp_fetch_user_fullname', stripslashes ( trim ( $fullname ) ) );
261
  }
262
 
263
  function bp_last_activity( $user_id = false, $echo = true ) {
@@ -438,13 +416,10 @@ function bp_your_or_their( $capitalize = true, $echo = true ) {
438
  }
439
 
440
  function bp_loggedinuser_link() {
441
- global $bp, $current_user;
442
 
443
  if ( $link = bp_core_get_userlink( $bp->loggedin_user->id ) ) {
444
  echo apply_filters( 'bp_loggedinuser_link', $link );
445
- } else {
446
- $ud = get_userdata($displayed_user->id);
447
- echo apply_filters( 'bp_loggedinuser_link', $ud->user_login );
448
  }
449
  }
450
 
@@ -466,7 +441,11 @@ function bp_is_blog_page() {
466
  }
467
 
468
  function bp_page_title() {
469
- global $bp, $post, $wp_query;
 
 
 
 
470
 
471
  if ( is_home() && bp_is_page( 'home' ) ) {
472
  $title = __( 'Home', 'buddypress' );
@@ -494,8 +473,13 @@ function bp_page_title() {
494
  $title = get_the_title($post->ID);
495
  }
496
 
497
- echo apply_filters( 'bp_page_title', get_blog_option( BP_ROOT_BLOG, 'blogname' ) . ' &#8212; ' . $title, $title );
 
 
 
 
498
 
 
499
  }
500
 
501
  function bp_styles() {
@@ -1059,9 +1043,15 @@ function bp_directory_members_search_form() {
1059
  }
1060
 
1061
  function bp_home_blog_url() {
1062
- global $bp;
 
 
 
 
 
 
1063
 
1064
- if ( 'bphome' == get_blog_option( BP_ROOT_BLOG, 'template' ) )
1065
  echo $bp->root_domain . '/' . BP_HOME_BLOG_SLUG;
1066
  else
1067
  echo $bp->root_domain;
176
  if ( empty( $bp->bp_options_title ) )
177
  $bp->bp_options_title = __( 'Options', 'buddypress' );
178
 
179
+ echo apply_filters( 'bp_get_options_avatar', attribute_escape( $bp->bp_options_title ) );
180
  }
181
 
182
  function bp_comment_author_avatar() {
230
  return false;
231
  }
232
 
233
+ /* DEPRECATED Use: bp_core_get_user_displayname() */
234
  function bp_fetch_user_fullname( $user_id, $echo = true ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
235
  if ( $echo )
236
+ echo apply_filters( 'bp_fetch_user_fullname', bp_core_get_user_displayname( $user_id ) );
237
  else
238
+ return apply_filters( 'bp_fetch_user_fullname', bp_core_get_user_displayname( $user_id ) );
239
  }
240
 
241
  function bp_last_activity( $user_id = false, $echo = true ) {
416
  }
417
 
418
  function bp_loggedinuser_link() {
419
+ global $bp;
420
 
421
  if ( $link = bp_core_get_userlink( $bp->loggedin_user->id ) ) {
422
  echo apply_filters( 'bp_loggedinuser_link', $link );
 
 
 
423
  }
424
  }
425
 
441
  }
442
 
443
  function bp_page_title() {
444
+ echo bp_get_page_title();
445
+ }
446
+
447
+ function bp_get_page_title() {
448
+ global $bp, $post, $wp_query, $current_blog;
449
 
450
  if ( is_home() && bp_is_page( 'home' ) ) {
451
  $title = __( 'Home', 'buddypress' );
473
  $title = get_the_title($post->ID);
474
  }
475
 
476
+ if ( defined( 'BP_ENABLE_MULTIBLOG' ) ) {
477
+ $blog_title = get_blog_option( $current_blog->blog_id, 'blogname' );
478
+ } else {
479
+ $blog_title = get_blog_option( BP_ROOT_BLOG, 'blogname' );
480
+ }
481
 
482
+ return apply_filters( 'bp_page_title', $blog_title . ' &#8212; ' . attribute_escape( $title ), attribute_escape( $title ) );
483
  }
484
 
485
  function bp_styles() {
1043
  }
1044
 
1045
  function bp_home_blog_url() {
1046
+ global $bp, $current_blog;
1047
+
1048
+ if ( defined( 'BP_ENABLE_MULTIBLOG' ) ) {
1049
+ $blog_id = $current_blog->blog_id;
1050
+ } else {
1051
+ $blog_id = BP_ROOT_BLOG;
1052
+ }
1053
 
1054
+ if ( 'bphome' == get_blog_option( $blog_id, 'template' ) )
1055
  echo $bp->root_domain . '/' . BP_HOME_BLOG_SLUG;
1056
  else
1057
  echo $bp->root_domain;
bp-core/bp-core-widgets.php CHANGED
@@ -38,8 +38,8 @@ function bp_core_widget_welcome($args) {
38
  . $widget_name
39
  . $after_title; ?>
40
 
41
- <?php if ( $options['title'] ) : ?><h3><?php echo $options['title'] ?></h3><?php endif; ?>
42
- <?php if ( $options['text'] ) : ?><p><?php echo $options['text'] ?></p><?php endif; ?>
43
 
44
  <?php if ( !is_user_logged_in() ) { ?>
45
  <div class="create-account"><div class="visit generic-button"><a href="<?php bp_signup_page() ?>" title="<?php _e('Create Account', 'buddypress') ?>"><?php _e('Create Account', 'buddypress') ?></a></div></div>
@@ -63,14 +63,12 @@ function bp_core_widget_welcome_control() {
63
  $options = $newoptions;
64
  update_blog_option( $current_blog->blog_id, 'bp_core_widget_welcome', $options );
65
  }
66
-
67
- $title = attribute_escape( $options['title'] );
68
- $text = attribute_escape( $options['text'] );
69
  ?>
70
- <p><label for="bp-widget-welcome-title"><?php _e('Title:', 'buddypress'); ?> <input class="widefat" id="bp-widget-welcome-title" name="bp-widget-welcome-title" type="text" value="<?php echo $title; ?>" /></label></p>
71
  <p>
72
  <label for="bp-widget-welcome-text"><?php _e( 'Welcome Text:' , 'buddypress'); ?>
73
- <textarea id="bp-widget-welcome-text" name="bp-widget-welcome-text" class="widefat" style="height: 100px"><?php echo $text; ?></textarea>
74
  </label>
75
  </p>
76
  <input type="hidden" id="bp-widget-welcome-submit" name="bp-widget-welcome-submit" value="1" />
@@ -90,7 +88,10 @@ function bp_core_widget_members($args) {
90
  . $widget_name
91
  . $after_title; ?>
92
 
93
- <?php
 
 
 
94
  if ( !$users = wp_cache_get( 'newest_users', 'bp' ) ) {
95
  $users = BP_Core_User::get_newest_users( $options['max_members'] );
96
  wp_cache_set( 'newest_users', $users, 'bp' );
@@ -125,7 +126,7 @@ function bp_core_widget_members($args) {
125
  wp_nonce_field( 'bp_core_widget_members', '_wpnonce-members' );
126
  ?>
127
 
128
- <input type="hidden" name="members_widget_max" id="members_widget_max" value="<?php echo $options['max_members'] ?>" />
129
 
130
  <?php else: ?>
131
  <div class="widget-error">
@@ -153,7 +154,7 @@ function bp_core_widget_members_control() {
153
 
154
  $max_members = attribute_escape( $options['max_members'] );
155
  ?>
156
- <p><label for="bp-core-widget-members-max"><?php _e('Max Members to show:', 'buddypress'); ?> <input class="widefat" id="bp-core-widget-members-max" name="bp-core-widget-members-max" type="text" value="<?php echo $max_members; ?>" style="width: 30%" /></label></p>
157
  <input type="hidden" id="bp-core-widget-members-submit" name="bp-core-widget-members-submit" value="1" />
158
  <?php
159
  }
@@ -171,7 +172,10 @@ function bp_core_widget_whos_online($args) {
171
  . $widget_name
172
  . $after_title; ?>
173
 
174
- <?php
 
 
 
175
  if ( !$users = wp_cache_get( 'online_users', 'bp' ) ) {
176
  $users = BP_Core_User::get_online_users( $options['max_members'] );
177
  wp_cache_set( 'online_users', $users, 'bp' );
@@ -184,7 +188,7 @@ function bp_core_widget_whos_online($args) {
184
  <div class="avatar-block">
185
  <?php foreach ( (array) $users['users'] as $user ) : ?>
186
  <div class="item-avatar">
187
- <a href="<?php echo bp_core_get_userurl($user->user_id) ?>" title="<?php bp_fetch_user_fullname( $user->user_id, true ) ?>"><?php echo bp_core_get_avatar( $user->user_id, 1 ) ?></a>
188
  </div>
189
  <?php endforeach; ?>
190
  </div>
@@ -194,7 +198,7 @@ function bp_core_widget_whos_online($args) {
194
  wp_nonce_field( 'bp_core_widget_members', '_wpnonce-members' );
195
  ?>
196
 
197
- <input type="hidden" name="bp_core_widget_members_max" id="bp_core_widget_members_max" value="<?php echo $options['max_members'] ?>" />
198
 
199
  <?php else: ?>
200
  <div class="widget-error">
@@ -222,10 +226,9 @@ function bp_core_widget_whos_online_control() {
222
  $options = $newoptions;
223
  update_blog_option( $current_blog->blog_id, 'bp_core_widget_whos_online', $options );
224
  }
225
-
226
- $max_members = attribute_escape( $options['max_members'] );
227
  ?>
228
- <p><label for="bp-widget-whos-online-max-members"><?php _e('Maximum number of members to show:', 'buddypress'); ?><br /><input class="widefat" id="bp-widget-whos-online-max-members" name="bp-widget-whos-online-max-members" type="text" value="<?php echo $max_members; ?>" style="width: 30%" /></label></p>
229
  <input type="hidden" id="bp-widget-whos-online-submit" name="bp-widget-whos-online-submit" value="1" />
230
  <?php
231
  }
38
  . $widget_name
39
  . $after_title; ?>
40
 
41
+ <?php if ( $options['title'] ) : ?><h3><?php echo attribute_escape( $options['title'] ) ?></h3><?php endif; ?>
42
+ <?php if ( $options['text'] ) : ?><p><?php echo attribute_escape( $options['text'] ) ?></p><?php endif; ?>
43
 
44
  <?php if ( !is_user_logged_in() ) { ?>
45
  <div class="create-account"><div class="visit generic-button"><a href="<?php bp_signup_page() ?>" title="<?php _e('Create Account', 'buddypress') ?>"><?php _e('Create Account', 'buddypress') ?></a></div></div>
63
  $options = $newoptions;
64
  update_blog_option( $current_blog->blog_id, 'bp_core_widget_welcome', $options );
65
  }
66
+
 
 
67
  ?>
68
+ <p><label for="bp-widget-welcome-title"><?php _e('Title:', 'buddypress'); ?> <input class="widefat" id="bp-widget-welcome-title" name="bp-widget-welcome-title" type="text" value="<?php echo attribute_escape( $options['title'] ); ?>" /></label></p>
69
  <p>
70
  <label for="bp-widget-welcome-text"><?php _e( 'Welcome Text:' , 'buddypress'); ?>
71
+ <textarea id="bp-widget-welcome-text" name="bp-widget-welcome-text" class="widefat" style="height: 100px"><?php echo htmlspecialchars( $options['text'] ); ?></textarea>
72
  </label>
73
  </p>
74
  <input type="hidden" id="bp-widget-welcome-submit" name="bp-widget-welcome-submit" value="1" />
88
  . $widget_name
89
  . $after_title; ?>
90
 
91
+ <?php
92
+ if ( empty( $options['max_members'] ) || !$options['max_members'] )
93
+ $options['max_members'] = 5;
94
+
95
  if ( !$users = wp_cache_get( 'newest_users', 'bp' ) ) {
96
  $users = BP_Core_User::get_newest_users( $options['max_members'] );
97
  wp_cache_set( 'newest_users', $users, 'bp' );
126
  wp_nonce_field( 'bp_core_widget_members', '_wpnonce-members' );
127
  ?>
128
 
129
+ <input type="hidden" name="members_widget_max" id="members_widget_max" value="<?php echo attribute_escape( $options['max_members'] ); ?>" />
130
 
131
  <?php else: ?>
132
  <div class="widget-error">
154
 
155
  $max_members = attribute_escape( $options['max_members'] );
156
  ?>
157
+ <p><label for="bp-core-widget-members-max"><?php _e('Max Members to show:', 'buddypress'); ?> <input class="widefat" id="bp-core-widget-members-max" name="bp-core-widget-members-max" type="text" value="<?php echo attribute_escape( $options['max_members'] ); ?>" style="width: 30%" /></label></p>
158
  <input type="hidden" id="bp-core-widget-members-submit" name="bp-core-widget-members-submit" value="1" />
159
  <?php
160
  }
172
  . $widget_name
173
  . $after_title; ?>
174
 
175
+ <?php
176
+ if ( empty( $options['max_members'] ) || !$options['max_members'] )
177
+ $options['max_members'] = 5;
178
+
179
  if ( !$users = wp_cache_get( 'online_users', 'bp' ) ) {
180
  $users = BP_Core_User::get_online_users( $options['max_members'] );
181
  wp_cache_set( 'online_users', $users, 'bp' );
188
  <div class="avatar-block">
189
  <?php foreach ( (array) $users['users'] as $user ) : ?>
190
  <div class="item-avatar">
191
+ <a href="<?php echo bp_core_get_userurl($user->user_id) ?>" title="<?php echo bp_core_get_user_displayname( $user->user_id ) ?>"><?php echo bp_core_get_avatar( $user->user_id, 1 ) ?></a>
192
  </div>
193
  <?php endforeach; ?>
194
  </div>
198
  wp_nonce_field( 'bp_core_widget_members', '_wpnonce-members' );
199
  ?>
200
 
201
+ <input type="hidden" name="bp_core_widget_members_max" id="bp_core_widget_members_max" value="<?php echo attribute_escape( $options['max_members'] ); ?>" />
202
 
203
  <?php else: ?>
204
  <div class="widget-error">
226
  $options = $newoptions;
227
  update_blog_option( $current_blog->blog_id, 'bp_core_widget_whos_online', $options );
228
  }
229
+
 
230
  ?>
231
+ <p><label for="bp-widget-whos-online-max-members"><?php _e('Maximum number of members to show:', 'buddypress'); ?><br /><input class="widefat" id="bp-widget-whos-online-max-members" name="bp-widget-whos-online-max-members" type="text" value="<?php echo attribute_escape( $options['max_members'] ); ?>" style="width: 30%" /></label></p>
232
  <input type="hidden" id="bp-widget-whos-online-submit" name="bp-widget-whos-online-submit" value="1" />
233
  <?php
234
  }
bp-forums.php CHANGED
@@ -1,7 +1,5 @@
1
  <?php
2
 
3
- define ( 'BP_FORUMS_VERSION', '1.0' );
4
-
5
  /* Define the parent forum ID */
6
  if ( !defined( 'BP_FORUMS_PARENT_FORUM_ID' ) )
7
  define ( 'BP_FORUMS_PARENT_FORUM_ID', 1 );
@@ -11,7 +9,7 @@ require ( BP_PLUGIN_DIR . '/bp-forums/bp-forums-templatetags.php' );
11
  require ( BP_PLUGIN_DIR . '/bp-forums/bp-forums-filters.php' );
12
 
13
  if ( is_admin() )
14
- require ( 'bp-forums/bp-forums-admin.php' );
15
 
16
  function bp_forums_setup() {
17
  global $bp, $bbpress_live;
1
  <?php
2
 
 
 
3
  /* Define the parent forum ID */
4
  if ( !defined( 'BP_FORUMS_PARENT_FORUM_ID' ) )
5
  define ( 'BP_FORUMS_PARENT_FORUM_ID', 1 );
9
  require ( BP_PLUGIN_DIR . '/bp-forums/bp-forums-filters.php' );
10
 
11
  if ( is_admin() )
12
+ require ( BP_PLUGIN_DIR . '/bp-forums/bp-forums-admin.php' );
13
 
14
  function bp_forums_setup() {
15
  global $bp, $bbpress_live;
bp-friends.php CHANGED
@@ -1,6 +1,5 @@
1
  <?php
2
 
3
- define ( 'BP_FRIENDS_VERSION', '1.0' );
4
  define ( 'BP_FRIENDS_DB_VERSION', '1300' );
5
 
6
  /* Define the slug for the component */
@@ -181,6 +180,85 @@ function friends_screen_notification_settings() {
181
  add_action( 'bp_notification_settings', 'friends_screen_notification_settings' );
182
 
183
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
184
  /**************************************************************************
185
  friends_record_activity()
186
 
@@ -256,7 +334,7 @@ function friends_format_notifications( $action, $item_id, $secondary_item_id, $t
256
  if ( (int)$total_items > 1 ) {
257
  return apply_filters( 'bp_friends_multiple_friendship_accepted_notification', '<a href="' . $bp->loggedin_user->domain . $bp->friends->slug . '/my-friends/newest" title="' . __( 'My Friends', 'buddypress' ) . '">' . sprintf( __('%d friends accepted your friendship requests', 'buddypress' ), (int)$total_items ) . '</a>', (int)$total_items );
258
  } else {
259
- $user_fullname = bp_core_global_user_fullname( $item_id );
260
  $user_url = bp_core_get_userurl( $item_id );
261
  return apply_filters( 'bp_friends_single_friendship_accepted_notification', '<a href="' . $user_url . '?new" title="' . $user_fullname .'\'s profile">' . sprintf( __( '%s accepted your friendship request', 'buddypress' ), $user_fullname ) . '</a>', $user_fullname );
262
  }
@@ -266,7 +344,7 @@ function friends_format_notifications( $action, $item_id, $secondary_item_id, $t
266
  if ( (int)$total_items > 1 ) {
267
  return apply_filters( 'bp_friends_multiple_friendship_request_notification', '<a href="' . $bp->loggedin_user->domain . $bp->friends->slug . '/requests" title="' . __( 'Friendship requests', 'buddypress' ) . '">' . sprintf( __('You have %d pending friendship requests', 'buddypress' ), (int)$total_items ) . '</a>', $total_items );
268
  } else {
269
- $user_fullname = bp_core_global_user_fullname( $item_id );
270
  $user_url = bp_core_get_userurl( $item_id );
271
  return apply_filters( 'bp_friends_single_friendship_request_notification', '<a href="' . $bp->loggedin_user->domain . $bp->friends->slug . '/requests" title="' . __( 'Friendship requests', 'buddypress' ) . '">' . sprintf( __('You have a friendship request from %s', 'buddypress' ), $user_fullname ) . '</a>', $user_fullname );
272
  }
@@ -392,7 +470,7 @@ function friends_get_friends_list( $user_id ) {
392
 
393
  for ( $i = 0; $i < count($friend_ids); $i++ ) {
394
  if ( function_exists('bp_user_fullname') )
395
- $display_name = bp_fetch_user_fullname($friend_ids[$i], false);
396
 
397
  if ( $display_name != ' ' ) {
398
  $friends[] = array(
@@ -430,7 +508,7 @@ function friends_get_friends_invite_list( $user_id = false, $group_id ) {
430
  if ( groups_check_user_has_invite( $friend_ids['friends'][$i]->user_id, $group_id ) || groups_is_user_member( $friend_ids['friends'][$i]->user_id, $group_id ) )
431
  continue;
432
 
433
- $display_name = bp_fetch_user_fullname($friend_ids['friends'][$i]->user_id, false);
434
 
435
  if ( $display_name != ' ' ) {
436
  $friends[] = array(
@@ -548,7 +626,7 @@ function friends_remove_friend( $initiator_userid, $friend_userid ) {
548
  $friendship = new BP_Friends_Friendship( $friendship_id );
549
 
550
  // Remove the activity stream items
551
- friends_delete_activity( array( 'item_id' => $friendship_id, 'component_name' => 'friends', 'component_action' => 'friendship_accepted', 'user_id' => $bp->displayed_user->id ) );
552
 
553
  do_action( 'friends_friendship_deleted', $friendship_id, $initiator_userid, $friend_userid );
554
 
@@ -562,6 +640,8 @@ function friends_remove_friend( $initiator_userid, $friend_userid ) {
562
  }
563
 
564
  function friends_accept_friendship( $friendship_id ) {
 
 
565
  /* Check the nonce */
566
  if ( !check_admin_referer( 'friends_accept_friendship' ) )
567
  return false;
@@ -578,7 +658,7 @@ function friends_accept_friendship( $friendship_id ) {
578
  bp_core_add_notification( $friendship->friend_user_id, $friendship->initiator_user_id, 'friends', 'friendship_accepted' );
579
 
580
  // Record in activity streams
581
- friends_record_activity( array( 'item_id' => $friendship_id, 'component_name' => 'friends', 'component_action' => 'friendship_accepted', 'is_private' => 0, 'user_id' => $friendship->initiator_user_id, 'secondary_user_id' => $friendship->friend_user_id ) );
582
 
583
  // Send the email notification
584
  require_once( BP_PLUGIN_DIR . '/bp-friends/bp-friends-notifications.php' );
1
  <?php
2
 
 
3
  define ( 'BP_FRIENDS_DB_VERSION', '1300' );
4
 
5
  /* Define the slug for the component */
180
  add_action( 'bp_notification_settings', 'friends_screen_notification_settings' );
181
 
182
 
183
+ /***** Actions **********/
184
+
185
+ function friends_action_add_friend() {
186
+ global $bp;
187
+
188
+ if ( $bp->current_component != $bp->friends->slug || $bp->current_action != 'add-friend' )
189
+ return false;
190
+
191
+ $potential_friend_id = $bp->action_variables[0];
192
+
193
+ if ( !is_numeric( $potential_friend_id ) || !isset( $potential_friend_id ) )
194
+ return false;
195
+
196
+ if ( $potential_friend_id == $bp->loggedin_user->id )
197
+ return false;
198
+
199
+ $friendship_status = BP_Friends_Friendship::check_is_friend( $bp->loggedin_user->id, $potential_friend_id );
200
+
201
+ if ( 'not_friends' == $friendship_status ) {
202
+
203
+ if ( !check_admin_referer( 'friends_add_friend' ) )
204
+ return false;
205
+
206
+ if ( !friends_add_friend( $bp->loggedin_user->id, $potential_friend_id ) ) {
207
+ bp_core_add_message( __( 'Friendship could not be requested.', 'buddypress' ), 'error' );
208
+ } else {
209
+ bp_core_add_message( __( 'Friendship requested', 'buddypress' ) );
210
+ }
211
+ } else if ( 'is_friend' == $friendship_status ) {
212
+ bp_core_add_message( __( 'You are already friends with this user', 'buddypress' ), 'error' );
213
+ } else {
214
+ bp_core_add_message( __( 'You already have a pending friendship request with this user', 'buddypress' ), 'error' );
215
+ }
216
+
217
+ bp_core_redirect( $_SERVER['HTTP_REFERER'] );
218
+
219
+ return false;
220
+ }
221
+ add_action( 'init', 'friends_action_add_friend' );
222
+
223
+ function friends_action_remove_friend() {
224
+ global $bp;
225
+
226
+ if ( $bp->current_component != $bp->friends->slug || $bp->current_action != 'remove-friend' )
227
+ return false;
228
+
229
+ $potential_friend_id = $bp->action_variables[0];
230
+
231
+ if ( !is_numeric( $potential_friend_id ) || !isset( $potential_friend_id ) )
232
+ return false;
233
+
234
+ if ( $potential_friend_id == $bp->loggedin_user->id )
235
+ return false;
236
+
237
+ $friendship_status = BP_Friends_Friendship::check_is_friend( $bp->loggedin_user->id, $potential_friend_id );
238
+
239
+ if ( 'is_friend' == $friendship_status ) {
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 {
247
+ bp_core_add_message( __( 'Friendship canceled', 'buddypress' ) );
248
+ }
249
+ } else if ( 'is_friends' == $friendship_status ) {
250
+ bp_core_add_message( __( 'You are not yet friends with this user', 'buddypress' ), 'error' );
251
+ } else {
252
+ bp_core_add_message( __( 'You have a pending friendship request with this user', 'buddypress' ), 'error' );
253
+ }
254
+
255
+ bp_core_redirect( $_SERVER['HTTP_REFERER'] );
256
+
257
+ return false;
258
+ }
259
+ add_action( 'init', 'friends_action_remove_friend' );
260
+
261
+
262
  /**************************************************************************
263
  friends_record_activity()
264
 
334
  if ( (int)$total_items > 1 ) {
335
  return apply_filters( 'bp_friends_multiple_friendship_accepted_notification', '<a href="' . $bp->loggedin_user->domain . $bp->friends->slug . '/my-friends/newest" title="' . __( 'My Friends', 'buddypress' ) . '">' . sprintf( __('%d friends accepted your friendship requests', 'buddypress' ), (int)$total_items ) . '</a>', (int)$total_items );
336
  } else {
337
+ $user_fullname = bp_core_get_user_displayname( $item_id );
338
  $user_url = bp_core_get_userurl( $item_id );
339
  return apply_filters( 'bp_friends_single_friendship_accepted_notification', '<a href="' . $user_url . '?new" title="' . $user_fullname .'\'s profile">' . sprintf( __( '%s accepted your friendship request', 'buddypress' ), $user_fullname ) . '</a>', $user_fullname );
340
  }
344
  if ( (int)$total_items > 1 ) {
345
  return apply_filters( 'bp_friends_multiple_friendship_request_notification', '<a href="' . $bp->loggedin_user->domain . $bp->friends->slug . '/requests" title="' . __( 'Friendship requests', 'buddypress' ) . '">' . sprintf( __('You have %d pending friendship requests', 'buddypress' ), (int)$total_items ) . '</a>', $total_items );
346
  } else {
347
+ $user_fullname = bp_core_get_user_displayname( $item_id );
348
  $user_url = bp_core_get_userurl( $item_id );
349
  return apply_filters( 'bp_friends_single_friendship_request_notification', '<a href="' . $bp->loggedin_user->domain . $bp->friends->slug . '/requests" title="' . __( 'Friendship requests', 'buddypress' ) . '">' . sprintf( __('You have a friendship request from %s', 'buddypress' ), $user_fullname ) . '</a>', $user_fullname );
350
  }
470
 
471
  for ( $i = 0; $i < count($friend_ids); $i++ ) {
472
  if ( function_exists('bp_user_fullname') )
473
+ $display_name = bp_core_get_user_displayname( $friend_ids[$i] );
474
 
475
  if ( $display_name != ' ' ) {
476
  $friends[] = array(
508
  if ( groups_check_user_has_invite( $friend_ids['friends'][$i]->user_id, $group_id ) || groups_is_user_member( $friend_ids['friends'][$i]->user_id, $group_id ) )
509
  continue;
510
 
511
+ $display_name = bp_core_get_user_displayname( $friend_ids['friends'][$i]->user_id );
512
 
513
  if ( $display_name != ' ' ) {
514
  $friends[] = array(
626
  $friendship = new BP_Friends_Friendship( $friendship_id );
627
 
628
  // Remove the activity stream items
629
+ friends_delete_activity( array( 'item_id' => $friendship_id, 'component_name' => $bp->friends->slug, 'component_action' => 'friendship_accepted', 'user_id' => $bp->displayed_user->id ) );
630
 
631
  do_action( 'friends_friendship_deleted', $friendship_id, $initiator_userid, $friend_userid );
632
 
640
  }
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;
658
  bp_core_add_notification( $friendship->friend_user_id, $friendship->initiator_user_id, 'friends', 'friendship_accepted' );
659
 
660
  // Record in activity streams
661
+ friends_record_activity( array( 'item_id' => $friendship_id, 'component_name' => $bp->friends->slug, 'component_action' => 'friendship_accepted', 'is_private' => 0, 'user_id' => $friendship->initiator_user_id, 'secondary_user_id' => $friendship->friend_user_id ) );
662
 
663
  // Send the email notification
664
  require_once( BP_PLUGIN_DIR . '/bp-friends/bp-friends-notifications.php' );
bp-friends/bp-friends-notifications.php CHANGED
@@ -3,7 +3,7 @@
3
  function friends_notification_new_request( $friendship_id, $initiator_id, $friend_id ) {
4
  global $bp;
5
 
6
- $initiator_name = bp_fetch_user_fullname( $initiator_id, false );
7
 
8
  if ( 'no' == get_usermeta( (int)$friend_id, 'notification_friends_friendship_request' ) )
9
  return false;
@@ -42,7 +42,7 @@ function friends_notification_accepted_request( $friendship_id, $initiator_id, $
42
 
43
  $friendship = new BP_Friends_Friendship( $friendship_id, false, false );
44
 
45
- $friend_name = bp_fetch_user_fullname( $friend_id, false );
46
 
47
  if ( 'no' == get_usermeta( (int)$initiator_id, 'notification_friends_friendship_accepted' ) )
48
  return false;
3
  function friends_notification_new_request( $friendship_id, $initiator_id, $friend_id ) {
4
  global $bp;
5
 
6
+ $initiator_name = bp_core_get_user_displayname( $initiator_id );
7
 
8
  if ( 'no' == get_usermeta( (int)$friend_id, 'notification_friends_friendship_request' ) )
9
  return false;
42
 
43
  $friendship = new BP_Friends_Friendship( $friendship_id, false, false );
44
 
45
+ $friend_name = bp_core_get_user_displayname( $friend_id );
46
 
47
  if ( 'no' == get_usermeta( (int)$initiator_id, 'notification_friends_friendship_accepted' ) )
48
  return false;
bp-friends/bp-friends-templatetags.php CHANGED
@@ -304,7 +304,7 @@ function bp_friend_search_form() {
304
  <input type="search" name="friend-search-box" id="friend-search-box" value="<?php echo $value ?>"<?php echo $disabled ?> />
305
 
306
  <?php wp_nonce_field( 'friends_search', '_wpnonce_friend_search' ) ?>
307
- <input type="hidden" name="initiator" id="initiator" value="<?php echo $bp->displayed_user->id ?>" />
308
 
309
  </form>
310
  <?php
304
  <input type="search" name="friend-search-box" id="friend-search-box" value="<?php echo $value ?>"<?php echo $disabled ?> />
305
 
306
  <?php wp_nonce_field( 'friends_search', '_wpnonce_friend_search' ) ?>
307
+ <input type="hidden" name="initiator" id="initiator" value="<?php echo attribute_escape( $bp->displayed_user->id ) ?>" />
308
 
309
  </form>
310
  <?php
bp-groups.php CHANGED
@@ -1,6 +1,5 @@
1
  <?php
2
 
3
- define ( 'BP_GROUPS_VERSION', '1.0' );
4
  define ( 'BP_GROUPS_DB_VERSION', '1300' );
5
 
6
  /* Define the slug for the component */
@@ -298,7 +297,7 @@ function groups_directory_groups_setup() {
298
  bp_core_load_template( apply_filters( 'groups_template_directory_groups', 'directories/groups/index' ) );
299
  }
300
  }
301
- add_action( 'wp', 'groups_directory_groups_setup', 5 );
302
 
303
  /***** Screens **********/
304
 
@@ -361,36 +360,42 @@ function groups_screen_create_group() {
361
  $create_group_step = 1;
362
  $completed_to_step = 0;
363
 
364
- unset($_SESSION['group_obj_id']);
365
- unset($_SESSION['completed_to_step']);
366
 
367
  $no_instantiate = true;
368
  $reset_steps = true;
369
  }
370
 
371
- if ( isset($_SESSION['completed_to_step']) && !$reset_steps ) {
372
- $completed_to_step = $_SESSION['completed_to_step'];
373
  }
374
 
375
  if ( isset( $_POST['save'] ) || isset( $_POST['skip'] ) ) {
376
- $group_obj = new BP_Groups_Group( $_SESSION['group_obj_id'] );
377
 
378
- if ( !$group_id = groups_create_group( $create_group_step, $_SESSION['group_obj_id'] ) ) {
379
  bp_core_add_message( __('There was an error saving group details. Please try again.', 'buddypress'), 'error' );
380
  bp_core_redirect( $bp->loggedin_user->domain . $bp->groups->slug . '/create/step/' . $create_group_step );
381
  } else {
382
  $create_group_step++;
383
  $completed_to_step++;
384
- $_SESSION['completed_to_step'] = $completed_to_step;
385
- $_SESSION['group_obj_id'] = $group_id;
 
 
 
 
 
 
386
  }
387
 
388
  if ( $completed_to_step == 4 )
389
  bp_core_redirect( bp_get_group_permalink( $group_obj ) );
390
  }
391
 
392
- if ( isset($_SESSION['group_obj_id']) && !$group_obj && !$no_instantiate )
393
- $group_obj = new BP_Groups_Group( $_SESSION['group_obj_id'] );
394
 
395
  bp_core_load_template( apply_filters( 'groups_template_create_group', 'groups/create' ) );
396
  }
@@ -947,7 +952,7 @@ function groups_record_activity( $args = true ) {
947
 
948
  if ( !$group_obj ) {
949
  if ( !$group_obj = wp_cache_get( 'groups_group_nouserdata_' . $item_id, 'bp' ) ) {
950
- $group_obj = new BP_Groups_Group( $group_obj->id, false, false );
951
  wp_cache_set( 'groups_group_nouserdata_' . $item_id, $group_obj, 'bp' );
952
  }
953
  }
@@ -1098,7 +1103,7 @@ function groups_format_notifications( $action, $item_id, $secondary_item_id, $to
1098
  if ( (int)$total_items > 1 ) {
1099
  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 );
1100
  } else {
1101
- $user_fullname = bp_core_global_user_fullname( $requesting_user_id );
1102
  return apply_filters( 'bp_groups_single_new_membership_request_notification', '<a href="' . $group_link . '/admin/membership-requests/" title="' . $user_fullname .' requests group membership">' . sprintf( __('%s requests membership for the group "%s"', 'buddypress' ), $user_fullname, $group->name ) . '</a>', $group_link, $user_fullname, $group->name );
1103
  }
1104
  break;
@@ -1585,7 +1590,7 @@ function groups_new_group_forum( $group_id = false, $group_name = false, $group_
1585
  }
1586
 
1587
  function groups_new_group_forum_post( $post_text, $topic_id ) {
1588
- global $group_obj;
1589
 
1590
  /* Check the nonce */
1591
  if ( !check_admin_referer( 'bp_forums_new_reply' ) )
@@ -1607,7 +1612,7 @@ function groups_new_group_forum_post( $post_text, $topic_id ) {
1607
  }
1608
 
1609
  function groups_new_group_forum_topic( $topic_title, $topic_text, $topic_tags, $forum_id ) {
1610
- global $group_obj;
1611
 
1612
  /* Check the nonce */
1613
  if ( !check_admin_referer( 'bp_forums_new_topic' ) )
@@ -2095,7 +2100,7 @@ function groups_reject_membership_request( $membership_id ) {
2095
  function groups_redirect_to_random_group() {
2096
  global $bp, $wpdb;
2097
 
2098
- if ( $bp->current_component == $bp->groups->slug && isset( $_GET['random'] ) ) {
2099
  $group = groups_get_random_group();
2100
 
2101
  bp_core_redirect( $bp->root_domain . '/' . $bp->groups->slug . '/' . $group['groups'][0]->slug );
@@ -2276,8 +2281,8 @@ function groups_force_buddypress_theme( $template ) {
2276
  if ( empty($member_theme) )
2277
  $member_theme = 'bpmember';
2278
 
2279
- add_filter( 'theme_root', 'bp_core_set_member_theme_root' );
2280
- add_filter( 'theme_root_uri', 'bp_core_set_member_theme_root_uri' );
2281
 
2282
  return $member_theme;
2283
  }
@@ -2294,8 +2299,8 @@ function groups_force_buddypress_stylesheet( $stylesheet ) {
2294
  if ( empty( $member_theme ) )
2295
  $member_theme = 'bpmember';
2296
 
2297
- add_filter( 'theme_root', 'bp_core_set_member_theme_root' );
2298
- add_filter( 'theme_root_uri', 'bp_core_set_member_theme_root_uri' );
2299
 
2300
  return $member_theme;
2301
  }
1
  <?php
2
 
 
3
  define ( 'BP_GROUPS_DB_VERSION', '1300' );
4
 
5
  /* Define the slug for the component */
297
  bp_core_load_template( apply_filters( 'groups_template_directory_groups', 'directories/groups/index' ) );
298
  }
299
  }
300
+ add_action( 'wp', 'groups_directory_groups_setup', 2 );
301
 
302
  /***** Screens **********/
303
 
360
  $create_group_step = 1;
361
  $completed_to_step = 0;
362
 
363
+ setcookie( 'bp_group_obj_id', false, time() - 1000, COOKIEPATH );
364
+ setcookie( 'bp_group_completed_to_step', false, time() - 1000, COOKIEPATH );
365
 
366
  $no_instantiate = true;
367
  $reset_steps = true;
368
  }
369
 
370
+ if ( isset($_COOKIE['bp_group_completed_to_step']) && !$reset_steps ) {
371
+ $completed_to_step = $_COOKIE['bp_group_completed_to_step'];
372
  }
373
 
374
  if ( isset( $_POST['save'] ) || isset( $_POST['skip'] ) ) {
375
+ $group_obj = new BP_Groups_Group( $_COOKIE['bp_group_obj_id'] );
376
 
377
+ if ( !$group_id = groups_create_group( $create_group_step, $_COOKIE['bp_group_obj_id'] ) ) {
378
  bp_core_add_message( __('There was an error saving group details. Please try again.', 'buddypress'), 'error' );
379
  bp_core_redirect( $bp->loggedin_user->domain . $bp->groups->slug . '/create/step/' . $create_group_step );
380
  } else {
381
  $create_group_step++;
382
  $completed_to_step++;
383
+
384
+ /* Unset cookie info */
385
+ setcookie( 'bp_group_obj_id', false, time() - 1000, COOKIEPATH );
386
+ setcookie( 'bp_group_completed_to_step', false, time() - 1000, COOKIEPATH );
387
+
388
+ /* Reset cookie info */
389
+ setcookie( 'bp_group_obj_id', $group_id, time()+60*60*24, COOKIEPATH );
390
+ setcookie( 'bp_group_completed_to_step', $completed_to_step, time()+60*60*24, COOKIEPATH );
391
  }
392
 
393
  if ( $completed_to_step == 4 )
394
  bp_core_redirect( bp_get_group_permalink( $group_obj ) );
395
  }
396
 
397
+ if ( isset($_COOKIE['bp_group_obj_id']) && !$group_obj && !$no_instantiate )
398
+ $group_obj = new BP_Groups_Group( $_COOKIE['bp_group_obj_id'] );
399
 
400
  bp_core_load_template( apply_filters( 'groups_template_create_group', 'groups/create' ) );
401
  }
952
 
953
  if ( !$group_obj ) {
954
  if ( !$group_obj = wp_cache_get( 'groups_group_nouserdata_' . $item_id, 'bp' ) ) {
955
+ $group_obj = new BP_Groups_Group( $item_id, false, false );
956
  wp_cache_set( 'groups_group_nouserdata_' . $item_id, $group_obj, 'bp' );
957
  }
958
  }
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 {
1106
+ $user_fullname = bp_core_get_user_displayname( $requesting_user_id );
1107
  return apply_filters( 'bp_groups_single_new_membership_request_notification', '<a href="' . $group_link . '/admin/membership-requests/" title="' . $user_fullname .' requests group membership">' . sprintf( __('%s requests membership for the group "%s"', 'buddypress' ), $user_fullname, $group->name ) . '</a>', $group_link, $user_fullname, $group->name );
1108
  }
1109
  break;
1590
  }
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' ) )
1612
  }
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' ) )
2100
  function groups_redirect_to_random_group() {
2101
  global $bp, $wpdb;
2102
 
2103
+ if ( $bp->current_component == $bp->groups->slug && isset( $_GET['random-group'] ) ) {
2104
  $group = groups_get_random_group();
2105
 
2106
  bp_core_redirect( $bp->root_domain . '/' . $bp->groups->slug . '/' . $group['groups'][0]->slug );
2281
  if ( empty($member_theme) )
2282
  $member_theme = 'bpmember';
2283
 
2284
+ add_filter( 'theme_root', 'bp_core_filter_buddypress_theme_root' );
2285
+ add_filter( 'theme_root_uri', 'bp_core_filter_buddypress_theme_root_uri' );
2286
 
2287
  return $member_theme;
2288
  }
2299
  if ( empty( $member_theme ) )
2300
  $member_theme = 'bpmember';
2301
 
2302
+ add_filter( 'theme_root', 'bp_core_filter_buddypress_theme_root' );
2303
+ add_filter( 'theme_root_uri', 'bp_core_filter_buddypress_theme_root_uri' );
2304
 
2305
  return $member_theme;
2306
  }
bp-groups/bp-groups-admin.php CHANGED
@@ -32,13 +32,13 @@ function groups_admin_settings() {
32
  <div class="wrap" style="position: relative">
33
  <h2><?php _e( 'Groups', 'buddypress' ) ?></h2>
34
 
35
- <form id="wpmu-search" method="post" action="<?php $_SERVER['PHP_SELF'] ?>">
36
- <input type="text" size="17" value="<?php echo $_REQUEST['s'] ?>" name="s" />
37
  <input id="post-query-submit" class="button" type="submit" value="<?php _e( 'Search Groups', 'buddypress' ) ?>" />
38
  </form>
39
 
40
  <?php if ( bp_has_site_groups( 'type=active&per_page=10' ) ) : ?>
41
- <form id="bp-group-admin-list" method="post" action="<?php $_SERVER['PHP_SELF'] ?>">
42
  <div class="tablenav">
43
  <div class="tablenav-pages">
44
  <?php bp_site_groups_pagination_count() ?> <?php bp_site_groups_pagination_links() ?>
32
  <div class="wrap" style="position: relative">
33
  <h2><?php _e( 'Groups', 'buddypress' ) ?></h2>
34
 
35
+ <form id="wpmu-search" method="post" action="">
36
+ <input type="text" size="17" value="<?php echo attribute_escape( stripslashes( $_REQUEST['s'] ) ); ?>" name="s" />
37
  <input id="post-query-submit" class="button" type="submit" value="<?php _e( 'Search Groups', 'buddypress' ) ?>" />
38
  </form>
39
 
40
  <?php if ( bp_has_site_groups( 'type=active&per_page=10' ) ) : ?>
41
+ <form id="bp-group-admin-list" method="post" action="">
42
  <div class="tablenav">
43
  <div class="tablenav-pages">
44
  <?php bp_site_groups_pagination_count() ?> <?php bp_site_groups_pagination_links() ?>
bp-groups/bp-groups-ajax.php CHANGED
@@ -23,9 +23,9 @@ function groups_ajax_invite_user() {
23
  echo '<li id="uid-' . $user->id . '">';
24
  echo $user->avatar_thumb;
25
  echo '<h4>' . $user->user_link . '</h4>';
26
- echo '<span class="activity">' . $user->last_active . '</span>';
27
  echo '<div class="action">
28
- <a class="remove" href="' . wp_nonce_url( $bp->loggedin_user->domain . $bp->groups->slug . '/' . $_POST['group_id'] . '/invites/remove/' . $user->id, 'groups_invite_uninvite_user' ) . '" id="uid-' . $user->id . '">' . __( 'Remove Invite', 'buddypress' ) . '</a>
29
  </div>';
30
  echo '</li>';
31
 
@@ -88,11 +88,11 @@ function groups_ajax_widget_groups_list() {
88
  ?>
89
  <li>
90
  <div class="item-avatar">
91
- <img src="<?php echo $group->avatar_thumb ?>" class="avatar" alt="<?php echo $group->name ?> Avatar" />
92
  </div>
93
 
94
  <div class="item">
95
- <div class="item-title"><a href="<?php echo bp_get_group_permalink( $group ) ?>" title="<?php echo $group->name ?>"><?php echo $group->name ?></a></div>
96
  <div class="item-meta">
97
  <span class="activity">
98
  <?php
@@ -144,7 +144,7 @@ function groups_ajax_member_list() {
144
 
145
  <?php if ( function_exists( 'friends_install' ) ) : ?>
146
  <div class="action">
147
- <?php bp_add_friend_button( bp_group_member_id() ) ?>
148
  </div>
149
  <?php endif; ?>
150
  </li>
@@ -157,7 +157,7 @@ function groups_ajax_member_list() {
157
  </div>
158
 
159
  <?php endif; ?>
160
- <input type="hidden" name="group_id" id="group_id" value="<?php echo $_REQUEST['group_id'] ?>" />
161
  <?php
162
  }
163
  add_action( 'wp_ajax_get_group_members', 'groups_ajax_member_list' );
@@ -202,7 +202,7 @@ function groups_ajax_member_admin_list() {
202
  </div>
203
 
204
  <?php endif;?>
205
- <input type="hidden" name="group_id" id="group_id" value="<?php echo $_REQUEST['group_id'] ?>" />
206
  <?php
207
  }
208
  add_action( 'wp_ajax_get_group_members_admin', 'groups_ajax_member_admin_list' );
@@ -237,7 +237,7 @@ function groups_ajax_joinleave_group() {
237
  if ( !groups_join_group( $group->id ) ) {
238
  _e( 'Error joining group', 'buddypress' );
239
  } else {
240
- echo '<a id="group-' . $group->id . '" class="leave-group" rel="leave" title="' . __( 'Leave Group', 'buddypress' ) . '" href="' . wp_nonce_url( bp_get_group_permalink( $group ) . '/leave-group', 'groups_leave_group' ) . '">' . __( 'Leave Group', 'buddypress' ) . '</a>';
241
  }
242
 
243
  } else if ( 'private' == $group->status ) {
@@ -247,7 +247,7 @@ function groups_ajax_joinleave_group() {
247
  if ( !groups_send_membership_request( $bp->loggedin_user->id, $group->id ) ) {
248
  _e( 'Error requesting membership', 'buddypress' );
249
  } else {
250
- echo '<a id="group-' . $group->id . '" class="membership-requested" rel="membership-requested" title="' . __( 'Membership Requested', 'buddypress' ) . '" href="' . bp_get_group_permalink( $group ) . '">' . __( 'Membership Requested', 'buddypress' ) . '</a>';
251
  }
252
  }
253
 
@@ -259,9 +259,9 @@ function groups_ajax_joinleave_group() {
259
  _e( 'Error leaving group', 'buddypress' );
260
  } else {
261
  if ( 'public' == $group->status ) {
262
- echo '<a id="group-' . $group->id . '" class="join-group" rel="join" title="' . __( 'Join Group', 'buddypress' ) . '" href="' . wp_nonce_url( bp_get_group_permalink( $group ) . '/join', 'groups_join_group' ) . '">' . __( 'Join Group', 'buddypress' ) . '</a>';
263
  } else if ( 'private' == $group->status ) {
264
- echo '<a id="group-' . $group->id . '" class="request-membership" rel="join" title="' . __( 'Request Membership', 'buddypress' ) . '" href="' . wp_nonce_url( bp_get_group_permalink( $group ) . '/request-membership', 'groups_send_membership_request' ) . '">' . __( 'Request Membership', 'buddypress' ) . '</a>';
265
  }
266
  }
267
  }
23
  echo '<li id="uid-' . $user->id . '">';
24
  echo $user->avatar_thumb;
25
  echo '<h4>' . $user->user_link . '</h4>';
26
+ echo '<span class="activity">' . attribute_escape( $user->last_active ) . '</span>';
27
  echo '<div class="action">
28
+ <a class="remove" href="' . wp_nonce_url( $bp->loggedin_user->domain . $bp->groups->slug . '/' . $_POST['group_id'] . '/invites/remove/' . $user->id, 'groups_invite_uninvite_user' ) . '" id="uid-' . attribute_escape( $user->id ) . '">' . __( 'Remove Invite', 'buddypress' ) . '</a>
29
  </div>';
30
  echo '</li>';
31
 
88
  ?>
89
  <li>
90
  <div class="item-avatar">
91
+ <?php echo bp_get_group_avatar_thumb( $group ) ?>
92
  </div>
93
 
94
  <div class="item">
95
+ <div class="item-title"><a href="<?php echo bp_get_group_permalink( $group ) ?>" title="<?php echo bp_get_group_name( $group ) ?>"><?php echo bp_get_group_name( $group ) ?></a></div>
96
  <div class="item-meta">
97
  <span class="activity">
98
  <?php
144
 
145
  <?php if ( function_exists( 'friends_install' ) ) : ?>
146
  <div class="action">
147
+ <?php bp_add_friend_button( bp_get_group_member_id() ) ?>
148
  </div>
149
  <?php endif; ?>
150
  </li>
157
  </div>
158
 
159
  <?php endif; ?>
160
+ <input type="hidden" name="group_id" id="group_id" value="<?php echo attribute_escape( $_REQUEST['group_id'] ); ?>" />
161
  <?php
162
  }
163
  add_action( 'wp_ajax_get_group_members', 'groups_ajax_member_list' );
202
  </div>
203
 
204
  <?php endif;?>
205
+ <input type="hidden" name="group_id" id="group_id" value="<?php echo attribute_escape( $_REQUEST['group_id'] ); ?>" />
206
  <?php
207
  }
208
  add_action( 'wp_ajax_get_group_members_admin', 'groups_ajax_member_admin_list' );
237
  if ( !groups_join_group( $group->id ) ) {
238
  _e( 'Error joining group', 'buddypress' );
239
  } else {
240
+ echo '<a id="group-' . attribute_escape( $group->id ) . '" class="leave-group" rel="leave" title="' . __( 'Leave Group', 'buddypress' ) . '" href="' . wp_nonce_url( bp_get_group_permalink( $group ) . '/leave-group', 'groups_leave_group' ) . '">' . __( 'Leave Group', 'buddypress' ) . '</a>';
241
  }
242
 
243
  } else if ( 'private' == $group->status ) {
247
  if ( !groups_send_membership_request( $bp->loggedin_user->id, $group->id ) ) {
248
  _e( 'Error requesting membership', 'buddypress' );
249
  } else {
250
+ echo '<a id="group-' . attribute_escape( $group->id ) . '" class="membership-requested" rel="membership-requested" title="' . __( 'Membership Requested', 'buddypress' ) . '" href="' . bp_get_group_permalink( $group ) . '">' . __( 'Membership Requested', 'buddypress' ) . '</a>';
251
  }
252
  }
253
 
259
  _e( 'Error leaving group', 'buddypress' );
260
  } else {
261
  if ( 'public' == $group->status ) {
262
+ echo '<a id="group-' . attribute_escape( $group->id ) . '" class="join-group" rel="join" title="' . __( 'Join Group', 'buddypress' ) . '" href="' . wp_nonce_url( bp_get_group_permalink( $group ) . '/join', 'groups_join_group' ) . '">' . __( 'Join Group', 'buddypress' ) . '</a>';
263
  } else if ( 'private' == $group->status ) {
264
+ echo '<a id="group-' . attribute_escape( $group->id ) . '" class="request-membership" rel="join" title="' . __( 'Request Membership', 'buddypress' ) . '" href="' . wp_nonce_url( bp_get_group_permalink( $group ) . '/request-membership', 'groups_send_membership_request' ) . '">' . __( 'Request Membership', 'buddypress' ) . '</a>';
265
  }
266
  }
267
  }
bp-groups/bp-groups-filters.php CHANGED
@@ -34,6 +34,7 @@ add_filter( 'bp_get_group_description_excerpt', 'make_clickable' );
34
  add_filter( 'bp_get_group_news', 'make_clickable' );
35
 
36
  add_filter( 'bp_get_group_name', 'wp_filter_kses', 1 );
 
37
  add_filter( 'bp_get_group_description', 'wp_filter_kses', 1 );
38
  add_filter( 'bp_get_group_description_excerpt', 'wp_filter_kses', 1 );
39
  add_filter( 'bp_get_group_news', 'wp_filter_kses', 1 );
34
  add_filter( 'bp_get_group_news', 'make_clickable' );
35
 
36
  add_filter( 'bp_get_group_name', 'wp_filter_kses', 1 );
37
+ add_filter( 'bp_get_group_permalink', 'wp_filter_kses', 1 );
38
  add_filter( 'bp_get_group_description', 'wp_filter_kses', 1 );
39
  add_filter( 'bp_get_group_description_excerpt', 'wp_filter_kses', 1 );
40
  add_filter( 'bp_get_group_news', 'wp_filter_kses', 1 );
bp-groups/bp-groups-notifications.php CHANGED
@@ -9,7 +9,7 @@ function groups_notification_new_wire_post( $group_id, $wire_post_id ) {
9
  $wire_post = new BP_Wire_Post( $bp->groups->table_name_wire, $wire_post_id );
10
  $group = new BP_Groups_Group( $group_id, false, true );
11
 
12
- $poster_name = bp_fetch_user_fullname( $wire_post->user_id, false );
13
  $poster_ud = get_userdata( $wire_post->user_id );
14
  $poster_profile_link = site_url() . '/' . BP_MEMBERS_SLUG . '/' . $poster_ud->user_login;
15
 
@@ -94,7 +94,7 @@ function groups_notification_new_membership_request( $requesting_user_id, $admin
94
  if ( 'no' == get_usermeta( $admin_id, 'notification_groups_membership_request' ) )
95
  return false;
96
 
97
- $requesting_user_name = bp_fetch_user_fullname( $requesting_user_id, false );
98
  $group = new BP_Groups_Group( $group_id, false, false );
99
 
100
  $ud = get_userdata($admin_id);
9
  $wire_post = new BP_Wire_Post( $bp->groups->table_name_wire, $wire_post_id );
10
  $group = new BP_Groups_Group( $group_id, false, true );
11
 
12
+ $poster_name = bp_core_get_user_displayname( $wire_post->user_id );
13
  $poster_ud = get_userdata( $wire_post->user_id );
14
  $poster_profile_link = site_url() . '/' . BP_MEMBERS_SLUG . '/' . $poster_ud->user_login;
15
 
94
  if ( 'no' == get_usermeta( $admin_id, 'notification_groups_membership_request' ) )
95
  return false;
96
 
97
+ $requesting_user_name = bp_core_get_user_displayname( $requesting_user_id );
98
  $group = new BP_Groups_Group( $group_id, false, false );
99
 
100
  $ud = get_userdata($admin_id);
bp-groups/bp-groups-templatetags.php CHANGED
@@ -56,13 +56,13 @@ function bp_group_create_form() {
56
  <?php switch( (int) $create_group_step ) {
57
  case 1: ?>
58
  <label for="group-name">* <?php _e('Group Name', 'buddypress') ?></label>
59
- <input type="text" name="group-name" id="group-name" value="<?php echo ( $group_obj ) ? $group_obj->name : $_POST['group-name']; ?>" />
60
 
61
  <label for="group-desc">* <?php _e('Group Description', 'buddypress') ?></label>
62
- <textarea name="group-desc" id="group-desc"><?php echo ( $group_obj ) ? $group_obj->description : $_POST['group-desc']; ?></textarea>
63
 
64
  <label for="group-news"><?php _e('Recent News', 'buddypress') ?></label>
65
- <textarea name="group-news" id="group-news"><?php echo ( $group_obj ) ? $group_obj->news : $_POST['group-news']; ?></textarea>
66
 
67
  <?php do_action( 'groups_custom_group_fields_editable' ) ?>
68
 
@@ -232,7 +232,7 @@ function bp_group_list_invite_friends() {
232
  }
233
  ?>
234
 
235
- <li><input<?php echo $checked ?> type="checkbox" name="friends[]" id="f-<?php echo $friends[$i]['id'] ?>" value="<?php echo $friends[$i]['id'] ?>" /> <?php echo $friends[$i]['full_name']; ?></li>
236
  <?php } ?>
237
  </ul>
238
  </div>
@@ -273,7 +273,7 @@ function bp_group_current_avatar() {
273
  global $group_obj;
274
 
275
  if ( $group_obj->avatar_full ) { ?>
276
- <img src="<?php echo $group_obj->avatar_full ?>" alt="<?php _e( 'Group Avatar', 'buddypress' ) ?>" class="avatar" />
277
  <?php } else { ?>
278
  <img src="<?php echo $bp->groups->image_base . '/none.gif' ?>" alt="<?php _e( 'No Group Avatar', 'buddypress' ) ?>" class="avatar" />
279
  <?php }
@@ -306,11 +306,11 @@ 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 $group->name ?>"><img src="<?php echo $group->avatar_thumb ?>" class="avatar" alt="<?php printf( __( '%s Avatar', 'buddypress' ), $group->name ) ?>" /></a>
310
  </div>
311
 
312
  <div class="item">
313
- <div class="item-title"><a href="<?php echo bp_get_group_permalink( $group ) ?>" title="<?php echo $group->name ?>"><?php echo $group->name ?></a></div>
314
  <div class="item-meta"><span class="activity"><?php echo bp_core_get_last_activity( groups_get_groupmeta( $group->id, 'last_activity' ), __( 'active %s ago', 'buddypress' ) ) ?></span></div>
315
  <div class="item-meta desc"><?php echo bp_create_excerpt( $group->description ) ?></div>
316
  </div>
@@ -360,8 +360,8 @@ function bp_groups_random_groups( $total_groups = 5 ) {
360
  wp_cache_set( 'groups_group_nouserdata_' . $group_ids[$i], $group, 'bp' );
361
  }
362
  ?> <li>
363
- <a href="<?php echo bp_get_group_permalink( $group ) ?>"><img src="<?php echo $group->avatar_thumb; ?>" class="avatar" alt="<?php _e( 'Group Avatar', 'buddypress' ) ?>" /></a>
364
- <h5><a href="<?php echo bp_get_group_permalink( $group ) ?>"><?php echo $group->name ?></a></h5>
365
  </li>
366
  <?php } ?>
367
  </ul>
@@ -705,7 +705,7 @@ function bp_group_avatar() {
705
  if ( !$group )
706
  $group =& $groups_template->group;
707
 
708
- return apply_filters( 'bp_get_group_avatar', '<img src="' . $group->avatar_full . '" class="avatar" alt="' . $group->name . '" />', $group->avatar_full, $group->avatar_name );
709
  }
710
 
711
  function bp_group_avatar_thumb() {
@@ -717,7 +717,7 @@ function bp_group_avatar_thumb() {
717
  if ( !$group )
718
  $group =& $groups_template->group;
719
 
720
- return apply_filters( 'bp_get_group_avatar_thumb', '<img src="' . $group->avatar_thumb . '" class="avatar" alt="' . $group->name . '" />', $group->avatar_thumb, $group->avatar_name );
721
  }
722
 
723
  function bp_group_avatar_mini() {
@@ -729,7 +729,7 @@ function bp_group_avatar_mini() {
729
  if ( !$group )
730
  $group =& $groups_template->group;
731
 
732
- return apply_filters( 'bp_get_group_avatar_mini', '<img src="' . $group->avatar_thumb . '" class="avatar" width="30" height="30" alt="' . $group->name . '" />', $group->avatar_thumb, $group->avatar_name );
733
  }
734
 
735
  function bp_group_last_active( $deprecated = true, $deprecated2 = false ) {
@@ -944,7 +944,7 @@ function bp_group_list_mods( $full_list = true, $group = false ) {
944
  <ul id="group-mods" class="mods-list">
945
  <?php for ( $i = 0; $i < count($group_mods); $i++ ) { ?>
946
  <li>
947
- <a href="<?php echo bp_core_get_userlink( $group_mods[$i]->user_id, false, true ) ?>" title="<?php echo bp_fetch_user_fullname( $group_mods[$i]->user->user_id ) ?>"><?php echo bp_core_get_avatar( $group_mods[$i]->user_id, 1, 50, 50 ) ?></a>
948
  <h5><?php echo bp_core_get_userlink( $group_mods[$i]->user_id ) ?></h5>
949
  <span class="activity"><?php _e( 'Group Mod', 'buddypress' ) ?></span>
950
  <div class="clear"></div>
@@ -1467,7 +1467,7 @@ function bp_group_reject_invite_link( $deprecated = false ) {
1467
  }
1468
 
1469
  function bp_group_leave_confirm_link( $deprecated = false ) {
1470
- echo bp_group_leave_confirm_link();
1471
  }
1472
  function bp_get_group_leave_confirm_link( $group = false ) {
1473
  global $groups_template, $bp;
@@ -1512,7 +1512,7 @@ function bp_group_send_invite_form( $group = false ) {
1512
  <h4><?php _e( 'Select Friends', 'buddypress' ) ?> <img id="ajax-loader" src="<?php echo $bp->groups->image_base ?>/ajax-loader.gif" height="7" alt="Loading" style="display: none;" /></h4>
1513
  <?php bp_group_list_invite_friends() ?>
1514
  <?php wp_nonce_field( 'groups_invite_uninvite_user', '_wpnonce_invite_uninvite_user' ) ?>
1515
- <input type="hidden" name="group_id" id="group_id" value="<?php echo $group->id ?>" />
1516
  </div>
1517
 
1518
  <div class="main-column">
@@ -1771,7 +1771,7 @@ function bp_group_member_name() {
1771
  function bp_get_group_member_name() {
1772
  global $members_template;
1773
 
1774
- return apply_filters( 'bp_get_group_member_name', bp_fetch_user_fullname( $members_template->member->user_id, false ) );
1775
  }
1776
 
1777
  function bp_group_member_url() {
56
  <?php switch( (int) $create_group_step ) {
57
  case 1: ?>
58
  <label for="group-name">* <?php _e('Group Name', 'buddypress') ?></label>
59
+ <input type="text" name="group-name" id="group-name" value="<?php echo attribute_escape( ( $group_obj ) ? $group_obj->name : $_POST['group-name'] ); ?>" />
60
 
61
  <label for="group-desc">* <?php _e('Group Description', 'buddypress') ?></label>
62
+ <textarea name="group-desc" id="group-desc"><?php echo htmlspecialchars( ( $group_obj ) ? $group_obj->description : $_POST['group-desc'] ); ?></textarea>
63
 
64
  <label for="group-news"><?php _e('Recent News', 'buddypress') ?></label>
65
+ <textarea name="group-news" id="group-news"><?php echo htmlspecialchars( ( $group_obj ) ? $group_obj->news : $_POST['group-news'] ); ?></textarea>
66
 
67
  <?php do_action( 'groups_custom_group_fields_editable' ) ?>
68
 
232
  }
233
  ?>
234
 
235
+ <li><input<?php echo $checked ?> type="checkbox" name="friends[]" id="f-<?php echo $friends[$i]['id'] ?>" value="<?php echo attribute_escape( $friends[$i]['id'] ); ?>" /> <?php echo $friends[$i]['full_name']; ?></li>
236
  <?php } ?>
237
  </ul>
238
  </div>
273
  global $group_obj;
274
 
275
  if ( $group_obj->avatar_full ) { ?>
276
+ <img src="<?php echo attribute_escape( $group_obj->avatar_full ) ?>" alt="<?php _e( 'Group Avatar', 'buddypress' ) ?>" class="avatar" />
277
  <?php } else { ?>
278
  <img src="<?php echo $bp->groups->image_base . '/none.gif' ?>" alt="<?php _e( 'No Group Avatar', 'buddypress' ) ?>" class="avatar" />
279
  <?php }
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 get_group_avatar_thumb( $group ) ?></a>
310
  </div>
311
 
312
  <div class="item">
313
+ <div class="item-title"><a href="<?php echo bp_get_group_permalink( $group ) ?>" title="<?php echo bp_get_group_name( $group ) ?>"><?php echo bp_get_group_name( $group ) ?></a></div>
314
  <div class="item-meta"><span class="activity"><?php echo bp_core_get_last_activity( groups_get_groupmeta( $group->id, 'last_activity' ), __( 'active %s ago', 'buddypress' ) ) ?></span></div>
315
  <div class="item-meta desc"><?php echo bp_create_excerpt( $group->description ) ?></div>
316
  </div>
360
  wp_cache_set( 'groups_group_nouserdata_' . $group_ids[$i], $group, 'bp' );
361
  }
362
  ?> <li>
363
+ <a href="<?php echo bp_get_group_permalink( $group ) ?>"><img src="<?php echo attribute_escape( $group->avatar_thumb ); ?>" class="avatar" alt="<?php _e( 'Group Avatar', 'buddypress' ) ?>" /></a>
364
+ <h5><a href="<?php echo bp_get_group_permalink( $group ) ?>"><?php echo attribute_escape( $group->name ) ?></a></h5>
365
  </li>
366
  <?php } ?>
367
  </ul>
705
  if ( !$group )
706
  $group =& $groups_template->group;
707
 
708
+ return apply_filters( 'bp_get_group_avatar', '<img src="' . attribute_escape( $group->avatar_full ) . '" class="avatar" alt="' . attribute_escape( $group->name ) . '" />', $group->avatar_full, $group->avatar_name );
709
  }
710
 
711
  function bp_group_avatar_thumb() {
717
  if ( !$group )
718
  $group =& $groups_template->group;
719
 
720
+ return apply_filters( 'bp_get_group_avatar_thumb', '<img src="' . attribute_escape( $group->avatar_thumb ) . '" class="avatar" alt="' . attribute_escape( $group->name ) . '" />', $group->avatar_thumb, $group->avatar_name );
721
  }
722
 
723
  function bp_group_avatar_mini() {
729
  if ( !$group )
730
  $group =& $groups_template->group;
731
 
732
+ return apply_filters( 'bp_get_group_avatar_mini', '<img src="' . attribute_escape( $group->avatar_thumb ) . '" class="avatar" width="30" height="30" alt="' . attribute_escape( $group->name ) . '" />', $group->avatar_thumb, $group->avatar_name );
733
  }
734
 
735
  function bp_group_last_active( $deprecated = true, $deprecated2 = false ) {
944
  <ul id="group-mods" class="mods-list">
945
  <?php for ( $i = 0; $i < count($group_mods); $i++ ) { ?>
946
  <li>
947
+ <a href="<?php echo bp_core_get_userlink( $group_mods[$i]->user_id, false, true ) ?>" title="<?php echo bp_core_get_user_displayname( $group_mods[$i]->user->user_id ) ?>"><?php echo bp_core_get_avatar( $group_mods[$i]->user_id, 1, 50, 50 ) ?></a>
948
  <h5><?php echo bp_core_get_userlink( $group_mods[$i]->user_id ) ?></h5>
949
  <span class="activity"><?php _e( 'Group Mod', 'buddypress' ) ?></span>
950
  <div class="clear"></div>
1467
  }
1468
 
1469
  function bp_group_leave_confirm_link( $deprecated = false ) {
1470
+ echo bp_get_group_leave_confirm_link();
1471
  }
1472
  function bp_get_group_leave_confirm_link( $group = false ) {
1473
  global $groups_template, $bp;
1512
  <h4><?php _e( 'Select Friends', 'buddypress' ) ?> <img id="ajax-loader" src="<?php echo $bp->groups->image_base ?>/ajax-loader.gif" height="7" alt="Loading" style="display: none;" /></h4>
1513
  <?php bp_group_list_invite_friends() ?>
1514
  <?php wp_nonce_field( 'groups_invite_uninvite_user', '_wpnonce_invite_uninvite_user' ) ?>
1515
+ <input type="hidden" name="group_id" id="group_id" value="<?php echo attribute_escape( $group->id ) ?>" />
1516
  </div>
1517
 
1518
  <div class="main-column">
1771
  function bp_get_group_member_name() {
1772
  global $members_template;
1773
 
1774
+ return apply_filters( 'bp_get_group_member_name', bp_core_get_user_displayname( $members_template->member->user_id ) );
1775
  }
1776
 
1777
  function bp_group_member_url() {
bp-groups/bp-groups-widgets.php CHANGED
@@ -31,6 +31,9 @@ function groups_widget_groups_list($args) {
31
  . $after_title; ?>
32
 
33
  <?php
 
 
 
34
  if ( !$groups = wp_cache_get( 'popular_groups', 'bp' ) ) {
35
  $groups = groups_get_popular( $options['max_groups'], 1 );
36
  wp_cache_set( 'popular_groups', $groups, 'bp' );
@@ -40,9 +43,9 @@ function groups_widget_groups_list($args) {
40
  <?php if ( $groups['groups'] ) : ?>
41
  <div class="item-options" id="groups-list-options">
42
  <img id="ajax-loader-groups" src="<?php echo $bp->groups->image_base ?>/ajax-loader.gif" height="7" alt="<?php _e( 'Loading', 'buddypress' ) ?>" style="display: none;" />
43
- <a href="<?php echo site_url() . '/groups' ?>" id="newest-groups"><?php _e("Newest", 'buddypress') ?></a> |
44
- <a href="<?php echo site_url() . '/groups' ?>" id="recently-active-groups"><?php _e("Active", 'buddypress') ?></a> |
45
- <a href="<?php echo site_url() . '/groups' ?>" id="popular-groups" class="selected"><?php _e("Popular", 'buddypress') ?></a>
46
  </div>
47
  <ul id="groups-list" class="item-list">
48
  <?php foreach ( $groups['groups'] as $group_id ) : ?>
@@ -54,11 +57,11 @@ function groups_widget_groups_list($args) {
54
  ?>
55
  <li>
56
  <div class="item-avatar">
57
- <a href="<?php echo bp_get_group_permalink( $group ) ?>" title="<?php echo $group->name ?>"><img src="<?php echo $group->avatar_thumb; ?>" alt="<?php echo $group->name ?> Avatar" class="avatar" /></a>
58
  </div>
59
 
60
  <div class="item">
61
- <div class="item-title"><a href="<?php echo bp_get_group_permalink( $group ) ?>" title="<?php echo $group->name ?>"><?php echo $group->name ?></a></div>
62
  <div class="item-meta">
63
  <span class="activity">
64
  <?php
@@ -79,7 +82,7 @@ function groups_widget_groups_list($args) {
79
  wp_nonce_field( 'groups_widget_groups_list', '_wpnonce-groups' );
80
  ?>
81
 
82
- <input type="hidden" name="groups_widget_max" id="groups_widget_max" value="<?php echo $options['max_groups'] ?>" />
83
 
84
  <?php else: ?>
85
  <div class="widget-error">
@@ -105,9 +108,8 @@ function groups_widget_groups_list_control() {
105
  update_blog_option( $current_blog->blog_id, 'groups_widget_groups_list', $options );
106
  }
107
 
108
- $max_groups = attribute_escape( $options['max_groups'] );
109
  ?>
110
- <p><label for="groups-widget-groups-list-max"><?php _e('Maximum number of groups to show:', 'buddypress'); ?><br /> <input class="widefat" id="groups-widget-groups-list-max" name="groups-widget-groups-list-max" type="text" value="<?php echo $max_groups; ?>" style="width: 30%" /></label></p>
111
  <input type="hidden" id="groups-widget-groups-list-submit" name="groups-widget-groups-list-submit" value="1" />
112
  <?php
113
  }
31
  . $after_title; ?>
32
 
33
  <?php
34
+ if ( empty( $options['max_groups'] ) || !$options['max_groups'] )
35
+ $options['max_groups'] = 5;
36
+
37
  if ( !$groups = wp_cache_get( 'popular_groups', 'bp' ) ) {
38
  $groups = groups_get_popular( $options['max_groups'], 1 );
39
  wp_cache_set( 'popular_groups', $groups, 'bp' );
43
  <?php if ( $groups['groups'] ) : ?>
44
  <div class="item-options" id="groups-list-options">
45
  <img id="ajax-loader-groups" src="<?php echo $bp->groups->image_base ?>/ajax-loader.gif" height="7" alt="<?php _e( 'Loading', 'buddypress' ) ?>" style="display: none;" />
46
+ <a href="<?php echo site_url() . '/' . $bp->groups->slug ?>" id="newest-groups"><?php _e("Newest", 'buddypress') ?></a> |
47
+ <a href="<?php echo site_url() . '/' . $bp->groups->slug ?>" id="recently-active-groups"><?php _e("Active", 'buddypress') ?></a> |
48
+ <a href="<?php echo site_url() . '/' . $bp->groups->slug ?>" id="popular-groups" class="selected"><?php _e("Popular", 'buddypress') ?></a>
49
  </div>
50
  <ul id="groups-list" class="item-list">
51
  <?php foreach ( $groups['groups'] as $group_id ) : ?>
57
  ?>
58
  <li>
59
  <div class="item-avatar">
60
+ <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>
61
  </div>
62
 
63
  <div class="item">
64
+ <div class="item-title"><a href="<?php echo bp_get_group_permalink( $group ) ?>" title="<?php echo bp_get_group_name( $group ) ?>"><?php echo bp_get_group_name( $group ) ?></a></div>
65
  <div class="item-meta">
66
  <span class="activity">
67
  <?php
82
  wp_nonce_field( 'groups_widget_groups_list', '_wpnonce-groups' );
83
  ?>
84
 
85
+ <input type="hidden" name="groups_widget_max" id="groups_widget_max" value="<?php echo attribute_escape( $options['max_groups'] ); ?>" />
86
 
87
  <?php else: ?>
88
  <div class="widget-error">
108
  update_blog_option( $current_blog->blog_id, 'groups_widget_groups_list', $options );
109
  }
110
 
 
111
  ?>
112
+ <p><label for="groups-widget-groups-list-max"><?php _e('Maximum number of groups to show:', 'buddypress'); ?><br /> <input class="widefat" id="groups-widget-groups-list-max" name="groups-widget-groups-list-max" type="text" value="<?php echo attribute_escape( $options['max_groups'] ); ?>" style="width: 30%" /></label></p>
113
  <input type="hidden" id="groups-widget-groups-list-submit" name="groups-widget-groups-list-submit" value="1" />
114
  <?php
115
  }
bp-languages/buddypress.pot CHANGED
@@ -8,7 +8,7 @@ msgid ""
8
  msgstr ""
9
  "Project-Id-Version: PACKAGE VERSION\n"
10
  "Report-Msgid-Bugs-To: wp-polyglots@lists.automattic.com\n"
11
- "POT-Creation-Date: 2009-04-30 14:11+0000\n"
12
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -47,7 +47,7 @@ msgstr ""
47
  #: bp-blogs/bp-blogs-templatetags.php:329
48
  #: bp-blogs/bp-blogs-templatetags.php:505
49
  #: bp-blogs/bp-blogs-templatetags.php:1208
50
- #: bp-core/bp-core-templatetags.php:941 bp-core/bp-core-widgets.php:102
51
  #: bp-forums/bp-forums-templatetags.php:356
52
  #: bp-forums/bp-forums-templatetags.php:570
53
  #: bp-friends/bp-friends-templatetags.php:291
@@ -63,7 +63,7 @@ msgstr ""
63
  msgid "Loading"
64
  msgstr ""
65
 
66
- #: bp-activity/bp-activity-templatetags.php:275
67
  #, php-format
68
  msgid "&nbsp; %s ago"
69
  msgstr ""
@@ -90,7 +90,7 @@ msgstr ""
90
  msgid "There has been no recent site activity."
91
  msgstr ""
92
 
93
- #: bp-activity/bp-activity-widgets.php:79
94
  msgid "Max Number of Items:"
95
  msgstr ""
96
 
@@ -112,8 +112,8 @@ msgstr ""
112
  msgid "Site Wide Activity Feed"
113
  msgstr ""
114
 
115
- #: bp-blogs.php:158 bp-core/bp-core-templatetags.php:583
116
- #: bp-core/bp-core-templatetags.php:675 bp-themes/bphome/header.php:55
117
  #: bp-themes/bpmember/header.php:54 bp-themes/bpskeletonmember/header.php:56
118
  msgid "Blogs"
119
  msgstr ""
@@ -219,7 +219,7 @@ msgstr ""
219
  #: bp-blogs/bp-blogs-templatetags.php:104 bp-core/bp-core-admin.php:60
220
  #: bp-core/bp-core-admin.php:68 bp-core/bp-core-admin.php:75
221
  #: bp-core/bp-core-admin.php:83 bp-core/bp-core-signup.php:76
222
- #: bp-friends.php:161 bp-groups.php:868 bp-messages.php:248
223
  #: bp-themes/bpmember/groups/admin/edit-details.php:31
224
  #: bp-themes/bpskeletonmember/groups/admin/edit-details.php:41
225
  #: bp-xprofile.php:299 bp-xprofile/bp-xprofile-admin.php:85
@@ -229,7 +229,7 @@ msgstr ""
229
  #: bp-blogs/bp-blogs-templatetags.php:108 bp-core/bp-core-admin.php:61
230
  #: bp-core/bp-core-admin.php:69 bp-core/bp-core-admin.php:76
231
  #: bp-core/bp-core-admin.php:84 bp-core/bp-core-signup.php:80
232
- #: bp-friends.php:162 bp-groups.php:869 bp-messages.php:249
233
  #: bp-themes/bpmember/groups/admin/edit-details.php:32
234
  #: bp-themes/bpskeletonmember/groups/admin/edit-details.php:42
235
  #: bp-xprofile.php:300
@@ -290,8 +290,8 @@ msgstr ""
290
  msgid "Blog Avatar"
291
  msgstr ""
292
 
293
- #: bp-blogs/bp-blogs-templatetags.php:1284 bp-core/bp-core-ajax.php:47
294
- #: bp-core/bp-core-classes.php:67 bp-core/bp-core-templatetags.php:269
295
  #: bp-groups/bp-groups-ajax.php:102 bp-groups/bp-groups-templatetags.php:314
296
  #: bp-groups/bp-groups-templatetags.php:2120
297
  #, php-format
@@ -304,13 +304,13 @@ msgid "Latest Post: %s"
304
  msgstr ""
305
 
306
  #: bp-blogs/bp-blogs-templatetags.php:1315
307
- #: bp-core/bp-core-templatetags.php:1054
308
  #: bp-groups/bp-groups-templatetags.php:2194
309
  msgid "Search anything..."
310
  msgstr ""
311
 
312
  #: bp-blogs/bp-blogs-templatetags.php:1316
313
- #: bp-core/bp-core-templatetags.php:597 bp-core/bp-core-templatetags.php:1055
314
  #: bp-groups/bp-groups-templatetags.php:2195 bp-themes/bphome/searchform.php:3
315
  msgid "Search"
316
  msgstr ""
@@ -332,114 +332,114 @@ msgstr ""
332
  msgid "There are no recent blog posts, why not write one?"
333
  msgstr ""
334
 
335
- #: bp-blogs/bp-blogs-widgets.php:80
336
  msgid "Max Number of Posts:"
337
  msgstr ""
338
 
339
- #: bp-core.php:265 bp-core/bp-core-adminbar.php:29
340
  msgid "BuddyPress"
341
  msgstr ""
342
 
343
- #: bp-core.php:266 bp-core/bp-core-settings.php:56
344
  msgid "General Settings"
345
  msgstr ""
346
 
347
- #: bp-core.php:267
348
  msgid "Component Setup"
349
  msgstr ""
350
 
351
- #: bp-core.php:304 bp-xprofile.php:201 bp-xprofile.php:298
352
  msgid "Profile"
353
  msgstr ""
354
 
355
- #: bp-core.php:310 bp-groups/bp-groups-templatetags.php:871
356
  #: bp-xprofile.php:207
357
  msgid "Public"
358
  msgstr ""
359
 
360
- #: bp-core.php:314 bp-core/bp-core-templatetags.php:312 bp-xprofile.php:213
361
  msgid "My Profile"
362
  msgstr ""
363
 
364
- #: bp-core.php:669 bp-wire/bp-wire-templatetags.php:340
365
  msgid "You"
366
  msgstr ""
367
 
368
- #: bp-core.php:750
369
  #, php-format
370
  msgid "%s's"
371
  msgstr ""
372
 
373
- #: bp-core.php:840 bp-core/bp-core-templatetags.php:395
374
  #: bp-themes/bphome/comments.php:42
375
  msgid "at"
376
  msgstr ""
377
 
378
- #: bp-core.php:898
379
  msgid "year"
380
  msgstr ""
381
 
382
- #: bp-core.php:898
383
  msgid "years"
384
  msgstr ""
385
 
386
- #: bp-core.php:899
387
  msgid "month"
388
  msgstr ""
389
 
390
- #: bp-core.php:899
391
  msgid "months"
392
  msgstr ""
393
 
394
- #: bp-core.php:900
395
  msgid "week"
396
  msgstr ""
397
 
398
- #: bp-core.php:900
399
  msgid "weeks"
400
  msgstr ""
401
 
402
- #: bp-core.php:901
403
  msgid "day"
404
  msgstr ""
405
 
406
- #: bp-core.php:901
407
  msgid "days"
408
  msgstr ""
409
 
410
- #: bp-core.php:902
411
  msgid "hour"
412
  msgstr ""
413
 
414
- #: bp-core.php:902
415
  msgid "hours"
416
  msgstr ""
417
 
418
- #: bp-core.php:903
419
  msgid "minute"
420
  msgstr ""
421
 
422
- #: bp-core.php:903
423
  msgid "minutes"
424
  msgstr ""
425
 
426
- #: bp-core.php:904
427
  msgid "second"
428
  msgstr ""
429
 
430
- #: bp-core.php:904 bp-core.php:950
431
  msgid "seconds"
432
  msgstr ""
433
 
434
- #: bp-core.php:915
435
  msgid "[Adjust Time Zone]"
436
  msgstr ""
437
 
438
- #: bp-core.php:945
439
  msgid ",|Separator in time since"
440
  msgstr ""
441
 
442
- #: bp-core.php:993
443
  msgid "not recently active"
444
  msgstr ""
445
 
@@ -667,10 +667,10 @@ msgstr ""
667
  msgid "Allows the creation of friend connections between users."
668
  msgstr ""
669
 
670
- #: bp-core/bp-core-admin.php:225 bp-core/bp-core-templatetags.php:579
671
- #: bp-core/bp-core-templatetags.php:671 bp-groups.php:167 bp-groups.php:205
672
- #: bp-groups.php:867 bp-groups.php:1113 bp-groups.php:1126 bp-groups.php:1140
673
- #: bp-groups.php:1153 bp-groups/bp-groups-admin.php:33
674
  #: bp-groups/bp-groups-widgets.php:8 bp-groups/bp-groups-widgets.php:9
675
  #: bp-themes/bphome/header.php:51 bp-themes/bpmember/header.php:50
676
  #: bp-themes/bpskeletonmember/header.php:50
@@ -707,12 +707,12 @@ msgstr ""
707
  msgid "Activates customizable profiles and avatars for site users."
708
  msgstr ""
709
 
710
- #: bp-core/bp-core-adminbar.php:37 bp-core/bp-core-templatetags.php:616
711
  #: bp-themes/bpmember/userbar.php:37 bp-themes/bpskeletonmember/userbar.php:50
712
  msgid "Log In"
713
  msgstr ""
714
 
715
- #: bp-core/bp-core-adminbar.php:41 bp-core/bp-core-templatetags.php:617
716
  msgid "Sign Up"
717
  msgstr ""
718
 
@@ -722,7 +722,7 @@ msgstr ""
722
 
723
  #: bp-core/bp-core-adminbar.php:90 bp-core/bp-core-adminbar.php:92
724
  #: bp-core/bp-core-templatetags.php:53 bp-core/bp-core-templatetags.php:55
725
- #: bp-core/bp-core-templatetags.php:632 bp-core/bp-core-templatetags.php:634
726
  msgid "Log Out"
727
  msgstr ""
728
 
@@ -799,20 +799,20 @@ msgstr ""
799
  msgid "Random Blog"
800
  msgstr ""
801
 
802
- #: bp-core/bp-core-ajax.php:45 bp-core/bp-core-widgets.php:116
803
  #, php-format
804
  msgid "registered %s ago"
805
  msgstr ""
806
 
807
- #: bp-core/bp-core-ajax.php:50
808
  msgid " friend"
809
  msgstr ""
810
 
811
- #: bp-core/bp-core-ajax.php:52
812
  msgid " friends"
813
  msgstr ""
814
 
815
- #: bp-core/bp-core-ajax.php:62
816
  msgid "No members matched the current filter."
817
  msgstr ""
818
 
@@ -842,28 +842,28 @@ msgstr ""
842
  msgid "Delete"
843
  msgstr ""
844
 
845
- #: bp-core/bp-core-avatars.php:125 bp-groups.php:1297
846
- #: bp-xprofile/bp-xprofile-signup.php:158
847
  msgid "There is no error, the file uploaded with success"
848
  msgstr ""
849
 
850
  #: bp-core/bp-core-avatars.php:126 bp-core/bp-core-avatars.php:127
851
- #: bp-xprofile/bp-xprofile-signup.php:159
852
- #: bp-xprofile/bp-xprofile-signup.php:160
853
  msgid "Your image was bigger than the maximum allowed file size of: "
854
  msgstr ""
855
 
856
- #: bp-core/bp-core-avatars.php:128 bp-groups.php:1300
857
- #: bp-xprofile/bp-xprofile-signup.php:161
858
  msgid "The uploaded file was only partially uploaded"
859
  msgstr ""
860
 
861
- #: bp-core/bp-core-avatars.php:129 bp-groups.php:1301
862
  msgid "No file was uploaded"
863
  msgstr ""
864
 
865
- #: bp-core/bp-core-avatars.php:130 bp-groups.php:1302
866
- #: bp-xprofile/bp-xprofile-signup.php:162
867
  msgid "Missing a temporary folder"
868
  msgstr ""
869
 
@@ -872,17 +872,17 @@ msgstr ""
872
  msgid "Your upload failed, please try again. Error was: %s"
873
  msgstr ""
874
 
875
- #: bp-core/bp-core-avatars.php:137 bp-xprofile/bp-xprofile-signup.php:176
876
  #, php-format
877
  msgid "The file you uploaded is too big. Please upload a file under %s"
878
  msgstr ""
879
 
880
- #: bp-core/bp-core-avatars.php:140 bp-groups.php:1318
881
- #: bp-xprofile/bp-xprofile-signup.php:181
882
  msgid "Please upload only JPG, GIF or PNG photos."
883
  msgstr ""
884
 
885
- #: bp-core/bp-core-avatars.php:144 bp-xprofile/bp-xprofile-signup.php:187
886
  #, php-format
887
  msgid "Upload Failed! Error was: %s"
888
  msgstr ""
@@ -951,7 +951,7 @@ msgstr ""
951
  msgid "Try Again"
952
  msgstr ""
953
 
954
- #: bp-core/bp-core-catchuri.php:220
955
  msgid ""
956
  "<strong>You do not have any BuddyPress themes installed.</strong><br /"
957
  ">Please move \"/wp-content/plugins/buddypress/bp-themes/\" to \"/wp-content/"
@@ -1261,32 +1261,32 @@ msgstr ""
1261
  msgid "Options"
1262
  msgstr ""
1263
 
1264
- #: bp-core/bp-core-templatetags.php:318 bp-groups/bp-groups-admin.php:72
1265
  #: bp-themes/bphome/comments-popup.php:64 bp-themes/bphome/comments.php:90
1266
  msgid "Name"
1267
  msgstr ""
1268
 
1269
- #: bp-core/bp-core-templatetags.php:328
1270
  msgid "About Me"
1271
  msgstr ""
1272
 
1273
- #: bp-core/bp-core-templatetags.php:338 bp-themes/bphome/comments.php:96
1274
  msgid "Website"
1275
  msgstr ""
1276
 
1277
- #: bp-core/bp-core-templatetags.php:348
1278
  msgid "Jabber"
1279
  msgstr ""
1280
 
1281
- #: bp-core/bp-core-templatetags.php:358
1282
  msgid "AOL Messenger"
1283
  msgstr ""
1284
 
1285
- #: bp-core/bp-core-templatetags.php:368
1286
  msgid "Yahoo Messenger"
1287
  msgstr ""
1288
 
1289
- #: bp-core/bp-core-templatetags.php:472 bp-core/bp-core-templatetags.php:666
1290
  #: bp-groups.php:257 bp-themes/bphome/header.php:43
1291
  #: bp-themes/bphome/header.php:46 bp-themes/bpmember/header.php:42
1292
  #: bp-themes/bpmember/header.php:45 bp-themes/bpskeletonmember/header.php:36
@@ -1294,19 +1294,19 @@ msgstr ""
1294
  msgid "Home"
1295
  msgstr ""
1296
 
1297
- #: bp-core/bp-core-templatetags.php:475
1298
  msgid "Blog &#8212; "
1299
  msgstr ""
1300
 
1301
- #: bp-core/bp-core-templatetags.php:477
1302
  msgid "Blog &#8212; Categories &#8212; "
1303
  msgstr ""
1304
 
1305
- #: bp-core/bp-core-templatetags.php:479
1306
  msgid "Blog &#8212; Tags &#8212; "
1307
  msgstr ""
1308
 
1309
- #: bp-core/bp-core-templatetags.php:481 bp-core/bp-core-templatetags.php:667
1310
  #: bp-themes/bphome/archive.php:5 bp-themes/bphome/attachment.php:6
1311
  #: bp-themes/bphome/header.php:47 bp-themes/bphome/index.php:6
1312
  #: bp-themes/bphome/search.php:6 bp-themes/bphome/single.php:6
@@ -1314,12 +1314,12 @@ msgstr ""
1314
  msgid "Blog"
1315
  msgstr ""
1316
 
1317
- #: bp-core/bp-core-templatetags.php:489 bp-core/bp-core-templatetags.php:491
1318
  #, php-format
1319
  msgid "%s Directory"
1320
  msgstr ""
1321
 
1322
- #: bp-core/bp-core-templatetags.php:575 bp-core/bp-core-templatetags.php:668
1323
  #: bp-core/bp-core-widgets.php:12 bp-core/bp-core-widgets.php:13
1324
  #: bp-groups.php:277 bp-groups/bp-groups-admin.php:81
1325
  #: bp-themes/bphome/header.php:48
@@ -1330,27 +1330,27 @@ msgstr ""
1330
  msgid "Members"
1331
  msgstr ""
1332
 
1333
- #: bp-core/bp-core-templatetags.php:611 bp-themes/bpmember/userbar.php:28
1334
  #: bp-themes/bpskeletonmember/userbar.php:38
1335
  msgid "Username"
1336
  msgstr ""
1337
 
1338
- #: bp-core/bp-core-templatetags.php:614 bp-themes/bpmember/userbar.php:35
1339
  #: bp-themes/bpskeletonmember/userbar.php:47
1340
  msgid "Remember Me"
1341
  msgstr ""
1342
 
1343
- #: bp-core/bp-core-templatetags.php:940
1344
  #, php-format
1345
  msgid "Viewing member %d to %d (of %d members)"
1346
  msgstr ""
1347
 
1348
- #: bp-core/bp-core-templatetags.php:1022
1349
  #, php-format
1350
  msgid "%d friend"
1351
  msgstr ""
1352
 
1353
- #: bp-core/bp-core-templatetags.php:1024
1354
  #, php-format
1355
  msgid "%d friends"
1356
  msgstr ""
@@ -1367,44 +1367,44 @@ msgstr ""
1367
  msgid "Create Account"
1368
  msgstr ""
1369
 
1370
- #: bp-core/bp-core-widgets.php:70 bp-forums/bp-forums-bbpress-live.php:166
1371
  #: bp-forums/bp-forums-bbpress-live.php:370
1372
  #: bp-themes/bpmember/groups/forum/index.php:73
1373
  #: bp-themes/bpskeletonmember/groups/forum/index.php:84
1374
  msgid "Title:"
1375
  msgstr ""
1376
 
1377
- #: bp-core/bp-core-widgets.php:72
1378
  msgid "Welcome Text:"
1379
  msgstr ""
1380
 
1381
- #: bp-core/bp-core-widgets.php:103 bp-friends/bp-friends-templatetags.php:371
1382
  #: bp-friends/bp-friends-templatetags.php:387
1383
  #: bp-groups/bp-groups-widgets.php:43
1384
  msgid "Newest"
1385
  msgstr ""
1386
 
1387
- #: bp-core/bp-core-widgets.php:104 bp-groups/bp-groups-widgets.php:44
1388
  msgid "Active"
1389
  msgstr ""
1390
 
1391
- #: bp-core/bp-core-widgets.php:105 bp-groups/bp-groups-widgets.php:45
1392
  msgid "Popular"
1393
  msgstr ""
1394
 
1395
- #: bp-core/bp-core-widgets.php:132
1396
  msgid "No one has signed up yet!"
1397
  msgstr ""
1398
 
1399
- #: bp-core/bp-core-widgets.php:156
1400
  msgid "Max Members to show:"
1401
  msgstr ""
1402
 
1403
- #: bp-core/bp-core-widgets.php:201
1404
  msgid "There are no users currently online."
1405
  msgstr ""
1406
 
1407
- #: bp-core/bp-core-widgets.php:228
1408
  msgid "Maximum number of members to show:"
1409
  msgstr ""
1410
 
@@ -1492,7 +1492,7 @@ msgid "bbPress Forum list"
1492
  msgstr ""
1493
 
1494
  #: bp-forums/bp-forums-bbpress-live.php:89 bp-groups.php:268
1495
- #: bp-groups.php:1580 bp-themes/bpmember/groups/forum/index.php:25
1496
  #: bp-themes/bpmember/groups/forum/topic.php:28
1497
  #: bp-themes/bpmember/groups/forum/topic.php:40
1498
  #: bp-themes/bpskeletonmember/groups/forum/index.php:29
@@ -1831,293 +1831,293 @@ msgstr ""
1831
  msgid "There was an error saving group details. Please try again."
1832
  msgstr ""
1833
 
1834
- #: bp-groups.php:462
1835
  msgid "Wire message could not be posted."
1836
  msgstr ""
1837
 
1838
- #: bp-groups.php:464 bp-xprofile.php:375
1839
  msgid "Wire message successfully posted."
1840
  msgstr ""
1841
 
1842
- #: bp-groups.php:477
1843
  msgid "There was an error deleting the wire message."
1844
  msgstr ""
1845
 
1846
- #: bp-groups.php:479 bp-xprofile.php:420
1847
  msgid "Wire message successfully deleted."
1848
  msgstr ""
1849
 
1850
- #: bp-groups.php:516
1851
  msgid "Group invites sent."
1852
  msgstr ""
1853
 
1854
- #: bp-groups.php:537
1855
  msgid "As the only group administrator, you cannot leave this group."
1856
  msgstr ""
1857
 
1858
- #: bp-groups.php:543
1859
  msgid "There was an error leaving the group. Please try again."
1860
  msgstr ""
1861
 
1862
- #: bp-groups.php:546
1863
  msgid "You left the group successfully."
1864
  msgstr ""
1865
 
1866
- #: bp-groups.php:575
1867
  msgid ""
1868
  "There was an error sending your group membership request, please try again."
1869
  msgstr ""
1870
 
1871
- #: bp-groups.php:577
1872
  msgid ""
1873
  "Your membership request was sent to the group administrator successfully. "
1874
  "You will be notified when the group administrator responds to your request."
1875
  msgstr ""
1876
 
1877
- #: bp-groups.php:610
1878
  msgid "There was an error updating group details, please try again."
1879
  msgstr ""
1880
 
1881
- #: bp-groups.php:612
1882
  msgid "Group details were successfully updated."
1883
  msgstr ""
1884
 
1885
- #: bp-groups.php:647
1886
  msgid "There was an error updating group settings, please try again."
1887
  msgstr ""
1888
 
1889
- #: bp-groups.php:649
1890
  msgid "Group settings were successfully updated."
1891
  msgstr ""
1892
 
1893
- #: bp-groups.php:692
1894
  msgid "There was an error updating the group avatar, please try again."
1895
  msgstr ""
1896
 
1897
- #: bp-groups.php:694
1898
  msgid "The group avatar was successfully updated."
1899
  msgstr ""
1900
 
1901
- #: bp-groups.php:722
1902
  msgid "There was an error when promoting that user, please try again"
1903
  msgstr ""
1904
 
1905
- #: bp-groups.php:724
1906
  msgid "User promoted successfully"
1907
  msgstr ""
1908
 
1909
- #: bp-groups.php:737
1910
  msgid "There was an error when demoting that user, please try again"
1911
  msgstr ""
1912
 
1913
- #: bp-groups.php:739
1914
  msgid "User demoted successfully"
1915
  msgstr ""
1916
 
1917
- #: bp-groups.php:752
1918
  msgid "There was an error when banning that user, please try again"
1919
  msgstr ""
1920
 
1921
- #: bp-groups.php:754
1922
  msgid "User banned successfully"
1923
  msgstr ""
1924
 
1925
- #: bp-groups.php:767
1926
  msgid "There was an error when unbanning that user, please try again"
1927
  msgstr ""
1928
 
1929
- #: bp-groups.php:769
1930
  msgid "User ban removed successfully"
1931
  msgstr ""
1932
 
1933
- #: bp-groups.php:804
1934
  msgid "There was an error accepting the membership request, please try again."
1935
  msgstr ""
1936
 
1937
- #: bp-groups.php:806
1938
  msgid "Group membership request accepted"
1939
  msgstr ""
1940
 
1941
- #: bp-groups.php:813
1942
  msgid "There was an error rejecting the membership request, please try again."
1943
  msgstr ""
1944
 
1945
- #: bp-groups.php:815
1946
  msgid "Group membership request rejected"
1947
  msgstr ""
1948
 
1949
- #: bp-groups.php:843
1950
  msgid "There was an error deleting the group, please try again."
1951
  msgstr ""
1952
 
1953
- #: bp-groups.php:845
1954
  msgid "The group was deleted successfully"
1955
  msgstr ""
1956
 
1957
- #: bp-groups.php:873
1958
  msgid "A member invites you to join a group"
1959
  msgstr ""
1960
 
1961
- #: bp-groups.php:879
1962
  msgid "Group information is updated"
1963
  msgstr ""
1964
 
1965
- #: bp-groups.php:886
1966
  msgid "A member posts on the wire of a group you belong to"
1967
  msgstr ""
1968
 
1969
- #: bp-groups.php:893
1970
  msgid "You are promoted to a group administrator or moderator"
1971
  msgstr ""
1972
 
1973
- #: bp-groups.php:899
1974
  msgid "A member requests to join a private group for which you are an admin"
1975
  msgstr ""
1976
 
1977
- #: bp-groups.php:923
1978
  msgid "There was an error joining the group."
1979
  msgstr ""
1980
 
1981
- #: bp-groups.php:925
1982
  msgid "You joined the group!"
1983
  msgstr ""
1984
 
1985
- #: bp-groups.php:991
1986
  #, php-format
1987
  msgid "%s joined the group %s"
1988
  msgstr ""
1989
 
1990
- #: bp-groups.php:1005
1991
  #, php-format
1992
  msgid "%s created the group %s"
1993
  msgstr ""
1994
 
1995
- #: bp-groups.php:1019
1996
  #, php-format
1997
  msgid "%s wrote on the wire of the group %s"
1998
  msgstr ""
1999
 
2000
- #: bp-groups.php:1043
2001
  #, php-format
2002
  msgid "%s posted on the forum topic %s in the group %s:"
2003
  msgstr ""
2004
 
2005
- #: bp-groups.php:1068
2006
  #, php-format
2007
  msgid "%s created the forum topic %s in the group %s:"
2008
  msgstr ""
2009
 
2010
- #: bp-groups.php:1099
2011
  msgid "Group Membership Requests"
2012
  msgstr ""
2013
 
2014
- #: bp-groups.php:1099
2015
  #, php-format
2016
  msgid "%d new membership requests for the group \"%s\""
2017
  msgstr ""
2018
 
2019
- #: bp-groups.php:1102
2020
  #, php-format
2021
  msgid "%s requests membership for the group \"%s\""
2022
  msgstr ""
2023
 
2024
- #: bp-groups.php:1113
2025
  #, php-format
2026
  msgid "%d accepted group membership requests"
2027
  msgstr ""
2028
 
2029
- #: bp-groups.php:1115
2030
  #, php-format
2031
  msgid "Membership for group \"%s\" accepted"
2032
  msgstr ""
2033
 
2034
- #: bp-groups.php:1126
2035
  #, php-format
2036
  msgid "%d rejected group membership requests"
2037
  msgstr ""
2038
 
2039
- #: bp-groups.php:1128
2040
  #, php-format
2041
  msgid "Membership for group \"%s\" rejected"
2042
  msgstr ""
2043
 
2044
- #: bp-groups.php:1140
2045
  #, php-format
2046
  msgid "You were promoted to an admin in %d groups"
2047
  msgstr ""
2048
 
2049
- #: bp-groups.php:1142
2050
  #, php-format
2051
  msgid "You were promoted to an admin in the group %s"
2052
  msgstr ""
2053
 
2054
- #: bp-groups.php:1153
2055
  #, php-format
2056
  msgid "You were promoted to a mod in %d groups"
2057
  msgstr ""
2058
 
2059
- #: bp-groups.php:1155
2060
  #, php-format
2061
  msgid "You were promoted to a mod in the group %s"
2062
  msgstr ""
2063
 
2064
- #: bp-groups.php:1166 bp-groups.php:1168
2065
  #: bp-themes/bpmember/groups/list-invites.php:12
2066
  #: bp-themes/bpskeletonmember/groups/list-invites.php:15
2067
  msgid "Group Invites"
2068
  msgstr ""
2069
 
2070
- #: bp-groups.php:1166
2071
  #, php-format
2072
  msgid "You have %d new group invitations"
2073
  msgstr ""
2074
 
2075
- #: bp-groups.php:1168
2076
  #, php-format
2077
  msgid "You have an invitation to the group: %s"
2078
  msgstr ""
2079
 
2080
- #: bp-groups.php:1298
2081
  msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini"
2082
  msgstr ""
2083
 
2084
- #: bp-groups.php:1299
2085
  msgid ""
2086
  "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
2087
  "the HTML form"
2088
  msgstr ""
2089
 
2090
- #: bp-groups.php:1307
2091
  msgid "Your group avatar upload failed, please try again. Error was: "
2092
  msgstr ""
2093
 
2094
- #: bp-groups.php:1313
2095
  msgid "The file you uploaded is too big. Please upload a file under"
2096
  msgstr ""
2097
 
2098
- #: bp-groups.php:1324
2099
  msgid ""
2100
  "Upload Failed! Please check the permissions on the group avatar upload "
2101
  "directory."
2102
  msgstr ""
2103
 
2104
- #: bp-groups.php:1418
2105
  msgid "Group Admin"
2106
  msgstr ""
2107
 
2108
- #: bp-groups.php:1595
2109
  msgid "Reply posted successfully!"
2110
  msgstr ""
2111
 
2112
- #: bp-groups.php:1605
2113
  msgid "There was an error posting that reply."
2114
  msgstr ""
2115
 
2116
- #: bp-groups.php:1617
2117
  msgid "Topic posted successfully!"
2118
  msgstr ""
2119
 
2120
- #: bp-groups.php:1627
2121
  msgid "There was an error posting that topic."
2122
  msgstr ""
2123
 
@@ -2611,11 +2611,6 @@ msgstr ""
2611
  msgid "No Group Avatar"
2612
  msgstr ""
2613
 
2614
- #: bp-groups/bp-groups-templatetags.php:309
2615
- #, php-format
2616
- msgid "%s Avatar"
2617
- msgstr ""
2618
-
2619
  #: bp-groups/bp-groups-templatetags.php:322
2620
  #: bp-groups/bp-groups-templatetags.php:693
2621
  msgid "Group"
@@ -2810,11 +2805,11 @@ msgstr ""
2810
  msgid "There are no groups to display."
2811
  msgstr ""
2812
 
2813
- #: bp-groups/bp-groups-widgets.php:110
2814
  msgid "Maximum number of groups to show:"
2815
  msgstr ""
2816
 
2817
- #: bp-messages.php:143 bp-messages.php:247
2818
  msgid "Messages"
2819
  msgstr ""
2820
 
@@ -2840,125 +2835,125 @@ msgstr ""
2840
  msgid "My Messages"
2841
  msgstr ""
2842
 
2843
- #: bp-messages.php:217
2844
  msgid "There was a problem deactivating that notice."
2845
  msgstr ""
2846
 
2847
- #: bp-messages.php:219
2848
  msgid "Notice deactivated."
2849
  msgstr ""
2850
 
2851
- #: bp-messages.php:223
2852
  msgid "There was a problem activating that notice."
2853
  msgstr ""
2854
 
2855
- #: bp-messages.php:225
2856
  msgid "Notice activated."
2857
  msgstr ""
2858
 
2859
- #: bp-messages.php:229
2860
  msgid "There was a problem deleting that notice."
2861
  msgstr ""
2862
 
2863
- #: bp-messages.php:231
2864
  msgid "Notice deleted."
2865
  msgstr ""
2866
 
2867
- #: bp-messages.php:253
2868
  msgid "A member sends you a new message"
2869
  msgstr ""
2870
 
2871
- #: bp-messages.php:259
2872
  msgid "A new site notice is posted"
2873
  msgstr ""
2874
 
2875
- #: bp-messages.php:284
2876
  #, php-format
2877
  msgid "From: %s"
2878
  msgstr ""
2879
 
2880
- #: bp-messages.php:308
2881
  msgid "There was an error deleting that message."
2882
  msgstr ""
2883
 
2884
- #: bp-messages.php:310
2885
  msgid "Message deleted."
2886
  msgstr ""
2887
 
2888
- #: bp-messages.php:330
2889
  msgid "There was an error deleting messages."
2890
  msgstr ""
2891
 
2892
- #: bp-messages.php:332 bp-messages/bp-messages-ajax.php:71
2893
  msgid "Messages deleted."
2894
  msgstr ""
2895
 
2896
- #: bp-messages.php:366
2897
  #, php-format
2898
  msgid "You have %d new messages"
2899
  msgstr ""
2900
 
2901
- #: bp-messages.php:368
2902
  #, php-format
2903
  msgid "You have %d new message"
2904
  msgstr ""
2905
 
2906
- #: bp-messages.php:395
2907
  msgid "Notice posted successfully."
2908
  msgstr ""
2909
 
2910
- #: bp-messages.php:397
2911
  msgid "There was an error posting that notice."
2912
  msgstr ""
2913
 
2914
- #: bp-messages.php:408
2915
  msgid "Please enter at least one valid user to send this message to."
2916
  msgstr ""
2917
 
2918
- #: bp-messages.php:411
2919
  msgid "There was an error sending the reply, please try again."
2920
  msgstr ""
2921
 
2922
- #: bp-messages.php:416
2923
  msgid "You must send your message to one or more users not including yourself."
2924
  msgstr ""
2925
 
2926
- #: bp-messages.php:422
2927
  msgid "Please make sure you fill in all the fields."
2928
  msgstr ""
2929
 
2930
- #: bp-messages.php:425
2931
  msgid "Please make sure you have typed a message before sending a reply."
2932
  msgstr ""
2933
 
2934
- #: bp-messages.php:454 bp-messages.php:488
2935
  msgid "Message could not be sent, please try again."
2936
  msgstr ""
2937
 
2938
- #: bp-messages.php:464
2939
  msgid "Message sent successfully!"
2940
  msgstr ""
2941
 
2942
- #: bp-messages.php:464 bp-themes/bpmember/messages/index.php:34
2943
  #: bp-themes/bpmember/messages/sentbox.php:29
2944
  #: bp-themes/bpskeletonmember/messages/index.php:52
2945
  #: bp-themes/bpskeletonmember/messages/sentbox.php:46
2946
  msgid "View Message"
2947
  msgstr ""
2948
 
2949
- #: bp-messages/bp-messages-ajax.php:33
2950
  msgid "There was a problem marking messages as unread."
2951
  msgstr ""
2952
 
2953
- #: bp-messages/bp-messages-ajax.php:48
2954
  msgid "There was a problem marking messages as read."
2955
  msgstr ""
2956
 
2957
- #: bp-messages/bp-messages-ajax.php:63
2958
  msgid "There was a problem deleting messages."
2959
  msgstr ""
2960
 
2961
- #: bp-messages/bp-messages-ajax.php:80
2962
  msgid "There was a problem closing the notice."
2963
  msgstr ""
2964
 
@@ -4480,7 +4475,7 @@ msgstr ""
4480
  msgid "Select a file:"
4481
  msgstr ""
4482
 
4483
- #: bp-xprofile/bp-xprofile-signup.php:137
4484
  #, php-format
4485
  msgid "%s cannot be left blank"
4486
  msgstr ""
8
  msgstr ""
9
  "Project-Id-Version: PACKAGE VERSION\n"
10
  "Report-Msgid-Bugs-To: wp-polyglots@lists.automattic.com\n"
11
+ "POT-Creation-Date: 2009-06-05 14:11+0000\n"
12
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
47
  #: bp-blogs/bp-blogs-templatetags.php:329
48
  #: bp-blogs/bp-blogs-templatetags.php:505
49
  #: bp-blogs/bp-blogs-templatetags.php:1208
50
+ #: bp-core/bp-core-templatetags.php:951 bp-core/bp-core-widgets.php:100
51
  #: bp-forums/bp-forums-templatetags.php:356
52
  #: bp-forums/bp-forums-templatetags.php:570
53
  #: bp-friends/bp-friends-templatetags.php:291
63
  msgid "Loading"
64
  msgstr ""
65
 
66
+ #: bp-activity/bp-activity-templatetags.php:277
67
  #, php-format
68
  msgid "&nbsp; %s ago"
69
  msgstr ""
90
  msgid "There has been no recent site activity."
91
  msgstr ""
92
 
93
+ #: bp-activity/bp-activity-widgets.php:78
94
  msgid "Max Number of Items:"
95
  msgstr ""
96
 
112
  msgid "Site Wide Activity Feed"
113
  msgstr ""
114
 
115
+ #: bp-blogs.php:158 bp-core/bp-core-templatetags.php:593
116
+ #: bp-core/bp-core-templatetags.php:685 bp-themes/bphome/header.php:55
117
  #: bp-themes/bpmember/header.php:54 bp-themes/bpskeletonmember/header.php:56
118
  msgid "Blogs"
119
  msgstr ""
219
  #: bp-blogs/bp-blogs-templatetags.php:104 bp-core/bp-core-admin.php:60
220
  #: bp-core/bp-core-admin.php:68 bp-core/bp-core-admin.php:75
221
  #: bp-core/bp-core-admin.php:83 bp-core/bp-core-signup.php:76
222
+ #: bp-friends.php:161 bp-groups.php:874 bp-messages.php:247
223
  #: bp-themes/bpmember/groups/admin/edit-details.php:31
224
  #: bp-themes/bpskeletonmember/groups/admin/edit-details.php:41
225
  #: bp-xprofile.php:299 bp-xprofile/bp-xprofile-admin.php:85
229
  #: bp-blogs/bp-blogs-templatetags.php:108 bp-core/bp-core-admin.php:61
230
  #: bp-core/bp-core-admin.php:69 bp-core/bp-core-admin.php:76
231
  #: bp-core/bp-core-admin.php:84 bp-core/bp-core-signup.php:80
232
+ #: bp-friends.php:162 bp-groups.php:875 bp-messages.php:248
233
  #: bp-themes/bpmember/groups/admin/edit-details.php:32
234
  #: bp-themes/bpskeletonmember/groups/admin/edit-details.php:42
235
  #: bp-xprofile.php:300
290
  msgid "Blog Avatar"
291
  msgstr ""
292
 
293
+ #: bp-blogs/bp-blogs-templatetags.php:1284 bp-core/bp-core-ajax.php:52
294
+ #: bp-core/bp-core-classes.php:67 bp-core/bp-core-templatetags.php:273
295
  #: bp-groups/bp-groups-ajax.php:102 bp-groups/bp-groups-templatetags.php:314
296
  #: bp-groups/bp-groups-templatetags.php:2120
297
  #, php-format
304
  msgstr ""
305
 
306
  #: bp-blogs/bp-blogs-templatetags.php:1315
307
+ #: bp-core/bp-core-templatetags.php:1064
308
  #: bp-groups/bp-groups-templatetags.php:2194
309
  msgid "Search anything..."
310
  msgstr ""
311
 
312
  #: bp-blogs/bp-blogs-templatetags.php:1316
313
+ #: bp-core/bp-core-templatetags.php:607 bp-core/bp-core-templatetags.php:1065
314
  #: bp-groups/bp-groups-templatetags.php:2195 bp-themes/bphome/searchform.php:3
315
  msgid "Search"
316
  msgstr ""
332
  msgid "There are no recent blog posts, why not write one?"
333
  msgstr ""
334
 
335
+ #: bp-blogs/bp-blogs-widgets.php:79
336
  msgid "Max Number of Posts:"
337
  msgstr ""
338
 
339
+ #: bp-core.php:270 bp-core/bp-core-adminbar.php:29
340
  msgid "BuddyPress"
341
  msgstr ""
342
 
343
+ #: bp-core.php:271 bp-core/bp-core-settings.php:56
344
  msgid "General Settings"
345
  msgstr ""
346
 
347
+ #: bp-core.php:272
348
  msgid "Component Setup"
349
  msgstr ""
350
 
351
+ #: bp-core.php:309 bp-xprofile.php:201 bp-xprofile.php:298
352
  msgid "Profile"
353
  msgstr ""
354
 
355
+ #: bp-core.php:315 bp-groups/bp-groups-templatetags.php:871
356
  #: bp-xprofile.php:207
357
  msgid "Public"
358
  msgstr ""
359
 
360
+ #: bp-core.php:319 bp-core/bp-core-templatetags.php:316 bp-xprofile.php:213
361
  msgid "My Profile"
362
  msgstr ""
363
 
364
+ #: bp-core.php:674 bp-wire/bp-wire-templatetags.php:340
365
  msgid "You"
366
  msgstr ""
367
 
368
+ #: bp-core.php:755
369
  #, php-format
370
  msgid "%s's"
371
  msgstr ""
372
 
373
+ #: bp-core.php:845 bp-core/bp-core-templatetags.php:399
374
  #: bp-themes/bphome/comments.php:42
375
  msgid "at"
376
  msgstr ""
377
 
378
+ #: bp-core.php:900
379
  msgid "year"
380
  msgstr ""
381
 
382
+ #: bp-core.php:900
383
  msgid "years"
384
  msgstr ""
385
 
386
+ #: bp-core.php:901
387
  msgid "month"
388
  msgstr ""
389
 
390
+ #: bp-core.php:901
391
  msgid "months"
392
  msgstr ""
393
 
394
+ #: bp-core.php:902
395
  msgid "week"
396
  msgstr ""
397
 
398
+ #: bp-core.php:902
399
  msgid "weeks"
400
  msgstr ""
401
 
402
+ #: bp-core.php:903
403
  msgid "day"
404
  msgstr ""
405
 
406
+ #: bp-core.php:903
407
  msgid "days"
408
  msgstr ""
409
 
410
+ #: bp-core.php:904
411
  msgid "hour"
412
  msgstr ""
413
 
414
+ #: bp-core.php:904
415
  msgid "hours"
416
  msgstr ""
417
 
418
+ #: bp-core.php:905
419
  msgid "minute"
420
  msgstr ""
421
 
422
+ #: bp-core.php:905
423
  msgid "minutes"
424
  msgstr ""
425
 
426
+ #: bp-core.php:906
427
  msgid "second"
428
  msgstr ""
429
 
430
+ #: bp-core.php:906 bp-core.php:952
431
  msgid "seconds"
432
  msgstr ""
433
 
434
+ #: bp-core.php:917
435
  msgid "[Adjust Time Zone]"
436
  msgstr ""
437
 
438
+ #: bp-core.php:947
439
  msgid ",|Separator in time since"
440
  msgstr ""
441
 
442
+ #: bp-core.php:995
443
  msgid "not recently active"
444
  msgstr ""
445
 
667
  msgid "Allows the creation of friend connections between users."
668
  msgstr ""
669
 
670
+ #: bp-core/bp-core-admin.php:225 bp-core/bp-core-templatetags.php:589
671
+ #: bp-core/bp-core-templatetags.php:681 bp-groups.php:167 bp-groups.php:205
672
+ #: bp-groups.php:873 bp-groups.php:1119 bp-groups.php:1132 bp-groups.php:1146
673
+ #: bp-groups.php:1159 bp-groups/bp-groups-admin.php:33
674
  #: bp-groups/bp-groups-widgets.php:8 bp-groups/bp-groups-widgets.php:9
675
  #: bp-themes/bphome/header.php:51 bp-themes/bpmember/header.php:50
676
  #: bp-themes/bpskeletonmember/header.php:50
707
  msgid "Activates customizable profiles and avatars for site users."
708
  msgstr ""
709
 
710
+ #: bp-core/bp-core-adminbar.php:37 bp-core/bp-core-templatetags.php:626
711
  #: bp-themes/bpmember/userbar.php:37 bp-themes/bpskeletonmember/userbar.php:50
712
  msgid "Log In"
713
  msgstr ""
714
 
715
+ #: bp-core/bp-core-adminbar.php:41 bp-core/bp-core-templatetags.php:627
716
  msgid "Sign Up"
717
  msgstr ""
718
 
722
 
723
  #: bp-core/bp-core-adminbar.php:90 bp-core/bp-core-adminbar.php:92
724
  #: bp-core/bp-core-templatetags.php:53 bp-core/bp-core-templatetags.php:55
725
+ #: bp-core/bp-core-templatetags.php:642 bp-core/bp-core-templatetags.php:644
726
  msgid "Log Out"
727
  msgstr ""
728
 
799
  msgid "Random Blog"
800
  msgstr ""
801
 
802
+ #: bp-core/bp-core-ajax.php:50 bp-core/bp-core-widgets.php:114
803
  #, php-format
804
  msgid "registered %s ago"
805
  msgstr ""
806
 
807
+ #: bp-core/bp-core-ajax.php:55
808
  msgid " friend"
809
  msgstr ""
810
 
811
+ #: bp-core/bp-core-ajax.php:57
812
  msgid " friends"
813
  msgstr ""
814
 
815
+ #: bp-core/bp-core-ajax.php:67
816
  msgid "No members matched the current filter."
817
  msgstr ""
818
 
842
  msgid "Delete"
843
  msgstr ""
844
 
845
+ #: bp-core/bp-core-avatars.php:125 bp-groups.php:1303
846
+ #: bp-xprofile/bp-xprofile-signup.php:187
847
  msgid "There is no error, the file uploaded with success"
848
  msgstr ""
849
 
850
  #: bp-core/bp-core-avatars.php:126 bp-core/bp-core-avatars.php:127
851
+ #: bp-xprofile/bp-xprofile-signup.php:188
852
+ #: bp-xprofile/bp-xprofile-signup.php:189
853
  msgid "Your image was bigger than the maximum allowed file size of: "
854
  msgstr ""
855
 
856
+ #: bp-core/bp-core-avatars.php:128 bp-groups.php:1306
857
+ #: bp-xprofile/bp-xprofile-signup.php:190
858
  msgid "The uploaded file was only partially uploaded"
859
  msgstr ""
860
 
861
+ #: bp-core/bp-core-avatars.php:129 bp-groups.php:1307
862
  msgid "No file was uploaded"
863
  msgstr ""
864
 
865
+ #: bp-core/bp-core-avatars.php:130 bp-groups.php:1308
866
+ #: bp-xprofile/bp-xprofile-signup.php:191
867
  msgid "Missing a temporary folder"
868
  msgstr ""
869
 
872
  msgid "Your upload failed, please try again. Error was: %s"
873
  msgstr ""
874
 
875
+ #: bp-core/bp-core-avatars.php:137 bp-xprofile/bp-xprofile-signup.php:205
876
  #, php-format
877
  msgid "The file you uploaded is too big. Please upload a file under %s"
878
  msgstr ""
879
 
880
+ #: bp-core/bp-core-avatars.php:140 bp-groups.php:1324
881
+ #: bp-xprofile/bp-xprofile-signup.php:210
882
  msgid "Please upload only JPG, GIF or PNG photos."
883
  msgstr ""
884
 
885
+ #: bp-core/bp-core-avatars.php:144 bp-xprofile/bp-xprofile-signup.php:216
886
  #, php-format
887
  msgid "Upload Failed! Error was: %s"
888
  msgstr ""
951
  msgid "Try Again"
952
  msgstr ""
953
 
954
+ #: bp-core/bp-core-catchuri.php:229
955
  msgid ""
956
  "<strong>You do not have any BuddyPress themes installed.</strong><br /"
957
  ">Please move \"/wp-content/plugins/buddypress/bp-themes/\" to \"/wp-content/"
1261
  msgid "Options"
1262
  msgstr ""
1263
 
1264
+ #: bp-core/bp-core-templatetags.php:322 bp-groups/bp-groups-admin.php:72
1265
  #: bp-themes/bphome/comments-popup.php:64 bp-themes/bphome/comments.php:90
1266
  msgid "Name"
1267
  msgstr ""
1268
 
1269
+ #: bp-core/bp-core-templatetags.php:332
1270
  msgid "About Me"
1271
  msgstr ""
1272
 
1273
+ #: bp-core/bp-core-templatetags.php:342 bp-themes/bphome/comments.php:96
1274
  msgid "Website"
1275
  msgstr ""
1276
 
1277
+ #: bp-core/bp-core-templatetags.php:352
1278
  msgid "Jabber"
1279
  msgstr ""
1280
 
1281
+ #: bp-core/bp-core-templatetags.php:362
1282
  msgid "AOL Messenger"
1283
  msgstr ""
1284
 
1285
+ #: bp-core/bp-core-templatetags.php:372
1286
  msgid "Yahoo Messenger"
1287
  msgstr ""
1288
 
1289
+ #: bp-core/bp-core-templatetags.php:477 bp-core/bp-core-templatetags.php:676
1290
  #: bp-groups.php:257 bp-themes/bphome/header.php:43
1291
  #: bp-themes/bphome/header.php:46 bp-themes/bpmember/header.php:42
1292
  #: bp-themes/bpmember/header.php:45 bp-themes/bpskeletonmember/header.php:36
1294
  msgid "Home"
1295
  msgstr ""
1296
 
1297
+ #: bp-core/bp-core-templatetags.php:480
1298
  msgid "Blog &#8212; "
1299
  msgstr ""
1300
 
1301
+ #: bp-core/bp-core-templatetags.php:482
1302
  msgid "Blog &#8212; Categories &#8212; "
1303
  msgstr ""
1304
 
1305
+ #: bp-core/bp-core-templatetags.php:484
1306
  msgid "Blog &#8212; Tags &#8212; "
1307
  msgstr ""
1308
 
1309
+ #: bp-core/bp-core-templatetags.php:486 bp-core/bp-core-templatetags.php:677
1310
  #: bp-themes/bphome/archive.php:5 bp-themes/bphome/attachment.php:6
1311
  #: bp-themes/bphome/header.php:47 bp-themes/bphome/index.php:6
1312
  #: bp-themes/bphome/search.php:6 bp-themes/bphome/single.php:6
1314
  msgid "Blog"
1315
  msgstr ""
1316
 
1317
+ #: bp-core/bp-core-templatetags.php:494 bp-core/bp-core-templatetags.php:496
1318
  #, php-format
1319
  msgid "%s Directory"
1320
  msgstr ""
1321
 
1322
+ #: bp-core/bp-core-templatetags.php:585 bp-core/bp-core-templatetags.php:678
1323
  #: bp-core/bp-core-widgets.php:12 bp-core/bp-core-widgets.php:13
1324
  #: bp-groups.php:277 bp-groups/bp-groups-admin.php:81
1325
  #: bp-themes/bphome/header.php:48
1330
  msgid "Members"
1331
  msgstr ""
1332
 
1333
+ #: bp-core/bp-core-templatetags.php:621 bp-themes/bpmember/userbar.php:28
1334
  #: bp-themes/bpskeletonmember/userbar.php:38
1335
  msgid "Username"
1336
  msgstr ""
1337
 
1338
+ #: bp-core/bp-core-templatetags.php:624 bp-themes/bpmember/userbar.php:35
1339
  #: bp-themes/bpskeletonmember/userbar.php:47
1340
  msgid "Remember Me"
1341
  msgstr ""
1342
 
1343
+ #: bp-core/bp-core-templatetags.php:950
1344
  #, php-format
1345
  msgid "Viewing member %d to %d (of %d members)"
1346
  msgstr ""
1347
 
1348
+ #: bp-core/bp-core-templatetags.php:1032
1349
  #, php-format
1350
  msgid "%d friend"
1351
  msgstr ""
1352
 
1353
+ #: bp-core/bp-core-templatetags.php:1034
1354
  #, php-format
1355
  msgid "%d friends"
1356
  msgstr ""
1367
  msgid "Create Account"
1368
  msgstr ""
1369
 
1370
+ #: bp-core/bp-core-widgets.php:68 bp-forums/bp-forums-bbpress-live.php:166
1371
  #: bp-forums/bp-forums-bbpress-live.php:370
1372
  #: bp-themes/bpmember/groups/forum/index.php:73
1373
  #: bp-themes/bpskeletonmember/groups/forum/index.php:84
1374
  msgid "Title:"
1375
  msgstr ""
1376
 
1377
+ #: bp-core/bp-core-widgets.php:70
1378
  msgid "Welcome Text:"
1379
  msgstr ""
1380
 
1381
+ #: bp-core/bp-core-widgets.php:101 bp-friends/bp-friends-templatetags.php:371
1382
  #: bp-friends/bp-friends-templatetags.php:387
1383
  #: bp-groups/bp-groups-widgets.php:43
1384
  msgid "Newest"
1385
  msgstr ""
1386
 
1387
+ #: bp-core/bp-core-widgets.php:102 bp-groups/bp-groups-widgets.php:44
1388
  msgid "Active"
1389
  msgstr ""
1390
 
1391
+ #: bp-core/bp-core-widgets.php:103 bp-groups/bp-groups-widgets.php:45
1392
  msgid "Popular"
1393
  msgstr ""
1394
 
1395
+ #: bp-core/bp-core-widgets.php:130
1396
  msgid "No one has signed up yet!"
1397
  msgstr ""
1398
 
1399
+ #: bp-core/bp-core-widgets.php:154
1400
  msgid "Max Members to show:"
1401
  msgstr ""
1402
 
1403
+ #: bp-core/bp-core-widgets.php:199
1404
  msgid "There are no users currently online."
1405
  msgstr ""
1406
 
1407
+ #: bp-core/bp-core-widgets.php:225
1408
  msgid "Maximum number of members to show:"
1409
  msgstr ""
1410
 
1492
  msgstr ""
1493
 
1494
  #: bp-forums/bp-forums-bbpress-live.php:89 bp-groups.php:268
1495
+ #: bp-groups.php:1586 bp-themes/bpmember/groups/forum/index.php:25
1496
  #: bp-themes/bpmember/groups/forum/topic.php:28
1497
  #: bp-themes/bpmember/groups/forum/topic.php:40
1498
  #: bp-themes/bpskeletonmember/groups/forum/index.php:29
1831
  msgid "There was an error saving group details. Please try again."
1832
  msgstr ""
1833
 
1834
+ #: bp-groups.php:468
1835
  msgid "Wire message could not be posted."
1836
  msgstr ""
1837
 
1838
+ #: bp-groups.php:470 bp-xprofile.php:375
1839
  msgid "Wire message successfully posted."
1840
  msgstr ""
1841
 
1842
+ #: bp-groups.php:483
1843
  msgid "There was an error deleting the wire message."
1844
  msgstr ""
1845
 
1846
+ #: bp-groups.php:485 bp-xprofile.php:420
1847
  msgid "Wire message successfully deleted."
1848
  msgstr ""
1849
 
1850
+ #: bp-groups.php:522
1851
  msgid "Group invites sent."
1852
  msgstr ""
1853
 
1854
+ #: bp-groups.php:543
1855
  msgid "As the only group administrator, you cannot leave this group."
1856
  msgstr ""
1857
 
1858
+ #: bp-groups.php:549
1859
  msgid "There was an error leaving the group. Please try again."
1860
  msgstr ""
1861
 
1862
+ #: bp-groups.php:552
1863
  msgid "You left the group successfully."
1864
  msgstr ""
1865
 
1866
+ #: bp-groups.php:581
1867
  msgid ""
1868
  "There was an error sending your group membership request, please try again."
1869
  msgstr ""
1870
 
1871
+ #: bp-groups.php:583
1872
  msgid ""
1873
  "Your membership request was sent to the group administrator successfully. "
1874
  "You will be notified when the group administrator responds to your request."
1875
  msgstr ""
1876
 
1877
+ #: bp-groups.php:616
1878
  msgid "There was an error updating group details, please try again."
1879
  msgstr ""
1880
 
1881
+ #: bp-groups.php:618
1882
  msgid "Group details were successfully updated."
1883
  msgstr ""
1884
 
1885
+ #: bp-groups.php:653
1886
  msgid "There was an error updating group settings, please try again."
1887
  msgstr ""
1888
 
1889
+ #: bp-groups.php:655
1890
  msgid "Group settings were successfully updated."
1891
  msgstr ""
1892
 
1893
+ #: bp-groups.php:698
1894
  msgid "There was an error updating the group avatar, please try again."
1895
  msgstr ""
1896
 
1897
+ #: bp-groups.php:700
1898
  msgid "The group avatar was successfully updated."
1899
  msgstr ""
1900
 
1901
+ #: bp-groups.php:728
1902
  msgid "There was an error when promoting that user, please try again"
1903
  msgstr ""
1904
 
1905
+ #: bp-groups.php:730
1906
  msgid "User promoted successfully"
1907
  msgstr ""
1908
 
1909
+ #: bp-groups.php:743
1910
  msgid "There was an error when demoting that user, please try again"
1911
  msgstr ""
1912
 
1913
+ #: bp-groups.php:745
1914
  msgid "User demoted successfully"
1915
  msgstr ""
1916
 
1917
+ #: bp-groups.php:758
1918
  msgid "There was an error when banning that user, please try again"
1919
  msgstr ""
1920
 
1921
+ #: bp-groups.php:760
1922
  msgid "User banned successfully"
1923
  msgstr ""
1924
 
1925
+ #: bp-groups.php:773
1926
  msgid "There was an error when unbanning that user, please try again"
1927
  msgstr ""
1928
 
1929
+ #: bp-groups.php:775
1930
  msgid "User ban removed successfully"
1931
  msgstr ""
1932
 
1933
+ #: bp-groups.php:810
1934
  msgid "There was an error accepting the membership request, please try again."
1935
  msgstr ""
1936
 
1937
+ #: bp-groups.php:812
1938
  msgid "Group membership request accepted"
1939
  msgstr ""
1940
 
1941
+ #: bp-groups.php:819
1942
  msgid "There was an error rejecting the membership request, please try again."
1943
  msgstr ""
1944
 
1945
+ #: bp-groups.php:821
1946
  msgid "Group membership request rejected"
1947
  msgstr ""
1948
 
1949
+ #: bp-groups.php:849
1950
  msgid "There was an error deleting the group, please try again."
1951
  msgstr ""
1952
 
1953
+ #: bp-groups.php:851
1954
  msgid "The group was deleted successfully"
1955
  msgstr ""
1956
 
1957
+ #: bp-groups.php:879
1958
  msgid "A member invites you to join a group"
1959
  msgstr ""
1960
 
1961
+ #: bp-groups.php:885
1962
  msgid "Group information is updated"
1963
  msgstr ""
1964
 
1965
+ #: bp-groups.php:892
1966
  msgid "A member posts on the wire of a group you belong to"
1967
  msgstr ""
1968
 
1969
+ #: bp-groups.php:899
1970
  msgid "You are promoted to a group administrator or moderator"
1971
  msgstr ""
1972
 
1973
+ #: bp-groups.php:905
1974
  msgid "A member requests to join a private group for which you are an admin"
1975
  msgstr ""
1976
 
1977
+ #: bp-groups.php:929
1978
  msgid "There was an error joining the group."
1979
  msgstr ""
1980
 
1981
+ #: bp-groups.php:931
1982
  msgid "You joined the group!"
1983
  msgstr ""
1984
 
1985
+ #: bp-groups.php:997
1986
  #, php-format
1987
  msgid "%s joined the group %s"
1988
  msgstr ""
1989
 
1990
+ #: bp-groups.php:1011
1991
  #, php-format
1992
  msgid "%s created the group %s"
1993
  msgstr ""
1994
 
1995
+ #: bp-groups.php:1025
1996
  #, php-format
1997
  msgid "%s wrote on the wire of the group %s"
1998
  msgstr ""
1999
 
2000
+ #: bp-groups.php:1049
2001
  #, php-format
2002
  msgid "%s posted on the forum topic %s in the group %s:"
2003
  msgstr ""
2004
 
2005
+ #: bp-groups.php:1074
2006
  #, php-format
2007
  msgid "%s created the forum topic %s in the group %s:"
2008
  msgstr ""
2009
 
2010
+ #: bp-groups.php:1105
2011
  msgid "Group Membership Requests"
2012
  msgstr ""
2013
 
2014
+ #: bp-groups.php:1105
2015
  #, php-format
2016
  msgid "%d new membership requests for the group \"%s\""
2017
  msgstr ""
2018
 
2019
+ #: bp-groups.php:1108
2020
  #, php-format
2021
  msgid "%s requests membership for the group \"%s\""
2022
  msgstr ""
2023
 
2024
+ #: bp-groups.php:1119
2025
  #, php-format
2026
  msgid "%d accepted group membership requests"
2027
  msgstr ""
2028
 
2029
+ #: bp-groups.php:1121
2030
  #, php-format
2031
  msgid "Membership for group \"%s\" accepted"
2032
  msgstr ""
2033
 
2034
+ #: bp-groups.php:1132
2035
  #, php-format
2036
  msgid "%d rejected group membership requests"
2037
  msgstr ""
2038
 
2039
+ #: bp-groups.php:1134
2040
  #, php-format
2041
  msgid "Membership for group \"%s\" rejected"
2042
  msgstr ""
2043
 
2044
+ #: bp-groups.php:1146
2045
  #, php-format
2046
  msgid "You were promoted to an admin in %d groups"
2047
  msgstr ""
2048
 
2049
+ #: bp-groups.php:1148
2050
  #, php-format
2051
  msgid "You were promoted to an admin in the group %s"
2052
  msgstr ""
2053
 
2054
+ #: bp-groups.php:1159
2055
  #, php-format
2056
  msgid "You were promoted to a mod in %d groups"
2057
  msgstr ""
2058
 
2059
+ #: bp-groups.php:1161
2060
  #, php-format
2061
  msgid "You were promoted to a mod in the group %s"
2062
  msgstr ""
2063
 
2064
+ #: bp-groups.php:1172 bp-groups.php:1174
2065
  #: bp-themes/bpmember/groups/list-invites.php:12
2066
  #: bp-themes/bpskeletonmember/groups/list-invites.php:15
2067
  msgid "Group Invites"
2068
  msgstr ""
2069
 
2070
+ #: bp-groups.php:1172
2071
  #, php-format
2072
  msgid "You have %d new group invitations"
2073
  msgstr ""
2074
 
2075
+ #: bp-groups.php:1174
2076
  #, php-format
2077
  msgid "You have an invitation to the group: %s"
2078
  msgstr ""
2079
 
2080
+ #: bp-groups.php:1304
2081
  msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini"
2082
  msgstr ""
2083
 
2084
+ #: bp-groups.php:1305
2085
  msgid ""
2086
  "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
2087
  "the HTML form"
2088
  msgstr ""
2089
 
2090
+ #: bp-groups.php:1313
2091
  msgid "Your group avatar upload failed, please try again. Error was: "
2092
  msgstr ""
2093
 
2094
+ #: bp-groups.php:1319
2095
  msgid "The file you uploaded is too big. Please upload a file under"
2096
  msgstr ""
2097
 
2098
+ #: bp-groups.php:1330
2099
  msgid ""
2100
  "Upload Failed! Please check the permissions on the group avatar upload "
2101
  "directory."
2102
  msgstr ""
2103
 
2104
+ #: bp-groups.php:1424
2105
  msgid "Group Admin"
2106
  msgstr ""
2107
 
2108
+ #: bp-groups.php:1601
2109
  msgid "Reply posted successfully!"
2110
  msgstr ""
2111
 
2112
+ #: bp-groups.php:1611
2113
  msgid "There was an error posting that reply."
2114
  msgstr ""
2115
 
2116
+ #: bp-groups.php:1623
2117
  msgid "Topic posted successfully!"
2118
  msgstr ""
2119
 
2120
+ #: bp-groups.php:1633
2121
  msgid "There was an error posting that topic."
2122
  msgstr ""
2123
 
2611
  msgid "No Group Avatar"
2612
  msgstr ""
2613
 
 
 
 
 
 
2614
  #: bp-groups/bp-groups-templatetags.php:322
2615
  #: bp-groups/bp-groups-templatetags.php:693
2616
  msgid "Group"
2805
  msgid "There are no groups to display."
2806
  msgstr ""
2807
 
2808
+ #: bp-groups/bp-groups-widgets.php:109
2809
  msgid "Maximum number of groups to show:"
2810
  msgstr ""
2811
 
2812
+ #: bp-messages.php:143 bp-messages.php:246
2813
  msgid "Messages"
2814
  msgstr ""
2815
 
2835
  msgid "My Messages"
2836
  msgstr ""
2837
 
2838
+ #: bp-messages.php:216
2839
  msgid "There was a problem deactivating that notice."
2840
  msgstr ""
2841
 
2842
+ #: bp-messages.php:218
2843
  msgid "Notice deactivated."
2844
  msgstr ""
2845
 
2846
+ #: bp-messages.php:222
2847
  msgid "There was a problem activating that notice."
2848
  msgstr ""
2849
 
2850
+ #: bp-messages.php:224
2851
  msgid "Notice activated."
2852
  msgstr ""
2853
 
2854
+ #: bp-messages.php:228
2855
  msgid "There was a problem deleting that notice."
2856
  msgstr ""
2857
 
2858
+ #: bp-messages.php:230
2859
  msgid "Notice deleted."
2860
  msgstr ""
2861
 
2862
+ #: bp-messages.php:252
2863
  msgid "A member sends you a new message"
2864
  msgstr ""
2865
 
2866
+ #: bp-messages.php:258
2867
  msgid "A new site notice is posted"
2868
  msgstr ""
2869
 
2870
+ #: bp-messages.php:283
2871
  #, php-format
2872
  msgid "From: %s"
2873
  msgstr ""
2874
 
2875
+ #: bp-messages.php:307
2876
  msgid "There was an error deleting that message."
2877
  msgstr ""
2878
 
2879
+ #: bp-messages.php:309
2880
  msgid "Message deleted."
2881
  msgstr ""
2882
 
2883
+ #: bp-messages.php:329
2884
  msgid "There was an error deleting messages."
2885
  msgstr ""
2886
 
2887
+ #: bp-messages.php:331 bp-messages/bp-messages-ajax.php:88
2888
  msgid "Messages deleted."
2889
  msgstr ""
2890
 
2891
+ #: bp-messages.php:365
2892
  #, php-format
2893
  msgid "You have %d new messages"
2894
  msgstr ""
2895
 
2896
+ #: bp-messages.php:367
2897
  #, php-format
2898
  msgid "You have %d new message"
2899
  msgstr ""
2900
 
2901
+ #: bp-messages.php:394
2902
  msgid "Notice posted successfully."
2903
  msgstr ""
2904
 
2905
+ #: bp-messages.php:396
2906
  msgid "There was an error posting that notice."
2907
  msgstr ""
2908
 
2909
+ #: bp-messages.php:407
2910
  msgid "Please enter at least one valid user to send this message to."
2911
  msgstr ""
2912
 
2913
+ #: bp-messages.php:410
2914
  msgid "There was an error sending the reply, please try again."
2915
  msgstr ""
2916
 
2917
+ #: bp-messages.php:415
2918
  msgid "You must send your message to one or more users not including yourself."
2919
  msgstr ""
2920
 
2921
+ #: bp-messages.php:421
2922
  msgid "Please make sure you fill in all the fields."
2923
  msgstr ""
2924
 
2925
+ #: bp-messages.php:424
2926
  msgid "Please make sure you have typed a message before sending a reply."
2927
  msgstr ""
2928
 
2929
+ #: bp-messages.php:453 bp-messages.php:487
2930
  msgid "Message could not be sent, please try again."
2931
  msgstr ""
2932
 
2933
+ #: bp-messages.php:463
2934
  msgid "Message sent successfully!"
2935
  msgstr ""
2936
 
2937
+ #: bp-messages.php:463 bp-themes/bpmember/messages/index.php:34
2938
  #: bp-themes/bpmember/messages/sentbox.php:29
2939
  #: bp-themes/bpskeletonmember/messages/index.php:52
2940
  #: bp-themes/bpskeletonmember/messages/sentbox.php:46
2941
  msgid "View Message"
2942
  msgstr ""
2943
 
2944
+ #: bp-messages/bp-messages-ajax.php:50
2945
  msgid "There was a problem marking messages as unread."
2946
  msgstr ""
2947
 
2948
+ #: bp-messages/bp-messages-ajax.php:65
2949
  msgid "There was a problem marking messages as read."
2950
  msgstr ""
2951
 
2952
+ #: bp-messages/bp-messages-ajax.php:80
2953
  msgid "There was a problem deleting messages."
2954
  msgstr ""
2955
 
2956
+ #: bp-messages/bp-messages-ajax.php:97
2957
  msgid "There was a problem closing the notice."
2958
  msgstr ""
2959
 
4475
  msgid "Select a file:"
4476
  msgstr ""
4477
 
4478
+ #: bp-xprofile/bp-xprofile-signup.php:166
4479
  #, php-format
4480
  msgid "%s cannot be left blank"
4481
  msgstr ""
bp-loader.php CHANGED
@@ -4,51 +4,51 @@ 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
16
  * of the components have been activated on the "BuddyPress" admin menu.
17
  */
18
 
19
- require_once( 'bp-core.php' );
20
  $deactivated = apply_filters( 'bp_deactivated_components', get_site_option( 'bp-deactivated-components' ) );
21
 
22
  /* Activity Streams */
23
  if ( !isset( $deactivated['bp-activity.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-activity.php') )
24
- include( 'bp-activity.php' );
25
 
26
  /* Blog Tracking */
27
  if ( !isset( $deactivated['bp-blogs.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-blogs.php') )
28
- include( 'bp-blogs.php' );
29
 
30
  /* bbPress Forum Integration */
31
  if ( !isset( $deactivated['bp-forums.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-forums.php') )
32
- include( 'bp-forums.php' );
33
 
34
  /* Friend Connections */
35
  if ( !isset( $deactivated['bp-friends.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-friends.php') )
36
- include( 'bp-friends.php' );
37
 
38
  /* Groups Support */
39
  if ( !isset( $deactivated['bp-groups.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-groups.php') )
40
- include( 'bp-groups.php' );
41
 
42
  /* Private Messaging */
43
  if ( !isset( $deactivated['bp-messages.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-messages.php') )
44
- include( 'bp-messages.php' );
45
 
46
  /* Wire Support */
47
  if ( !isset( $deactivated['bp-wire.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-wire.php') )
48
- include( 'bp-wire.php' );
49
 
50
  /* Extended Profiles */
51
  if ( !isset( $deactivated['bp-xprofile.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-xprofile.php') )
52
- include( 'bp-xprofile.php' );
53
 
54
- ?>
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.1
8
  Author URI: http://buddypress.org/developers/
9
  Site Wide Only: true
10
  */
11
 
12
+ define( 'BP_VERSION', '1.0.1' );
13
 
14
  /***
15
  * This file will load in each BuddyPress component based on which
16
  * of the components have been activated on the "BuddyPress" admin menu.
17
  */
18
 
19
+ require_once( WP_PLUGIN_DIR . '/buddypress/bp-core.php' );
20
  $deactivated = apply_filters( 'bp_deactivated_components', get_site_option( 'bp-deactivated-components' ) );
21
 
22
  /* Activity Streams */
23
  if ( !isset( $deactivated['bp-activity.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-activity.php') )
24
+ include( BP_PLUGIN_DIR . '/bp-activity.php' );
25
 
26
  /* Blog Tracking */
27
  if ( !isset( $deactivated['bp-blogs.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-blogs.php') )
28
+ include( BP_PLUGIN_DIR . '/bp-blogs.php' );
29
 
30
  /* bbPress Forum Integration */
31
  if ( !isset( $deactivated['bp-forums.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-forums.php') )
32
+ include( BP_PLUGIN_DIR . '/bp-forums.php' );
33
 
34
  /* Friend Connections */
35
  if ( !isset( $deactivated['bp-friends.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-friends.php') )
36
+ include( BP_PLUGIN_DIR . '/bp-friends.php' );
37
 
38
  /* Groups Support */
39
  if ( !isset( $deactivated['bp-groups.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-groups.php') )
40
+ include( BP_PLUGIN_DIR . '/bp-groups.php' );
41
 
42
  /* Private Messaging */
43
  if ( !isset( $deactivated['bp-messages.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-messages.php') )
44
+ include( BP_PLUGIN_DIR . '/bp-messages.php' );
45
 
46
  /* Wire Support */
47
  if ( !isset( $deactivated['bp-wire.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-wire.php') )
48
+ include( BP_PLUGIN_DIR . '/bp-wire.php' );
49
 
50
  /* Extended Profiles */
51
  if ( !isset( $deactivated['bp-xprofile.php'] ) && file_exists( BP_PLUGIN_DIR . '/bp-xprofile.php') )
52
+ include( BP_PLUGIN_DIR . '/bp-xprofile.php' );
53
 
54
+ ?>
bp-messages.php CHANGED
@@ -1,17 +1,16 @@
1
  <?php
2
 
3
- define ( 'BP_MESSAGES_VERSION', '1.0' );
4
  define ( 'BP_MESSAGES_DB_VERSION', '1300' );
5
 
6
  /* Define the slug for the component */
7
  if ( !defined( 'BP_MESSAGES_SLUG' ) )
8
  define ( 'BP_MESSAGES_SLUG', 'messages' );
9
 
10
- require ( 'bp-messages/bp-messages-classes.php' );
11
- require ( 'bp-messages/bp-messages-ajax.php' );
12
- require ( 'bp-messages/bp-messages-cssjs.php' );
13
- require ( 'bp-messages/bp-messages-templatetags.php' );
14
- require ( 'bp-messages/bp-messages-filters.php' );
15
 
16
  /**************************************************************************
17
  messages_install()
@@ -178,9 +177,8 @@ function messages_screen_sentbox() {
178
  function messages_screen_compose() {
179
  // Remove any saved message data from a previous session.
180
  messages_remove_callback_values();
181
-
182
- //var_dump($_POST['send_to_usernames']);
183
-
184
  $recipients = false;
185
  if ( empty( $_POST['send_to_usernames'] ) ) {
186
  if ( !empty( $_POST['send-to-input'] ) ) {
@@ -473,9 +471,9 @@ function messages_send_message( $recipients, $subject, $content, $thread_id, $fr
473
 
474
  // Send email notifications to the recipients
475
  require_once( BP_PLUGIN_DIR . '/bp-messages/bp-messages-notifications.php' );
476
- messages_notification_new_message( array( 'item_id' => $pmessage->id, 'recipient_ids' => $pmessage->recipients, 'thread_id' => $pmessage->thread_id, 'component_name' => 'messages', 'component_action' => 'message_sent', 'is_private' => 1 ) );
477
 
478
- do_action( 'messages_send_message', array( 'item_id' => $pmessage->id, 'recipient_ids' => $pmessage->recipients, 'thread_id' => $pmessage->thread_id, 'component_name' => 'messages', 'component_action' => 'message_sent', 'is_private' => 1 ) );
479
 
480
  if ( $from_ajax ) {
481
  return array('status' => 1, 'message' => $message, 'reply' => $pmessage);
@@ -500,15 +498,15 @@ function messages_send_message( $recipients, $subject, $content, $thread_id, $fr
500
  }
501
 
502
  function messages_add_callback_values( $recipients, $subject, $content ) {
503
- $_SESSION['send_to'] = $recipients;
504
- $_SESSION['subject'] = $subject;
505
- $_SESSION['content'] = $content;
506
  }
507
 
508
  function messages_remove_callback_values() {
509
- unset($_SESSION['send_to']);
510
- unset($_SESSION['subject']);
511
- unset($_SESSION['content']);
512
  }
513
 
514
  /**************************************************************************
@@ -570,6 +568,7 @@ function messages_delete_thread( $thread_ids ) {
570
  }
571
  }
572
 
 
573
  function messages_get_unread_count( $user_id = false ) {
574
  global $bp;
575
 
1
  <?php
2
 
 
3
  define ( 'BP_MESSAGES_DB_VERSION', '1300' );
4
 
5
  /* Define the slug for the component */
6
  if ( !defined( 'BP_MESSAGES_SLUG' ) )
7
  define ( 'BP_MESSAGES_SLUG', 'messages' );
8
 
9
+ require ( BP_PLUGIN_DIR . '/bp-messages/bp-messages-classes.php' );
10
+ require ( BP_PLUGIN_DIR . '/bp-messages/bp-messages-ajax.php' );
11
+ require ( BP_PLUGIN_DIR . '/bp-messages/bp-messages-cssjs.php' );
12
+ require ( BP_PLUGIN_DIR . '/bp-messages/bp-messages-templatetags.php' );
13
+ require ( BP_PLUGIN_DIR . '/bp-messages/bp-messages-filters.php' );
14
 
15
  /**************************************************************************
16
  messages_install()
177
  function messages_screen_compose() {
178
  // Remove any saved message data from a previous session.
179
  messages_remove_callback_values();
180
+
181
+ // Require the auto
 
182
  $recipients = false;
183
  if ( empty( $_POST['send_to_usernames'] ) ) {
184
  if ( !empty( $_POST['send-to-input'] ) ) {
471
 
472
  // Send email notifications to the recipients
473
  require_once( BP_PLUGIN_DIR . '/bp-messages/bp-messages-notifications.php' );
474
+ messages_notification_new_message( array( 'item_id' => $pmessage->id, 'recipient_ids' => $pmessage->recipients, 'thread_id' => $pmessage->thread_id, 'component_name' => $bp->messages->slug, 'component_action' => 'message_sent', 'is_private' => 1 ) );
475
 
476
+ do_action( 'messages_send_message', array( 'item_id' => $pmessage->id, 'recipient_ids' => $pmessage->recipients, 'thread_id' => $pmessage->thread_id, 'component_name' => $bp->messages->slug, 'component_action' => 'message_sent', 'is_private' => 1 ) );
477
 
478
  if ( $from_ajax ) {
479
  return array('status' => 1, 'message' => $message, 'reply' => $pmessage);
498
  }
499
 
500
  function messages_add_callback_values( $recipients, $subject, $content ) {
501
+ setcookie( 'bp_messages_send_to', $recipients, time()+60*60*24, COOKIEPATH );
502
+ setcookie( 'bp_messages_subject', $subject, time()+60*60*24, COOKIEPATH );
503
+ setcookie( 'bp_messages_content', $content, time()+60*60*24, COOKIEPATH );
504
  }
505
 
506
  function messages_remove_callback_values() {
507
+ setcookie( 'bp_messages_send_to', false, time()-1000, COOKIEPATH );
508
+ setcookie( 'bp_messages_subject', false, time()-1000, COOKIEPATH );
509
+ setcookie( 'bp_messages_content', false, time()-1000, COOKIEPATH );
510
  }
511
 
512
  /**************************************************************************
568
  }
569
  }
570
 
571
+
572
  function messages_get_unread_count( $user_id = false ) {
573
  global $bp;
574
 
bp-messages/autocomplete/bp-messages-autocomplete.php DELETED
@@ -1,22 +0,0 @@
1
- <?php
2
- /* Load the WP environment */
3
- require_once( preg_replace('%(.*)[/\\\\]wp-content[/\\\\].*%', '\1', dirname( __FILE__ ) ) . '/wp-load.php' );
4
- require_once( BP_PLUGIN_DIR . '/bp-core.php' );
5
- require_once( BP_PLUGIN_DIR . '/bp-friends.php' );
6
-
7
- // Setup the $bp global array as it's not auto set outside of the normal WP enviro.
8
- bp_core_setup_globals();
9
- friends_setup_globals();
10
-
11
- // Get the friend ids based on the search terms
12
- $friends = friends_search_friends( $_GET['q'], $bp->loggedin_user->id, $_GET['limit'], 1 );
13
-
14
- if ( $friends['friends'] ) {
15
- foreach ( $friends['friends'] as $user_id ) {
16
- $ud = get_userdata($user_id);
17
- $username = $ud->user_login;
18
- echo bp_core_get_avatar( $user_id, 1, 15, 15 ) . ' ' . bp_fetch_user_fullname( $user_id, false ) . ' (' . $username . ')
19
- ';
20
- }
21
- }
22
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
bp-messages/bp-messages-ajax.php CHANGED
@@ -26,6 +26,23 @@ function messages_ajax_send_reply() {
26
  }
27
  add_action( 'wp_ajax_messages_send_reply', 'messages_ajax_send_reply' );
28
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  function messages_ajax_markunread() {
30
  global $bp;
31
 
26
  }
27
  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
+ $friends = apply_filters( 'bp_friends_autocomplete_list', friends_search_friends( $_GET['q'], $bp->loggedin_user->id, $_GET['limit'], 1 ), $_GET['q'], $_GET['limit'] );
34
+
35
+ if ( $friends['friends'] ) {
36
+ foreach ( $friends['friends'] as $user_id ) {
37
+ $ud = get_userdata($user_id);
38
+ $username = $ud->user_login;
39
+ echo bp_core_get_avatar( $user_id, 1, 15, 15 ) . ' ' . bp_core_get_user_displayname( $user_id ) . ' (' . $username . ')
40
+ ';
41
+ }
42
+ }
43
+ }
44
+ add_action( 'wp_ajax_messages_autocomplete_results', 'messages_ajax_autocomplete_results' );
45
+
46
  function messages_ajax_markunread() {
47
  global $bp;
48
 
bp-messages/bp-messages-classes.php CHANGED
@@ -244,10 +244,10 @@ Class BP_Messages_Thread {
244
  global $wpdb, $bp;
245
 
246
  $sql = $wpdb->prepare("SELECT last_sender_id FROM {$bp->messages->table_name_threads} WHERE id = %d", $thread_id);
247
-
248
  if ( !$sender_id = $wpdb->get_var($sql) )
249
  return false;
250
-
251
  return bp_core_get_userlink( $sender_id, true );
252
  }
253
 
@@ -367,7 +367,7 @@ Class BP_Messages_Message {
367
  $sender_ids = serialize($sender_ids);
368
 
369
  // Update the thread the message belongs to.
370
- $wpdb->query( $wpdb->prepare( "UPDATE {$bp->messages->table_name_threads} SET message_ids = %s, sender_ids = %s, last_message_id = %d, last_sender_id = %d WHERE id = %d", $message_ids, $sender_ids, $wpdb->insert_id, $this->sender_id, $this->thread_id ) );
371
 
372
  // Find the recipients and update the unread counts for each
373
  if ( !$this->recipients )
244
  global $wpdb, $bp;
245
 
246
  $sql = $wpdb->prepare("SELECT last_sender_id FROM {$bp->messages->table_name_threads} WHERE id = %d", $thread_id);
247
+
248
  if ( !$sender_id = $wpdb->get_var($sql) )
249
  return false;
250
+
251
  return bp_core_get_userlink( $sender_id, true );
252
  }
253
 
367
  $sender_ids = serialize($sender_ids);
368
 
369
  // Update the thread the message belongs to.
370
+ $wpdb->query( $wpdb->prepare( "UPDATE {$bp->messages->table_name_threads} SET message_ids = %s, sender_ids = %s, last_message_id = %d, last_sender_id = %d, last_post_date = FROM_UNIXTIME(%d) WHERE id = %d", $message_ids, $sender_ids, $wpdb->insert_id, $this->sender_id, $this->date_sent, $this->thread_id ) );
371
 
372
  // Find the recipients and update the unread counts for each
373
  if ( !$this->recipients )
bp-messages/bp-messages-cssjs.php CHANGED
@@ -8,11 +8,12 @@ function messages_add_js() {
8
 
9
  // Include the autocomplete JS for composing a message.
10
  if ( $bp->current_component == $bp->messages->slug && $bp->current_action == 'compose') {
 
 
11
  wp_enqueue_script( 'bp-jquery-autocomplete', BP_PLUGIN_URL . '/bp-messages/js/autocomplete/jquery.autocomplete.js', 'jquery' );
12
  wp_enqueue_script( 'bp-jquery-autocomplete-fb', BP_PLUGIN_URL . '/bp-messages/js/autocomplete/jquery.autocompletefb.js', 'jquery' );
13
  wp_enqueue_script( 'bp-jquery-bgiframe', BP_PLUGIN_URL . '/bp-messages/js/autocomplete/jquery.bgiframe.min.js', 'jquery' );
14
  wp_enqueue_script( 'bp-jquery-dimensions', BP_PLUGIN_URL . '/bp-messages/js/autocomplete/jquery.dimensions.js', 'jquery' );
15
- wp_enqueue_script( 'bp-autocomplete-init', BP_PLUGIN_URL . '/bp-messages/js/autocomplete/init.php', 'jquery' );
16
  }
17
 
18
  }
@@ -28,12 +29,24 @@ function messages_add_css() {
28
  }
29
  add_action( 'wp_head', 'messages_add_css' );
30
 
31
-
32
  function messages_add_structure_css() {
33
  /* Enqueue the structure CSS file to give basic positional formatting for components */
34
  wp_enqueue_style( 'bp-messages-structure', BP_PLUGIN_URL . '/bp-messages/css/structure.css' );
35
  }
36
  add_action( 'bp_styles', 'messages_add_structure_css' );
37
 
38
-
39
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
8
 
9
  // Include the autocomplete JS for composing a message.
10
  if ( $bp->current_component == $bp->messages->slug && $bp->current_action == 'compose') {
11
+ add_action( 'wp_head', 'messages_autocomplete_init_jsblock' );
12
+
13
  wp_enqueue_script( 'bp-jquery-autocomplete', BP_PLUGIN_URL . '/bp-messages/js/autocomplete/jquery.autocomplete.js', 'jquery' );
14
  wp_enqueue_script( 'bp-jquery-autocomplete-fb', BP_PLUGIN_URL . '/bp-messages/js/autocomplete/jquery.autocompletefb.js', 'jquery' );
15
  wp_enqueue_script( 'bp-jquery-bgiframe', BP_PLUGIN_URL . '/bp-messages/js/autocomplete/jquery.bgiframe.min.js', 'jquery' );
16
  wp_enqueue_script( 'bp-jquery-dimensions', BP_PLUGIN_URL . '/bp-messages/js/autocomplete/jquery.dimensions.js', 'jquery' );
 
17
  }
18
 
19
  }
29
  }
30
  add_action( 'wp_head', 'messages_add_css' );
31
 
 
32
  function messages_add_structure_css() {
33
  /* Enqueue the structure CSS file to give basic positional formatting for components */
34
  wp_enqueue_style( 'bp-messages-structure', BP_PLUGIN_URL . '/bp-messages/css/structure.css' );
35
  }
36
  add_action( 'bp_styles', 'messages_add_structure_css' );
37
 
38
+ function messages_autocomplete_init_jsblock() {
39
+ ?>
40
+ <script type="text/javascript">
41
+ jQuery(document).ready(function() {
42
+ var acfb =
43
+ jQuery("ul.first").autoCompletefb({urlLookup:'<?php echo $bp->root_domain . str_replace( 'index.php', 'wp-load.php', $_SERVER['SCRIPT_NAME'] ) ?>'});
44
+
45
+ jQuery('#send_message_form').submit( function() {
46
+ var users = document.getElementById('send-to-usernames').className;
47
+ document.getElementById('send-to-usernames').value = String(users);
48
+ });
49
+ });
50
+ </script>
51
+ <?php
52
+ }
bp-messages/bp-messages-notifications.php CHANGED
@@ -6,7 +6,7 @@ function messages_notification_new_message( $args ) {
6
 
7
  $message = new BP_Messages_Message( $item_id );
8
 
9
- $sender_name = bp_fetch_user_fullname( $message->sender_id, false );
10
 
11
  for ( $i = 0; $i < count($recipient_ids); $i++ ) {
12
  if ( $message->sender_id == $recipient_ids[$i] || 'no' == get_userdata( $recipient_ids[$i], 'notification-messages-new-message' ) ) continue;
@@ -19,7 +19,7 @@ function messages_notification_new_message( $args ) {
19
  $to = $ud->user_email;
20
  $subject = '[' . get_blog_option( 1, 'blogname' ) . '] ' . sprintf( __( 'New message from %s', 'buddypress' ), stripslashes($sender_name) );
21
 
22
- $message = sprintf( __(
23
  '%s sent you a new message:
24
 
25
  Subject: %s
@@ -31,10 +31,10 @@ To view the message: %s
31
  ---------------------
32
  ', 'buddypress' ), $sender_name, stripslashes( wp_filter_kses( $message->subject ) ), stripslashes( wp_filter_kses( $message->message ) ), $message_link );
33
 
34
- $message .= sprintf( __( 'To disable these notifications please log in and go to: %s', 'buddypress' ), $settings_link );
35
 
36
  // Send it
37
- wp_mail( $to, $subject, $message );
38
  }
39
  }
40
 
6
 
7
  $message = new BP_Messages_Message( $item_id );
8
 
9
+ $sender_name = bp_core_get_user_displayname( $message->sender_id );
10
 
11
  for ( $i = 0; $i < count($recipient_ids); $i++ ) {
12
  if ( $message->sender_id == $recipient_ids[$i] || 'no' == get_userdata( $recipient_ids[$i], 'notification-messages-new-message' ) ) continue;
19
  $to = $ud->user_email;
20
  $subject = '[' . get_blog_option( 1, 'blogname' ) . '] ' . sprintf( __( 'New message from %s', 'buddypress' ), stripslashes($sender_name) );
21
 
22
+ $content = sprintf( __(
23
  '%s sent you a new message:
24
 
25
  Subject: %s
31
  ---------------------
32
  ', 'buddypress' ), $sender_name, stripslashes( wp_filter_kses( $message->subject ) ), stripslashes( wp_filter_kses( $message->message ) ), $message_link );
33
 
34
+ $content .= sprintf( __( 'To disable these notifications please log in and go to: %s', 'buddypress' ), $settings_link );
35
 
36
  // Send it
37
+ wp_mail( $to, $subject, $content );
38
  }
39
  }
40
 
bp-messages/bp-messages-templatetags.php CHANGED
@@ -283,9 +283,9 @@ function bp_messages_username_value() {
283
  echo bp_get_messages_username_value();
284
  }
285
  function bp_get_messages_username_value() {
286
- if ( isset( $_SESSION['send_to'] ) ) {
287
- return apply_filters( 'bp_get_messages_username_value', $_SESSION['send_to'] );
288
- } else if ( isset( $_GET['r'] ) && !isset( $_SESSION['send_to'] ) ) {
289
  return apply_filters( 'bp_get_messages_username_value', $_GET['r'] );
290
  }
291
  }
@@ -294,14 +294,14 @@ function bp_messages_subject_value() {
294
  echo bp_get_messages_subject_value();
295
  }
296
  function bp_get_messages_subject_value() {
297
- return apply_filters( 'bp_get_messages_subject_value', $_SESSION['subject'] );
298
  }
299
 
300
  function bp_messages_content_value() {
301
  echo bp_get_messages_content_value();
302
  }
303
  function bp_get_messages_content_value() {
304
- return apply_filters( 'bp_get_messages_content_value', $_SESSION['content'] );
305
  }
306
 
307
  function bp_messages_options() {
@@ -450,7 +450,7 @@ function bp_message_get_recipient_tabs() {
450
  global $bp;
451
 
452
  if ( isset( $_GET['r'] ) ) {
453
- $user_id = bp_core_get_userid_from_user_login( $_GET['r'] );
454
 
455
  if ( $user_id ) {
456
  ?>
@@ -541,13 +541,13 @@ function messages_view_thread( $thread_id ) {
541
  </div>
542
  <label for="reply"></label>
543
  <div>
544
- <textarea name="content" id="message_content" rows="15" cols="40"><?php echo attribute_escape( wp_filter_kses( $content ) ); ?></textarea>
545
  </div>
546
  </div>
547
  <p class="submit">
548
  <input type="submit" name="send" value="<?php _e( 'Send Reply', 'buddypress' ) ?> &rarr;" id="send_reply_button"/>
549
  </p>
550
- <input type="hidden" id="thread_id" name="thread_id" value="<?php echo $thread->thread_id ?>" />
551
  <input type="hidden" name="subject" id="subject" value="<?php _e('Re: ', 'buddypress'); echo str_replace( 'Re: ', '', $thread->last_message_subject); ?>" />
552
  </div>
553
 
283
  echo bp_get_messages_username_value();
284
  }
285
  function bp_get_messages_username_value() {
286
+ if ( isset( $_COOKIE['bp_messages_send_to'] ) ) {
287
+ return apply_filters( 'bp_get_messages_username_value', $_COOKIE['bp_messages_send_to'] );
288
+ } else if ( isset( $_GET['r'] ) && !isset( $_COOKIE['bp_messages_send_to'] ) ) {
289
  return apply_filters( 'bp_get_messages_username_value', $_GET['r'] );
290
  }
291
  }
294
  echo bp_get_messages_subject_value();
295
  }
296
  function bp_get_messages_subject_value() {
297
+ return apply_filters( 'bp_get_messages_subject_value', $_COOKIE['bp_messages_subject'] );
298
  }
299
 
300
  function bp_messages_content_value() {
301
  echo bp_get_messages_content_value();
302
  }
303
  function bp_get_messages_content_value() {
304
+ return apply_filters( 'bp_get_messages_content_value', $_COOKIE['bp_messages_content'] );
305
  }
306
 
307
  function bp_messages_options() {
450
  global $bp;
451
 
452
  if ( isset( $_GET['r'] ) ) {
453
+ $user_id = bp_core_get_userid( $_GET['r'] );
454
 
455
  if ( $user_id ) {
456
  ?>
541
  </div>
542
  <label for="reply"></label>
543
  <div>
544
+ <textarea name="content" id="message_content" rows="15" cols="40"><?php echo htmlspecialchars( wp_filter_kses( $content ) ); ?></textarea>
545
  </div>
546
  </div>
547
  <p class="submit">
548
  <input type="submit" name="send" value="<?php _e( 'Send Reply', 'buddypress' ) ?> &rarr;" id="send_reply_button"/>
549
  </p>
550
+ <input type="hidden" id="thread_id" name="thread_id" value="<?php echo attribute_escape( $thread->thread_id ); ?>" />
551
  <input type="hidden" name="subject" id="subject" value="<?php _e('Re: ', 'buddypress'); echo str_replace( 'Re: ', '', $thread->last_message_subject); ?>" />
552
  </div>
553
 
bp-messages/js/autocomplete/init.php DELETED
@@ -1,16 +0,0 @@
1
- <?php
2
- /* Load the WP environment */
3
- require_once( preg_replace('%(.*)[/\\\\]wp-content[/\\\\].*%', '\1', dirname( __FILE__ ) ) . '/wp-load.php' );
4
- header( 'Content: text/javascript' );
5
- ?>
6
-
7
- jQuery(document).ready(function() {
8
- var acfb =
9
- jQuery("ul.first").autoCompletefb({urlLookup:'<?php echo BP_PLUGIN_URL . '/bp-messages/autocomplete/bp-messages-autocomplete.php' ?>'});
10
-
11
- jQuery('#send_message_form').submit( function() {
12
- var users = document.getElementById('send-to-usernames').className;
13
- document.getElementById('send-to-usernames').value = String(users);
14
- });
15
-
16
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
bp-messages/js/autocomplete/jquery.autocomplete.js CHANGED
@@ -324,7 +324,9 @@ $.Autocompleter = function(input, options) {
324
  url: options.url,
325
  data: $.extend({
326
  q: lastWord(term),
327
- limit: options.max
 
 
328
  }, extraParams),
329
  success: function(data) {
330
  var parsed = options.parse && options.parse(data) || parse(data);
324
  url: options.url,
325
  data: $.extend({
326
  q: lastWord(term),
327
+ limit: options.max,
328
+ action: 'messages_autocomplete_results',
329
+ 'cookie': encodeURIComponent(document.cookie)
330
  }, extraParams),
331
  success: function(data) {
332
  var parsed = options.parse && options.parse(data) || parse(data);
bp-themes/bphome/comments-popup.php CHANGED
@@ -62,7 +62,7 @@ if (!empty($post->post_password) && $_COOKIE['wp-postpass_'. COOKIEHASH] != $pos
62
  <p>
63
  <input type="text" name="author" id="author" class="textarea" value="<?php echo $comment_author; ?>" size="28" tabindex="1" />
64
  <label for="author"><?php _e( 'Name', 'buddypress' ) ?></label>
65
- <input type="hidden" name="comment_post_ID" value="<?php echo $id; ?>" />
66
  <input type="hidden" name="redirect_to" value="<?php echo attribute_escape($_SERVER["REQUEST_URI"]); ?>" />
67
  </p>
68
 
62
  <p>
63
  <input type="text" name="author" id="author" class="textarea" value="<?php echo $comment_author; ?>" size="28" tabindex="1" />
64
  <label for="author"><?php _e( 'Name', 'buddypress' ) ?></label>
65
+ <input type="hidden" name="comment_post_ID" value="<?php echo attribute_escape( $id ); ?>" />
66
  <input type="hidden" name="redirect_to" value="<?php echo attribute_escape($_SERVER["REQUEST_URI"]); ?>" />
67
  </p>
68
 
bp-themes/bphome/comments.php CHANGED
@@ -100,7 +100,7 @@
100
  <p><textarea name="comment" id="comment" cols="38" rows="10" tabindex="4"></textarea></p>
101
 
102
  <p><input name="submit" type="submit" id="submit" tabindex="5" value="<?php _e ( 'Submit Comment', 'buddypress' ) ?>" />
103
- <input type="hidden" name="comment_post_ID" value="<?php echo $id; ?>" />
104
  </p>
105
  <?php do_action('comment_form', $post->ID); ?>
106
 
100
  <p><textarea name="comment" id="comment" cols="38" rows="10" tabindex="4"></textarea></p>
101
 
102
  <p><input name="submit" type="submit" id="submit" tabindex="5" value="<?php _e ( 'Submit Comment', 'buddypress' ) ?>" />
103
+ <input type="hidden" name="comment_post_ID" value="<?php echo attribute_escape( $id ); ?>" />
104
  </p>
105
  <?php do_action('comment_form', $post->ID); ?>
106
 
bp-themes/bphome/css/base.css CHANGED
@@ -24,12 +24,13 @@ a img { border:none }
24
 
25
  html {
26
  background: #fff;
27
- font: 62.5% normal "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, Verdana, Arial, sans-serif;
 
28
  }
29
 
30
  body {
31
  background: #fff;
32
- font-size: 1.2em;
33
  color: #555;
34
  line-height: 170%;
35
  min-width: 960px;
@@ -218,7 +219,8 @@ span.activity {
218
  border-right: 1px solid #FFE8C4;
219
  border-bottom: 1px solid #FFE8C4;
220
  display: inline-block;
221
- font: 0.9em normal "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, Verdana, Arial, sans-serif;
 
222
  margin: -5px 0 0 0;
223
  }
224
 
24
 
25
  html {
26
  background: #fff;
27
+ font-size: 11px;
28
+ font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, Verdana, Arial, sans-serif;
29
  }
30
 
31
  body {
32
  background: #fff;
33
+ font-size: 12px;
34
  color: #555;
35
  line-height: 170%;
36
  min-width: 960px;
219
  border-right: 1px solid #FFE8C4;
220
  border-bottom: 1px solid #FFE8C4;
221
  display: inline-block;
222
+ font-size: 9px;
223
+ font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, Verdana, Arial, sans-serif;
224
  margin: -5px 0 0 0;
225
  }
226
 
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.1
6
  Author: Andy Peatling
7
  Author URI: http://apeatling.wordpress.com
8
  */
bp-themes/bpmember/css/base.css CHANGED
@@ -23,12 +23,13 @@ a img { border:none }
23
 
24
  html {
25
  background: #fff;
26
- font: 62.5% normal "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, Verdana, Arial, sans-serif;
 
27
  }
28
 
29
  body {
30
  background: #fff;
31
- font-size: 1.2em;
32
  color: #555;
33
  background: url(../images/background.gif) top left repeat-y;
34
  line-height: 170%;
23
 
24
  html {
25
  background: #fff;
26
+ font: 11px;
27
+ font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, Verdana, Arial, sans-serif;
28
  }
29
 
30
  body {
31
  background: #fff;
32
+ font-size: 12px;
33
  color: #555;
34
  background: url(../images/background.gif) top left repeat-y;
35
  line-height: 170%;
bp-themes/bpmember/messages/compose.php CHANGED
@@ -31,7 +31,7 @@
31
  <label for="content"><?php _e( 'Message', 'buddypress') ?></label>
32
  <textarea name="content" id="message_content" rows="15" cols="40"><?php bp_messages_content_value() ?></textarea>
33
 
34
- <input type="hidden" name="send_to_usernames" id="send-to-usernames" value="" class="<?php bp_message_get_recipient_usernames() ?>" />
35
 
36
  <?php do_action( 'messages_custom_fields_input_after' ) ?>
37
 
31
  <label for="content"><?php _e( 'Message', 'buddypress') ?></label>
32
  <textarea name="content" id="message_content" rows="15" cols="40"><?php bp_messages_content_value() ?></textarea>
33
 
34
+ <input type="hidden" name="send_to_usernames" id="send-to-usernames" value="<?php bp_message_get_recipient_usernames(); ?>" class="<?php bp_message_get_recipient_usernames() ?>" />
35
 
36
  <?php do_action( 'messages_custom_fields_input_after' ) ?>
37
 
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.1
6
  Author: Andy Peatling
7
  Author URI: http://apeatling.wordpress.com
8
  */
bp-themes/bpskeletonmember/directories/blogs/index.php CHANGED
@@ -74,7 +74,7 @@
74
  </div>
75
 
76
  <div id="blogs-directory-featured" class="directory-featured">
77
- <h3><?php _e( 'Featured Blogs', 'buddypress' ) ?></h3>
78
 
79
  <?php if ( bp_has_site_blogs( 'type=random&max=3' ) ) : ?>
80
 
74
  </div>
75
 
76
  <div id="blogs-directory-featured" class="directory-featured">
77
+ <h3><?php _e( 'Random Blogs', 'buddypress' ) ?></h3>
78
 
79
  <?php if ( bp_has_site_blogs( 'type=random&max=3' ) ) : ?>
80
 
bp-themes/bpskeletonmember/directories/groups/index.php CHANGED
@@ -74,7 +74,7 @@
74
  </div>
75
 
76
  <div id="groups-directory-featured" class="directory-featured">
77
- <h3><?php _e( 'Featured Groups', 'buddypress' ) ?></h3>
78
 
79
  <?php if ( bp_has_site_groups( 'type=random&max=3' ) ) : ?>
80
 
74
  </div>
75
 
76
  <div id="groups-directory-featured" class="directory-featured">
77
+ <h3><?php _e( 'Random Groups', 'buddypress' ) ?></h3>
78
 
79
  <?php if ( bp_has_site_groups( 'type=random&max=3' ) ) : ?>
80
 
bp-themes/bpskeletonmember/directories/members/index.php CHANGED
@@ -74,7 +74,7 @@
74
  </div>
75
 
76
  <div id="members-directory-featured" class="directory-featured">
77
- <h3><?php _e( 'Featured Members', 'buddypress' ) ?></h3>
78
 
79
  <?php if ( bp_has_site_members( 'type=random&max=3' ) ) : ?>
80
 
74
  </div>
75
 
76
  <div id="members-directory-featured" class="directory-featured">
77
+ <h3><?php _e( 'Random Members', 'buddypress' ) ?></h3>
78
 
79
  <?php if ( bp_has_site_members( 'type=random&max=3' ) ) : ?>
80
 
bp-themes/bpskeletonmember/header.php CHANGED
@@ -42,7 +42,7 @@
42
  </li>
43
 
44
  <li<?php if ( bp_is_page( BP_MEMBERS_SLUG ) ) : ?> class="selected"<?php endif; ?>>
45
- <a href="<?php echo get_option('home') ?>/<?php echo MEMBERS_SLUG ?>" title="<?php _e( 'Members', 'buddypress' ) ?>"><?php _e( 'Members', 'buddypress' ) ?></a>
46
  </li>
47
 
48
  <?php if ( function_exists( 'groups_install' ) ) : ?>
42
  </li>
43
 
44
  <li<?php if ( bp_is_page( BP_MEMBERS_SLUG ) ) : ?> class="selected"<?php endif; ?>>
45
+ <a href="<?php echo get_option('home') ?>/<?php echo BP_MEMBERS_SLUG ?>" title="<?php _e( 'Members', 'buddypress' ) ?>"><?php _e( 'Members', 'buddypress' ) ?></a>
46
  </li>
47
 
48
  <?php if ( function_exists( 'groups_install' ) ) : ?>
bp-themes/bpskeletonmember/messages/compose.php CHANGED
@@ -18,7 +18,7 @@
18
 
19
  <?php do_action( 'template_notices' ) ?>
20
 
21
- <form action="<?php bp_messages_form_action('compose') ?>" method="post" id="send-message-form" class="standard-form">
22
 
23
  <?php do_action( 'messages_custom_fields_input_before' ) ?>
24
 
@@ -42,7 +42,7 @@
42
  <label for="content"><?php _e( 'Message', 'buddypress') ?></label>
43
  <textarea name="content" id="message_content" rows="15" cols="40"><?php bp_messages_content_value() ?></textarea>
44
 
45
- <input type="hidden" name="send_to_usernames" id="send-to-usernames" value="" class="<?php bp_message_get_recipient_usernames() ?>" />
46
 
47
  <?php do_action( 'messages_custom_fields_input_after' ) ?>
48
 
18
 
19
  <?php do_action( 'template_notices' ) ?>
20
 
21
+ <form action="<?php bp_messages_form_action('compose') ?>" method="post" id="send_message_form" class="standard-form">
22
 
23
  <?php do_action( 'messages_custom_fields_input_before' ) ?>
24
 
42
  <label for="content"><?php _e( 'Message', 'buddypress') ?></label>
43
  <textarea name="content" id="message_content" rows="15" cols="40"><?php bp_messages_content_value() ?></textarea>
44
 
45
+ <input type="hidden" name="send_to_usernames" id="send-to-usernames" value="<?php bp_message_get_recipient_usernames(); ?>" class="<?php bp_message_get_recipient_usernames() ?>" />
46
 
47
  <?php do_action( 'messages_custom_fields_input_after' ) ?>
48
 
bp-wire.php CHANGED
@@ -1,7 +1,5 @@
1
  <?php
2
 
3
- define( 'BP_WIRE_VERSION', '1.0' );
4
-
5
  /* Define the slug for the component */
6
  if ( !defined( 'BP_WIRE_SLUG' ) )
7
  define ( 'BP_WIRE_SLUG', 'wire' );
1
  <?php
2
 
 
 
3
  /* Define the slug for the component */
4
  if ( !defined( 'BP_WIRE_SLUG' ) )
5
  define ( 'BP_WIRE_SLUG', 'wire' );
bp-wire/bp-wire-templatetags.php CHANGED
@@ -139,7 +139,7 @@ function bp_wire_get_post_list( $item_id = null, $title = null, $empty_message =
139
  if ( !$item_id )
140
  return false;
141
 
142
- if ( !$message )
143
  $empty_message = __("There are currently no wire posts.", 'buddypress');
144
 
145
  if ( !$title )
139
  if ( !$item_id )
140
  return false;
141
 
142
+ if ( !$empty_message )
143
  $empty_message = __("There are currently no wire posts.", 'buddypress');
144
 
145
  if ( !$title )
bp-xprofile.php CHANGED
@@ -1,6 +1,5 @@
1
  <?php
2
 
3
- define ( 'BP_XPROFILE_VERSION', '1.0' );
4
  define ( 'BP_XPROFILE_DB_VERSION', '1300' );
5
 
6
  /* Define the slug for the component */
@@ -576,7 +575,7 @@ function xprofile_format_notifications( $action, $item_id, $secondary_item_id, $
576
  if ( (int)$total_items > 1 ) {
577
  return apply_filters( 'bp_xprofile_multiple_new_wire_post_notification', '<a href="' . $bp->loggedin_user->domain . $bp->wire->slug . '" title="' . __( 'Wire', 'buddypress' ) . '">' . sprintf( __( 'You have %d new posts on your wire', 'buddypress' ), (int)$total_items ) . '</a>', $total_items );
578
  } else {
579
- $user_fullname = bp_core_global_user_fullname( $item_id );
580
  return apply_filters( 'bp_xprofile_single_new_wire_post_notification', '<a href="' . $bp->loggedin_user->domain . $bp->wire->slug . '" title="' . __( 'Wire', 'buddypress' ) . '">' . sprintf( __( '%s posted on your wire', 'buddypress' ), $user_fullname ) . '</a>', $user_fullname );
581
  }
582
  }
@@ -615,7 +614,7 @@ function xprofile_edit( $group_id, $action ) {
615
  ?>
616
  <div class="wrap">
617
 
618
- <h2><?php echo $group->name ?> <?php _e("Information", 'buddypress') ?></h2>
619
 
620
  <?php
621
  // If this group has fields then continue
@@ -743,7 +742,7 @@ function xprofile_edit( $group_id, $action ) {
743
  $message = __('Changes saved.', 'buddypress');
744
 
745
  // Record in activity stream
746
- xprofile_record_activity( array( 'item_id' => $group->id, 'component_name' => 'profile', 'component_action' => 'updated_profile', 'is_private' => 0 ) );
747
 
748
  do_action( 'xprofile_updated_profile', $group->id );
749
  }
@@ -774,7 +773,7 @@ function xprofile_edit( $group_id, $action ) {
774
  if ( $field_ids )
775
  $field_ids = implode( ",", $field_ids );
776
  ?>
777
- <input type="hidden" name="field_ids" id="field_ids" value="<?php echo $field_ids; ?>" />
778
 
779
  <?php echo $list_html; ?>
780
 
1
  <?php
2
 
 
3
  define ( 'BP_XPROFILE_DB_VERSION', '1300' );
4
 
5
  /* Define the slug for the component */
575
  if ( (int)$total_items > 1 ) {
576
  return apply_filters( 'bp_xprofile_multiple_new_wire_post_notification', '<a href="' . $bp->loggedin_user->domain . $bp->wire->slug . '" title="' . __( 'Wire', 'buddypress' ) . '">' . sprintf( __( 'You have %d new posts on your wire', 'buddypress' ), (int)$total_items ) . '</a>', $total_items );
577
  } else {
578
+ $user_fullname = bp_core_get_user_displayname( $item_id );
579
  return apply_filters( 'bp_xprofile_single_new_wire_post_notification', '<a href="' . $bp->loggedin_user->domain . $bp->wire->slug . '" title="' . __( 'Wire', 'buddypress' ) . '">' . sprintf( __( '%s posted on your wire', 'buddypress' ), $user_fullname ) . '</a>', $user_fullname );
580
  }
581
  }
614
  ?>
615
  <div class="wrap">
616
 
617
+ <h2><?php echo attribute_escape( $group->name ) ?> <?php _e("Information", 'buddypress') ?></h2>
618
 
619
  <?php
620
  // If this group has fields then continue
742
  $message = __('Changes saved.', 'buddypress');
743
 
744
  // Record in activity stream
745
+ xprofile_record_activity( array( 'item_id' => $group->id, 'component_name' => $bp->profile->slug, 'component_action' => 'updated_profile', 'is_private' => 0 ) );
746
 
747
  do_action( 'xprofile_updated_profile', $group->id );
748
  }
773
  if ( $field_ids )
774
  $field_ids = implode( ",", $field_ids );
775
  ?>
776
+ <input type="hidden" name="field_ids" id="field_ids" value="<?php echo attribute_escape( $field_ids ); ?>" />
777
 
778
  <?php echo $list_html; ?>
779
 
bp-xprofile/bp-xprofile-classes.php CHANGED
@@ -412,7 +412,7 @@ Class BP_XProfile_Field {
412
  case 'textarea':
413
  $html .= '<div class="signup-field">';
414
  $html .= '<label class="signup-label" for="field_' . $this->id . '">' . $asterisk . $this->name . ':</label>';
415
- $html .= $this->message . '<textarea rows="5" cols="40" name="field_' . $this->id . '" id="field_' . $this->id . '">' . attribute_escape( $this->data->value ) . '</textarea>';
416
  $html .= '<span class="signup-description">' . $this->desc . '</span>';
417
  $html .= '</div>';
418
  break;
@@ -735,7 +735,7 @@ Class BP_XProfile_Field {
735
  <div id="titlediv" class="inside">
736
  <h3><label for="description"><?php _e("Field Description", 'buddypress') ?></label></h3>
737
  <div id="titlewrap">
738
- <textarea name="description" id="description" rows="8" cols="60"> <?php echo $this->desc ?></textarea>
739
  </div>
740
  </div>
741
 
@@ -822,7 +822,7 @@ Class BP_XProfile_Field {
822
  <p></p>
823
  <label for="description"><?php _e("Field Description", 'buddypress') ?></label>
824
  <div>
825
- <textarea name="description" id="description" rows="5" cols="60"><?php echo $field_data['Description']; ?></textarea>
826
  </div>
827
  <p></p>
828
  <label for="required">* <?php _e("Is This Field Required?", 'buddypress') ?></label>
412
  case 'textarea':
413
  $html .= '<div class="signup-field">';
414
  $html .= '<label class="signup-label" for="field_' . $this->id . '">' . $asterisk . $this->name . ':</label>';
415
+ $html .= $this->message . '<textarea rows="5" cols="40" name="field_' . $this->id . '" id="field_' . $this->id . '">' . htmlspecialchars( $this->data->value ) . '</textarea>';
416
  $html .= '<span class="signup-description">' . $this->desc . '</span>';
417
  $html .= '</div>';
418
  break;
735
  <div id="titlediv" class="inside">
736
  <h3><label for="description"><?php _e("Field Description", 'buddypress') ?></label></h3>
737
  <div id="titlewrap">
738
+ <textarea name="description" id="description" rows="8" cols="60"> <?php echo htmlspecialchars( $this->desc ); ?></textarea>
739
  </div>
740
  </div>
741
 
822
  <p></p>
823
  <label for="description"><?php _e("Field Description", 'buddypress') ?></label>
824
  <div>
825
+ <textarea name="description" id="description" rows="5" cols="60"><?php echo htmlspecialchars( $field_data['Description'] ); ?></textarea>
826
  </div>
827
  <p></p>
828
  <label for="required">* <?php _e("Is This Field Required?", 'buddypress') ?></label>
bp-xprofile/bp-xprofile-notifications.php CHANGED
@@ -25,7 +25,7 @@ function xprofile_record_wire_post_notification( $wire_post_id, $user_id, $poste
25
  bp_core_add_notification( $poster_id, $user_id, 'xprofile', 'new_wire_post' );
26
 
27
  if ( !get_usermeta( $bp->loggedin_user->id, 'notification_profile_wire_post' ) || 'yes' == get_usermeta( $bp->loggedin_user->id, 'notification_profile_wire_post' ) ) {
28
- $poster_name = bp_fetch_user_fullname( $poster_id, false );
29
  $wire_post = new BP_Wire_Post( $bp->profile->table_name_wire, $wire_post_id, true );
30
  $ud = get_userdata($user_id);
31
 
25
  bp_core_add_notification( $poster_id, $user_id, 'xprofile', 'new_wire_post' );
26
 
27
  if ( !get_usermeta( $bp->loggedin_user->id, 'notification_profile_wire_post' ) || 'yes' == get_usermeta( $bp->loggedin_user->id, 'notification_profile_wire_post' ) ) {
28
+ $poster_name = bp_core_get_user_displayname( $poster_id );
29
  $wire_post = new BP_Wire_Post( $bp->profile->table_name_wire, $wire_post_id, true );
30
  $ud = get_userdata($user_id);
31
 
bp-xprofile/bp-xprofile-signup.php CHANGED
@@ -36,7 +36,7 @@ function xprofile_add_signup_fields() {
36
  }
37
  ?>
38
  </div>
39
- <input type="hidden" name="xprofile_ids" value="<?php echo $field_ids; ?>" />
40
  <?php
41
  }
42
 
@@ -85,30 +85,59 @@ add_action( 'signup_extra_fields', 'xprofile_add_signup_fields' );
85
  **************************************************************************/
86
 
87
  function xprofile_validate_signup_fields( $result ) {
88
- global $bp_xprofile_callback, $avatar_error, $avatar_error_msg, $has_errors;
89
  global $canvas, $original;
90
  global $current_site, $active_signup;
91
  global $wp_upload_error;
 
92
 
93
  if ( $_POST['stage'] != 'validate-user-signup' ) return $result;
94
 
95
- // form has been submitted, let's validate the form
96
- // using the built in Wordpress functions and our own.
97
-
98
  extract($result);
99
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
100
  $counter = 0;
101
- $has_errors = false;
102
  $prev_field_id = -1;
103
 
104
  // Validate all sign up fields
105
  $fields = BP_XProfile_Field::get_signup_fields();
106
-
107
  if ( $fields ) {
108
  foreach ( $fields as $field ) {
109
 
110
  $value = $_POST['field_' . $field->id];
111
-
112
  // Need to check if the previous field had
113
  // the same ID, as to not validate individual
114
  // day/month/year dropdowns individually.
@@ -132,10 +161,10 @@ function xprofile_validate_signup_fields( $result ) {
132
  "type" => $field->type,
133
  "value" => $value
134
  );
135
-
136
  if ( $field->is_required && empty( $value ) ) {
137
  $bp_xprofile_callback[$counter]["error_msg"] = sprintf( __( '%s cannot be left blank', 'buddypress' ), $field->name );
138
- $has_errors = true;
139
  }
140
 
141
  $counter++;
@@ -166,24 +195,24 @@ function xprofile_validate_signup_fields( $result ) {
166
 
167
  if ( 4 !== $_FILES['file']['error'] ) {
168
  if ( !$checked_upload = bp_core_check_avatar_upload($_FILES) ) {
169
- $avatar_error = true;
170
  $avatar_error_msg = $uploadErrors[$_FILES['file']['error']];
171
  }
172
 
173
  if ( $checked_upload && !$checked_size = bp_core_check_avatar_size($_FILES) ) {
174
- $avatar_error = true;
175
  $avatar_size = size_format(CORE_MAX_FILE_SIZE);
176
  $avatar_error_msg = sprintf( __('The file you uploaded is too big. Please upload a file under %s', 'buddypress'), $avatar_size);
177
  }
178
 
179
  if ( $checked_upload && $checked_size && !$checked_type = bp_core_check_avatar_type($_FILES) ) {
180
- $avatar_error = true;
181
  $avatar_error_msg = __('Please upload only JPG, GIF or PNG photos.', 'buddypress');
182
  }
183
 
184
  // "Handle" upload into temporary location
185
  if ( $checked_upload && $checked_size && $checked_type && !$original = bp_core_handle_avatar_upload($_FILES) ) {
186
- $avatar_error = true;
187
  $avatar_error_msg = sprintf( __('Upload Failed! Error was: %s', 'buddypress'), $wp_upload_error );
188
  }
189
 
@@ -191,50 +220,43 @@ function xprofile_validate_signup_fields( $result ) {
191
  $canvas = $original;
192
  }
193
  }
194
-
195
- if ( !$has_errors && !$avatar_error ) {
 
 
 
196
  $public = (int) $_POST['blog_public'];
197
 
198
  // put the user profile meta in a session ready to store.
199
  for ( $i = 0; $i < count($bp_xprofile_callback); $i++ ) {
200
- $meta['field_' . $bp_xprofile_callback[$i]['field_id']] .= $bp_xprofile_callback[$i]['value'];
201
  }
202
 
203
- $meta['xprofile_field_ids'] = $_POST['xprofile_ids'];
204
- $meta['avatar_image_resized'] = $canvas;
205
- $meta['avatar_image_original'] = $original;
206
-
207
- $_SESSION['xprofile_meta'] = $meta;
208
- } else {
209
- $errors->add( 'bp_xprofile_errors', '' );
210
  }
211
-
212
- return array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
213
  }
214
- add_filter( 'wpmu_validate_user_signup', 'xprofile_validate_signup_fields', 10, 1 );
215
-
216
-
217
- function xprofile_add_blog_signup_meta( $meta ) {
218
- $_SESSION['xprofile_meta']['public'] = (int) $_POST['blog_public'];
219
- $_SESSION['xprofile_meta']['lang_id'] = 1; // deprecated
220
- $_SESSION['xprofile_meta']['blogname'] = $_POST['blogname'];
221
- $_SESSION['xprofile_meta']['blog_title'] = $_POST['blog_title'];
222
-
223
- return $meta;
224
- }
225
-
226
- add_filter( 'wpmu_validate_blog_signup', 'xprofile_add_blog_signup_meta' );
227
 
 
 
 
 
228
 
229
- function xprofile_add_profile_meta( $meta ) {
230
- global $bp;
 
 
 
 
231
 
232
- if ( $bp->current_component != $bp->blogs->slug )
233
- return $_SESSION['xprofile_meta'];
234
- else
235
- return $meta;
236
  }
237
- add_filter( 'add_signup_meta', 'xprofile_add_profile_meta' );
238
 
239
  /**************************************************************************
240
  xprofile_on_activate_user()
@@ -264,7 +286,6 @@ function xprofile_on_activate_user( $user_id, $password, $meta ) {
264
  }
265
  add_action( 'wpmu_activate_user', 'xprofile_on_activate_user', 1, 3 );
266
 
267
-
268
  function xprofile_extract_signup_meta( $user_id, $meta ) {
269
  // Extract signup meta fields to fill out profile
270
  $field_ids = $meta['xprofile_field_ids'];
36
  }
37
  ?>
38
  </div>
39
+ <input type="hidden" name="xprofile_ids" value="<?php echo attribute_escape( $field_ids ); ?>" />
40
  <?php
41
  }
42
 
85
  **************************************************************************/
86
 
87
  function xprofile_validate_signup_fields( $result ) {
88
+ global $bp_xprofile_callback, $avatar_error_msg;
89
  global $canvas, $original;
90
  global $current_site, $active_signup;
91
  global $wp_upload_error;
92
+ global $bp_signup_has_errors, $bp_signup_avatar_has_errors;
93
 
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
+
101
+ return array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
102
+ }
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 = unserialize( stripslashes( $_COOKIE['bp_xprofile_meta'] ) );
112
+ } else {
113
+ $bp_meta = $meta;
114
+ }
115
+
116
+ return $bp_meta;
117
+ }
118
+ add_filter( 'add_signup_meta', 'xprofile_add_profile_meta' );
119
+
120
+ function xprofile_load_signup_meta() {
121
+ global $bp_signup_has_errors, $bp_signup_avatar_has_errors;
122
+ global $bp_xprofile_callback, $avatar_error_msg;
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;
132
 
133
  // Validate all sign up fields
134
  $fields = BP_XProfile_Field::get_signup_fields();
135
+
136
  if ( $fields ) {
137
  foreach ( $fields as $field ) {
138
 
139
  $value = $_POST['field_' . $field->id];
140
+
141
  // Need to check if the previous field had
142
  // the same ID, as to not validate individual
143
  // day/month/year dropdowns individually.
161
  "type" => $field->type,
162
  "value" => $value
163
  );
164
+
165
  if ( $field->is_required && empty( $value ) ) {
166
  $bp_xprofile_callback[$counter]["error_msg"] = sprintf( __( '%s cannot be left blank', 'buddypress' ), $field->name );
167
+ $bp_signup_has_errors = true;
168
  }
169
 
170
  $counter++;
195
 
196
  if ( 4 !== $_FILES['file']['error'] ) {
197
  if ( !$checked_upload = bp_core_check_avatar_upload($_FILES) ) {
198
+ $bp_signup_avatar_has_errors = true;
199
  $avatar_error_msg = $uploadErrors[$_FILES['file']['error']];
200
  }
201
 
202
  if ( $checked_upload && !$checked_size = bp_core_check_avatar_size($_FILES) ) {
203
+ $bp_signup_avatar_has_errors = true;
204
  $avatar_size = size_format(CORE_MAX_FILE_SIZE);
205
  $avatar_error_msg = sprintf( __('The file you uploaded is too big. Please upload a file under %s', 'buddypress'), $avatar_size);
206
  }
207
 
208
  if ( $checked_upload && $checked_size && !$checked_type = bp_core_check_avatar_type($_FILES) ) {
209
+ $bp_signup_avatar_has_errors = true;
210
  $avatar_error_msg = __('Please upload only JPG, GIF or PNG photos.', 'buddypress');
211
  }
212
 
213
  // "Handle" upload into temporary location
214
  if ( $checked_upload && $checked_size && $checked_type && !$original = bp_core_handle_avatar_upload($_FILES) ) {
215
+ $bp_signup_avatar_has_errors = true;
216
  $avatar_error_msg = sprintf( __('Upload Failed! Error was: %s', 'buddypress'), $wp_upload_error );
217
  }
218
 
220
  $canvas = $original;
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
+ $bp_meta['field_' . $bp_xprofile_callback[$i]['field_id']] .= $bp_xprofile_callback[$i]['value'];
233
  }
234
 
235
+ $bp_meta['xprofile_field_ids'] = $_POST['xprofile_ids'];
236
+ $bp_meta['avatar_image_resized'] = $canvas;
237
+ $bp_meta['avatar_image_original'] = $original;
238
+
239
+ setcookie( 'bp_xprofile_meta', serialize($bp_meta), time()+60*60*24, COOKIEPATH );
 
 
240
  }
 
 
241
  }
242
+ add_action( 'init', 'xprofile_load_signup_meta' );
 
 
 
 
 
 
 
 
 
 
 
 
243
 
244
+ 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
252
+ 'blogname' => $_POST['blogname'],
253
+ 'blog_title' => $_POST['blog_title']
254
+ );
255
 
256
+ $bp_meta = unserialize( stripslashes( $_COOKIE['bp_xprofile_meta'] ) );
257
+ $bp_blog_signup_meta = array_merge( $bp_meta, $blog_meta );
 
 
258
  }
259
+ add_action( 'init', 'xprofile_load_blog_signup_meta' );
260
 
261
  /**************************************************************************
262
  xprofile_on_activate_user()
286
  }
287
  add_action( 'wpmu_activate_user', 'xprofile_on_activate_user', 1, 3 );
288
 
 
289
  function xprofile_extract_signup_meta( $user_id, $meta ) {
290
  // Extract signup meta fields to fill out profile
291
  $field_ids = $meta['xprofile_field_ids'];
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
 
@@ -12,7 +12,7 @@ BuddyPress is a suite of WordPress MU social networking plugins and themes.
12
  BuddyPress will extend WordPress MU and bring social networking features to a new or existing installation.
13
 
14
  BuddyPress is a suite of WordPress plugins and themes, each adding a distinct new feature. BuddyPress
15
- contains all the features you’d expect from WordPress but aims to let members socially interact.
16
 
17
  All BuddyPress plugins can be themed to match your own style, in just the same way as a WordPress blog.
18
  The BuddyPress plugins are bundled with a default theme to get you going out of the box.
@@ -37,6 +37,14 @@ The default home theme is not required, you can use a standard WordPress theme f
37
  There are a few more steps to get you going correctly, to read the full setup guide, please visit:
38
  http://codex.buddypress.org/getting-started/installing-buddypress/
39
 
 
 
 
 
 
 
 
 
40
  == Frequently Asked Questions ==
41
 
42
  = Will this work on standard WordPress? =
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.1
7
 
8
  BuddyPress is a suite of WordPress MU social networking plugins and themes.
9
 
12
  BuddyPress will extend WordPress MU and bring social networking features to a new or existing installation.
13
 
14
  BuddyPress is a suite of WordPress plugins and themes, each adding a distinct new feature. BuddyPress
15
+ contains all the features you'd expect from WordPress but aims to let members socially interact.
16
 
17
  All BuddyPress plugins can be themed to match your own style, in just the same way as a WordPress blog.
18
  The BuddyPress plugins are bundled with a default theme to get you going out of the box.
37
  There are a few more steps to get you going correctly, to read the full setup guide, please visit:
38
  http://codex.buddypress.org/getting-started/installing-buddypress/
39
 
40
+ --- Upgrading from an earlier version: ---
41
+
42
+ 1. Backup!
43
+ 2. Overwrite the /plugins/buddypress/ directory with the latest version.
44
+ 3. If you are using the default themes, overwrite them using the new versions in the /plugins/buddypress/
45
+ directory. If you are using your own custom themes, they will continue to work with no changes needed.
46
+
47
+
48
  == Frequently Asked Questions ==
49
 
50
  = Will this work on standard WordPress? =