Skip to:
Content

BuddyPress.org

Ticket #3679: 3679.messages.01.diff

File 3679.messages.01.diff, 2.9 KB (added by cnorris23, 13 years ago)

Messages

  • bp-messages/bp-messages-template.php

     
    2929        var $pag_links;
    3030        var $search_terms;
    3131
    32         function bp_messages_box_template( $user_id, $box, $per_page, $max, $type ) {
    33                 $this->__construct( $user_id, $box, $per_page, $max, $type );
     32        function bp_messages_box_template( $user_id, $box, $per_page, $max, $type, $search_terms, $page_arg = 'mpage' ) {
     33                $this->__construct( $user_id, $box, $per_page, $max, $type, $search_terms, $page_arg );
    3434        }
    3535
    36         function __construct( $user_id, $box, $per_page, $max, $type, $search_terms ) {
    37                 $this->pag_page = isset( $_GET['mpage'] ) ? intval( $_GET['mpage'] ) : 1;
     36        function __construct( $user_id, $box, $per_page, $max, $type, $search_terms, $page_arg = 'mpage' ) {
     37                $this->pag_page = isset( $_GET[$page_arg] ) ? intval( $_GET[$page_arg] ) : 1;
    3838                $this->pag_num  = isset( $_GET['num'] )   ? intval( $_GET['num'] )   : $per_page;
    3939
    4040                $this->user_id      = $user_id;
    4141                $this->box          = $box;
    4242                $this->type         = $type;
    4343                $this->search_terms = $search_terms;
    44                
     44
    4545                if ( 'notices' == $this->box ) {
    4646                        $this->threads = BP_Messages_Notice::get_notices();
    4747                } else {
     
    7878
    7979                if ( (int) $this->total_thread_count && (int) $this->pag_num ) {
    8080                        $this->pag_links = paginate_links( array(
    81                                 'base'      => add_query_arg( 'mpage', '%#%' ),
     81                                'base'      => add_query_arg( $page_arg, '%#%' ),
    8282                                'format'    => '',
    8383                                'total'     => ceil( (int) $this->total_thread_count / (int) $this->pag_num ),
    8484                                'current'   => $this->pag_page,
     
    175175                'per_page'     => 10,
    176176                'max'          => false,
    177177                'type'         => 'all',
    178                 'search_terms' => isset( $_REQUEST['s'] ) ? stripslashes( $_REQUEST['s'] ) : ''
     178                'search_terms' => isset( $_REQUEST['s'] ) ? stripslashes( $_REQUEST['s'] ) : '',
     179                'page_arg'     => 'mpage', // See https://buddypress.trac.wordpress.org/ticket/3679
    179180        );
    180181
    181182        $r = wp_parse_args( $args, $defaults );
     
    196197                        $box = 'notices';
    197198                }
    198199
    199                 $messages_template = new BP_Messages_Box_Template( $user_id, $box, $per_page, $max, $type, $search_terms );
     200                $messages_template = new BP_Messages_Box_Template( $user_id, $box, $per_page, $max, $type, $search_terms, $page_arg );
    200201        }
    201202
    202203        return apply_filters( 'bp_has_message_threads', $messages_template->has_threads(), $messages_template );
     
    322323}
    323324        function bp_get_message_thread_avatar() {
    324325                global $messages_template;
    325                
     326
    326327                return apply_filters( 'bp_get_message_thread_avatar', bp_core_fetch_avatar( array( 'item_id' => $messages_template->thread->last_sender_id, 'type' => 'thumb', 'alt' => sprintf( __( 'Profile picture of %s', 'buddypress' ), bp_core_get_user_displayname( $messages_template->thread->last_sender_id ) ) ) ) );
    327328        }
    328329