*/ class Mage_Core_Helper_Cookie extends Mage_Core_Helper_Abstract { /** * Cookie name for users who allowed cookie save */ const IS_USER_ALLOWED_SAVE_COOKIE = 'user_allowed_save_cookie'; /** * Path to configuration, check is enable cookie restriction mode */ const XML_PATH_COOKIE_RESTRICTION = 'web/cookie/cookie_restriction'; /** * Cookie restriction lifetime configuration path */ const XML_PATH_COOKIE_RESTRICTION_LIFETIME = 'web/cookie/cookie_restriction_lifetime'; /** * Check if cookie restriction notice should be displayed * * @return bool */ public function isUserNotAllowSaveCookie() { $acceptedSaveCookiesWebsites = $this->_getAcceptedSaveCookiesWebsites(); return Mage::getStoreConfig(self::XML_PATH_COOKIE_RESTRICTION) && empty($acceptedSaveCookiesWebsites[Mage::app()->getWebsite()->getId()]); } /** * Return serialzed list of accepted save cookie website * * @return string */ public function getAcceptedSaveCookiesWebsiteIds() { $acceptedSaveCookiesWebsites = $this->_getAcceptedSaveCookiesWebsites(); $acceptedSaveCookiesWebsites[Mage::app()->getWebsite()->getId()] = 1; return serialize($acceptedSaveCookiesWebsites); } /** * Get accepted save cookies websites * * @return array */ protected function _getAcceptedSaveCookiesWebsites() { $serializedList = Mage::getSingleton('core/cookie')->get(self::IS_USER_ALLOWED_SAVE_COOKIE); $unSerializedList = unserialize($serializedList); return is_array($unSerializedList) ? $unSerializedList : array(); } /** * Get cookie restriction lifetime (in seconds) * * @return int */ public function getCookieRestrictionLifetime() { return (int)Mage::getStoreConfig(self::XML_PATH_COOKIE_RESTRICTION_LIFETIME); } }