Esempio n. 1
0
 /**
  * @param Mage_Sales_Model_Order $order
  * @return array
  */
 protected function _getCouponsFormatted($order)
 {
     $result = array();
     if ($order->getCouponCode()) {
         if (Mage::helper("shopgate/config")->getIsMagentoVersionLower1410()) {
             $mageRule = Mage::getModel('salesrule/rule')->load($order->getCouponCode(), 'coupon_code');
             $mageCoupon = $mageRule;
         } else {
             $mageCoupon = Mage::getModel('salesrule/coupon')->load($order->getCouponCode(), 'code');
             $mageRule = Mage::getModel('salesrule/rule')->load($mageCoupon->getRuleId());
         }
         $externalCoupon = new ShopgateExternalCoupon();
         $couponInfo = array();
         $couponInfo["coupon_id"] = $mageCoupon->getId();
         $couponInfo["rule_id"] = $mageRule->getId();
         $externalCoupon->setCode($order->getCouponCode());
         $externalCoupon->setCurrency($order->getOrderCurrencyCode());
         $externalCoupon->setName($mageRule->getName());
         $externalCoupon->setDescription($mageRule->getDescription());
         $externalCoupon->setInternalInfo($this->_getConfig()->jsonEncode($couponInfo));
         $externalCoupon->setAmount($order->getDiscountAmount());
         array_push($result, $externalCoupon);
     }
     return $result;
 }