PHP 8.2.30
Preview: health.cls.php Size: 2.83 KB
/proc/thread-self/root/proc/thread-self/root/usr/src/litespeed-wp-plugin/7.6.2/litespeed-cache/src/health.cls.php

<?php
// phpcs:ignoreFile
/**
 * The page health
 *
 * @since      3.0
 * @package    LiteSpeed
 */
namespace LiteSpeed;

defined('WPINC') || exit();

class Health extends Base {

	const TYPE_SPEED = 'speed';
	const TYPE_SCORE = 'score';

	protected $_summary;

	/**
	 * Init
	 *
	 * @since  3.0
	 */
	public function __construct() {
		$this->_summary = self::get_summary();
	}

	/**
	 * Test latest speed
	 *
	 * @since 3.0
	 */
	private function _ping( $type ) {
		$data = array( 'action' => $type );

		$json = Cloud::post(Cloud::SVC_HEALTH, $data, 600);

		if (empty($json['data']['before']) || empty($json['data']['after'])) {
			Debug2::debug('[Health] ❌ no data');
			return false;
		}

		$this->_summary[$type . '.before'] = $json['data']['before'];
		$this->_summary[$type . '.after']  = $json['data']['after'];

		self::save_summary();

		Debug2::debug('[Health] saved result');
	}

	/**
	 * Generate scores
	 *
	 * @since 3.0
	 */
	public function scores() {
		$speed_before = $speed_after = $speed_improved = 0;
		if (!empty($this->_summary['speed.before']) && !empty($this->_summary['speed.after'])) {
			// Format loading time
			$speed_before = $this->_summary['speed.before'] / 1000;
			if ($speed_before < 0.01) {
				$speed_before = 0.01;
			}
			$speed_before = number_format($speed_before, 2);

			$speed_after = $this->_summary['speed.after'] / 1000;
			if ($speed_after < 0.01) {
				$speed_after = number_format($speed_after, 3);
			} else {
				$speed_after = number_format($speed_after, 2);
			}

			$speed_improved = (($this->_summary['speed.before'] - $this->_summary['speed.after']) * 100) / $this->_summary['speed.before'];
			if ($speed_improved > 99) {
				$speed_improved = number_format($speed_improved, 2);
			} else {
				$speed_improved = number_format($speed_improved);
			}
		}

		$score_before = $score_after = $score_improved = 0;
		if (!empty($this->_summary['score.before']) && !empty($this->_summary['score.after'])) {
			$score_before = $this->_summary['score.before'];
			$score_after  = $this->_summary['score.after'];

			// Format Score
			$score_improved = (($score_after - $score_before) * 100) / $score_after;
			if ($score_improved > 99) {
				$score_improved = number_format($score_improved, 2);
			} else {
				$score_improved = number_format($score_improved);
			}
		}

		return array(
			'speed_before' => $speed_before,
			'speed_after' => $speed_after,
			'speed_improved' => $speed_improved,
			'score_before' => $score_before,
			'score_after' => $score_after,
			'score_improved' => $score_improved,
		);
	}

	/**
	 * Handle all request actions from main cls
	 *
	 * @since  3.0
	 * @access public
	 */
	public function handler() {
		$type = Router::verify_type();

		switch ($type) {
			case self::TYPE_SPEED:
			case self::TYPE_SCORE:
            $this->_ping($type);
				break;

			default:
				break;
		}

		Admin::redirect();
	}
}

Directory Contents

Dirs: 2 × Files: 52

Name Size Perms Modified Actions
cdn DIR
- drwxr-xr-x 2025-10-17 18:55:12
Edit Download
- drwxr-xr-x 2025-10-17 18:55:12
Edit Download
17.44 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
48.12 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
11.12 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
5.05 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
10.44 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
8.68 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
34.58 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
15.92 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
65.80 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
19.53 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
24.35 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
21.01 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
19.43 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
42.20 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
15.27 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
16.49 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
3.07 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
10.34 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
14.17 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
4.07 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
7.38 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
27.18 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
10.57 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
36.50 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
2.83 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
24.00 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
65.13 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
4.29 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
5.50 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
15.06 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
3.44 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
40.37 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
5.32 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
24.67 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
20.30 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
13.31 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
38.66 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
9.41 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
14.19 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
33.95 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
6.12 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
8.64 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
13.99 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
20.57 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
3.15 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
9.26 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
6.13 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
4.22 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
14.37 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
21.76 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
20.20 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download
9.36 KB lrw-r--r-- 2025-10-17 18:55:12
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).