File: D:/web/matomo.vdk/plugins/TagManager/API/PreviewCookie.php
<?php
/**
* Matomo - free/libre analytics platform
*
* @link https://matomo.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
namespace Piwik\Plugins\TagManager\API;
use Piwik\Cookie;
class PreviewCookie extends Cookie
{
public const COOKIE_NAME = 'mtmPreviewMode';
public const DEBUG_SITE_URL_COOKIE_NAME = 'mtmPreviewSiteURL';
public function __construct()
{
$oneWeekInSeconds = 604800;
$expire = time() + $oneWeekInSeconds;
parent::__construct(self::COOKIE_NAME, $expire);
}
public function getCookieValueName($idSite, $idContainer)
{
return 'mtmPreview' . $idSite . '_' . $idContainer;
}
public function enable($idSite, $idContainer)
{
$this->set($this->getCookieValueName($idSite, $idContainer), '1');
$this->save('Lax');
}
public function disable($idSite, $idContainer)
{
$this->set($this->getCookieValueName($idSite, $idContainer), null);
$this->save('Lax');
}
public function enableDebugSiteUrl($url)
{
$this->set(self::DEBUG_SITE_URL_COOKIE_NAME, $url);
$this->save('Lax');
}
public function disableDebugSiteUrl()
{
$this->set(self::DEBUG_SITE_URL_COOKIE_NAME, null);
$this->save('Lax');
}
public function getDebugSiteUrl()
{
return $this->get(self::DEBUG_SITE_URL_COOKIE_NAME);
}
}