/** * get quote spending rule by RuleID * * @param int|'rate' $ruleId * @return Varien_Object */ public function getQuoteRule($ruleId = 'rate') { $cacheKey = "quote_rule_model:{$ruleId}"; if (!$this->hasCache($cacheKey)) { if ($ruleId == 'rate') { $this->saveCache($cacheKey, $this->getSpendingRateAsRule()); return $this->getCache($cacheKey); } $container = new Varien_Object(array('quote_rule_model' => null)); Mage::dispatchEvent('rewardpoints_calculation_spending_quote_rule_model', array('container' => $container, 'rule_id' => $ruleId)); $this->saveCache($cacheKey, $container->getQuoteRuleModel()); } return $this->getCache($cacheKey); }