Skip to:
Content

bbPress.org


Ignore:
Timestamp:
05/01/2012 10:08:50 PM (10 years ago)
Author:
johnjamesjacoby
Message:

Add template tags and supporting functions to display user role in topics and replies. Fixes #1815. Props cnorris23 for original patch.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/plugin/bbp-includes/bbp-reply-template.php

    r3845 r3860  
    950950     * @uses bbp_get_reply_author_url() To get the reply author url
    951951     * @uses bbp_get_reply_author_avatar() To get the reply author avatar
    952      * bbp_get_reply_author_display_name() To get the reply author display
     952     * @uses bbp_get_reply_author_display_name() To get the reply author display
    953953     *                                      name
     954     * @uses bbp_get_user_display_role() To get the reply author display role
     955     * @uses bbp_get_reply_author_id() To get the reply author id
    954956     * @uses apply_filters() Calls 'bbp_get_reply_author_link' with the
    955957     *                        author link and args
     
    962964            'type'       => 'both',
    963965            'size'       => 80,
    964             'sep'        => ' '
     966            'sep'        => ' ',
     967            'show_role'  => true
    965968        );
    966969        $r = bbp_parse_args( $args, $defaults, 'get_reply_author_link' );
     
    9981001                    $author_link[] = sprintf( '<a href="%1$s"%2$s%3$s>%4$s</a>', $author_url, $link_title, $link_class, $link_text );
    9991002                }
     1003
     1004                if ( true === $show_role ) {
     1005                    $author_link[] = bbp_get_reply_author_role( array( 'reply_id' => $reply_id ) );
     1006                }
     1007
    10001008                $author_link = join( $sep, $author_link );
    10011009
     
    11071115
    11081116        return apply_filters( 'bbp_get_reply_author_email', $author_email, $reply_id );
     1117    }
     1118
     1119/**
     1120 * Output the reply author role
     1121 *
     1122 * @since bbPress (r3860)
     1123 *
     1124 * @param array $args Optional.
     1125 * @uses bbp_get_reply_author_role() To get the reply author role
     1126 */
     1127function bbp_reply_author_role( $args = array() ) {
     1128    echo bbp_get_reply_author_role( $args );
     1129}
     1130    /**
     1131     * Return the reply author role
     1132     *
     1133     * @since bbPress (r3860)
     1134     *
     1135     * @param array $args Optional.
     1136     * @uses bbp_get_reply_id() To get the reply id
     1137     * @uses bbp_get_user_display_role() To get the user display role
     1138     * @uses bbp_get_reply_author_id() To get the reply author id
     1139     * @uses apply_filters() Calls bbp_get_reply_author_role with the author
     1140     *                        role & args
     1141     * @return string Reply author role
     1142     */
     1143    function bbp_get_reply_author_role( $args = array() ) {
     1144        $defaults = array(
     1145            'reply_id' => 0,
     1146            'class'    => 'bbp-author-role',
     1147            'before'   => '',
     1148            'after'    => ''
     1149        );
     1150        $args = bbp_parse_args( $args, $defaults, 'get_reply_author_role' );
     1151        extract( $args, EXTR_SKIP );
     1152
     1153        $reply_id    = bbp_get_reply_id( $reply_id );
     1154        $role        = bbp_get_user_display_role( bbp_get_reply_author_id( $reply_id ) );
     1155        $author_role = sprintf( '%1$s<div class="%2$s">%3$s</div>%4$s', $before, $class, $role, $after );
     1156
     1157        return apply_filters( 'bbp_get_reply_author_role', $author_role, $args );
    11091158    }
    11101159
     
    17481797        $classes[] = 'bbp-parent-topic-' . bbp_get_reply_topic_id( $reply_id );
    17491798        $classes[] = 'user-id-' . bbp_get_reply_author_id( $reply_id );
    1750         $classes[] = ( bbp_get_reply_author_id( $reply_id ) == bbp_get_topic_author_id( bbp_get_reply_topic_id( $reply_id ) ) ? 'topic-author' : '' );     
     1799        $classes[] = ( bbp_get_reply_author_id( $reply_id ) == bbp_get_topic_author_id( bbp_get_reply_topic_id( $reply_id ) ) ? 'topic-author' : '' );
    17511800        $classes   = array_filter( $classes );
    17521801        $classes   = get_post_class( $classes, $reply_id );
Note: See TracChangeset for help on using the changeset viewer.