| <?php |
|
|
| |
| |
| |
| |
| |
| |
|
|
| namespace Piwik\Tracker; |
|
|
| use Piwik\Config; |
| use Piwik\Cookie; |
| use Piwik\ProxyHttp; |
|
|
| |
| |
| |
| |
| class IgnoreCookie |
| { |
| |
| |
| |
| |
| |
| private static function getTrackingCookie() |
| { |
| $cookie_name = @Config::getInstance()->Tracker['cookie_name']; |
| $cookie_path = @Config::getInstance()->Tracker['cookie_path']; |
|
|
| $cookie = new Cookie($cookie_name, null, $cookie_path); |
|
|
| $domain = @Config::getInstance()->Tracker['cookie_domain']; |
| if (!empty($domain)) { |
| $cookie->setDomain($domain); |
| } |
|
|
| return $cookie; |
| } |
|
|
| public static function deleteThirdPartyCookieUIDIfExists() |
| { |
| $trackingCookie = self::getTrackingCookie(); |
| if ($trackingCookie->isCookieFound()) { |
| $trackingCookie->delete(); |
| } |
| } |
|
|
| |
| |
| |
| |
| |
| |
| public static function getIgnoreCookie() |
| { |
| $cookie_name = @Config::getInstance()->Tracker['ignore_visits_cookie_name']; |
| $cookie_path = @Config::getInstance()->Tracker['cookie_path']; |
|
|
|
|
| $cookie = new Cookie($cookie_name, "+ 30 years", $cookie_path, false); |
|
|
| $domain = @Config::getInstance()->Tracker['cookie_domain']; |
| if (!empty($domain)) { |
| $cookie->setDomain($domain); |
| } |
|
|
| return $cookie; |
| } |
|
|
| |
| |
| |
| public static function setIgnoreCookie() |
| { |
| $ignoreCookie = self::getIgnoreCookie(); |
| if ($ignoreCookie->isCookieFound()) { |
| $ignoreCookie->delete(); |
| } else { |
| $ignoreCookie->set('ignore', '*'); |
| if (ProxyHttp::isHttps()) { |
| $ignoreCookie->setSecure(true); |
| $ignoreCookie->save('None'); |
| } else { |
| $ignoreCookie->save('Lax'); |
| } |
| } |
|
|
| self::deleteThirdPartyCookieUIDIfExists(); |
| } |
|
|
| |
| |
| |
| |
| |
| public static function isIgnoreCookieFound() |
| { |
| $cookie = self::getIgnoreCookie(); |
| return $cookie->isCookieFound() && $cookie->get('ignore') === '*'; |
| } |
| } |
|
|