Skip to:
Content

BuddyPress.org

Changeset 8931


Ignore:
Timestamp:
08/17/2014 09:56:37 AM (10 years ago)
Author:
djpaul
Message:

Correctly generate pagination links when using AJAX and search terms have been set.
Also improve pagination support for main loops in the Groups/Members/Messages components when JS is disabled.

Fixes #5768, props r-a-y

Location:
trunk/src
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/bp-groups/bp-groups-template.php

    r8826 r8931  
    235235        // Build pagination links
    236236        if ( (int) $this->total_group_count && (int) $this->pag_num ) {
     237            $pag_args = array(
     238                $page_arg => '%#%',
     239                'num'     => $this->pag_num,
     240                'sortby'  => $this->sort_by,
     241                'order'   => $this->order,
     242            );
     243
     244            if ( defined( 'DOING_AJAX' ) && true === (bool) DOING_AJAX ) {
     245                $base = remove_query_arg( 's', wp_get_referer() );
     246            } else {
     247                $base = '';
     248            }
     249
     250            if ( ! empty( $search_terms ) ) {
     251                $pag_args['s'] = $search_terms;
     252            }
     253
    237254            $this->pag_links = paginate_links( array(
    238                 'base'      => add_query_arg( array( $page_arg => '%#%', 'num' => $this->pag_num, 's' => $search_terms, 'sortby' => $this->sort_by, 'order' => $this->order ) ),
     255                'base'      => add_query_arg( $pag_args, $base ),
    239256                'format'    => '',
    240257                'total'     => ceil( (int) $this->total_group_count / (int) $this->pag_num ),
  • trunk/src/bp-members/bp-members-template.php

    r8781 r8931  
    265265
    266266        if ( (int) $this->total_member_count && (int) $this->pag_num ) {
     267            $pag_args = array(
     268                $page_arg => '%#%',
     269            );
     270
     271            if ( defined( 'DOING_AJAX' ) && true === (bool) DOING_AJAX ) {
     272                $base = remove_query_arg( 's', wp_get_referer() );
     273            } else {
     274                $base = '';
     275            }
     276
     277            if ( ! empty( $search_terms ) ) {
     278                $pag_args['s'] = $search_terms;
     279            }
     280
    267281            $this->pag_links = paginate_links( array(
    268                 'base'      => add_query_arg( $page_arg, '%#%' ),
     282                'base'      => add_query_arg( $pag_args, $base ),
    269283                'format'    => '',
    270284                'total'     => ceil( (int) $this->total_member_count / (int) $this->pag_num ),
  • trunk/src/bp-messages/bp-messages-template.php

    r8794 r8931  
    174174
    175175        if ( (int) $this->total_thread_count && (int) $this->pag_num ) {
     176            $pag_args = array(
     177                $page_arg => '%#%',
     178            );
     179
     180            if ( defined( 'DOING_AJAX' ) && true === (bool) DOING_AJAX ) {
     181                $base = remove_query_arg( 's', wp_get_referer() );
     182            } else {
     183                $base = '';
     184            }
     185
     186            if ( ! empty( $this->search_terms ) ) {
     187                $pag_args['s'] = $this->search_terms;
     188            }
     189
    176190            $this->pag_links = paginate_links( array(
    177                 'base'      => add_query_arg( $page_arg, '%#%' ),
     191                'base'      => add_query_arg( $pag_args, $base ),
    178192                'format'    => '',
    179193                'total'     => ceil( (int) $this->total_thread_count / (int) $this->pag_num ),
  • trunk/src/bp-templates/bp-legacy/js/buddypress.js

    r8817 r8931  
    16881688    if ( 'activity' === object ) {
    16891689        return false;
    1690     }
    1691 
    1692     if ( bp_get_querystring('s') && !search_terms ) {
    1693         search_terms = bp_get_querystring('s');
    16941690    }
    16951691
Note: See TracChangeset for help on using the changeset viewer.