WordPress.org

Making WordPress.org

Ticket #2068: meta-2068.2.patch

File meta-2068.2.patch, 4.0 KB (added by SergeyBiryukov, 3 years ago)
  • sites/trunk/wordpress.org/public_html/wp-content/themes/pub/wporg-forums/bbpress/user-profile.php

     
    1919
    2020                <?php endif; ?>
    2121
    22                 <p class="bbp-user-forum-role"><?php   printf( esc_html__( 'Forum Role: %s',      'wporg-forums' ), bbp_get_user_display_role()    ); ?></p>
    23                 <p class="bbp-user-member-since"><?php printf( esc_html__( 'Member Since: %s',    'wporg-forums' ), wporg_support_get_user_registered_date() ); ?></p>
    24                 <p class="bbp-user-topic-count"><?php  printf( esc_html__( 'Topics Started: %s',  'wporg-forums' ), bbp_get_user_topic_count_raw() ); ?></p>
    25                 <p class="bbp-user-reply-count"><?php  printf( esc_html__( 'Replies Created: %s', 'wporg-forums' ), bbp_get_user_reply_count_raw() ); ?></p>
     22                <p class="bbp-user-wporg-profile"><?php
     23                        $slack_username = wporg_support_get_slack_username();
     24
     25                        if ( $slack_username ) {
     26                                /* translators: 1: user's WordPress.org profile link, 2: user's Slack username, 3: make.wordpress.org/chat URL */
     27                                printf( __( '%1$s on WordPress.org, %2$s on <a href="%3$s">Slack</a>', 'wporg-forums' ),
     28                                        wporg_support_get_wporg_profile_link(),
     29                                        $slack_username,
     30                                        'https://make.wordpress.org/chat/'
     31                                );
     32                        } else {
     33                                /* translators: %s: user's WordPress.org profile link */
     34                                printf( esc_html__( '%s on WordPress.org', 'wporg-forums' ),
     35                                        wporg_support_get_wporg_profile_link()
     36                                );
     37                        }
     38                ?></p>
     39                <p class="bbp-user-forum-role"><?php
     40                        /* translators: %s: user's forum role */
     41                        printf( esc_html__( 'Forum Role: %s', 'wporg-forums' ), bbp_get_user_display_role() );
     42                ?></p>
     43                <p class="bbp-user-member-since"><?php
     44                        /* translators: %s: user's registration date */
     45                        printf( esc_html__( 'Member Since: %s', 'wporg-forums' ), wporg_support_get_user_registered_date() );
     46                ?></p>
     47                <p class="bbp-user-topic-count"><?php
     48                        /* translators: %s: number of user's topics */
     49                        printf( esc_html__( 'Topics Started: %s', 'wporg-forums' ), bbp_get_user_topic_count_raw() );
     50                ?></p>
     51                <p class="bbp-user-reply-count"><?php
     52                        /* translators: %s: number of user's replies */
     53                        printf( esc_html__( 'Replies Created: %s', 'wporg-forums' ), bbp_get_user_reply_count_raw() );
     54                ?></p>
    2655        </div>
    2756</div><!-- #bbp-author-topics-started -->
    2857
  • sites/trunk/wordpress.org/public_html/wp-content/themes/pub/wporg-forums/functions.php

     
    173173// add_filter( 'bbp_pre_get_user_profile_url', 'wporg_support_profile_url' );
    174174
    175175/**
     176 * Get user's WordPress.org profile link.
     177 *
     178 * @param int $user_id
     179 * @return string
     180 */
     181function wporg_support_get_wporg_profile_link( $user_id = 0 ) {
     182        $user_nicename = bbp_get_user_nicename( $user_id );
     183
     184        return sprintf( '<a href="%s">@%s</a>',
     185                esc_url( 'https://profiles.wordpress.org/' . $user_nicename ),
     186                $user_nicename
     187        );
     188}
     189
     190/**
     191 * Get user's Slack username.
     192 *
     193 * @param int $user_id
     194 * @return string
     195 */
     196function wporg_support_get_slack_username( $user_id = 0 ) {
     197        global $wpdb;
     198
     199        $user_id = bbp_get_user_id( $user_id );
     200
     201        $data = $wpdb->get_var( $wpdb->prepare( "SELECT profiledata FROM slack_users WHERE user_id = %d", $user_id ) );
     202        if ( $data && ( $data = json_decode( $data, true ) ) ) {
     203                return '@' . $data['name'];
     204        }
     205
     206        return '';
     207}
     208
     209/**
    176210 * Get user's registration date.
     211 *
     212 * @param int $user_id
     213 * @return string
    177214 */
    178215function wporg_support_get_user_registered_date( $user_id = 0 ) {
    179216        $user = get_userdata( bbp_get_user_id( $user_id ) );