Ticket #8582: 8582.12-site-request-info.patch
File 8582.12-site-request-info.patch, 8.0 KB (added by , 22 months ago) |
---|
-
src/bp-members/bp-members-admin.php
diff --git src/bp-members/bp-members-admin.php src/bp-members/bp-members-admin.php index 3aa4e01d7..3156cda01 100644
function bp_members_admin_format_xprofile_field_for_display( $value ) { 143 143 * @param object|null $signup_object The signup data object. 144 144 */ 145 145 function bp_members_admin_preview_signup_profile_info( $signup_field_labels = array(), $signup_object = null ) { 146 if ( ! isset( $signup_object->meta ) || ! $signup_field_labels ) {147 return;148 }149 150 // Init ids.151 $profile_field_ids = array();152 146 153 // Get all xprofile field IDs except field 1.154 if ( ! empty( $signup_object->meta['profile_field_ids'] ) ) {155 $profile_field_ids = array_flip( explode( ',', $signup_object->meta['profile_field_ids'] ) );156 unset( $profile_field_ids[1] );157 }158 147 ?> 159 148 <div id="signup-info-modal-<?php echo $signup_object->id; ?>" style="display:none;"> 160 149 <h1><?php printf( '%1$s (%2$s)', esc_html( $signup_object->user_name ), esc_html( $signup_object->user_email ) ); ?></h1> 161 <h2><?php esc_html_e( 'Extended Profile Information', 'buddypress' ); ?></h2> 162 163 <table class="signup-profile-data-drawer wp-list-table widefat fixed striped"> 164 <?php if ( 1 <= count( $profile_field_ids ) ): foreach ( array_keys( $profile_field_ids ) as $profile_field_id ) : 165 $field_value = isset( $signup_object->meta[ "field_{$profile_field_id}" ] ) ? $signup_object->meta[ "field_{$profile_field_id}" ] : ''; ?> 166 <tr> 167 <td class="column-fields"><?php echo esc_html( $signup_field_labels[ $profile_field_id ] ); ?></td> 168 <td><?php echo bp_members_admin_format_xprofile_field_for_display( $field_value ); ?></td> 169 </tr> 170 <?php endforeach; else: ?> 171 <tr> 172 <td><?php esc_html_e( 'There is no additional information to display.', 'buddypress' ); ?></td> 173 </tr> 174 <?php endif; ?> 175 </table> 150 151 <?php if ( bp_is_active( 'xprofile' ) && isset( $signup_object->meta ) && $signup_field_labels ) : 152 // Init ids. 153 $profile_field_ids = array(); 154 155 // Get all xprofile field IDs except field 1. 156 if ( ! empty( $signup_object->meta['profile_field_ids'] ) ) { 157 $profile_field_ids = array_flip( explode( ',', $signup_object->meta['profile_field_ids'] ) ); 158 unset( $profile_field_ids[1] ); 159 } 160 ?> 161 <h2><?php esc_html_e( 'Extended Profile Information', 'buddypress' ); ?></h2> 162 163 <table class="signup-profile-data-drawer wp-list-table widefat fixed striped"> 164 <?php if ( 1 <= count( $profile_field_ids ) ): foreach ( array_keys( $profile_field_ids ) as $profile_field_id ) : 165 $field_value = isset( $signup_object->meta[ "field_{$profile_field_id}" ] ) ? $signup_object->meta[ "field_{$profile_field_id}" ] : ''; ?> 166 <tr> 167 <td class="column-fields"><?php echo esc_html( $signup_field_labels[ $profile_field_id ] ); ?></td> 168 <td><?php echo bp_members_admin_format_xprofile_field_for_display( $field_value ); ?></td> 169 </tr> 170 <?php endforeach; else: ?> 171 <tr> 172 <td><?php esc_html_e( 'There is no additional information to display.', 'buddypress' ); ?></td> 173 </tr> 174 <?php endif; ?> 175 </table> 176 <?php endif; ?> 177 178 <?php if ( bp_members_site_requests_enabled() ) : ?> 179 <h2><?php esc_html_e( 'Site Request Information', 'buddypress' ); ?></h2> 180 <table class="signup-profile-data-drawer wp-list-table widefat fixed striped"> 181 <?php if ( ! empty( $signup_object->domain ) || ! empty( $signup_object->path ) ): ?> 182 <tr> 183 <td class="column-fields"><?php esc_html_e( 'Site Title', 'buddypress' ); ?></td> 184 <td><?php echo esc_html( $signup_object->title ); ?></td> 185 </tr> 186 <tr> 187 <td class="column-fields"><?php esc_html_e( 'Domain', 'buddypress' ); ?></td> 188 <td><?php echo esc_html( $signup_object->domain ); ?></td> 189 </tr> 190 <tr> 191 <td class="column-fields"><?php esc_html_e( 'Path', 'buddypress' ); ?></td> 192 <td><?php echo esc_html( $signup_object->path ); ?></td> 193 </tr> 194 <?php else : ?> 195 <tr> 196 <td><?php esc_html_e( 'This user has not requested a blog.', 'buddypress' ); ?></td> 197 </tr> 198 <?php endif; ?> 199 </table> 200 <?php endif; ?> 176 201 </div> 177 202 <?php 178 203 } -
src/bp-members/bp-members-functions.php
diff --git src/bp-members/bp-members-functions.php src/bp-members/bp-members-functions.php index e61bdf632..e3f60e220 100644
function bp_members_get_signup_by( $field = 'activation_key', $value = '' ) { 3749 3749 3750 3750 return $signup; 3751 3751 } 3752 3753 /** 3754 * Are site creation requests currently enabled? 3755 * 3756 * @since 10.0.0 3757 * 3758 * @return bool Whether site requests are currently enabled. 3759 */ 3760 function bp_members_site_requests_enabled() { 3761 3762 $matches = array( 'blog', 'all' ); 3763 3764 return is_multisite() && in_array( bp_core_get_root_option( 'registration' ), $matches, true ); 3765 } -
src/bp-members/bp-members-membership-requests.php
diff --git src/bp-members/bp-members-membership-requests.php src/bp-members/bp-members-membership-requests.php index b0ad8d223..54c6159ff 100644
function bp_members_membership_requests_filter_signup_row_actions( $actions, $si 304 304 $actions['resend'] = sprintf( '<a href="%1$s">%2$s</a>', esc_url( $email_link ), esc_html( $resend_label ) ); 305 305 306 306 // Add a link to view profile info when membership requests and xprofile are active. 307 if ( bp_is_active( 'xprofile' ) ) {307 if ( bp_is_active( 'xprofile' ) || bp_members_site_requests_enabled() ) { 308 308 $profile_link = add_query_arg( 309 309 array( 310 310 'page' => 'bp-signups#TB_inline', -
src/bp-members/classes/class-bp-members-admin.php
diff --git src/bp-members/classes/class-bp-members-admin.php src/bp-members/classes/class-bp-members-admin.php index 6c94cf20c..89c6badd3 100644
class BP_Members_Admin { 1757 1757 ) ); 1758 1758 1759 1759 // Use thickbox to display the extended profile information. 1760 if ( bp_is_active( 'xprofile' ) ) {1760 if ( bp_is_active( 'xprofile' ) || bp_members_site_requests_enabled() ) { 1761 1761 wp_enqueue_style( 'thickbox' ); 1762 1762 wp_enqueue_script( 1763 1763 'bp-signup-preview', -
src/bp-members/classes/class-bp-members-ms-list-table.php
diff --git src/bp-members/classes/class-bp-members-ms-list-table.php src/bp-members/classes/class-bp-members-ms-list-table.php index 27015f220..0dc4b5766 100644
class BP_Members_MS_List_Table extends WP_MS_Users_List_Table { 125 125 $this->screen->id = $reset_screen_id; 126 126 127 127 // Use thickbox to display the extended profile information. 128 if ( bp_is_active( 'xprofile' ) ) {128 if ( bp_is_active( 'xprofile' ) || bp_members_site_requests_enabled() ) { 129 129 add_thickbox(); 130 130 } 131 131 } … … class BP_Members_MS_List_Table extends WP_MS_Users_List_Table { 353 353 echo esc_html( $signup_object->user_name ); 354 354 355 355 // Insert the extended profile modal content required by thickbox. 356 if ( ! bp_is_active( 'xprofile' ) ) {356 if ( ! bp_is_active( 'xprofile' ) && ! bp_members_site_requests_enabled() ) { 357 357 return; 358 358 } 359 359 360 $profile_field_ids = array(); 361 362 // Fetch registration field data once only. 363 if ( ! $this->signup_field_labels ) { 364 $field_groups = bp_xprofile_get_groups( 365 array( 366 'fetch_fields' => true, 367 'signup_fields_only' => true, 368 ) 369 ); 370 371 foreach( $field_groups as $field_group ) { 372 foreach( $field_group->fields as $field ) { 373 $this->signup_field_labels[ $field->id ] = $field->name; 360 if ( bp_is_active( 'xprofile' ) ) { 361 $profile_field_ids = array(); 362 363 // Fetch registration field data once only. 364 if ( ! $this->signup_field_labels ) { 365 $field_groups = bp_xprofile_get_groups( 366 array( 367 'fetch_fields' => true, 368 'signup_fields_only' => true, 369 ) 370 ); 371 372 foreach( $field_groups as $field_group ) { 373 foreach( $field_group->fields as $field ) { 374 $this->signup_field_labels[ $field->id ] = $field->name; 375 } 374 376 } 375 377 } 376 378 }