oont-contents/plugins/w3-total-cache/Extension_CloudFlare_Page.php
2025-02-08 15:10:23 +01:00

116 lines
2.9 KiB
PHP

<?php
namespace W3TC;
class Extension_CloudFlare_Page {
static public function admin_print_scripts_performance_page_w3tc_cdn() {
if ( ( isset( $_REQUEST['extension'] ) &&
Util_Request::get_string( 'extension' ) == 'cloudflare' ) ||
( isset( $_REQUEST['page'] ) &&
Util_Request::get_string( 'page' ) == 'w3tc_cdnfsd' ) ) {
wp_enqueue_script( 'w3tc_extension_cloudflare',
plugins_url( 'Extension_CloudFlare_Page_View.js', W3TC_FILE ),
array( 'jquery' ), '1.0' );
}
}
static public function w3tc_settings_box_cdnfsd() {
include W3TC_DIR . '/Extension_CloudFlare_Cdn_Page_View.php';
}
static public function w3tc_extension_page_cloudflare() {
$c = Dispatcher::config();
$api = Extension_CloudFlare_SettingsForUi::api();
$email = $c->get_string( array( 'cloudflare', 'email' ) );
$key = $c->get_string( array( 'cloudflare', 'key' ) );
$zone_id = $c->get_string( array( 'cloudflare', 'zone_id' ) );
if ( empty( $email ) || empty( $key ) || empty( $zone_id ) ) {
$state = 'not_configured';
} else {
$settings = array();
try {
$settings =
Extension_CloudFlare_SettingsForUi::settings_get( $api );
$state = 'available';
} catch ( \Exception $ex ) {
$state = 'not_available';
$error_message = $ex->getMessage();
}
}
$config = $c;
include W3TC_DIR . '/Extension_CloudFlare_Page_View.php';
}
static private function cloudflare_checkbox( $settings, $data ) {
if ( !isset( $settings[$data['key']] ) )
return;
$value = ( $settings[$data['key']]['value'] == 'on' );
$disabled = !$settings[$data['key']]['editable'];
Util_Ui::table_tr( array(
'id' => $data['key'],
'label' => $data['label'],
'checkbox' => array(
'name' => 'cloudflare_api_' . $data['key'],
'value' => $value,
'disabled' => $disabled,
'label' => 'Enable'
),
'description' => $data['description']
) );
}
static private function cloudflare_selectbox( $settings, $data ) {
if ( !isset( $settings[$data['key']] ) )
return;
$value = $settings[$data['key']]['value'];
$disabled = !$settings[$data['key']]['editable'];
Util_Ui::table_tr( array(
'id' => $data['key'],
'label' => $data['label'],
'selectbox' => array(
'name' => 'cloudflare_api_' . $data['key'],
'value' => $value,
'disabled' => $disabled,
'values' => $data['values']
),
'description' => $data['description']
) );
}
static private function cloudflare_textbox( $settings, $data ) {
if ( !isset( $settings[$data['key']] ) )
return;
$value = $settings[$data['key']]['value'];
$disabled = !$settings[$data['key']]['editable'];
Util_Ui::table_tr( array(
'id' => $data['key'],
'label' => $data['label'],
'textbox' => array(
'name' => 'cloudflare_api_' . $data['key'],
'value' => $value,
'disabled' => $disabled
),
'description' => $data['description']
) );
}
}