File: /home/pclast/www/wp-content/plugins/wp-rocket/views/settings/partials/rocket-insights/table-row.php
<?php
/**
* Performance monitor row.
*
* @since 3.20
*/
defined( 'ABSPATH' ) || exit;
$rocket_data_array = (array) $data;
$rocket_data_array['is_running'] = $data->is_running();
$rocket_data_array['is_dashboard'] = false;
$rocket_ri_blurred = '';
$rocket_img_url = esc_url( WP_ROCKET_ASSETS_IMG_URL );
// Get pre-formatted metrics from Render class.
$rocket_formatted_metrics = $data->formatted_metrics ?? [];
?>
<tr class="wpr-ri-item wpr-ri-item-result <?php echo esc_attr( $rocket_data_array['item_classes']['row'] ); ?>" data-rocket-insights-id="<?php echo esc_attr( $data->id ); ?>" >
<td class="wpr-ri-item-toggle <?php echo esc_attr( $rocket_data_array['item_classes']['td'] ); ?>">
<div class="icon-frame wpr-ri-item-toggle-single <?php echo ! $rocket_data_array['rocket_can_show_advanced_indicators'] ? 'hide' : ''; ?>">
</div>
</td>
<td class="wpr-ri-item-score">
<?php
$this->render_performance_score( $rocket_data_array );
?>
</td>
<td class="wpr-ri-item-title">
<?php
$rocket_css_class = $this->is_title_truncated( $data->title ) ? 'wpr-btn-with-tool-tip' : '';
?>
<a href="<?php echo esc_url( $data->url ); ?>" target="_blank" rel="noopener" class="<?php echo esc_attr( $rocket_css_class ); ?>">
<span class="wpr-ri-title">
<span class="wpr-ri-title-truncate">
<?php echo esc_html( $data->title ); ?>
</span>
</span>
<span class="wpr-ri-dot">·</span>
<span class="wpr-ri-date">
<?php
if ( $data->is_running() ) {
echo esc_html( __( 'Analyzing your page (~1 min)', 'rocket' ) );
} else {
echo esc_html( human_time_diff( $data->modified, time() ) . ' ' . __( 'ago', 'rocket' ) );
}
?></span><?php // phpcs:ignore Squiz.PHP.EmbeddedPhp.ContentAfterEnd ?>
<?php if ( '' !== $rocket_css_class ) : ?>
<div class="wpr-tooltip">
<div class="wpr-tooltip-content">
<?php echo esc_html( $data->title ); ?>
</div>
</div>
<?php endif; ?>
</a>
</td>
<td class="wpr-ri-item-actions <?php echo esc_attr( $rocket_data_array['item_classes']['td'] ); ?>">
<?php
$rocket_insights_retest_button_args = [
'label' => __( 'Re-Test', 'rocket' ),
'attributes' => [
'class' => 'wpr-icon-bold-refresh wpr-ri-action wpr-action-speed_radar_refresh',
'aria-label' => __( 'Re-test', 'rocket' ),
'data-source' => 're-test add-on page',
],
];
// Retest button should be disabled if the score is zero or this row is still running.
if ( $data->is_running() || ! $data->has_credit ) {
$rocket_insights_retest_button_args['attributes']['class'] .= ' wpr-ri-action--disabled';
$rocket_insights_retest_button_args['attributes']['disabled'] = true;
}
if ( ! $data->has_credit ) {
$rocket_insights_retest_button_args['attributes']['class'] .= ' wpr-btn-with-tool-tip';
$rocket_insights_retest_button_args['tooltip'] = __( 'You’ve reached your free monthly plan limit. Upgrade now to unlock unlimited on-demand tests.', 'rocket' );
$rocket_insights_retest_button_args['attributes']['disabled'] = true;
}
$this->render_action_button(
'button',
'speed_radar_refresh',
$rocket_insights_retest_button_args
);
$rocket_insights_show_report_btn_args = [
'label' => __( 'See GTmetrix Report', 'rocket' ),
'url' => $data->report_url,
'attributes' => [
'target' => '_blank',
'class' => 'wpr-ri-action wpr-ri-report',
'data-rocket-insights-row-id' => $data->id,
],
];
$rocket_report_url_icon_state = '';
if ( empty( $data->report_url ) ) {
$rocket_report_url_icon_state = 'wpr-ri-action--disabled';
$rocket_insights_show_report_btn_args['attributes']['class'] .= ' ' . $rocket_report_url_icon_state;
$rocket_insights_show_report_btn_args['attributes']['target'] = '';
$rocket_insights_show_report_btn_args['url'] = '';
} elseif ( ! $data->can_access_report() ) {
$rocket_insights_show_report_btn_args['attributes']['class'] .= ' wpr-btn-with-tool-tip wpr-ri-action--disabled';
$rocket_insights_show_report_btn_args['attributes']['target'] = '';
$rocket_insights_show_report_btn_args['tooltip'] = __( 'Upgrade your plan to see the report', 'rocket' );
$rocket_insights_show_report_btn_args['url'] = '';
}
$this->render_action_button(
'link',
'speed_radar_delete',
[
'label' => '',
'url' => $data->delete_url(),
'attributes' => [
'class' => 'wpr-btn-with-tool-tip wpr-icon-trash wpr-ri-action',
'aria-label' => __( 'Delete', 'rocket' ),
],
]
);
?>
</td>
</tr>
<?php if ( $rocket_data_array['rocket_can_show_advanced_indicators'] ) : ?>
<tr class="wpr-ri-details <?php echo esc_attr( $rocket_data_array['details_classes']['row'] ); ?>" id="ri_details_<?php echo $rocket_data_array['id']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Dynamic content is properly escaped in the view. ?>">
<td colspan="4" class="details-section-td <?php echo esc_attr( $rocket_data_array['details_classes']['td'] ); ?>">
<div class="details-section">
<div class="details-header">
<div>
<div class="metrics-header">
<div class="metric-label">
<p>LCP</p>
<div class="info-icon">
<img src="<?php echo $rocket_img_url;// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>ri-info.svg" alt="">
<div class="wpr-tooltip">
<div class="wpr-tooltip-content">
<?php echo esc_html__( 'Time until the largest visible content element renders and the main content becomes visible.', 'rocket' ); ?>
</div>
</div>
</div>
</div>
<div class="metric-label">
<p>TBT</p>
<div class="info-icon">
<img src="<?php echo $rocket_img_url; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>ri-info.svg" alt="">
<div class="wpr-tooltip">
<div class="wpr-tooltip-content">
<?php echo esc_html__( 'Total time the main thread is blocked before the page becomes interactive during loading.', 'rocket' ); ?>
</div>
</div>
</div>
</div>
<div class="metric-label">
<p>CLS</p>
<div class="info-icon">
<img src="<?php echo $rocket_img_url; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>ri-info.svg" alt="">
<div class="wpr-tooltip">
<div class="wpr-tooltip-content">
<?php echo esc_html__( 'Total amount of unexpected layout shifts during page loading, affecting visual stability.', 'rocket' ); ?>
</div>
</div>
</div>
</div>
<div class="metric-label">
<p>TTFB</p>
<div class="info-icon">
<img src="<?php echo $rocket_img_url; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>ri-info.svg" alt="">
<div class="wpr-tooltip">
<div class="wpr-tooltip-content">
<?php echo esc_html__( 'Time from the request until the server responds, determining how soon the page starts loading.', 'rocket' ); ?>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="details-content">
<div class="detail-row">
<div class="row-right">
<div class="metric-values <?php echo esc_attr( $rocket_ri_blurred ); ?>">
<?php foreach ( $rocket_formatted_metrics as $rocket_metric ) : ?>
<div class="metric-value <?php echo esc_attr( $rocket_metric['class'] ); ?>">
<p><?php echo esc_html( $rocket_metric['formatted'] ); ?></p>
<?php if ( '' !== $rocket_ri_blurred ) : ?>
<div class="wpr-tooltip">
<div class="wpr-tooltip-content">
<?php echo esc_html__( 'Upgrade your plan to see more details.', 'rocket' ); ?>
</div>
</div>
<?php endif; ?>
</div>
<?php endforeach; ?>
</div>
</div>
</div>
</div>
<div class="row-left">
<div class="report-link <?php echo esc_attr( $rocket_report_url_icon_state ); ?>">
<?php
$this->render_action_button(
'link',
'gtmetrix_open',
$rocket_insights_show_report_btn_args
);
?>
<div class="icon-frame"></div>
</div>
</div>
</div>
</td>
</tr>
<?php endif; ?>