Skip to:
Content

BuddyPress.org

Ticket #7261: 7261.table.patch

File 7261.table.patch, 3.5 KB (added by r-a-y, 3 years ago)
  • src/bp-core/admin/css/common.css

     
    553553        text-align: center;
    554554}
    555555
     556.bp-signups-list table {
     557        margin: 1em 0;
     558}
     559
     560.bp-signups-list .column-fields {
     561        font-weight: bold;
     562}
    556563
    557564/*------------------------------------------------------------------------------
    558565 * 4.0 Emails - Edit Page
  • src/bp-members/classes/class-bp-members-admin.php

     
    20402040                        'signups_' . $action
    20412041                );
    20422042
     2043                // Prefetch registration field data.
     2044                $fdata = array();
     2045                if ( 'activate' === $action && bp_is_active( 'xprofile' ) ) {
     2046                        $fields = bp_xprofile_get_groups( array(
     2047                                'profile_group_id' => 1,
     2048                                'exclude_fields' => 1,
     2049                                'update_meta_cache' => false,
     2050                                'fetch_fields' => true,
     2051                        ) );
     2052                        $fields = $fields[0]->fields;
     2053                        foreach( $fields as $f ) {
     2054                                $fdata[ $f->id ] = $f->name;
     2055                        }
     2056                }
     2057
    20432058                ?>
    20442059
    20452060                <div class="wrap">
     
    20482063
    20492064                        <ol class="bp-signups-list">
    20502065                        <?php foreach ( $signups as $signup ) :
     2066                                $last_notified = mysql2date( 'Y/m/d g:i:s a', $signup->date_sent );
    20512067
    2052                                 $last_notified = mysql2date( 'Y/m/d g:i:s a', $signup->date_sent ); ?>
     2068                                // Get all xprofile field IDs except field 1.
     2069                                $profile_field_ids = array_flip( explode( ',', $signup->meta['profile_field_ids'] ) );
     2070                                unset( $profile_field_ids[1] );
     2071                        ?>
    20532072
    20542073                                <li>
    2055                                         <?php echo esc_html( $signup->user_name ) ?> - <?php echo sanitize_email( $signup->user_email );?>
     2074                                        <strong><?php echo esc_html( $signup->user_login ) ?></strong>
     2075
     2076                                        <?php if ( 'activate' == $action ) : ?>
     2077                                                <table class="wp-list-table widefat fixed striped">
     2078                                                        <tbody>
     2079                                                                <tr>
     2080                                                                        <td class="column-fields"><?php esc_html_e( 'Display Name', 'buddypress' ); ?></td>
     2081                                                                        <td><?php echo esc_html( $signup->user_name ); ?></td>
     2082                                                                </tr>
     2083
     2084                                                                <tr>
     2085                                                                        <td class="column-fields"><?php esc_html_e( 'Email', 'buddypress' ); ?></td>
     2086                                                                        <td><?php echo sanitize_email( $signup->user_email ); ?></td>
     2087                                                                </tr>
     2088
     2089                                                                <?php if ( bp_is_active( 'xprofile' ) && ! empty( $profile_field_ids ) ) : ?>
     2090                                                                        <?php foreach ( $profile_field_ids as $pid => $noop ) :
     2091                                                                                $field_value = isset( $signup->meta[ "field_{$pid}" ] ) ? $signup->meta[ "field_{$pid}" ] : ''; ?>
     2092                                                                                <tr>
     2093                                                                                        <td class="column-fields"><?php echo esc_html( $fdata[ $pid ] ); ?></td>
     2094                                                                                        <td><?php echo $this->format_xprofile_field_for_display( $field_value ); ?></td>
     2095                                                                                </tr>
     2096
     2097                                                                        <?php endforeach;  ?>
     2098
     2099                                                                <?php endif; ?>
     2100
     2101                                                        </tbody>
     2102                                                </table>
     2103                                        <?php endif; ?>
    20562104
    20572105                                        <?php if ( 'resend' == $action ) : ?>
    20582106
     
    23052353                        }
    23062354                }
    23072355        }
     2356
     2357        /**
     2358         * Formats a signup's xprofile field data for display.
     2359         *
     2360         * Operates recursively on arrays, which are then imploded with commas.
     2361         *
     2362         * @since 2.8.0
     2363         *
     2364         * @param string|array $value Field value.
     2365         * @return string
     2366         */
     2367        protected function format_xprofile_field_for_display( $value ) {
     2368                if ( is_array( $value ) ) {
     2369                        $value = array_map( array( $this, 'format_xprofile_field_for_display' ), $value );
     2370                        $value = implode( ', ', $value );
     2371                } else {
     2372                        $value = stripslashes( $value );
     2373                        $value = esc_html( $value );
     2374                }
     2375
     2376                return $value;
     2377        }
    23082378}
    23092379endif; // End class_exists check.