Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
SecurityCookie.php
Go to the documentation of this file.
1 <?php
6 namespace Magento\Security\Model;
7 
9 
17 {
21  const LOGOUT_REASON_CODE_COOKIE_NAME = 'loggedOutReasonCode';
22 
26  private $phpCookieManager;
27 
31  private $backendData;
32 
36  private $cookieMetadataFactory;
37 
41  private $cookieReader;
42 
49  public function __construct(
50  \Magento\Framework\Stdlib\Cookie\PhpCookieManager $phpCookieManager,
51  \Magento\Framework\Stdlib\Cookie\PublicCookieMetadataFactory $cookieMetadataFactory,
52  CookieReaderInterface $cookieReader,
53  \Magento\Backend\Helper\Data $backendData
54  ) {
55  $this->phpCookieManager = $phpCookieManager;
56  $this->cookieMetadataFactory = $cookieMetadataFactory;
57  $this->cookieReader = $cookieReader;
58  $this->backendData = $backendData;
59  }
60 
67  public function getLogoutReasonCookie()
68  {
69  return (int) $this->cookieReader->getCookie(self::LOGOUT_REASON_CODE_COOKIE_NAME, -1);
70  }
71 
79  public function setLogoutReasonCookie($status)
80  {
81  $metaData = $this->createCookieMetaData();
82  $metaData->setPath('/' . $this->backendData->getAreaFrontName());
83 
84  $this->phpCookieManager->setPublicCookie(
85  self::LOGOUT_REASON_CODE_COOKIE_NAME,
86  (int) $status,
87  $metaData
88  );
89 
90  return $this;
91  }
92 
99  public function deleteLogoutReasonCookie()
100  {
101  $metaData = $this->createCookieMetaData();
102  $metaData->setPath('/' . $this->backendData->getAreaFrontName())->setDuration(-1);
103 
104  $this->phpCookieManager->setPublicCookie(
105  self::LOGOUT_REASON_CODE_COOKIE_NAME,
106  '',
107  $metaData
108  );
109 
110  return $this;
111  }
112 
118  private function createCookieMetaData()
119  {
120  return $this->cookieMetadataFactory->create();
121  }
122 }
$status
Definition: order_status.php:8