+ $date_format = __( 'M j, Y @ H:i' );
+ $last_updated_timestamp = strtotime( $api->last_updated );
+ ?>
+ <div id="<?php echo $_tab; ?>-content" class='<?php echo $_with_banner; ?>'>
+ <div class="fyi">
+ <ul>
+ <?php if ( ! empty( $api->version ) ) { ?>
+ <li><strong><?php _e( 'Version:' ); ?></strong> <?php echo $api->version; ?></li>
+ <?php } if ( ! empty( $api->author ) ) { ?>
+ <li><strong><?php _e( 'Author:' ); ?></strong> <?php echo links_add_target( $api->author, '_blank' ); ?></li>
+ <?php } if ( ! empty( $api->last_updated ) ) { ?>
+ <li><strong><?php _e( 'Last Updated:' ); ?></strong> <span title="<?php echo esc_attr( date_i18n( $date_format, $last_updated_timestamp ) ); ?>">
+ <?php printf( __( '%s ago' ), human_time_diff( $last_updated_timestamp ) ); ?>
+ </span></li>
+ <?php } if ( ! empty( $api->requires ) ) { ?>
+ <li><strong><?php _e( 'Requires WordPress Version:' ); ?></strong> <?php printf( __( '%s or higher' ), $api->requires ); ?></li>
+ <?php } if ( ! empty( $api->tested ) ) { ?>
+ <li><strong><?php _e( 'Compatible up to:' ); ?></strong> <?php echo $api->tested; ?></li>
+ <?php } if ( ! empty( $api->active_installs ) ) { ?>
+ <li><strong><?php _e( 'Active Installs:' ); ?></strong> <?php
+ if ( $api->active_installs >= 1000000 ) {
+ _ex( '1+ Million', 'Active plugin installs' );
+ } else {
+ echo number_format_i18n( $api->active_installs ) . '+';
+ }
+ ?></li>
+ <?php } if ( ! empty( $api->slug ) && empty( $api->external ) ) { ?>
+ <li><a target="_blank" href="https://wordpress.org/plugins/<?php echo $api->slug; ?>/"><?php _e( 'WordPress.org Plugin Page »' ); ?></a></li>
+ <?php } if ( ! empty( $api->homepage ) ) { ?>
+ <li><a target="_blank" href="<?php echo esc_url( $api->homepage ); ?>"><?php _e( 'Plugin Homepage »' ); ?></a></li>
+ <?php } if ( ! empty( $api->donate_link ) && empty( $api->contributors ) ) { ?>
+ <li><a target="_blank" href="<?php echo esc_url( $api->donate_link ); ?>"><?php _e( 'Donate to this plugin »' ); ?></a></li>
+ <?php } ?>
+ </ul>
+ <?php if ( ! empty( $api->rating ) ) { ?>
+ <h3><?php _e( 'Average Rating' ); ?></h3>
+ <?php wp_star_rating( array( 'rating' => $api->rating, 'type' => 'percent', 'number' => $api->num_ratings ) ); ?>
+ <small><?php printf( _n( '(based on %s rating)', '(based on %s ratings)', $api->num_ratings ), number_format_i18n( $api->num_ratings ) ); ?></small>
+ <?php }
+
+ if ( ! empty( $api->ratings ) && array_sum( (array) $api->ratings ) > 0 ) {
+ foreach( $api->ratings as $key => $ratecount ) {
+ // Avoid div-by-zero.
+ $_rating = $api->num_ratings ? ( $ratecount / $api->num_ratings ) : 0;
+ ?>
+ <div class="counter-container">
+ <span class="counter-label"><a href="https://wordpress.org/support/view/plugin-reviews/<?php echo $api->slug; ?>?filter=<?php echo $key; ?>"
+ target="_blank"
+ title="<?php echo esc_attr( sprintf( _n( 'Click to see reviews that provided a rating of %d star', 'Click to see reviews that provided a rating of %d stars', $key ), $key ) ); ?>"><?php printf( _n( '%d star', '%d stars', $key ), $key ); ?></a></span>
+ <span class="counter-back">
+ <span class="counter-bar" style="width: <?php echo 92 * $_rating; ?>px;"></span>
+ </span>
+ <span class="counter-count"><?php echo number_format_i18n( $ratecount ); ?></span>
+ </div>
+ <?php
+ }
+ }
+ if ( ! empty( $api->contributors ) ) { ?>
+ <h3><?php _e( 'Contributors' ); ?></h3>
+ <ul class="contributors">
+ <?php
+ foreach ( (array) $api->contributors as $contrib_username => $contrib_profile ) {
+ if ( empty( $contrib_username ) && empty( $contrib_profile ) ) {
+ continue;
+ }
+ if ( empty( $contrib_username ) ) {
+ $contrib_username = preg_replace( '/^.+\/(.+)\/?$/', '\1', $contrib_profile );
+ }
+ $contrib_username = sanitize_user( $contrib_username );
+ if ( empty( $contrib_profile ) ) {
+ echo "<li><img src='https://wordpress.org/grav-redirect.php?user={$contrib_username}&s=36' width='18' height='18' />{$contrib_username}</li>";
+ } else {
+ echo "<li><a href='{$contrib_profile}' target='_blank'><img src='https://wordpress.org/grav-redirect.php?user={$contrib_username}&s=36' width='18' height='18' />{$contrib_username}</a></li>";
+ }
+ }
+ ?>
+ </ul>
+ <?php if ( ! empty( $api->donate_link ) ) { ?>
+ <a target="_blank" href="<?php echo esc_url( $api->donate_link ); ?>"><?php _e( 'Donate to this plugin »' ); ?></a>
+ <?php } ?>
+ <?php } ?>
+ </div>
+ <div id="section-holder" class="wrap">
+ <?php
+ if ( ! empty( $api->tested ) && version_compare( substr( $GLOBALS['wp_version'], 0, strlen( $api->tested ) ), $api->tested, '>' ) ) {
+ echo '<div class="notice notice-warning"><p>' . __('<strong>Warning:</strong> This plugin has <strong>not been tested</strong> with your current version of WordPress.') . '</p></div>';
+ } elseif ( ! empty( $api->requires ) && version_compare( substr( $GLOBALS['wp_version'], 0, strlen( $api->requires ) ), $api->requires, '<' ) ) {
+ echo '<div class="notice notice-warning"><p>' . __('<strong>Warning:</strong> This plugin has <strong>not been marked as compatible</strong> with your version of WordPress.') . '</p></div>';
+ }