PK œqhYî¶J‚ßF ßF ) nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/
Dir : /home/trave494/tiktechtok.org/wp-content/plugins/mailpoet/lib/Statistics/Track/ |
Server: Linux ngx353.inmotionhosting.com 4.18.0-553.22.1.lve.1.el8.x86_64 #1 SMP Tue Oct 8 15:52:54 UTC 2024 x86_64 IP: 209.182.202.254 |
Dir : /home/trave494/tiktechtok.org/wp-content/plugins/mailpoet/lib/Statistics/Track/SubscriberCookie.php |
<?php // phpcs:ignore SlevomatCodingStandard.TypeHints.DeclareStrictTypes.DeclareStrictTypesMissing namespace MailPoet\Statistics\Track; if (!defined('ABSPATH')) exit; use MailPoet\Settings\TrackingConfig; use MailPoet\Util\Cookies; class SubscriberCookie { const COOKIE_NAME = 'mailpoet_subscriber'; const COOKIE_NAME_LEGACY = 'mailpoet_abandoned_cart_tracking'; const COOKIE_EXPIRY = 10 * 365 * 24 * 60 * 60; // 10 years (~ no expiry) /** @var Cookies */ private $cookies; /** @var TrackingConfig */ private $trackingConfig; public function __construct( Cookies $cookies, TrackingConfig $trackingConfig ) { $this->cookies = $cookies; $this->trackingConfig = $trackingConfig; } public function getSubscriberId(): ?int { if (!$this->trackingConfig->isCookieTrackingEnabled()) { return null; } $subscriberId = $this->getSubscriberIdFromCookie(self::COOKIE_NAME); if ($subscriberId) { return $subscriberId; } $subscriberId = $this->getSubscriberIdFromCookie(self::COOKIE_NAME_LEGACY); if ($subscriberId) { $this->setSubscriberId($subscriberId); $this->cookies->delete(self::COOKIE_NAME_LEGACY); return $subscriberId; } return null; } public function setSubscriberId(int $subscriberId): void { if (!$this->trackingConfig->isCookieTrackingEnabled()) { return; } $this->cookies->set( self::COOKIE_NAME, ['subscriber_id' => $subscriberId], [ 'expires' => time() + self::COOKIE_EXPIRY, 'path' => '/', ] ); } private function getSubscriberIdFromCookie(string $cookieName): ?int { $data = $this->cookies->get($cookieName); return is_array($data) && $data['subscriber_id'] ? (int)$data['subscriber_id'] : null; } }