public function w3tc_ajax_extension_cloudflare_zones_done() { $email = $_REQUEST['email']; $key = $_REQUEST['key']; $zone_id = Util_Request::get('zone_id'); if (empty($zone_id)) { return $this->_render_extension_cloudflare_zones(array('email' => $email, 'key' => $key, 'error_message' => 'Please select zone')); } $zone_name = ''; // get zone name try { $api = new Extension_CloudFlare_Api(array('email' => $email, 'key' => $key)); $zone = $api->zone($zone_id); $zone_name = $zone['name']; } catch (\Exception $ex) { $details['error_message'] = 'Can\'t authenticate: ' . $ex->getMessage(); include W3TC_DIR . '/Extension_CloudFlare_Popup_View_Intro.php'; exit; } $c = Dispatcher::config(); $c->set(array('cloudflare', 'email'), $email); $c->set(array('cloudflare', 'key'), $key); $c->set(array('cloudflare', 'zone_id'), $zone_id); $c->set(array('cloudflare', 'zone_name'), $zone_name); $c->save(); delete_transient('w3tc_cloudflare_stats'); $postfix = Util_Admin::custom_message_id(array(), array('extension_cloudflare_configuration_saved' => 'CloudFlare credentials are saved successfully')); echo 'Location admin.php?page=w3tc_extensions&extension=cloudflare&' . 'action=view&' . $postfix; exit; }
public function w3tc_ajax_newrelic_apply_configuration() { $api_key = $_REQUEST['api_key']; $monitoring_type = Util_Request::get('monitoring_type', 'apm'); $apm_application_name = Util_Request::get('apm_application_name'); $browser_application_id = Util_Request::get('browser_application_id'); $c = Dispatcher::config(); $c->set(array('newrelic', 'api_key'), $api_key); if ($monitoring_type == 'apm') { $c->set(array('newrelic', 'monitoring_type'), 'apm'); $c->set(array('newrelic', 'apm.application_name'), $apm_application_name); } else { $c->set(array('newrelic', 'monitoring_type'), 'browser'); $c->set(array('newrelic', 'browser.application_id'), $browser_application_id); } $c->save(); // flush cached values on api key change to allow to reset it from ui // if something goes wrong update_option('w3tc_nr_account_id', ''); update_option('w3tc_nr_application_id', ''); $postfix = Util_Admin::custom_message_id(array(), array('newrelic_configuration_saved' => 'NewRelic configuration is saved successfully')); echo 'Location admin.php?page=w3tc_general&' . $postfix; }
public function w3tc_ajax_cdn_highwinds_configure_cnames() { $details = array('cnames' => Util_Request::get_array('cdn_cnames')); $core = Dispatcher::component('Cdn_Core'); $cdn = $core->get_cdn(); try { // try to obtain CNAMEs $cdn->service_cnames_set($details['cnames']); $c = Dispatcher::config(); $c->set('cdn.highwinds.host.domains', $details['cnames']); $c->save(); $postfix = Util_Admin::custom_message_id(array(), array('cdn_cnames_saved' => 'CNAMEs are saved successfully')); echo 'Location admin.php?page=w3tc_cdn&' . $postfix; exit; } catch (\Exception $ex) { $details['error_message'] = $ex->getMessage(); } $this->render_configure_cnames_form($details); exit; }
public function w3tc_ajax_cdn_rackspace_containers_done() { $user_name = $_REQUEST['user_name']; $api_key = $_REQUEST['api_key']; $access_token = $_REQUEST['access_token']; $access_region_descriptor = json_decode(strtr($_REQUEST['access_region_descriptor'], '!^', '"\\'), true); $region = $_REQUEST['region']; $container = Util_Request::get('container'); $api_files = new Cdn_RackSpace_Api_CloudFiles(array('access_token' => $access_token, 'access_region_descriptor' => $access_region_descriptor, 'new_access_required' => '')); $api_cdn = new Cdn_RackSpace_Api_CloudFilesCdn(array('access_token' => $access_token, 'access_region_descriptor' => $access_region_descriptor, 'new_access_required' => '')); try { if (empty($container)) { $container_new = $_REQUEST['container_new']; if (empty($container_new)) { throw new \Exception('Please select container'); } $api_files->container_create($container_new); $api_cdn->container_cdn_enable($container_new); $container = $container_new; } } catch (\Exception $ex) { $containers = $api_cdn->containers(); $details = array('user_name' => $user_name, 'api_key' => $api_key, 'access_token' => $access_token, 'access_region_descriptor_serialized' => strtr(json_encode($access_region_descriptor), '"\\', '!^'), 'region' => $region, 'containers' => $containers); $details['error_message'] = $ex->getMessage(); include W3TC_DIR . '/Cdn_RackSpaceCloudFiles_Popup_View_Containers.php'; exit; } $c = Dispatcher::config(); $c->set('cdn.rscf.user', $user_name); $c->set('cdn.rscf.key', $api_key); $c->set('cdn.rscf.location', $region); $c->set('cdn.rscf.container', $container); $c->save(); // reset calculated state $state = Dispatcher::config_state(); $state->set('cdn.rackspace_cf.access_state', ''); $state->save(); $postfix = Util_Admin::custom_message_id(array(), array('cdn_configuration_saved' => 'CDN credentials are saved successfully')); echo 'Location admin.php?page=w3tc_cdn&' . $postfix; exit; }