Skip to:
Content

bbPress.org

Changeset 6309


Ignore:
Timestamp:
02/25/2017 12:12:52 AM (8 years ago)
Author:
johnjamesjacoby
Message:

Favorites/Subscriptions: Pagination & redirect_to clean-up.

  • PHPDoc & inline doc
  • Prefer urlencode() over esc_url() for redirect_to query argument
  • Corrections to forum & topic subscription loop logic, since they're both listed on the same page

See #3065.

Location:
trunk/src/includes
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/includes/forums/template.php

    r6307 r6309  
    829829 *
    830830 * @since 2.5.0 bbPress (r5156)
     831 * @since 2.6.0 bbPress (r6308) Add 'redirect_to' support
    831832 *
    832833 * @uses bbp_get_forum_subscription_link()
     
    842843     *
    843844     * @since 2.5.0 bbPress (r5156)
     845     * @since 2.6.0 bbPress (r6308) Add 'redirect_to' support
    844846     *
    845847     * @uses bbp_parse_args()
     
    851853        // Defaults
    852854        $retval      = false;
    853         $redirect_to = bbp_is_favorites()
    854             ? bbp_get_favorites_permalink()
     855        $redirect_to = bbp_is_subscriptions()
     856            ? bbp_get_subscriptions_permalink()
    855857            : '';
    856858
  • trunk/src/includes/topics/template.php

    r6307 r6309  
    19051905 *
    19061906 * @since 2.5.0 bbPress (r5156)
     1907 * @since 2.6.0 bbPress (r6308) Add 'redirect_to' support
    19071908 *
    19081909 * @uses bbp_get_topic_subscription_link()
     
    19181919     *
    19191920     * @since 2.5.0 bbPress (r5156)
    1920      *
     1921     * @since 2.6.0 bbPress (r6308) Add 'redirect_to' support
     1922     *
     1923     * @uses bbp_is_subscriptions()
     1924     * @uses bbp_get_subscriptions_permalink()
    19211925     * @uses bbp_parse_args()
    19221926     * @uses bbp_get_user_subscribe_link()
     
    19541958 *
    19551959 * @since 2.5.0 bbPress (r5156)
     1960 * @since 2.6.0 bbPress (r6308) Add 'redirect_to' support
    19561961 *
    19571962 * @uses bbp_get_topic_favorite_link()
     
    19671972     *
    19681973     * @since 2.5.0 bbPress (r5156)
    1969      *
     1974     * @since 2.6.0 bbPress (r6308) Add 'redirect_to' support
     1975     *
     1976     * @uses bbp_is_favorites()
     1977     * @uses bbp_get_favorites_permalink()
    19701978     * @uses bbp_parse_args()
    19711979     * @uses bbp_get_user_favorites_link()
  • trunk/src/includes/users/template.php

    r6308 r6309  
    798798 *
    799799 * @since 2.0.0 bbPress (r2652)
     800 * @since 2.6.0 bbPress (r6308) Add pagination if in the loop
    800801 *
    801802 * @param int $user_id Optional. User id
     
    809810     *
    810811     * @since 2.0.0 bbPress (r2652)
     812     * @since 2.6.0 bbPress (r6308) Add pagination if in the loop
    811813     *
    812814     * @param int $user_id Optional. User id
     
    842844
    843845            // Add page
    844             if ( true === $paged ) {
     846            if ( ( true === $paged ) && ( $page > 1 ) ) {
    845847                $url = trailingslashit( $url ) . bbp_get_paged_slug() . '/' . $page;
    846848            }
     
    858860
    859861            // Add page
    860             if ( true === $paged ) {
     862            if ( ( true === $paged ) && ( $page > 1 ) ) {
    861863                $args['page'] = $page;
    862864            }
     
    873875 *
    874876 * @since 2.0.0 bbPress (r2652)
     877 * @since 2.6.0 bbPress (r6308) Add 'redirect_to' support
    875878 *
    876879 * @param array $args See {@link bbp_get_user_favorites_link()}
     
    889892     *
    890893     * @since 2.0.0 bbPress (r2652)
     894     * @since 2.6.0 bbPress (r6308) Add 'redirect_to' support
    891895     *
    892896     * @param array $args This function supports these arguments:
     
    912916     */
    913917    function bbp_get_user_favorites_link( $args = array(), $user_id = 0, $wrap = true ) {
     918
     919        // Bail if favorites are inactive
    914920        if ( ! bbp_is_favorites_active() ) {
    915921            return false;
     
    951957        // Custom redirect
    952958        if ( ! empty( $r['redirect_to'] ) ) {
    953             $query_args['redirect_to'] = esc_url( $r['redirect_to'] );
     959            $query_args['redirect_to'] = urlencode( $r['redirect_to'] );
    954960        }
    955961
     
    983989 *
    984990 * @since 2.0.0 bbPress (r2688)
     991 * @since 2.6.0 bbPress (r6308) Add pagination if in the loop
    985992 *
    986993 * @param int $user_id Optional. User id
     
    9941001     *
    9951002     * @since 2.0.0 bbPress (r2688)
     1003     * @since 2.6.0 bbPress (r6308) Add pagination if in the loop
    9961004     *
    9971005     * @param int $user_id Optional. User id
     
    10171025        // Get user profile URL
    10181026        $profile_url = bbp_get_user_profile_url( $user_id );
    1019         $page        = (int)  bbpress()->topic_query->paged;
    1020         $paged       = (bool) bbpress()->topic_query->in_the_loop;
    1021 
     1027        $page        = 0;
     1028        $paged       = false;
     1029
     1030        // Get pagination data
     1031        if ( bbpress()->topic_query->in_the_loop ) {
     1032            $page  = (int)  bbpress()->topic_query->paged;
     1033            $paged = (bool) bbpress()->topic_query->in_the_loop;
     1034
     1035        } elseif ( bbpress()->forum_query->in_the_loop ) {
     1036            $page  = (int)  bbpress()->forum_query->paged;
     1037            $paged = (bool) bbpress()->forum_query->in_the_loop;
     1038        }
     1039       
    10221040        // Pretty permalinks
    10231041        if ( bbp_use_pretty_urls() ) {
     
    10271045
    10281046            // Add page
    1029             if ( true === $paged ) {
     1047            if ( ( true === $paged ) && ( $page > 1 ) ) {
    10301048                $url = trailingslashit( $url ) . bbp_get_paged_slug() . '/' . $page;
    10311049            }
     
    10431061
    10441062            // Add page
    1045             if ( true === $paged ) {
     1063            if ( ( true === $paged ) && ( $page > 1 ) ) {
    10461064                $args['page'] = $page;
    10471065            }
     
    10581076 *
    10591077 * @since 2.0.0 bbPress (r2668)
     1078 * @since 2.6.0 bbPress (r6308) Add 'redirect_to' support
    10601079 *
    10611080 * @param array $args See {@link bbp_get_user_subscribe_link()}
     
    10711090     *
    10721091     * @since 2.0.0 bbPress (r2668)
     1092     * @since 2.6.0 bbPress (r6308) Add 'redirect_to' support
    10731093     *
    10741094     * @param array $args This function supports these arguments:
     
    10981118     */
    10991119    function bbp_get_user_subscribe_link( $args = array(), $user_id = 0, $wrap = true ) {
     1120
     1121        // Bail if subscriptions are inactive
    11001122        if ( ! bbp_is_subscriptions_active() ) {
    11011123            return;
     
    11781200            // Custom redirect
    11791201            if ( ! empty( $r['redirect_to'] ) ) {
    1180                 $query_args['redirect_to'] = esc_url( $r['redirect_to'] );
     1202                $query_args['redirect_to'] = urlencode( $r['redirect_to'] );
    11811203            }
    11821204
Note: See TracChangeset for help on using the changeset viewer.