Esempio n. 1
0
 public function checkRules(Pap_Common_Transaction $transaction) {
     Gpf_Log::debug('Performance reward started');
     foreach($this->getRules($transaction->getCampaignId()) as $ruleRecord) {
         $rule = new Pap_Features_PerformanceRewards_Rule_Transaction($transaction);
         $rule->fillFromRecord($ruleRecord);
         try {
             Gpf_Log::debug('Processing rule ' . $rule->getId() . ': ' . $rule->getAction());
             $rule->executeAction();
             Gpf_Log::debug('Rule completed');
         } catch (Exception $e) {
             Gpf_Log::error(sprintf('Rule %s failed. Reason: %s', $rule->getId(), $e->getMessage()));
         }
     }
     Gpf_Log::debug('Performance reward ended');
 }