Server IP : 192.158.238.246 / Your IP : 3.147.103.209 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/7779/cwd/plugins/give/src/Tracking/ |
Upload File : |
<?php namespace Give\Tracking; use Give\Tracking\Enum\EventType; use Give\Tracking\Repositories\TelemetryAccessDetails; use Give\Tracking\TrackingData\WebsiteInfoData; /** * Class AccessTokenGenerator * @package Give\Tracking * * @since 2.10.0 */ class AccessToken { /** * @var TrackClient */ private $trackClient; /** * @var TelemetryAccessDetails */ private $telemetryAccessDetails; /** * AccessToken constructor. * * @param TrackClient $trackClient * @param TelemetryAccessDetails $telemetryAccessDetails */ public function __construct(TrackClient $trackClient, TelemetryAccessDetails $telemetryAccessDetails) { $this->trackClient = $trackClient; $this->telemetryAccessDetails = $telemetryAccessDetails; } /** * Store access token * * @since 2.10.0 */ public function store() { /* @var WebsiteInfoData $dataClass */ $dataClass = give(WebsiteInfoData::class); $response = $this->trackClient->post(new EventType(EventType::CREATE_TOKEN), $dataClass, ['blocking' => true]); if (is_wp_error($response)) { return false; } $response = json_decode(wp_remote_retrieve_body($response), true); if (empty($response['success'])) { return false; } $token = $response['data']['access_token']; $this->telemetryAccessDetails->saveAccessTokenOptionValue($token); return true; } }