| Server IP : 208.122.213.31 / Your IP : 216.73.216.45 Web Server : Apache System : Linux msd6191.mjhst.com 4.18.0-553.137.1.el8_10.x86_64 #1 SMP Wed Jun 24 11:40:24 UTC 2026 x86_64 User : WHMCS_MIA_382 ( 1001) PHP Version : 7.4.33 Disable Function : NONE MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/httpd/html/baberankings.com/wp-content/plugins/w3-total-cache/ |
Upload File : |
<?php
/**
* File: Cdnfsd_BunnyCdn_Engine.php
*
* @since 2.6.0
* @package W3TC
*/
namespace W3TC;
/**
* Class: Cdnfsd_Bunny_Cdn_Engine
*
* @since 2.6.0
*/
class Cdnfsd_BunnyCdn_Engine {
/**
* CDN configuration.
*
* @since 2.6.0
*
* @var array
*/
private $w3tc_config;
/**
* Constructor.
*
* @since 2.6.0
*
* @param array $w3tc_config CDN configuration.
*/
public function __construct( array $w3tc_config = array() ) {
$this->w3tc_config = $w3tc_config;
}
/**
* Flush URLs.
*
* @since 2.6.0
*
* @param array $urls URLs.
* @throws \Exception Exception.
* @return void
*/
public function flush_urls( array $urls ) {
if ( empty( $this->w3tc_config['account_api_key'] ) ) {
throw new \Exception( \esc_html__( 'Account API key not specified.', 'w3-total-cache' ) );
}
$api = new Cdn_BunnyCdn_Api( $this->w3tc_config );
$items = array();
foreach ( $urls as $w3tc_url ) {
$items[] = array(
'url' => $w3tc_url,
'recursive' => true,
);
}
try {
$api->purge( array( 'items' => $items ) );
} catch ( \Exception $ex ) {
if ( 'Validation Failure: Purge url must contain one of your hostnames' === $ex->getMessage() ) {
throw new \Exception( \esc_html__( 'CDN site is not configured correctly: Delivery Domain must match your site domain', 'w3-total-cache' ) );
} else {
throw $ex;
}
}
}
/**
* Flushes CDN completely.
*
* @since 2.6.0
*
* @throws \Exception Exception.
*/
public function flush_all() {
if ( empty( $this->w3tc_config['account_api_key'] ) ) {
throw new \Exception( \esc_html__( 'Account API key not specified.', 'w3-total-cache' ) );
}
if ( empty( $this->w3tc_config['pull_zone_id'] ) || ! \is_int( $this->w3tc_config['pull_zone_id'] ) ) {
throw new \Exception( \esc_html__( 'Invalid pull zone id.', 'w3-total-cache' ) );
}
$api = new Cdn_BunnyCdn_Api( $this->w3tc_config );
try {
$w3tc_r = $api->purge_pull_zone();
} catch ( \Exception $ex ) {
throw new \Exception( \esc_html( \__( 'Could not purge pull zone', 'w3-total-cache' ) . '; ' . $ex->getMessage() ) );
}
}
}