Server : Apache System : Linux pod-100823:apache2_74:v0.5.7 5.4.0-1138-gcp #147~18.04.1-Ubuntu SMP Mon Oct 7 21:46:26 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33.7 Disable Function : apache_child_terminate,apache_get_modules,apache_get_version,apache_getenv,apache_note,apache_setenv,disk_free_space,disk_total_space,diskfreespace,dl,exec,fastcgi_finish_request,link,opcache_compile_file,opcache_get_configuration,opcache_invalidate,opcache_is_script_cached,opcache_reset,passthru,pclose,pcntl_exec,popen,posix_getpid,posix_getppid,posix_getpwuid,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_uname,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,realpath_cache_get,shell_exec,show_source,symlink,system Directory : /nas/content/live/attorneyexperi/wp-content/plugins/wp-rocket/inc/Engine/License/API/ |
<?php namespace WP_Rocket\Engine\License\API; use WP_Rocket\Admin\Options_Data; class UserClient { const USER_ENDPOINT = 'https://wp-rocket.me/stat/1.0/wp-rocket/user.php'; /** * WP Rocket options instance * * @var Options_Data */ private $options; /** * Instantiate the class * * @param Options_Data $options WP Rocket options instance. */ public function __construct( Options_Data $options ) { $this->options = $options; } /** * Gets user data from cache if it exists, else gets it from the user endpoint * * Cache the user data for 24 hours in a transient * * @since 3.7.3 * * @return bool|object */ public function get_user_data() { $cached_data = get_transient( 'wp_rocket_customer_data' ); if ( false !== $cached_data ) { return $cached_data; } $data = $this->get_raw_user_data(); if ( false === $data ) { return false; } set_transient( 'wp_rocket_customer_data', $data, DAY_IN_SECONDS ); return $data; } /** * Gets the user data from the user endpoint * * @since 3.7.3 * * @return bool|object */ private function get_raw_user_data() { $customer_key = ! empty( $this->options->get( 'consumer_key', '' ) ) ? $this->options->get( 'consumer_key', '' ) : rocket_get_constant( 'WP_ROCKET_KEY', '' ); $customer_email = ! empty( $this->options->get( 'consumer_email', '' ) ) ? $this->options->get( 'consumer_email', '' ) : rocket_get_constant( 'WP_ROCKET_EMAIL', '' ); $response = wp_safe_remote_post( self::USER_ENDPOINT, [ 'body' => 'user_id=' . rawurlencode( $customer_email ) . '&consumer_key=' . sanitize_key( $customer_key ), ] ); if ( 200 !== wp_remote_retrieve_response_code( $response ) ) { return false; } $body = wp_remote_retrieve_body( $response ); if ( empty( $body ) ) { return false; } return json_decode( $body ); } }