public function setNeverExpireBrowserCacheHeader(Mage_Core_Controller_Request_Http $httpRequest, Mage_Core_Controller_Response_Http $response)
 {
     if (!Mage::app()->useCache('config')) {
         return $this;
     }
     if (!$httpRequest->has(self::FUZE_VALUE_CACHE_KEY)) {
         Mage::log("MegaMenu cache problem: You cannot set never expire browser cache, because this http request has not been secured by the fuze url param.");
         return $this;
     }
     $expires = gmdate('D, d M Y H:i:s \\G\\M\\T', time() + 3600 * self::HOURS_IN_BROWSER_CACHE);
     $maxAge = self::HOURS_IN_BROWSER_CACHE * 3600;
     $response->setHeader('Pragma', 'public', true);
     $response->setHeader('Expires', $expires, true);
     $response->setHeader('Cache-Control', "public, max-age={$maxAge}", true);
     return $this;
 }
Exemple #2
0
 /**
  * Takes in an HTTP request and applies the code
  *
  * @param Mage_Core_Controller_Request_Http $request
  * @return boolean
  */
 public function applyCodeFromRequest($request)
 {
     list($couponParam, $errorParam) = $this->getParams();
     $session = Mage::getSingleton('core/session');
     $errorCode = $request->getParam($errorParam, null);
     $couponCode = $request->getParam($couponParam, null);
     if ($errorCode || $couponCode) {
         if (!empty($couponCode)) {
             $force = $request->has(self::FORCE_PARAM);
             try {
                 $coupon = $this->_validateCode($couponCode, $force);
                 if (!$this->isCouponApplied($coupon->getRuleId(), $couponCode)) {
                     $this->applyCode($coupon->getRuleId(), $couponCode);
                     $session->addSuccess($this->getSuccessMessage($couponCode));
                 }
                 return true;
             } catch (Exception $e) {
                 $errorCode = $e->getMessage();
             }
         }
         if (!$this->isValidErrorCode($errorCode)) {
             $errorCode = self::INVALID_CODE;
         }
         $session->addError($this->getErrorMessage($errorCode, $couponCode));
     }
     return false;
 }