wenpai.org/wp-content/plugins/bbp-style-pack/blocks/bsp-single-topic-information.php
2024-06-21 23:57:39 +08:00

96 lines
3.9 KiB
PHP

<?php
// Exit if accessed directly
defined( 'ABSPATH' ) || exit;
//bail if not in single topic
if (!bbp_is_single_topic()) return ;
echo '<div class="widget bsp-widget bsp-st-container">';
do_action ('bsp_single_topic_widget_before_title') ;
if ( !empty( $attributes['title'] ) ) {
echo '<span class="bsp-st-title"><h3 class="widget-title bsp-widget-title">' . $attributes['title'] . '</h3></span>' ;
}
do_action ('bsp_single_topic_widget_after_title') ;
// Validate topic_id
$topic_id = bbp_get_topic_id();
// Unhook the 'view all' query var adder
remove_filter( 'bbp_get_topic_permalink', 'bbp_add_view_all' );
// Build the topic description
$voice_count = bbp_get_topic_voice_count( $topic_id, true );
//$reply_count = bbp_get_topic_replies_link ( $topic_id );
$time_since = bbp_get_topic_freshness_link( $topic_id );
// Singular/Plural
$voice_count = (bbp_number_format( $voice_count )>1 ? bbp_number_format( $voice_count ).' '.$attributes['participants'] : bbp_number_format( $voice_count ).' '.$attributes['participant'] ) ;
$reply_count = (bbp_get_topic_reply_count( $topic_id)>1 ? bbp_get_topic_reply_count( $topic_id).' '.$attributes['replies'] : bbp_get_topic_reply_count( $topic_id).' '.$attributes['reply'] ) ;
$last_reply = bbp_get_topic_last_active_id( $topic_id );
$show_iconf = (!empty ($attributes['show_icons']) ? 'show-iconf' : '' ) ;
$show_iconr = (!empty ($attributes['show_icons']) ? 'show-iconr' : '' ) ;
$show_iconv = (!empty ($attributes['show_icons']) ? 'show-iconv' : '' ) ;
$show_iconlr = (!empty ($attributes['show_icons']) ? 'show-iconlr' : '' ) ;
$show_iconla = (!empty ($attributes['show_icons']) ? 'show-iconla' : '' ) ;
$show_iconfa = (!empty ($attributes['show_icons']) ? 'show-iconfa' : '' ) ;
$show_iconsu = (!empty ($attributes['show_icons']) ? 'show-iconsu' : '' ) ;
//then stop list style bullet points form showing if we are showing icons
$list_style = (!empty ($attributes['show_icons']) ? 'hide-list-style' : '' ) ;
echo '<ul class="bsp-st-info-list '.$list_style.'">';
?>
<li class="topic-forum <?php echo $show_iconf ; ?> ">
<?php
/* translators: %s: forum title */
echo $attributes['in'];
printf( '<a href="%s">%s</a>',
esc_url( bbp_get_forum_permalink( bbp_get_topic_forum_id() ) ),
bbp_get_topic_forum_title()
) ;
?></li>
<?php if ( !empty( $reply_count ) ) : ?>
<li class="reply-count <?php echo $show_iconr ; ?> ">
<?php echo $reply_count; ?></li>
<?php endif; ?>
<?php if ( !empty( $voice_count ) ) : ?>
<li class="voice-count <?php echo $show_iconv ; ?> ">
<?php echo $voice_count; ?></li>
<?php endif; ?>
<?php if ( !empty( $last_reply ) ) : ?>
<li class="topic-freshness-author <?php echo $show_iconlr ; ?> ">
<?php
echo $attributes['last_reply'];
echo bbp_get_author_link( array( 'type' => 'name', 'post_id' => $last_reply, 'size' => '15' ) );
?></li>
<?php endif; ?>
<?php if ( !empty( $time_since ) ) : ?>
<li class="topic-freshness-time <?php echo $show_iconla ; ?> ">
<?php
echo $attributes['last_activity'];
echo $time_since ;
?></li>
<?php endif; ?>
<?php if ( is_user_logged_in() ) : ?>
<?php $_topic_id = bbp_is_reply_edit() ? bbp_get_reply_topic_id() : $topic_id; ?>
<?php // we add a 'widget' into the array, so that the subscribe link doesn't add button styling
?>
<li class="topic-subscribe <?php echo $show_iconfa ; ?>"><?php bbp_topic_subscription_link( array( 'before' => '', 'topic_id' => $_topic_id, 'widget' => 'yes' ) ); ?></li>
<li class="topic-favorite <?php echo $show_iconsu ; ?>"><?php bbp_topic_favorite_link( array( 'topic_id' => $_topic_id ) ); ?></li>
<?php endif;
echo '</ul>' ; //end of '<ul class="bsp-st-info-list">';
do_action( 'bbp_single_topic_information_widget' );
echo '</div>'; //end of'<div class="bsp-st-container">';