Version Description
See: http://codex.buddypress.org/releases/version-2-0-1/
Download this release
Release Info
| Developer | boonebgorges |
| Plugin | |
| Version | 2.0.1 |
| Comparing to | |
| See all releases | |
Code changes from version 2.0 to 2.0.1
- bp-blogs/bp-blogs-activity.php +65 -0
- bp-blogs/bp-blogs-functions.php +5 -0
- bp-core/admin/bp-core-functions.php +0 -35
- bp-core/admin/bp-core-schema.php +37 -13
- bp-core/bp-core-admin.php +1 -0
- bp-core/bp-core-classes.php +1 -1
- bp-core/bp-core-filters.php +9 -3
- bp-core/bp-core-update.php +77 -38
- bp-groups/bp-groups-functions.php +1 -0
- bp-groups/bp-groups-template.php +30 -9
- bp-languages/buddypress.pot +35 -39
- bp-loader.php +3 -3
- bp-members/bp-members-admin.php +4 -0
- bp-members/bp-members-classes.php +6 -2
- bp-members/bp-members-functions.php +81 -4
- bp-settings/bp-settings-actions.php +5 -0
- bp-templates/bp-legacy/buddypress-functions.php +1 -1
- bp-xprofile/bp-xprofile-activity.php +4 -0
- bp-xprofile/bp-xprofile-classes.php +54 -0
- bp-xprofile/bp-xprofile-functions.php +2 -3
- bp-xprofile/bp-xprofile-screens.php +1 -1
- readme.txt +10 -1
bp-blogs/bp-blogs-activity.php
CHANGED
|
@@ -852,3 +852,68 @@ function bp_blogs_activity_comment_permalink( $retval ) {
|
|
| 852 |
return $retval;
|
| 853 |
}
|
| 854 |
add_filter( 'bp_get_activity_comment_permalink', 'bp_blogs_activity_comment_permalink' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 852 |
return $retval;
|
| 853 |
}
|
| 854 |
add_filter( 'bp_get_activity_comment_permalink', 'bp_blogs_activity_comment_permalink' );
|
| 855 |
+
|
| 856 |
+
/**
|
| 857 |
+
* Changes single activity comment entries to use the blog comment permalink.
|
| 858 |
+
*
|
| 859 |
+
* This is only done if the activity comment is associated with a blog comment.
|
| 860 |
+
*
|
| 861 |
+
* @since BuddyPress (2.0.1)
|
| 862 |
+
*
|
| 863 |
+
* @param string $retval The activity permalink
|
| 864 |
+
* @param BP_Activity_Activity $activity
|
| 865 |
+
* @return string
|
| 866 |
+
*/
|
| 867 |
+
function bp_blogs_activity_comment_single_permalink( $retval, $activity ) {
|
| 868 |
+
if ( 'activity_comment' !== $activity->type ) {
|
| 869 |
+
return $retval;
|
| 870 |
+
}
|
| 871 |
+
|
| 872 |
+
$blog_comment_id = bp_activity_get_meta( $activity->id, 'bp_blogs_post_comment_id' );
|
| 873 |
+
|
| 874 |
+
if ( ! empty( $blog_comment_id ) ) {
|
| 875 |
+
$retval = $activity->primary_link;
|
| 876 |
+
}
|
| 877 |
+
|
| 878 |
+
return $retval;
|
| 879 |
+
}
|
| 880 |
+
add_filter( 'bp_activity_get_permalink', 'bp_blogs_activity_comment_single_permalink', 10, 2 );
|
| 881 |
+
|
| 882 |
+
/**
|
| 883 |
+
* Formats single activity comment entries to use the blog comment action.
|
| 884 |
+
*
|
| 885 |
+
* This is only done if the activity comment is associated with a blog comment.
|
| 886 |
+
*
|
| 887 |
+
* @since BuddyPress (2.0.1)
|
| 888 |
+
*
|
| 889 |
+
* @param string $retval The activity action
|
| 890 |
+
* @param BP_Activity_Activity $activity
|
| 891 |
+
* @return string
|
| 892 |
+
*/
|
| 893 |
+
function bp_blogs_activity_comment_single_action( $retval, $activity ) {
|
| 894 |
+
if ( 'activity_comment' !== $activity->type ) {
|
| 895 |
+
return $retval;
|
| 896 |
+
}
|
| 897 |
+
|
| 898 |
+
$blog_comment_id = bp_activity_get_meta( $activity->id, 'bp_blogs_post_comment_id' );
|
| 899 |
+
|
| 900 |
+
if ( ! empty( $blog_comment_id ) ) {
|
| 901 |
+
// fetch the parent blog post activity item
|
| 902 |
+
$parent_blog_post_activity = new BP_Activity_Activity( $activity->item_id );
|
| 903 |
+
|
| 904 |
+
// fake a 'new_blog_comment' activity object
|
| 905 |
+
$object = $activity;
|
| 906 |
+
|
| 907 |
+
// override 'item_id' to use blog ID
|
| 908 |
+
$object->item_id = $parent_blog_post_activity->item_id;
|
| 909 |
+
|
| 910 |
+
// override 'secondary_item_id' to use comment ID
|
| 911 |
+
$object->secondary_item_id = $blog_comment_id;
|
| 912 |
+
|
| 913 |
+
// now format the activity action using the 'new_blog_comment' action callback
|
| 914 |
+
$retval = bp_blogs_format_activity_action_new_blog_comment( '', $object );
|
| 915 |
+
}
|
| 916 |
+
|
| 917 |
+
return $retval;
|
| 918 |
+
}
|
| 919 |
+
add_filter( 'bp_get_activity_action_pre_meta', 'bp_blogs_activity_comment_single_action', 10, 2 );
|
bp-blogs/bp-blogs-functions.php
CHANGED
|
@@ -540,6 +540,11 @@ function bp_blogs_update_post( $post ) {
|
|
| 540 |
* @return bool|object Returns false on failure, the comment object on success.
|
| 541 |
*/
|
| 542 |
function bp_blogs_record_comment( $comment_id, $is_approved = true ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 543 |
// Get the users comment
|
| 544 |
$recorded_comment = get_comment( $comment_id );
|
| 545 |
|
| 540 |
* @return bool|object Returns false on failure, the comment object on success.
|
| 541 |
*/
|
| 542 |
function bp_blogs_record_comment( $comment_id, $is_approved = true ) {
|
| 543 |
+
// bail if activity component is not active
|
| 544 |
+
if ( ! bp_is_active( 'activity' ) ) {
|
| 545 |
+
return;
|
| 546 |
+
}
|
| 547 |
+
|
| 548 |
// Get the users comment
|
| 549 |
$recorded_comment = get_comment( $comment_id );
|
| 550 |
|
bp-core/admin/bp-core-functions.php
CHANGED
|
@@ -276,8 +276,6 @@ function bp_core_activation_notice() {
|
|
| 276 |
'id' => 'register',
|
| 277 |
'name' => __( 'Register', 'buddypress' )
|
| 278 |
);
|
| 279 |
-
|
| 280 |
-
bp_core_maybe_install_signups();
|
| 281 |
}
|
| 282 |
|
| 283 |
// On the first admin screen after a new installation, this isn't set, so grab it to supress a misleading error message.
|
|
@@ -793,39 +791,6 @@ function bp_admin_wp_nav_menu_restrict_items() {
|
|
| 793 |
<?php
|
| 794 |
}
|
| 795 |
|
| 796 |
-
/**
|
| 797 |
-
* Check if the signups table needs to be created.
|
| 798 |
-
*
|
| 799 |
-
* @since BuddyPress (2.0.0)
|
| 800 |
-
*
|
| 801 |
-
* @global $wpdb
|
| 802 |
-
*/
|
| 803 |
-
function bp_core_maybe_install_signups() {
|
| 804 |
-
global $wpdb;
|
| 805 |
-
|
| 806 |
-
// Multisite installations already have the signups table.
|
| 807 |
-
if ( ! empty( $wpdb->signups ) ) {
|
| 808 |
-
return;
|
| 809 |
-
}
|
| 810 |
-
|
| 811 |
-
$bp_signups = bp_core_get_table_prefix() . 'signups';
|
| 812 |
-
|
| 813 |
-
// Check for the table
|
| 814 |
-
$suppress = $wpdb->suppress_errors();
|
| 815 |
-
$table_exists = $wpdb->get_results( "DESCRIBE {$bp_signups};" );
|
| 816 |
-
$wpdb->suppress_errors( $suppress );
|
| 817 |
-
|
| 818 |
-
// Bail if the table exists
|
| 819 |
-
if ( ! empty( $table_exists ) ) {
|
| 820 |
-
return;
|
| 821 |
-
}
|
| 822 |
-
|
| 823 |
-
// Signups is not there and we need it so let's create it
|
| 824 |
-
require_once( buddypress()->plugin_dir . '/bp-core/admin/bp-core-schema.php' );
|
| 825 |
-
|
| 826 |
-
bp_core_install_signups();
|
| 827 |
-
}
|
| 828 |
-
|
| 829 |
/**
|
| 830 |
* Add "Mark as Spam/Ham" button to user row actions.
|
| 831 |
*
|
| 276 |
'id' => 'register',
|
| 277 |
'name' => __( 'Register', 'buddypress' )
|
| 278 |
);
|
|
|
|
|
|
|
| 279 |
}
|
| 280 |
|
| 281 |
// On the first admin screen after a new installation, this isn't set, so grab it to supress a misleading error message.
|
| 791 |
<?php
|
| 792 |
}
|
| 793 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 794 |
/**
|
| 795 |
* Add "Mark as Spam/Ham" button to user row actions.
|
| 796 |
*
|
bp-core/admin/bp-core-schema.php
CHANGED
|
@@ -51,9 +51,8 @@ function bp_core_install( $active_components = false ) {
|
|
| 51 |
if ( !empty( $active_components['blogs'] ) )
|
| 52 |
bp_core_install_blog_tracking();
|
| 53 |
|
| 54 |
-
//
|
| 55 |
-
|
| 56 |
-
|
| 57 |
}
|
| 58 |
|
| 59 |
function bp_core_install_notifications() {
|
|
@@ -348,6 +347,8 @@ function bp_core_install_blog_tracking() {
|
|
| 348 |
dbDelta( $sql );
|
| 349 |
}
|
| 350 |
|
|
|
|
|
|
|
| 351 |
/**
|
| 352 |
* Install the signups table.
|
| 353 |
*
|
|
@@ -359,19 +360,15 @@ function bp_core_install_blog_tracking() {
|
|
| 359 |
function bp_core_install_signups() {
|
| 360 |
global $wpdb;
|
| 361 |
|
| 362 |
-
//
|
| 363 |
-
|
| 364 |
-
|
| 365 |
-
}
|
| 366 |
|
| 367 |
-
|
| 368 |
-
|
| 369 |
-
// Setting the charset to be sure WordPress upgrade.php is loaded
|
| 370 |
-
$charset_collate = bp_core_set_charset();
|
| 371 |
|
| 372 |
// Use WP's core CREATE TABLE query
|
| 373 |
$create_queries = wp_get_db_schema( 'ms_global' );
|
| 374 |
-
|
| 375 |
if ( ! is_array( $create_queries ) ) {
|
| 376 |
$create_queries = explode( ';', $create_queries );
|
| 377 |
$create_queries = array_filter( $create_queries );
|
|
@@ -380,13 +377,40 @@ function bp_core_install_signups() {
|
|
| 380 |
// Filter out all the queries except wp_signups
|
| 381 |
foreach ( $create_queries as $key => $query ) {
|
| 382 |
if ( preg_match( "|CREATE TABLE ([^ ]*)|", $query, $matches ) ) {
|
| 383 |
-
if (
|
| 384 |
unset( $create_queries[ $key ] );
|
| 385 |
}
|
| 386 |
}
|
| 387 |
}
|
| 388 |
|
|
|
|
| 389 |
if ( ! empty( $create_queries ) ) {
|
| 390 |
dbDelta( $create_queries );
|
| 391 |
}
|
| 392 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 51 |
if ( !empty( $active_components['blogs'] ) )
|
| 52 |
bp_core_install_blog_tracking();
|
| 53 |
|
| 54 |
+
// Maybe install (or upgrade) the signups table
|
| 55 |
+
bp_core_maybe_install_signups();
|
|
|
|
| 56 |
}
|
| 57 |
|
| 58 |
function bp_core_install_notifications() {
|
| 347 |
dbDelta( $sql );
|
| 348 |
}
|
| 349 |
|
| 350 |
+
/** Signups *******************************************************************/
|
| 351 |
+
|
| 352 |
/**
|
| 353 |
* Install the signups table.
|
| 354 |
*
|
| 360 |
function bp_core_install_signups() {
|
| 361 |
global $wpdb;
|
| 362 |
|
| 363 |
+
// Signups is not there and we need it so let's create it
|
| 364 |
+
require_once( buddypress()->plugin_dir . '/bp-core/admin/bp-core-schema.php' );
|
| 365 |
+
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
|
|
|
|
| 366 |
|
| 367 |
+
// Never use bp_core_get_table_prefix() for any global users tables
|
| 368 |
+
$wpdb->signups = $wpdb->base_prefix . 'signups';
|
|
|
|
|
|
|
| 369 |
|
| 370 |
// Use WP's core CREATE TABLE query
|
| 371 |
$create_queries = wp_get_db_schema( 'ms_global' );
|
|
|
|
| 372 |
if ( ! is_array( $create_queries ) ) {
|
| 373 |
$create_queries = explode( ';', $create_queries );
|
| 374 |
$create_queries = array_filter( $create_queries );
|
| 377 |
// Filter out all the queries except wp_signups
|
| 378 |
foreach ( $create_queries as $key => $query ) {
|
| 379 |
if ( preg_match( "|CREATE TABLE ([^ ]*)|", $query, $matches ) ) {
|
| 380 |
+
if ( trim( $matches[1], '`' ) !== $wpdb->signups ) {
|
| 381 |
unset( $create_queries[ $key ] );
|
| 382 |
}
|
| 383 |
}
|
| 384 |
}
|
| 385 |
|
| 386 |
+
// Run WordPress's database upgrader
|
| 387 |
if ( ! empty( $create_queries ) ) {
|
| 388 |
dbDelta( $create_queries );
|
| 389 |
}
|
| 390 |
}
|
| 391 |
+
|
| 392 |
+
/**
|
| 393 |
+
* Update the signups table, adding `signup_id` column and drop `domain` index.
|
| 394 |
+
*
|
| 395 |
+
* This is necessary because WordPress's `pre_schema_upgrade()` function wraps
|
| 396 |
+
* table ALTER's in multisite checks, and other plugins may have installed their
|
| 397 |
+
* own sign-ups table; Eg: Gravity Forms User Registration Add On
|
| 398 |
+
*
|
| 399 |
+
* @since BuddyPress (2.0.1)
|
| 400 |
+
*
|
| 401 |
+
* @see pre_schema_upgrade()
|
| 402 |
+
* @link https://core.trac.wordpress.org/ticket/27855 WordPress Trac Ticket
|
| 403 |
+
* @link https://buddypress.trac.wordpress.org/ticket/5563 BuddyPress Trac Ticket
|
| 404 |
+
*
|
| 405 |
+
* @global WPDB $wpdb
|
| 406 |
+
*/
|
| 407 |
+
function bp_core_upgrade_signups() {
|
| 408 |
+
global $wpdb;
|
| 409 |
+
|
| 410 |
+
// Never use bp_core_get_table_prefix() for any global users tables
|
| 411 |
+
$wpdb->signups = $wpdb->base_prefix . 'signups';
|
| 412 |
+
|
| 413 |
+
// Attempt to alter the signups table
|
| 414 |
+
$wpdb->query( "ALTER TABLE {$wpdb->signups} ADD signup_id BIGINT(20) NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST" );
|
| 415 |
+
$wpdb->query( "ALTER TABLE {$wpdb->signups} DROP INDEX domain" );
|
| 416 |
+
}
|
bp-core/bp-core-admin.php
CHANGED
|
@@ -652,6 +652,7 @@ class BP_Admin {
|
|
| 652 |
<?php printf( __( 'Thanks for updating! With a focus on speed, admin tools, and developer enhancements, BuddyPress %s is our leanest and most powerful version yet.', 'buddypress' ), $display_version ); ?>
|
| 653 |
<?php endif; ?>
|
| 654 |
</div>
|
|
|
|
| 655 |
<div class="bp-badge"></div>
|
| 656 |
|
| 657 |
<h2 class="nav-tab-wrapper">
|
| 652 |
<?php printf( __( 'Thanks for updating! With a focus on speed, admin tools, and developer enhancements, BuddyPress %s is our leanest and most powerful version yet.', 'buddypress' ), $display_version ); ?>
|
| 653 |
<?php endif; ?>
|
| 654 |
</div>
|
| 655 |
+
|
| 656 |
<div class="bp-badge"></div>
|
| 657 |
|
| 658 |
<h2 class="nav-tab-wrapper">
|
bp-core/bp-core-classes.php
CHANGED
|
@@ -883,7 +883,7 @@ class BP_Core_User {
|
|
| 883 |
|
| 884 |
$sql = array();
|
| 885 |
|
| 886 |
-
$sql['select_main'] = "SELECT u.ID as id, u.user_registered, u.user_nicename, u.user_login, u.display_name, u.user_email";
|
| 887 |
|
| 888 |
if ( 'active' == $type || 'online' == $type || 'newest' == $type ) {
|
| 889 |
$sql['select_active'] = ", um.meta_value as last_activity";
|
| 883 |
|
| 884 |
$sql = array();
|
| 885 |
|
| 886 |
+
$sql['select_main'] = "SELECT DISTINCT u.ID as id, u.user_registered, u.user_nicename, u.user_login, u.display_name, u.user_email";
|
| 887 |
|
| 888 |
if ( 'active' == $type || 'online' == $type || 'newest' == $type ) {
|
| 889 |
$sql['select_active'] = ", um.meta_value as last_activity";
|
bp-core/bp-core-filters.php
CHANGED
|
@@ -537,10 +537,16 @@ function bp_setup_nav_menu_item( $menu_item ) {
|
|
| 537 |
break;
|
| 538 |
}
|
| 539 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 540 |
// Highlight the current page
|
| 541 |
-
|
| 542 |
-
|
| 543 |
-
$menu_item->
|
|
|
|
|
|
|
| 544 |
}
|
| 545 |
|
| 546 |
return $menu_item;
|
| 537 |
break;
|
| 538 |
}
|
| 539 |
|
| 540 |
+
// If component is deactivated, make sure menu item doesn't render
|
| 541 |
+
if ( empty( $menu_item->url ) ) {
|
| 542 |
+
$menu_item->_invalid = true;
|
| 543 |
+
|
| 544 |
// Highlight the current page
|
| 545 |
+
} else {
|
| 546 |
+
$current = bp_get_requested_url();
|
| 547 |
+
if ( strpos( $current, $menu_item->url ) !== false ) {
|
| 548 |
+
$menu_item->classes[] = 'current_page_item';
|
| 549 |
+
}
|
| 550 |
}
|
| 551 |
|
| 552 |
return $menu_item;
|
bp-core/bp-core-update.php
CHANGED
|
@@ -235,6 +235,11 @@ function bp_version_updater() {
|
|
| 235 |
if ( $raw_db_version < 7892 ) {
|
| 236 |
bp_update_to_2_0();
|
| 237 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 238 |
}
|
| 239 |
|
| 240 |
/** All done! *************************************************************/
|
|
@@ -243,6 +248,8 @@ function bp_version_updater() {
|
|
| 243 |
bp_version_bump();
|
| 244 |
}
|
| 245 |
|
|
|
|
|
|
|
| 246 |
/**
|
| 247 |
* Remove unused metadata from database when upgrading from < 1.5.
|
| 248 |
*
|
|
@@ -338,9 +345,10 @@ function bp_update_to_1_9_2() {
|
|
| 338 |
* - Ensure that the activity tables are installed, for last_activity storage.
|
| 339 |
* - Migrate last_activity data from usermeta to activity table
|
| 340 |
* - Add values for all BuddyPress options to the options table
|
|
|
|
|
|
|
| 341 |
*/
|
| 342 |
function bp_update_to_2_0() {
|
| 343 |
-
global $wpdb;
|
| 344 |
|
| 345 |
/** Install activity tables for 'last_activity' ***************************/
|
| 346 |
|
|
@@ -354,44 +362,11 @@ function bp_update_to_2_0() {
|
|
| 354 |
|
| 355 |
if ( ! is_multisite() ) {
|
| 356 |
|
| 357 |
-
|
| 358 |
-
|
| 359 |
-
}
|
| 360 |
-
|
| 361 |
-
$signups = get_users( array(
|
| 362 |
-
'fields' => 'all_with_meta',
|
| 363 |
-
'meta_key' => 'activation_key',
|
| 364 |
-
'meta_compare' => 'EXISTS',
|
| 365 |
-
) );
|
| 366 |
-
|
| 367 |
-
if ( empty( $signups ) ) {
|
| 368 |
-
return;
|
| 369 |
-
}
|
| 370 |
-
|
| 371 |
-
foreach ( $signups as $signup ) {
|
| 372 |
-
$meta = array();
|
| 373 |
-
|
| 374 |
-
if ( bp_is_active( 'xprofile' ) ) {
|
| 375 |
-
$meta['field_1'] = $signup->display_name;
|
| 376 |
-
}
|
| 377 |
-
|
| 378 |
-
$meta['password'] = $signup->user_pass;
|
| 379 |
|
| 380 |
-
|
| 381 |
-
|
| 382 |
-
|
| 383 |
-
BP_Signup::add( array(
|
| 384 |
-
'user_login' => $user_login,
|
| 385 |
-
'user_email' => $user_email,
|
| 386 |
-
'registered' => $signup->user_registered,
|
| 387 |
-
'activation_key' => $signup->activation_key,
|
| 388 |
-
'meta' => $meta
|
| 389 |
-
) );
|
| 390 |
-
|
| 391 |
-
// Deleting these options will remove signups from users count
|
| 392 |
-
delete_user_option( $signup->ID, 'capabilities' );
|
| 393 |
-
delete_user_option( $signup->ID, 'user_level' );
|
| 394 |
-
}
|
| 395 |
}
|
| 396 |
|
| 397 |
/** Add BP options to the options table ***********************************/
|
|
@@ -399,6 +374,20 @@ function bp_update_to_2_0() {
|
|
| 399 |
bp_add_options();
|
| 400 |
}
|
| 401 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 402 |
/**
|
| 403 |
* Redirect user to BP's What's New page on first page load after activation.
|
| 404 |
*
|
|
@@ -424,6 +413,56 @@ function bp_add_activation_redirect() {
|
|
| 424 |
set_transient( '_bp_activation_redirect', true, 30 );
|
| 425 |
}
|
| 426 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 427 |
/** Activation Actions ********************************************************/
|
| 428 |
|
| 429 |
/**
|
| 235 |
if ( $raw_db_version < 7892 ) {
|
| 236 |
bp_update_to_2_0();
|
| 237 |
}
|
| 238 |
+
|
| 239 |
+
// 2.0.1
|
| 240 |
+
if ( $raw_db_version < 8311 ) {
|
| 241 |
+
bp_update_to_2_0_1();
|
| 242 |
+
}
|
| 243 |
}
|
| 244 |
|
| 245 |
/** All done! *************************************************************/
|
| 248 |
bp_version_bump();
|
| 249 |
}
|
| 250 |
|
| 251 |
+
/** Upgrade Routines **********************************************************/
|
| 252 |
+
|
| 253 |
/**
|
| 254 |
* Remove unused metadata from database when upgrading from < 1.5.
|
| 255 |
*
|
| 345 |
* - Ensure that the activity tables are installed, for last_activity storage.
|
| 346 |
* - Migrate last_activity data from usermeta to activity table
|
| 347 |
* - Add values for all BuddyPress options to the options table
|
| 348 |
+
*
|
| 349 |
+
* @since BuddyPress (2.0.0)
|
| 350 |
*/
|
| 351 |
function bp_update_to_2_0() {
|
|
|
|
| 352 |
|
| 353 |
/** Install activity tables for 'last_activity' ***************************/
|
| 354 |
|
| 362 |
|
| 363 |
if ( ! is_multisite() ) {
|
| 364 |
|
| 365 |
+
// Maybe install the signups table
|
| 366 |
+
bp_core_maybe_install_signups();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 367 |
|
| 368 |
+
// Run the migration script
|
| 369 |
+
bp_members_migrate_signups();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 370 |
}
|
| 371 |
|
| 372 |
/** Add BP options to the options table ***********************************/
|
| 374 |
bp_add_options();
|
| 375 |
}
|
| 376 |
|
| 377 |
+
/**
|
| 378 |
+
* 2.0.1 database upgrade routine
|
| 379 |
+
*
|
| 380 |
+
* @since BuddyPress (2.0.1)
|
| 381 |
+
*
|
| 382 |
+
* @return void
|
| 383 |
+
*/
|
| 384 |
+
function bp_update_to_2_0_1() {
|
| 385 |
+
|
| 386 |
+
// We purposely call this during both the 2.0 upgrade and the 2.0.1 upgrade.
|
| 387 |
+
// Don't worry; it won't break anything, and safely handles all cases.
|
| 388 |
+
bp_core_maybe_install_signups();
|
| 389 |
+
}
|
| 390 |
+
|
| 391 |
/**
|
| 392 |
* Redirect user to BP's What's New page on first page load after activation.
|
| 393 |
*
|
| 413 |
set_transient( '_bp_activation_redirect', true, 30 );
|
| 414 |
}
|
| 415 |
|
| 416 |
+
/** Signups *******************************************************************/
|
| 417 |
+
|
| 418 |
+
/**
|
| 419 |
+
* Check if the signups table needs to be created.
|
| 420 |
+
*
|
| 421 |
+
* @since BuddyPress (2.0.0)
|
| 422 |
+
*
|
| 423 |
+
* @global WPDB $wpdb
|
| 424 |
+
*
|
| 425 |
+
* @return bool If signups table exists
|
| 426 |
+
*/
|
| 427 |
+
function bp_core_maybe_install_signups() {
|
| 428 |
+
|
| 429 |
+
// Bail if we are explicitly not upgrading global tables
|
| 430 |
+
if ( defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) ) {
|
| 431 |
+
return false;
|
| 432 |
+
}
|
| 433 |
+
|
| 434 |
+
global $wpdb;
|
| 435 |
+
|
| 436 |
+
// The table to run queries against
|
| 437 |
+
$signups_table = $wpdb->base_prefix . 'signups';
|
| 438 |
+
|
| 439 |
+
// Suppress errors because users shouldn't see what happens next
|
| 440 |
+
$old_suppress = $wpdb->suppress_errors();
|
| 441 |
+
|
| 442 |
+
// Never use bp_core_get_table_prefix() for any global users tables
|
| 443 |
+
$table_exists = (bool) $wpdb->get_results( "DESCRIBE {$signups_table};" );
|
| 444 |
+
|
| 445 |
+
// Table already exists, so maybe upgrade instead?
|
| 446 |
+
if ( true === $table_exists ) {
|
| 447 |
+
|
| 448 |
+
// Look for the 'signup_id' column
|
| 449 |
+
$column_exists = $wpdb->query( "SHOW COLUMNS FROM {$signups_table} LIKE 'signup_id'" );
|
| 450 |
+
|
| 451 |
+
// 'signup_id' column doesn't exist, so run the upgrade
|
| 452 |
+
if ( empty( $column_exists ) ) {
|
| 453 |
+
bp_core_upgrade_signups();
|
| 454 |
+
}
|
| 455 |
+
|
| 456 |
+
// Table does not exist, and we are a single site, so install the multisite
|
| 457 |
+
// signups table using WordPress core's database schema.
|
| 458 |
+
} elseif ( ! is_multisite() ) {
|
| 459 |
+
bp_core_install_signups();
|
| 460 |
+
}
|
| 461 |
+
|
| 462 |
+
// Restore previous error suppression setting
|
| 463 |
+
$wpdb->suppress_errors( $old_suppress );
|
| 464 |
+
}
|
| 465 |
+
|
| 466 |
/** Activation Actions ********************************************************/
|
| 467 |
|
| 468 |
/**
|
bp-groups/bp-groups-functions.php
CHANGED
|
@@ -101,6 +101,7 @@ function groups_create_group( $args = '' ) {
|
|
| 101 |
$group = groups_get_group( array( 'group_id' => (int) $group_id ) );
|
| 102 |
$name = ! empty( $name ) ? $name : $group->name;
|
| 103 |
$slug = ! empty( $slug ) ? $slug : $group->slug;
|
|
|
|
| 104 |
|
| 105 |
// Groups need at least a name
|
| 106 |
if ( empty( $name ) ) {
|
| 101 |
$group = groups_get_group( array( 'group_id' => (int) $group_id ) );
|
| 102 |
$name = ! empty( $name ) ? $name : $group->name;
|
| 103 |
$slug = ! empty( $slug ) ? $slug : $group->slug;
|
| 104 |
+
$description = ! empty( $description ) ? $description : $group->description;
|
| 105 |
|
| 106 |
// Groups need at least a name
|
| 107 |
if ( empty( $name ) ) {
|
bp-groups/bp-groups-template.php
CHANGED
|
@@ -159,9 +159,29 @@ class BP_Groups_Template {
|
|
| 159 |
if ( 'invites' == $type ) {
|
| 160 |
$this->groups = groups_get_invites_for_user( $user_id, $this->pag_num, $this->pag_page, $exclude );
|
| 161 |
} else if ( 'single-group' == $type ) {
|
| 162 |
-
$
|
| 163 |
-
|
| 164 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 165 |
} else {
|
| 166 |
$this->groups = groups_get_groups( array(
|
| 167 |
'type' => $type,
|
|
@@ -185,9 +205,13 @@ class BP_Groups_Template {
|
|
| 185 |
$this->group_count = (int) $this->groups['total'];
|
| 186 |
$this->groups = $this->groups['groups'];
|
| 187 |
} else if ( 'single-group' == $type ) {
|
| 188 |
-
$
|
| 189 |
-
|
| 190 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 191 |
} else {
|
| 192 |
if ( empty( $max ) || $max >= (int) $this->groups['total'] ) {
|
| 193 |
$this->total_group_count = (int) $this->groups['total'];
|
|
@@ -260,9 +284,6 @@ class BP_Groups_Template {
|
|
| 260 |
$this->in_the_loop = true;
|
| 261 |
$this->group = $this->next_group();
|
| 262 |
|
| 263 |
-
if ( $this->single_group )
|
| 264 |
-
$this->group = groups_get_current_group();
|
| 265 |
-
|
| 266 |
if ( 0 == $this->current_group ) // loop has just started
|
| 267 |
do_action('group_loop_start');
|
| 268 |
}
|
| 159 |
if ( 'invites' == $type ) {
|
| 160 |
$this->groups = groups_get_invites_for_user( $user_id, $this->pag_num, $this->pag_page, $exclude );
|
| 161 |
} else if ( 'single-group' == $type ) {
|
| 162 |
+
$this->single_group = true;
|
| 163 |
+
|
| 164 |
+
if ( groups_get_current_group() ) {
|
| 165 |
+
$group = groups_get_current_group();
|
| 166 |
+
|
| 167 |
+
} else {
|
| 168 |
+
$group = groups_get_group( array(
|
| 169 |
+
'group_id' => BP_Groups_Group::get_id_from_slug( $r['slug'] ),
|
| 170 |
+
'populate_extras' => $r['populate_extras'],
|
| 171 |
+
) );
|
| 172 |
+
}
|
| 173 |
+
|
| 174 |
+
// backwards compatibility - the 'group_id' variable is not part of the
|
| 175 |
+
// BP_Groups_Group object, but we add it here for devs doing checks against it
|
| 176 |
+
//
|
| 177 |
+
// @see https://buddypress.trac.wordpress.org/changeset/3540
|
| 178 |
+
//
|
| 179 |
+
// this is subject to removal in a future release; devs should check against
|
| 180 |
+
// $group->id instead
|
| 181 |
+
$group->group_id = $group->id;
|
| 182 |
+
|
| 183 |
+
$this->groups = array( $group );
|
| 184 |
+
|
| 185 |
} else {
|
| 186 |
$this->groups = groups_get_groups( array(
|
| 187 |
'type' => $type,
|
| 205 |
$this->group_count = (int) $this->groups['total'];
|
| 206 |
$this->groups = $this->groups['groups'];
|
| 207 |
} else if ( 'single-group' == $type ) {
|
| 208 |
+
if ( empty( $group->id ) ) {
|
| 209 |
+
$this->total_group_count = 0;
|
| 210 |
+
$this->group_count = 0;
|
| 211 |
+
} else {
|
| 212 |
+
$this->total_group_count = 1;
|
| 213 |
+
$this->group_count = 1;
|
| 214 |
+
}
|
| 215 |
} else {
|
| 216 |
if ( empty( $max ) || $max >= (int) $this->groups['total'] ) {
|
| 217 |
$this->total_group_count = (int) $this->groups['total'];
|
| 284 |
$this->in_the_loop = true;
|
| 285 |
$this->group = $this->next_group();
|
| 286 |
|
|
|
|
|
|
|
|
|
|
| 287 |
if ( 0 == $this->current_group ) // loop has just started
|
| 288 |
do_action('group_loop_start');
|
| 289 |
}
|
bp-languages/buddypress.pot
CHANGED
|
@@ -4,7 +4,7 @@ msgid ""
|
|
| 4 |
msgstr ""
|
| 5 |
"Project-Id-Version: BuddyPress \n"
|
| 6 |
"Report-Msgid-Bugs-To: http://wppolyglots.wordpress.com\n"
|
| 7 |
-
"POT-Creation-Date: 2014-04-
|
| 8 |
"MIME-Version: 1.0\n"
|
| 9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
| 10 |
"Content-Transfer-Encoding: 8bit\n"
|
|
@@ -316,8 +316,8 @@ msgstr ""
|
|
| 316 |
#: bp-activity/bp-activity-admin.php:672 bp-activity/bp-activity-admin.php:1391
|
| 317 |
#: bp-forums/bp-forums-template.php:2112 bp-groups/bp-groups-admin.php:1396
|
| 318 |
#: bp-themes/bp-default/functions.php:509 bp-xprofile/bp-xprofile-admin.php:402
|
| 319 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 320 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 321 |
msgid "Edit"
|
| 322 |
msgstr ""
|
| 323 |
|
|
@@ -618,7 +618,7 @@ msgid "Search Activity..."
|
|
| 618 |
msgstr ""
|
| 619 |
|
| 620 |
#: bp-activity/bp-activity-loader.php:165
|
| 621 |
-
#: bp-activity/bp-activity-loader.php:
|
| 622 |
msgid "Personal"
|
| 623 |
msgstr ""
|
| 624 |
|
|
@@ -684,7 +684,7 @@ msgstr ""
|
|
| 684 |
#: bp-templates/bp-legacy/buddypress/groups/single/admin.php:212
|
| 685 |
#: bp-themes/bp-default/groups/single/admin.php:185
|
| 686 |
#: bp-themes/bp-default/groups/single/admin.php:212
|
| 687 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 688 |
msgid "Profile picture of %s"
|
| 689 |
msgstr ""
|
| 690 |
|
|
@@ -860,8 +860,8 @@ msgstr ""
|
|
| 860 |
#: bp-templates/bp-legacy/buddypress-functions.php:248
|
| 861 |
#: bp-themes/bp-default/activity/entry.php:37
|
| 862 |
#: bp-themes/bp-default/functions.php:166
|
| 863 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 864 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 865 |
msgid "View"
|
| 866 |
msgstr ""
|
| 867 |
|
|
@@ -1692,23 +1692,23 @@ msgstr ""
|
|
| 1692 |
msgid "About"
|
| 1693 |
msgstr ""
|
| 1694 |
|
| 1695 |
-
#: bp-core/bp-core-admin.php:496 bp-core/bp-core-admin.php:
|
| 1696 |
msgid "Welcome to BuddyPress %s"
|
| 1697 |
msgstr ""
|
| 1698 |
|
| 1699 |
-
#: bp-core/bp-core-admin.php:499
|
| 1700 |
msgid "It’s a great time to use BuddyPress! With a focus on speed, admin tools, and developer enhancements, %s is our leanest and most powerful version yet."
|
| 1701 |
msgstr ""
|
| 1702 |
|
| 1703 |
-
#: bp-core/bp-core-admin.php:501
|
| 1704 |
msgid "Thanks for updating! With a focus on speed, admin tools, and developer enhancements, BuddyPress %s is our leanest and most powerful version yet."
|
| 1705 |
msgstr ""
|
| 1706 |
|
| 1707 |
-
#: bp-core/bp-core-admin.php:509 bp-core/bp-core-admin.php:
|
| 1708 |
msgid "What’s New"
|
| 1709 |
msgstr ""
|
| 1710 |
|
| 1711 |
-
#: bp-core/bp-core-admin.php:511 bp-core/bp-core-admin.php:
|
| 1712 |
msgid "Credits"
|
| 1713 |
msgstr ""
|
| 1714 |
|
|
@@ -1828,47 +1828,43 @@ msgstr ""
|
|
| 1828 |
msgid "<a href=\"%s\">…and lots more!</a>"
|
| 1829 |
msgstr ""
|
| 1830 |
|
| 1831 |
-
#: bp-core/bp-core-admin.php:623 bp-core/bp-core-admin.php:
|
| 1832 |
msgid "Go to the BuddyPress Settings page"
|
| 1833 |
msgstr ""
|
| 1834 |
|
| 1835 |
-
#: bp-core/bp-core-admin.php:
|
| 1836 |
-
msgid "BuddyPress %s is our first version with a new component in over two years. Not only that, there are plenty of new features, enhancements, and bug fixes."
|
| 1837 |
-
msgstr ""
|
| 1838 |
-
|
| 1839 |
-
#: bp-core/bp-core-admin.php:657
|
| 1840 |
msgid "BuddyPress is created by a worldwide network of friendly folks."
|
| 1841 |
msgstr ""
|
| 1842 |
|
| 1843 |
-
#: bp-core/bp-core-admin.php:
|
| 1844 |
msgid "Project Leaders"
|
| 1845 |
msgstr ""
|
| 1846 |
|
| 1847 |
-
#: bp-core/bp-core-admin.php:
|
| 1848 |
msgid "Project Lead"
|
| 1849 |
msgstr ""
|
| 1850 |
|
| 1851 |
-
#: bp-core/bp-core-admin.php:
|
| 1852 |
msgid "Lead Developer"
|
| 1853 |
msgstr ""
|
| 1854 |
|
| 1855 |
-
#: bp-core/bp-core-admin.php:
|
| 1856 |
msgid "Core Team"
|
| 1857 |
msgstr ""
|
| 1858 |
|
| 1859 |
-
#: bp-core/bp-core-admin.php:
|
| 1860 |
msgid "Core Developer"
|
| 1861 |
msgstr ""
|
| 1862 |
|
| 1863 |
-
#: bp-core/bp-core-admin.php:
|
| 1864 |
msgid "Navigator"
|
| 1865 |
msgstr ""
|
| 1866 |
|
| 1867 |
-
#: bp-core/bp-core-admin.php:
|
| 1868 |
msgid "Recent Rockstars"
|
| 1869 |
msgstr ""
|
| 1870 |
|
| 1871 |
-
#: bp-core/bp-core-admin.php:
|
| 1872 |
msgid "Contributors to BuddyPress 2.0"
|
| 1873 |
msgstr ""
|
| 1874 |
|
|
@@ -2153,10 +2149,10 @@ msgid "Not recently active"
|
|
| 2153 |
msgstr ""
|
| 2154 |
|
| 2155 |
#: bp-core/bp-core-loader.php:233 bp-members/bp-members-admin.php:329
|
| 2156 |
-
#: bp-members/bp-members-loader.php:184 bp-xprofile/bp-xprofile-loader.php:
|
| 2157 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 2158 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 2159 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 2160 |
msgid "Profile"
|
| 2161 |
msgstr ""
|
| 2162 |
|
|
@@ -2340,7 +2336,7 @@ msgstr ""
|
|
| 2340 |
#: bp-templates/bp-legacy/buddypress/members/single/profile/profile-wp.php:8
|
| 2341 |
#: bp-themes/bp-default/activity/post-form.php:45
|
| 2342 |
#: bp-themes/bp-default/members/single/profile/profile-wp.php:8
|
| 2343 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 2344 |
msgid "My Profile"
|
| 2345 |
msgstr ""
|
| 2346 |
|
|
@@ -2842,7 +2838,7 @@ msgstr ""
|
|
| 2842 |
msgid "A member accepts your friendship request"
|
| 2843 |
msgstr ""
|
| 2844 |
|
| 2845 |
-
#: bp-friends/bp-friends-template.php:66 bp-xprofile/bp-xprofile-loader.php:
|
| 2846 |
msgid "My Friends"
|
| 2847 |
msgstr ""
|
| 2848 |
|
|
@@ -4566,8 +4562,8 @@ msgstr ""
|
|
| 4566 |
msgid "<strong>ERROR</strong>: Couldn’t register you. Please contact the <a href=\"mailto:%s\">webmaster</a>."
|
| 4567 |
msgstr ""
|
| 4568 |
|
| 4569 |
-
#: bp-members/bp-members-classes.php:512 bp-members/bp-members-classes.php:
|
| 4570 |
-
#: bp-members/bp-members-classes.php:
|
| 4571 |
msgid "the sign-up has already been activated."
|
| 4572 |
msgstr ""
|
| 4573 |
|
|
@@ -6264,8 +6260,8 @@ msgstr ""
|
|
| 6264 |
|
| 6265 |
#: bp-templates/bp-legacy/buddypress/members/single/profile/change-avatar.php:1
|
| 6266 |
#: bp-themes/bp-default/members/single/profile/change-avatar.php:1
|
| 6267 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 6268 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 6269 |
msgid "Change Avatar"
|
| 6270 |
msgstr ""
|
| 6271 |
|
|
@@ -7159,15 +7155,15 @@ msgstr ""
|
|
| 7159 |
msgid "Add Another Option"
|
| 7160 |
msgstr ""
|
| 7161 |
|
| 7162 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 7163 |
msgid "Everyone"
|
| 7164 |
msgstr ""
|
| 7165 |
|
| 7166 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 7167 |
msgid "Only Me"
|
| 7168 |
msgstr ""
|
| 7169 |
|
| 7170 |
-
#: bp-xprofile/bp-xprofile-loader.php:
|
| 7171 |
msgid "All Members"
|
| 7172 |
msgstr ""
|
| 7173 |
|
| 4 |
msgstr ""
|
| 5 |
"Project-Id-Version: BuddyPress \n"
|
| 6 |
"Report-Msgid-Bugs-To: http://wppolyglots.wordpress.com\n"
|
| 7 |
+
"POT-Creation-Date: 2014-04-18 17:30:35+00:00\n"
|
| 8 |
"MIME-Version: 1.0\n"
|
| 9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
| 10 |
"Content-Transfer-Encoding: 8bit\n"
|
| 316 |
#: bp-activity/bp-activity-admin.php:672 bp-activity/bp-activity-admin.php:1391
|
| 317 |
#: bp-forums/bp-forums-template.php:2112 bp-groups/bp-groups-admin.php:1396
|
| 318 |
#: bp-themes/bp-default/functions.php:509 bp-xprofile/bp-xprofile-admin.php:402
|
| 319 |
+
#: bp-xprofile/bp-xprofile-loader.php:195
|
| 320 |
+
#: bp-xprofile/bp-xprofile-loader.php:273
|
| 321 |
msgid "Edit"
|
| 322 |
msgstr ""
|
| 323 |
|
| 618 |
msgstr ""
|
| 619 |
|
| 620 |
#: bp-activity/bp-activity-loader.php:165
|
| 621 |
+
#: bp-activity/bp-activity-loader.php:276
|
| 622 |
msgid "Personal"
|
| 623 |
msgstr ""
|
| 624 |
|
| 684 |
#: bp-templates/bp-legacy/buddypress/groups/single/admin.php:212
|
| 685 |
#: bp-themes/bp-default/groups/single/admin.php:185
|
| 686 |
#: bp-themes/bp-default/groups/single/admin.php:212
|
| 687 |
+
#: bp-xprofile/bp-xprofile-loader.php:314
|
| 688 |
msgid "Profile picture of %s"
|
| 689 |
msgstr ""
|
| 690 |
|
| 860 |
#: bp-templates/bp-legacy/buddypress-functions.php:248
|
| 861 |
#: bp-themes/bp-default/activity/entry.php:37
|
| 862 |
#: bp-themes/bp-default/functions.php:166
|
| 863 |
+
#: bp-xprofile/bp-xprofile-loader.php:185
|
| 864 |
+
#: bp-xprofile/bp-xprofile-loader.php:265
|
| 865 |
msgid "View"
|
| 866 |
msgstr ""
|
| 867 |
|
| 1692 |
msgid "About"
|
| 1693 |
msgstr ""
|
| 1694 |
|
| 1695 |
+
#: bp-core/bp-core-admin.php:496 bp-core/bp-core-admin.php:647
|
| 1696 |
msgid "Welcome to BuddyPress %s"
|
| 1697 |
msgstr ""
|
| 1698 |
|
| 1699 |
+
#: bp-core/bp-core-admin.php:499 bp-core/bp-core-admin.php:650
|
| 1700 |
msgid "It’s a great time to use BuddyPress! With a focus on speed, admin tools, and developer enhancements, %s is our leanest and most powerful version yet."
|
| 1701 |
msgstr ""
|
| 1702 |
|
| 1703 |
+
#: bp-core/bp-core-admin.php:501 bp-core/bp-core-admin.php:652
|
| 1704 |
msgid "Thanks for updating! With a focus on speed, admin tools, and developer enhancements, BuddyPress %s is our leanest and most powerful version yet."
|
| 1705 |
msgstr ""
|
| 1706 |
|
| 1707 |
+
#: bp-core/bp-core-admin.php:509 bp-core/bp-core-admin.php:660
|
| 1708 |
msgid "What’s New"
|
| 1709 |
msgstr ""
|
| 1710 |
|
| 1711 |
+
#: bp-core/bp-core-admin.php:511 bp-core/bp-core-admin.php:662
|
| 1712 |
msgid "Credits"
|
| 1713 |
msgstr ""
|
| 1714 |
|
| 1828 |
msgid "<a href=\"%s\">…and lots more!</a>"
|
| 1829 |
msgstr ""
|
| 1830 |
|
| 1831 |
+
#: bp-core/bp-core-admin.php:623 bp-core/bp-core-admin.php:766
|
| 1832 |
msgid "Go to the BuddyPress Settings page"
|
| 1833 |
msgstr ""
|
| 1834 |
|
| 1835 |
+
#: bp-core/bp-core-admin.php:666
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1836 |
msgid "BuddyPress is created by a worldwide network of friendly folks."
|
| 1837 |
msgstr ""
|
| 1838 |
|
| 1839 |
+
#: bp-core/bp-core-admin.php:668
|
| 1840 |
msgid "Project Leaders"
|
| 1841 |
msgstr ""
|
| 1842 |
|
| 1843 |
+
#: bp-core/bp-core-admin.php:673
|
| 1844 |
msgid "Project Lead"
|
| 1845 |
msgstr ""
|
| 1846 |
|
| 1847 |
+
#: bp-core/bp-core-admin.php:678 bp-core/bp-core-admin.php:683
|
| 1848 |
msgid "Lead Developer"
|
| 1849 |
msgstr ""
|
| 1850 |
|
| 1851 |
+
#: bp-core/bp-core-admin.php:687
|
| 1852 |
msgid "Core Team"
|
| 1853 |
msgstr ""
|
| 1854 |
|
| 1855 |
+
#: bp-core/bp-core-admin.php:692 bp-core/bp-core-admin.php:697
|
| 1856 |
msgid "Core Developer"
|
| 1857 |
msgstr ""
|
| 1858 |
|
| 1859 |
+
#: bp-core/bp-core-admin.php:702
|
| 1860 |
msgid "Navigator"
|
| 1861 |
msgstr ""
|
| 1862 |
|
| 1863 |
+
#: bp-core/bp-core-admin.php:706
|
| 1864 |
msgid "Recent Rockstars"
|
| 1865 |
msgstr ""
|
| 1866 |
|
| 1867 |
+
#: bp-core/bp-core-admin.php:718
|
| 1868 |
msgid "Contributors to BuddyPress 2.0"
|
| 1869 |
msgstr ""
|
| 1870 |
|
| 2149 |
msgstr ""
|
| 2150 |
|
| 2151 |
#: bp-core/bp-core-loader.php:233 bp-members/bp-members-admin.php:329
|
| 2152 |
+
#: bp-members/bp-members-loader.php:184 bp-xprofile/bp-xprofile-loader.php:164
|
| 2153 |
+
#: bp-xprofile/bp-xprofile-loader.php:225
|
| 2154 |
+
#: bp-xprofile/bp-xprofile-loader.php:257
|
| 2155 |
+
#: bp-xprofile/bp-xprofile-loader.php:339
|
| 2156 |
msgid "Profile"
|
| 2157 |
msgstr ""
|
| 2158 |
|
| 2336 |
#: bp-templates/bp-legacy/buddypress/members/single/profile/profile-wp.php:8
|
| 2337 |
#: bp-themes/bp-default/activity/post-form.php:45
|
| 2338 |
#: bp-themes/bp-default/members/single/profile/profile-wp.php:8
|
| 2339 |
+
#: bp-xprofile/bp-xprofile-loader.php:309
|
| 2340 |
msgid "My Profile"
|
| 2341 |
msgstr ""
|
| 2342 |
|
| 2838 |
msgid "A member accepts your friendship request"
|
| 2839 |
msgstr ""
|
| 2840 |
|
| 2841 |
+
#: bp-friends/bp-friends-template.php:66 bp-xprofile/bp-xprofile-loader.php:124
|
| 2842 |
msgid "My Friends"
|
| 2843 |
msgstr ""
|
| 2844 |
|
| 4562 |
msgid "<strong>ERROR</strong>: Couldn’t register you. Please contact the <a href=\"mailto:%s\">webmaster</a>."
|
| 4563 |
msgstr ""
|
| 4564 |
|
| 4565 |
+
#: bp-members/bp-members-classes.php:512 bp-members/bp-members-classes.php:577
|
| 4566 |
+
#: bp-members/bp-members-classes.php:632
|
| 4567 |
msgid "the sign-up has already been activated."
|
| 4568 |
msgstr ""
|
| 4569 |
|
| 6260 |
|
| 6261 |
#: bp-templates/bp-legacy/buddypress/members/single/profile/change-avatar.php:1
|
| 6262 |
#: bp-themes/bp-default/members/single/profile/change-avatar.php:1
|
| 6263 |
+
#: bp-xprofile/bp-xprofile-loader.php:207
|
| 6264 |
+
#: bp-xprofile/bp-xprofile-loader.php:282
|
| 6265 |
msgid "Change Avatar"
|
| 6266 |
msgstr ""
|
| 6267 |
|
| 7155 |
msgid "Add Another Option"
|
| 7156 |
msgstr ""
|
| 7157 |
|
| 7158 |
+
#: bp-xprofile/bp-xprofile-loader.php:109
|
| 7159 |
msgid "Everyone"
|
| 7160 |
msgstr ""
|
| 7161 |
|
| 7162 |
+
#: bp-xprofile/bp-xprofile-loader.php:113
|
| 7163 |
msgid "Only Me"
|
| 7164 |
msgstr ""
|
| 7165 |
|
| 7166 |
+
#: bp-xprofile/bp-xprofile-loader.php:117
|
| 7167 |
msgid "All Members"
|
| 7168 |
msgstr ""
|
| 7169 |
|
bp-loader.php
CHANGED
|
@@ -16,7 +16,7 @@
|
|
| 16 |
* Description: Social networking in a box. Build a social network for your company, school, sports team or niche community all based on the power and flexibility of WordPress.
|
| 17 |
* Author: The BuddyPress Community
|
| 18 |
* Author URI: http://buddypress.org/community/members/
|
| 19 |
-
* Version: 2.0
|
| 20 |
* Text Domain: buddypress
|
| 21 |
* Domain Path: /bp-languages/
|
| 22 |
* License: GPLv2 or later (license.txt)
|
|
@@ -303,8 +303,8 @@ class BuddyPress {
|
|
| 303 |
|
| 304 |
/** Versions **************************************************/
|
| 305 |
|
| 306 |
-
$this->version = '2.0';
|
| 307 |
-
$this->db_version =
|
| 308 |
|
| 309 |
/** Loading ***************************************************/
|
| 310 |
|
| 16 |
* Description: Social networking in a box. Build a social network for your company, school, sports team or niche community all based on the power and flexibility of WordPress.
|
| 17 |
* Author: The BuddyPress Community
|
| 18 |
* Author URI: http://buddypress.org/community/members/
|
| 19 |
+
* Version: 2.0.1
|
| 20 |
* Text Domain: buddypress
|
| 21 |
* Domain Path: /bp-languages/
|
| 22 |
* License: GPLv2 or later (license.txt)
|
| 303 |
|
| 304 |
/** Versions **************************************************/
|
| 305 |
|
| 306 |
+
$this->version = '2.0.1';
|
| 307 |
+
$this->db_version = 8311;
|
| 308 |
|
| 309 |
/** Loading ***************************************************/
|
| 310 |
|
bp-members/bp-members-admin.php
CHANGED
|
@@ -822,6 +822,10 @@ class BP_Members_Admin {
|
|
| 822 |
return;
|
| 823 |
}
|
| 824 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 825 |
if ( $this->users_page != get_current_screen()->id ) {
|
| 826 |
return;
|
| 827 |
}
|
| 822 |
return;
|
| 823 |
}
|
| 824 |
|
| 825 |
+
if ( ! function_exists( 'get_current_screen' ) ) {
|
| 826 |
+
return;
|
| 827 |
+
}
|
| 828 |
+
|
| 829 |
if ( $this->users_page != get_current_screen()->id ) {
|
| 830 |
return;
|
| 831 |
}
|
bp-members/bp-members-classes.php
CHANGED
|
@@ -565,9 +565,13 @@ class BP_Signup {
|
|
| 565 |
|
| 566 |
if ( ! empty( $user->errors ) ) {
|
| 567 |
|
| 568 |
-
$user_id = username_exists( $signup->user_login )
|
| 569 |
|
| 570 |
-
if (
|
|
|
|
|
|
|
|
|
|
|
|
|
| 571 |
|
| 572 |
// Status is not 2, so user's account has been activated
|
| 573 |
$result['errors'][ $signup->signup_id ] = array( $signup->user_login, esc_html__( 'the sign-up has already been activated.', 'buddypress' ) );
|
| 565 |
|
| 566 |
if ( ! empty( $user->errors ) ) {
|
| 567 |
|
| 568 |
+
$user_id = username_exists( $signup->user_login );
|
| 569 |
|
| 570 |
+
if ( 2 !== self::check_user_status( $user_id ) ) {
|
| 571 |
+
$user_id = false;
|
| 572 |
+
}
|
| 573 |
+
|
| 574 |
+
if ( empty( $user_id ) ) {
|
| 575 |
|
| 576 |
// Status is not 2, so user's account has been activated
|
| 577 |
$result['errors'][ $signup->signup_id ] = array( $signup->user_login, esc_html__( 'the sign-up has already been activated.', 'buddypress' ) );
|
bp-members/bp-members-functions.php
CHANGED
|
@@ -1054,10 +1054,6 @@ function bp_core_delete_account( $user_id = 0 ) {
|
|
| 1054 |
if ( empty( $user_id ) )
|
| 1055 |
$user_id = bp_loggedin_user_id();
|
| 1056 |
|
| 1057 |
-
// Bail if account deletion is disabled
|
| 1058 |
-
if ( bp_disable_account_deletion() )
|
| 1059 |
-
return false;
|
| 1060 |
-
|
| 1061 |
// Site admins cannot be deleted
|
| 1062 |
if ( is_super_admin( $user_id ) )
|
| 1063 |
return false;
|
|
@@ -1637,6 +1633,87 @@ function bp_core_activate_signup( $key ) {
|
|
| 1637 |
return $user_id;
|
| 1638 |
}
|
| 1639 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1640 |
function bp_core_new_user_activity( $user ) {
|
| 1641 |
if ( empty( $user ) || !bp_is_active( 'activity' ) )
|
| 1642 |
return false;
|
| 1054 |
if ( empty( $user_id ) )
|
| 1055 |
$user_id = bp_loggedin_user_id();
|
| 1056 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1057 |
// Site admins cannot be deleted
|
| 1058 |
if ( is_super_admin( $user_id ) )
|
| 1059 |
return false;
|
| 1633 |
return $user_id;
|
| 1634 |
}
|
| 1635 |
|
| 1636 |
+
/**
|
| 1637 |
+
* Migrate signups from pre-2.0 configuration to wp_signups.
|
| 1638 |
+
*
|
| 1639 |
+
* @since BuddyPress (2.0.1)
|
| 1640 |
+
*/
|
| 1641 |
+
function bp_members_migrate_signups() {
|
| 1642 |
+
global $wpdb;
|
| 1643 |
+
|
| 1644 |
+
$status_2_ids = $wpdb->get_col( "SELECT ID FROM {$wpdb->users} WHERE user_status = '2'" );
|
| 1645 |
+
|
| 1646 |
+
if ( ! empty( $status_2_ids ) ) {
|
| 1647 |
+
$signups = get_users( array(
|
| 1648 |
+
'fields' => array(
|
| 1649 |
+
'ID',
|
| 1650 |
+
'user_login',
|
| 1651 |
+
'user_pass',
|
| 1652 |
+
'user_registered',
|
| 1653 |
+
'user_email',
|
| 1654 |
+
'display_name',
|
| 1655 |
+
),
|
| 1656 |
+
'include' => $status_2_ids,
|
| 1657 |
+
) );
|
| 1658 |
+
|
| 1659 |
+
// Fetch activation keys separately, to avoid the all_with_meta
|
| 1660 |
+
// overhead
|
| 1661 |
+
$status_2_ids_sql = implode( ',', $status_2_ids );
|
| 1662 |
+
$ak_data = $wpdb->get_results( "SELECT user_id, meta_value FROM {$wpdb->usermeta} WHERE meta_key = 'activation_key' AND user_id IN ({$status_2_ids_sql})" );
|
| 1663 |
+
|
| 1664 |
+
// Rekey
|
| 1665 |
+
$activation_keys = array();
|
| 1666 |
+
foreach ( $ak_data as $ak_datum ) {
|
| 1667 |
+
$activation_keys[ intval( $ak_datum->user_id ) ] = $ak_datum->meta_value;
|
| 1668 |
+
}
|
| 1669 |
+
|
| 1670 |
+
unset( $status_2_ids_sql, $status_2_ids, $ak_data );
|
| 1671 |
+
|
| 1672 |
+
// Merge
|
| 1673 |
+
foreach ( $signups as &$signup ) {
|
| 1674 |
+
if ( isset( $activation_keys[ $signup->ID ] ) ) {
|
| 1675 |
+
$signup->activation_key = $activation_keys[ $signup->ID ];
|
| 1676 |
+
}
|
| 1677 |
+
}
|
| 1678 |
+
|
| 1679 |
+
// Reset the signup var as we're using it to process the migration
|
| 1680 |
+
unset( $signup );
|
| 1681 |
+
|
| 1682 |
+
} else {
|
| 1683 |
+
return;
|
| 1684 |
+
}
|
| 1685 |
+
|
| 1686 |
+
foreach ( $signups as $signup ) {
|
| 1687 |
+
$meta = array();
|
| 1688 |
+
|
| 1689 |
+
// Rebuild the activation key, if missing
|
| 1690 |
+
if ( empty( $signup->activation_key ) ) {
|
| 1691 |
+
$signup->activation_key = wp_hash( $signup->ID );
|
| 1692 |
+
}
|
| 1693 |
+
|
| 1694 |
+
if ( bp_is_active( 'xprofile' ) ) {
|
| 1695 |
+
$meta['field_1'] = $signup->display_name;
|
| 1696 |
+
}
|
| 1697 |
+
|
| 1698 |
+
$meta['password'] = $signup->user_pass;
|
| 1699 |
+
|
| 1700 |
+
$user_login = preg_replace( '/\s+/', '', sanitize_user( $signup->user_login, true ) );
|
| 1701 |
+
$user_email = sanitize_email( $signup->user_email );
|
| 1702 |
+
|
| 1703 |
+
BP_Signup::add( array(
|
| 1704 |
+
'user_login' => $user_login,
|
| 1705 |
+
'user_email' => $user_email,
|
| 1706 |
+
'registered' => $signup->user_registered,
|
| 1707 |
+
'activation_key' => $signup->activation_key,
|
| 1708 |
+
'meta' => $meta
|
| 1709 |
+
) );
|
| 1710 |
+
|
| 1711 |
+
// Deleting these options will remove signups from users count
|
| 1712 |
+
delete_user_option( $signup->ID, 'capabilities' );
|
| 1713 |
+
delete_user_option( $signup->ID, 'user_level' );
|
| 1714 |
+
}
|
| 1715 |
+
}
|
| 1716 |
+
|
| 1717 |
function bp_core_new_user_activity( $user ) {
|
| 1718 |
if ( empty( $user ) || !bp_is_active( 'activity' ) )
|
| 1719 |
return false;
|
bp-settings/bp-settings-actions.php
CHANGED
|
@@ -333,6 +333,11 @@ function bp_settings_action_delete_account() {
|
|
| 333 |
return;
|
| 334 |
}
|
| 335 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 336 |
// Nonce check
|
| 337 |
check_admin_referer( 'delete-account' );
|
| 338 |
|
| 333 |
return;
|
| 334 |
}
|
| 335 |
|
| 336 |
+
// Bail if account deletion is disabled
|
| 337 |
+
if ( bp_disable_account_deletion() && ! bp_current_user_can( 'delete_users' ) ) {
|
| 338 |
+
return false;
|
| 339 |
+
}
|
| 340 |
+
|
| 341 |
// Nonce check
|
| 342 |
check_admin_referer( 'delete-account' );
|
| 343 |
|
bp-templates/bp-legacy/buddypress-functions.php
CHANGED
|
@@ -706,7 +706,7 @@ function bp_legacy_theme_post_update() {
|
|
| 706 |
if ( empty( $activity_id ) )
|
| 707 |
exit( '-1<div id="message" class="error"><p>' . __( 'There was a problem posting your update, please try again.', 'buddypress' ) . '</p></div>' );
|
| 708 |
|
| 709 |
-
$last_recorded =
|
| 710 |
if ( $last_recorded ) {
|
| 711 |
$activity_args = array( 'since' => $last_recorded );
|
| 712 |
$bp->activity->last_recorded = $last_recorded;
|
| 706 |
if ( empty( $activity_id ) )
|
| 707 |
exit( '-1<div id="message" class="error"><p>' . __( 'There was a problem posting your update, please try again.', 'buddypress' ) . '</p></div>' );
|
| 708 |
|
| 709 |
+
$last_recorded = ! empty( $_POST['since'] ) ? date( 'Y-m-d H:i:s', intval( $_POST['since'] ) ) : 0;
|
| 710 |
if ( $last_recorded ) {
|
| 711 |
$activity_args = array( 'since' => $last_recorded );
|
| 712 |
$bp->activity->last_recorded = $last_recorded;
|
bp-xprofile/bp-xprofile-activity.php
CHANGED
|
@@ -235,6 +235,10 @@ function bp_xprofile_updated_profile_activity( $user_id, $field_ids, $errors, $o
|
|
| 235 |
return false;
|
| 236 |
}
|
| 237 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 238 |
// Don't post if there have been no changes, or if the changes are
|
| 239 |
// related solely to non-public fields
|
| 240 |
$public_changes = false;
|
| 235 |
return false;
|
| 236 |
}
|
| 237 |
|
| 238 |
+
if ( ! bp_is_active( 'activity' ) ) {
|
| 239 |
+
return false;
|
| 240 |
+
}
|
| 241 |
+
|
| 242 |
// Don't post if there have been no changes, or if the changes are
|
| 243 |
// related solely to non-public fields
|
| 244 |
$public_changes = false;
|
bp-xprofile/bp-xprofile-classes.php
CHANGED
|
@@ -1514,6 +1514,7 @@ class BP_XProfile_Field_Type_Datebox extends BP_XProfile_Field_Type {
|
|
| 1514 |
<div class="datebox">
|
| 1515 |
|
| 1516 |
<label for="<?php bp_the_profile_field_input_name(); ?>_day"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
|
|
|
| 1517 |
|
| 1518 |
<select <?php echo $day_html; ?>>
|
| 1519 |
<?php bp_the_profile_field_options( array( 'type' => 'day', 'user_id' => $user_id ) ); ?>
|
|
@@ -1738,6 +1739,7 @@ class BP_XProfile_Field_Type_Checkbox extends BP_XProfile_Field_Type {
|
|
| 1738 |
<div class="checkbox">
|
| 1739 |
|
| 1740 |
<label for="<?php bp_the_profile_field_input_name(); ?>"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
|
|
|
| 1741 |
<?php bp_the_profile_field_options( "user_id={$user_id}" ); ?>
|
| 1742 |
|
| 1743 |
</div>
|
|
@@ -1875,6 +1877,7 @@ class BP_XProfile_Field_Type_Radiobutton extends BP_XProfile_Field_Type {
|
|
| 1875 |
<div class="radio">
|
| 1876 |
|
| 1877 |
<label for="<?php bp_the_profile_field_input_name(); ?>"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
|
|
|
| 1878 |
<?php bp_the_profile_field_options( "user_id={$user_id}" );
|
| 1879 |
|
| 1880 |
if ( ! bp_get_the_profile_field_is_required() ) : ?>
|
|
@@ -2019,6 +2022,7 @@ class BP_XProfile_Field_Type_Multiselectbox extends BP_XProfile_Field_Type {
|
|
| 2019 |
) );
|
| 2020 |
?>
|
| 2021 |
<label for="<?php bp_the_profile_field_input_name(); ?>[]"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php _e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
|
|
|
| 2022 |
<select <?php echo $html; ?>>
|
| 2023 |
<?php bp_the_profile_field_options( "user_id={$user_id}" ); ?>
|
| 2024 |
</select>
|
|
@@ -2163,6 +2167,7 @@ class BP_XProfile_Field_Type_Selectbox extends BP_XProfile_Field_Type {
|
|
| 2163 |
$html = $this->get_edit_field_html_elements( $raw_properties );
|
| 2164 |
?>
|
| 2165 |
<label for="<?php bp_the_profile_field_input_name(); ?>"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
|
|
|
| 2166 |
<select <?php echo $html; ?>>
|
| 2167 |
<?php bp_the_profile_field_options( "user_id={$user_id}" ); ?>
|
| 2168 |
</select>
|
|
@@ -2302,6 +2307,7 @@ class BP_XProfile_Field_Type_Textarea extends BP_XProfile_Field_Type {
|
|
| 2302 |
) );
|
| 2303 |
?>
|
| 2304 |
<label for="<?php bp_the_profile_field_input_name(); ?>"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
|
|
|
| 2305 |
<textarea <?php echo $html; ?>><?php bp_the_profile_field_edit_value(); ?></textarea>
|
| 2306 |
<?php
|
| 2307 |
}
|
|
@@ -2384,6 +2390,7 @@ class BP_XProfile_Field_Type_Textbox extends BP_XProfile_Field_Type {
|
|
| 2384 |
) );
|
| 2385 |
?>
|
| 2386 |
<label for="<?php bp_the_profile_field_input_name(); ?>"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
|
|
|
| 2387 |
<input <?php echo $html; ?>>
|
| 2388 |
<?php
|
| 2389 |
}
|
|
@@ -2463,6 +2470,7 @@ class BP_XProfile_Field_Type_Number extends BP_XProfile_Field_Type {
|
|
| 2463 |
) );
|
| 2464 |
?>
|
| 2465 |
<label for="<?php bp_the_profile_field_input_name(); ?>"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
|
|
|
| 2466 |
<input <?php echo $html; ?>>
|
| 2467 |
<?php
|
| 2468 |
}
|
|
@@ -2496,6 +2504,52 @@ class BP_XProfile_Field_Type_Number extends BP_XProfile_Field_Type {
|
|
| 2496 |
public function admin_new_field_html( BP_XProfile_Field $current_field, $control_type = '' ) {}
|
| 2497 |
}
|
| 2498 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2499 |
/**
|
| 2500 |
* Represents a type of XProfile field and holds meta information about the type of value that it accepts.
|
| 2501 |
*
|
| 1514 |
<div class="datebox">
|
| 1515 |
|
| 1516 |
<label for="<?php bp_the_profile_field_input_name(); ?>_day"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
| 1517 |
+
<?php do_action( bp_get_the_profile_field_errors_action() ); ?>
|
| 1518 |
|
| 1519 |
<select <?php echo $day_html; ?>>
|
| 1520 |
<?php bp_the_profile_field_options( array( 'type' => 'day', 'user_id' => $user_id ) ); ?>
|
| 1739 |
<div class="checkbox">
|
| 1740 |
|
| 1741 |
<label for="<?php bp_the_profile_field_input_name(); ?>"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
| 1742 |
+
<?php do_action( bp_get_the_profile_field_errors_action() ); ?>
|
| 1743 |
<?php bp_the_profile_field_options( "user_id={$user_id}" ); ?>
|
| 1744 |
|
| 1745 |
</div>
|
| 1877 |
<div class="radio">
|
| 1878 |
|
| 1879 |
<label for="<?php bp_the_profile_field_input_name(); ?>"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
| 1880 |
+
<?php do_action( bp_get_the_profile_field_errors_action() ); ?>
|
| 1881 |
<?php bp_the_profile_field_options( "user_id={$user_id}" );
|
| 1882 |
|
| 1883 |
if ( ! bp_get_the_profile_field_is_required() ) : ?>
|
| 2022 |
) );
|
| 2023 |
?>
|
| 2024 |
<label for="<?php bp_the_profile_field_input_name(); ?>[]"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php _e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
| 2025 |
+
<?php do_action( bp_get_the_profile_field_errors_action() ); ?>
|
| 2026 |
<select <?php echo $html; ?>>
|
| 2027 |
<?php bp_the_profile_field_options( "user_id={$user_id}" ); ?>
|
| 2028 |
</select>
|
| 2167 |
$html = $this->get_edit_field_html_elements( $raw_properties );
|
| 2168 |
?>
|
| 2169 |
<label for="<?php bp_the_profile_field_input_name(); ?>"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
| 2170 |
+
<?php do_action( bp_get_the_profile_field_errors_action() ); ?>
|
| 2171 |
<select <?php echo $html; ?>>
|
| 2172 |
<?php bp_the_profile_field_options( "user_id={$user_id}" ); ?>
|
| 2173 |
</select>
|
| 2307 |
) );
|
| 2308 |
?>
|
| 2309 |
<label for="<?php bp_the_profile_field_input_name(); ?>"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
| 2310 |
+
<?php do_action( bp_get_the_profile_field_errors_action() ); ?>
|
| 2311 |
<textarea <?php echo $html; ?>><?php bp_the_profile_field_edit_value(); ?></textarea>
|
| 2312 |
<?php
|
| 2313 |
}
|
| 2390 |
) );
|
| 2391 |
?>
|
| 2392 |
<label for="<?php bp_the_profile_field_input_name(); ?>"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
| 2393 |
+
<?php do_action( bp_get_the_profile_field_errors_action() ); ?>
|
| 2394 |
<input <?php echo $html; ?>>
|
| 2395 |
<?php
|
| 2396 |
}
|
| 2470 |
) );
|
| 2471 |
?>
|
| 2472 |
<label for="<?php bp_the_profile_field_input_name(); ?>"><?php bp_the_profile_field_name(); ?> <?php if ( bp_get_the_profile_field_is_required() ) : ?><?php esc_html_e( '(required)', 'buddypress' ); ?><?php endif; ?></label>
|
| 2473 |
+
<?php do_action( bp_get_the_profile_field_errors_action() ); ?>
|
| 2474 |
<input <?php echo $html; ?>>
|
| 2475 |
<?php
|
| 2476 |
}
|
| 2504 |
public function admin_new_field_html( BP_XProfile_Field $current_field, $control_type = '' ) {}
|
| 2505 |
}
|
| 2506 |
|
| 2507 |
+
/**
|
| 2508 |
+
* A placeholder xprofile field type. Doesn't do anything.
|
| 2509 |
+
*
|
| 2510 |
+
* Used if an existing field has an unknown type (e.g. one provided by a missing third-party plugin).
|
| 2511 |
+
*
|
| 2512 |
+
* @since BuddyPress (2.0.1)
|
| 2513 |
+
*/
|
| 2514 |
+
class BP_XProfile_Field_Type_Placeholder extends BP_XProfile_Field_Type {
|
| 2515 |
+
|
| 2516 |
+
/**
|
| 2517 |
+
* Constructor for the placeholder field type.
|
| 2518 |
+
*
|
| 2519 |
+
* @since BuddyPress (2.0.1)
|
| 2520 |
+
*/
|
| 2521 |
+
public function __construct() {
|
| 2522 |
+
$this->set_format( '/.*/', 'replace' );
|
| 2523 |
+
}
|
| 2524 |
+
|
| 2525 |
+
/**
|
| 2526 |
+
* Prevent any HTML being output for this field type.
|
| 2527 |
+
*
|
| 2528 |
+
* @param array $raw_properties Optional key/value array of {@link http://dev.w3.org/html5/markup/input.text.html permitted attributes} that you want to add.
|
| 2529 |
+
* @since BuddyPress (2.0.1)
|
| 2530 |
+
*/
|
| 2531 |
+
public function edit_field_html( array $raw_properties = array() ) {
|
| 2532 |
+
}
|
| 2533 |
+
|
| 2534 |
+
/**
|
| 2535 |
+
* Prevent any HTML being output for this field type.
|
| 2536 |
+
*
|
| 2537 |
+
* @param array $raw_properties Optional key/value array of permitted attributes that you want to add.
|
| 2538 |
+
* @since BuddyPress (2.0.1)
|
| 2539 |
+
*/
|
| 2540 |
+
public function admin_field_html( array $raw_properties = array() ) {
|
| 2541 |
+
}
|
| 2542 |
+
|
| 2543 |
+
/**
|
| 2544 |
+
* Prevent any HTML being output for this field type.
|
| 2545 |
+
*
|
| 2546 |
+
* @param BP_XProfile_Field $current_field The current profile field on the add/edit screen.
|
| 2547 |
+
* @param string $control_type Optional. HTML input type used to render the current field's child options.
|
| 2548 |
+
* @since BuddyPress (2.0.1)
|
| 2549 |
+
*/
|
| 2550 |
+
public function admin_new_field_html( BP_XProfile_Field $current_field, $control_type = '' ) {}
|
| 2551 |
+
}
|
| 2552 |
+
|
| 2553 |
/**
|
| 2554 |
* Represents a type of XProfile field and holds meta information about the type of value that it accepts.
|
| 2555 |
*
|
bp-xprofile/bp-xprofile-functions.php
CHANGED
|
@@ -95,13 +95,12 @@ function bp_xprofile_create_field_type( $type ) {
|
|
| 95 |
$class = isset( $field[$type] ) ? $field[$type] : '';
|
| 96 |
|
| 97 |
/**
|
| 98 |
-
*
|
| 99 |
-
* textbox if a type is unknown. Textbox validation and display is intentionally low key.
|
| 100 |
*/
|
| 101 |
if ( $class && class_exists( $class ) ) {
|
| 102 |
return new $class;
|
| 103 |
} else {
|
| 104 |
-
return new
|
| 105 |
}
|
| 106 |
}
|
| 107 |
|
| 95 |
$class = isset( $field[$type] ) ? $field[$type] : '';
|
| 96 |
|
| 97 |
/**
|
| 98 |
+
* To handle (missing) field types, fallback to a placeholder field object if a type is unknown.
|
|
|
|
| 99 |
*/
|
| 100 |
if ( $class && class_exists( $class ) ) {
|
| 101 |
return new $class;
|
| 102 |
} else {
|
| 103 |
+
return new BP_XProfile_Field_Type_Placeholder;
|
| 104 |
}
|
| 105 |
}
|
| 106 |
|
bp-xprofile/bp-xprofile-screens.php
CHANGED
|
@@ -232,5 +232,5 @@ function bp_xprofile_screen_settings() {
|
|
| 232 |
}
|
| 233 |
|
| 234 |
// Load the template
|
| 235 |
-
bp_core_load_template( apply_filters( 'bp_settings_screen_xprofile', '/members/single/
|
| 236 |
}
|
| 232 |
}
|
| 233 |
|
| 234 |
// Load the template
|
| 235 |
+
bp_core_load_template( apply_filters( 'bp_settings_screen_xprofile', '/members/single/settings/profile' ) );
|
| 236 |
}
|
readme.txt
CHANGED
|
@@ -3,7 +3,7 @@ Contributors: johnjamesjacoby, DJPaul, boonebgorges, r-a-y
|
|
| 3 |
Tags: social networking, activity, profiles, messaging, friends, groups, forums, notifications, settings, twitter, facebook, social, community, networks, networking, cms
|
| 4 |
Requires at least: 3.6
|
| 5 |
Tested up to: 3.9
|
| 6 |
-
Stable tag: 2.0
|
| 7 |
License: GPLv2 or later
|
| 8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
| 9 |
|
|
@@ -77,6 +77,9 @@ BuddyPress is available in more than 20 languages. For more information, check o
|
|
| 77 |
|
| 78 |
== Upgrade Notice ==
|
| 79 |
|
|
|
|
|
|
|
|
|
|
| 80 |
= 2.0 =
|
| 81 |
See: http://codex.buddypress.org/releases/version-2-0/
|
| 82 |
|
|
@@ -139,6 +142,12 @@ Fixes over 10 bugs.
|
|
| 139 |
|
| 140 |
== Changelog ==
|
| 141 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 142 |
= 1.9 =
|
| 143 |
See: http://codex.buddypress.org/releases/version-1-9/
|
| 144 |
|
| 3 |
Tags: social networking, activity, profiles, messaging, friends, groups, forums, notifications, settings, twitter, facebook, social, community, networks, networking, cms
|
| 4 |
Requires at least: 3.6
|
| 5 |
Tested up to: 3.9
|
| 6 |
+
Stable tag: 2.0.1
|
| 7 |
License: GPLv2 or later
|
| 8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
| 9 |
|
| 77 |
|
| 78 |
== Upgrade Notice ==
|
| 79 |
|
| 80 |
+
= 2.0.1 =
|
| 81 |
+
See: http://codex.buddypress.org/releases/version-2-0-1/
|
| 82 |
+
|
| 83 |
= 2.0 =
|
| 84 |
See: http://codex.buddypress.org/releases/version-2-0/
|
| 85 |
|
| 142 |
|
| 143 |
== Changelog ==
|
| 144 |
|
| 145 |
+
= 2.0.1 =
|
| 146 |
+
See: http://codex.buddypress.org/releases/version-2-0-1/
|
| 147 |
+
|
| 148 |
+
= 2.0 =
|
| 149 |
+
See: http://codex.buddypress.org/releases/version-2-0/
|
| 150 |
+
|
| 151 |
= 1.9 =
|
| 152 |
See: http://codex.buddypress.org/releases/version-1-9/
|
| 153 |
|
