Skip to:
Content

bbPress.org

Ticket #2519: 2519.8.patch

File 2519.8.patch, 7.2 KB (added by netweb, 9 years ago)

Refresh of 2519.7.patch against /trunk

  • src/includes/users/template.php

     
    604604                // Parse arguments against default values
    605605                $r = bbp_parse_args( $args, array(
    606606                        'post_id' => $post_id,
    607                         'before'  => '<span class="bbp-author-ip">(',
    608                         'after'   => ')</span>'
     607                        'before'  => '<div class="bbp-reply-ip"><span class="bbp-author-ip">(',
     608                        'after'   => ')</span></div>'
    609609                ), 'get_author_ip' );
    610610
    611611                // Get the author IP meta value
     
    621621                return apply_filters( 'bbp_get_author_ip', $author_ip, $r );
    622622        }
    623623
     624
     625/** User Topic and Reply Display Counts ***************************************/
     626
     627/**
     628 * Output the user topic counts
     629 *
     630 * @since 2.6.0 bbPress (rXXXX)
     631 *
     632 * @param mixed $args Optional. If an integer, it is used as user id.
     633 * @uses bbp_get_author_display_topic_count() To get the user topic counts
     634 */
     635function bbp_author_display_topic_count( $args = '' ) {
     636        echo bbp_get_author_display_topic_count( $args );
     637}
     638        /**
     639         * Return the user topic counts
     640         *
     641         * @since 2.6.0 bbPress (rXXXX)
     642         *
     643         * @param mixed $args Optional. If an integer, it is used as user id.
     644         * @uses apply_filters Calls 'bbp_no_author_display_topic_count' to
     645         *                      not display users topics started counts
     646         * @uses bbp_get_user_id() To get the user id
     647         * @uses bbp_get_user_topic_count To get the users topics started count
     648         * @uses apply_filters() Calls 'bbp_get_author_display_topic_count' with the
     649         *                        topics started count and args
     650         * @return string Users topics started count
     651         */
     652        function bbp_get_author_display_topic_count( $args = '' ) {
     653
     654                // Turn off author displayed topic counts
     655                if ( apply_filters( 'bbp_no_author_display_topic_count', is_front_page() ) ) {
     656                        return;
     657                }
     658
     659                // Parse arguments against default values
     660                $r = bbp_parse_args( $args, array(
     661                        'post_id' => 0,
     662                        'before'  => '<div class="bbp-author-topic-count">',
     663                        'title'   => __( 'Topics Started: ', 'bbpress' ),
     664                        'after'   => '</div>'
     665                ), 'get_author_display_topic_count' );
     666
     667                // Used as user ID
     668                if ( is_numeric( $args ) ) {
     669                        $user_id = bbp_get_user_id( $args );
     670
     671                // Use post ID author
     672                } else {
     673                        $user_id = bbp_get_topic_author_id( $r['post_id'] );
     674                }
     675
     676                // Get the users topic count
     677                if ( ! empty( $user_id ) ) {
     678                        $topic_count = bbp_get_user_topic_count( $user_id );
     679                } else {
     680                        $topic_count = __( 'unknown', 'bbpress' );
     681                }
     682
     683                // Concatenate
     684                $topic_count = $r['before'] . $r['title'] . $topic_count . $r['after'];
     685
     686                return apply_filters( 'bbp_get_author_display_topic_count', $topic_count, $r, $args );
     687        }
     688
     689/**
     690 * Output the user reply counts
     691 *
     692 * @since 2.6.0 bbPress (rXXXX)
     693 *
     694 * @param mixed $args Optional. If an integer, it is used as user id.
     695 * @uses bbp_get_author_display_reply_count() To get the user reply counts
     696 */
     697function bbp_author_display_reply_count( $args = '' ) {
     698        echo bbp_get_author_display_reply_count( $args );
     699}
     700        /**
     701         * Return the user reply counts
     702         *
     703         * @since 2.6.0 bbPress (rXXXX)
     704         *
     705         * @param mixed $args Optional. If an integer, it is used as user id.
     706         * @uses apply_filters Calls 'bbp_no_author_display_reply_count' to
     707         *                      not display user replies created counts
     708         * @uses bbp_get_user_id() To get the user id
     709         * @uses bbp_get_user_reply_count To get the users replies created count
     710         * @uses apply_filters() Calls 'bbp_get_author_display_reply_count' with the
     711         *                        topics started count and args
     712         * @return string Users replies created count
     713         */
     714        function bbp_get_author_display_reply_count( $args = '' ) {
     715
     716                // Turn off author author displayed reply counts
     717                if ( apply_filters( 'bbp_no_author_display_reply_count', is_front_page() ) ) {
     718                        return;
     719                }
     720
     721                // Parse arguments against default values
     722                $r = bbp_parse_args( $args, array(
     723                        'post_id' => 0,
     724                        'before'  => '<div class="bbp-author-reply-count">',
     725                        'title'   => __( 'Replies Created: ', 'bbpress' ),
     726                        'after'   => '</div>'
     727                ), 'get_author_display_reply_count' );
     728
     729                // Used as user ID
     730                if ( is_numeric( $args ) ) {
     731                        $user_id = bbp_get_user_id( $args );
     732
     733                // Use post ID author
     734                } else {
     735                        $user_id = bbp_get_reply_author_id( $r['post_id'] );
     736                }
     737
     738                // Get the users reply count
     739                if ( ! empty( $user_id ) ) {
     740                        $reply_count = bbp_get_user_reply_count( $user_id );
     741                } else {
     742                        $reply_count = __( 'unknown', 'bbpress' );
     743                }
     744
     745                // Concatenate
     746                $reply_count = $r['before'] . $r['title'] . $reply_count . $r['after'];
     747
     748                return apply_filters( 'bbp_get_author_display_reply_count', $reply_count, $r, $args );
     749        }
     750
    624751/** Anonymous Fields **********************************************************/
    625752
    626753/**
     
    14441571                return apply_filters( 'bbp_get_user_topics_created_url', $url, $user_id );
    14451572        }
    14461573
    1447 /** Topics Created ************************************************************/
     1574/** Replies Created ************************************************************/
    14481575
    14491576/**
    14501577 * Output the link to the user's replies
  • src/templates/default/bbpress/content-single-topic-lead.php

     
    5555
    5656                                        <?php do_action( 'bbp_theme_before_topic_author_admin_details' ); ?>
    5757
    58                                         <div class="bbp-topic-ip"><?php bbp_author_ip( bbp_get_topic_id() ); ?></div>
     58                                        <?php bbp_author_ip( bbp_get_topic_id() ); ?>
    5959
    6060                                        <?php do_action( 'bbp_theme_after_topic_author_admin_details' ); ?>
    6161
    6262                                <?php endif; ?>
    6363
     64                                <?php if ( ! bbp_is_topic_anonymous() ) : ?>
     65
     66                                        <?php do_action( 'bbp_theme_before_topic_author_count_details' ); ?>
     67
     68                                        <?php bbp_author_display_topic_count( bbp_get_topic_author_id() ); ?>
     69
     70                                        <?php bbp_author_display_reply_count( bbp_get_topic_author_id() ); ?>
     71
     72                                        <?php do_action( 'bbp_theme_after_topic_author_count_details' ); ?>
     73
     74                                <?php endif; ?>
     75
    6476                                <?php do_action( 'bbp_theme_after_topic_author_details' ); ?>
    6577
    6678                        </div><!-- .bbp-topic-author -->
  • src/templates/default/bbpress/loop-single-reply.php

     
    4444
    4545                        <?php do_action( 'bbp_theme_before_reply_author_admin_details' ); ?>
    4646
    47                         <div class="bbp-reply-ip"><?php bbp_author_ip( bbp_get_reply_id() ); ?></div>
     47                        <?php bbp_author_ip( bbp_get_reply_id() ); ?>
    4848
    4949                        <?php do_action( 'bbp_theme_after_reply_author_admin_details' ); ?>
    5050
    5151                <?php endif; ?>
    5252
     53                <?php if ( ! bbp_is_reply_anonymous() ) : ?>
     54
     55                        <?php do_action( 'bbp_theme_before_reply_author_count_details' ); ?>
     56
     57                        <?php bbp_author_display_topic_count( bbp_get_reply_author_id() ); ?>
     58
     59                        <?php bbp_author_display_reply_count( bbp_get_reply_author_id() ); ?>
     60
     61                        <?php do_action( 'bbp_theme_after_reply_author_count_details' ); ?>
     62
     63                <?php endif; ?>
     64
    5365                <?php do_action( 'bbp_theme_after_reply_author_details' ); ?>
    5466
    5567        </div><!-- .bbp-reply-author -->