Skip to:
Content

Ticket #7640: 7640.patch

File 7640.patch, 5.6 KB (added by antonioeatgoat, 6 weeks ago)

Improved parameters of the functions involved

  • src/bp-activity/bp-activity-template.php

    IDEA additional info:
    Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
    <+>UTF-8
     
    30813081         * 
    30823082         * @since 1.2.0 
    30833083         * 
     3084     * @param int|null $user_id ID of the user. If null, will be used the displayed user ID 
    30843085         * 
    30853086         * @return string The public message link for the displayed user. 
    30863087         */ 
    3087         function bp_get_send_public_message_link() { 
     3088        function bp_get_send_public_message_link( $user_id = null ) { 
     3089 
     3090                $displayed_user_id = bp_displayed_user_id(); 
     3091 
     3092                $user_id = ( is_null( $user_id ) ) ? bp_displayed_user_id() : absint( $user_id ); 
    30883093 
    30893094                // No link if not logged in, not looking at someone else's profile. 
    3090                 if ( ! is_user_logged_in() || ! bp_is_user() || bp_is_my_profile() ) { 
     3095                if ( ! is_user_logged_in() || ( bp_is_my_profile() && $displayed_user_id == $user_id ) ) { 
    30913096                        $retval = ''; 
    30923097                } else { 
    3093                         $args   = array( 'r' => bp_get_displayed_user_mentionname() ); 
     3098                        $args   = array( 'r' => bp_activity_get_user_mentionname( $user_id ) ); 
    30943099                        $url    = add_query_arg( $args, bp_get_activity_directory_permalink() ); 
    30953100                        $retval = wp_nonce_url( $url ); 
    30963101                } 
  • src/bp-messages/bp-messages-template.php

    IDEA additional info:
    Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
    <+>UTF-8
     
    13551355        /** 
    13561356         * Generate the URL for the Private Message link in member profile headers. 
    13571357         * 
     1358     * @param int|null $user_id ID of the user. If null, will be used the displayed user ID 
     1359     * 
    13581360         * @return bool|string False on failure, otherwise the URL. 
    13591361         */ 
    1360         function bp_get_send_private_message_link() { 
     1362        function bp_get_send_private_message_link( $user_id = null ) { 
    13611363 
    1362                 if ( bp_is_my_profile() || ! is_user_logged_in() ) { 
     1364                $displayed_user_id = bp_displayed_user_id(); 
     1365 
     1366                $user_id = ( is_null( $user_id ) ) ? bp_displayed_user_id() : absint( $user_id ); 
     1367 
     1368                // No link if not logged in, not looking at someone else's profile. 
     1369                if ( ! is_user_logged_in() || ( bp_is_my_profile() && $displayed_user_id == $user_id ) ) { 
    13631370                        return false; 
    13641371                } 
    13651372 
     
    13701377                 * 
    13711378                 * @param string $value URL for the Private Message link in member profile headers. 
    13721379                 */ 
    1373                 return apply_filters( 'bp_get_send_private_message_link', wp_nonce_url( bp_loggedin_user_domain() . bp_get_messages_slug() . '/compose/?r=' . bp_core_get_username( bp_displayed_user_id() ) ) ); 
     1380                return apply_filters( 'bp_get_send_private_message_link', wp_nonce_url( bp_loggedin_user_domain() . bp_get_messages_slug() . '/compose/?r=' . bp_core_get_username( $user_id ) ) ); 
    13741381        } 
    13751382 
    13761383/** 
     
    13931400} 
    13941401        /** 
    13951402         * Generate the 'Private Message' button for member profile headers. 
    1396          * 
     1403     *  
     1404         * @param array|string $args { 
     1405         *     All arguments are optional. See {@link BP_Button} for complete 
     1406         *     descriptions. 
     1407         *     @type string $id                Default: 'private_message'. 
     1408         *     @type string $component         Default: 'messages'. 
     1409         *     @type bool   $must_be_logged_in Default: true. 
     1410         *     @type bool   $block_self        Default: true. 
     1411         *     @type string $wrapper_id        Default: 'send-private-message'. 
     1412         *     @type string $link_href         Default: the private message link for 
     1413         *                                     the current member in the loop. 
     1414         *     @type string $link_text         Default: 'Private Message'. 
     1415         *     @type string $link_class        Default: 'send-message'. 
     1416         * } 
    13971417         * @return string 
    13981418         */ 
    1399         function bp_get_send_message_button() { 
    1400                 // Note: 'bp_get_send_message_button' is a legacy filter. Use 
    1401                 // 'bp_get_send_message_button_args' instead. See #4536. 
    1402                 return apply_filters( 'bp_get_send_message_button', 
     1419        function bp_get_send_message_button( $args = '' ) { 
    14031420 
    1404                         /** 
    1405                          * Filters the "Private Message" button for member profile headers. 
    1406                          * 
    1407                          * @since 1.8.0 
    1408                          * 
    1409                          * @param array $value See {@link BP_Button}. 
    1410                          */ 
    1411                         bp_get_button( apply_filters( 'bp_get_send_message_button_args', array( 
    1412                                 'id'                => 'private_message', 
    1413                                 'component'         => 'messages', 
    1414                                 'must_be_logged_in' => true, 
    1415                                 'block_self'        => true, 
    1416                                 'wrapper_id'        => 'send-private-message', 
    1417                                 'link_href'         => bp_get_send_private_message_link(), 
    1418                                 'link_text'         => __( 'Private Message', 'buddypress' ), 
    1419                                 'link_class'        => 'send-message', 
    1420                         ) ) ) 
     1421                $r = bp_parse_args( $args, array( 
     1422                        'id'                => 'private_message', 
     1423                        'component'         => 'messages', 
     1424                        'must_be_logged_in' => true, 
     1425                        'block_self'        => true, 
     1426                        'wrapper_id'        => 'send-private-message', 
     1427                        'link_href'         => bp_get_send_private_message_link(), 
     1428                        'link_text'         => __( 'Private Message', 'buddypress' ), 
     1429                        'link_class'        => 'send-message', 
     1430                ) ); 
     1431                 
     1432                 
     1433                // Note: 'bp_get_send_message_button' is a legacy filter. Use 
     1434                // 'bp_get_send_message_button_args' instead. See #4536. 
     1435                return apply_filters( 'bp_get_send_message_button', 
     1436 
     1437                        /** 
     1438                         * Filters the "Private Message" button for member profile headers. 
     1439                         * 
     1440                         * @since 1.8.0 
     1441                         * 
     1442                         * @param array $value See {@link BP_Button}. 
     1443                         */ 
     1444                        bp_get_button( apply_filters( 'bp_get_send_message_button_args', $r ) ) 
    14211445                ); 
    14221446        } 
    14231447