コード例 #1
0
ファイル: CartDiscount.php プロジェクト: ascertain/NGshop
 /**
  * @param OnlineShop_Framework_Pricing_IEnvironment $environment
  *
  * @return OnlineShop_Framework_Pricing_IAction
  */
 public function executeOnCart(OnlineShop_Framework_Pricing_IEnvironment $environment)
 {
     $priceCalculator = $environment->getCart()->getPriceCalculator();
     $modDiscount = new OnlineShop_Framework_Impl_CartPriceModificator_Discount($environment->getRule());
     $amount = round($this->getAmount() !== 0 ? $this->getAmount() : $priceCalculator->getSubTotal()->getAmount() * ($this->getPercent() / 100), 2);
     $modDiscount->setAmount('-' . $amount);
     $priceCalculator->addModificator($modDiscount);
     return $this;
 }
コード例 #2
0
ファイル: Sales.php プロジェクト: ascertain/NGshop
 /**
  * @param OnlineShop_Framework_Pricing_IEnvironment $environment
  *
  * @return boolean
  */
 public function check(OnlineShop_Framework_Pricing_IEnvironment $environment)
 {
     $rule = $environment->getRule();
     if ($rule) {
         return $this->getSalesAmount($rule) < $this->getAmount();
     } else {
         return false;
     }
 }
コード例 #3
0
ファイル: Gift.php プロジェクト: ascertain/NGshop
 /**
  * @param OnlineShop_Framework_Pricing_IEnvironment $environment
  *
  * @return OnlineShop_Framework_Pricing_Action_IGift
  */
 public function executeOnCart(OnlineShop_Framework_Pricing_IEnvironment $environment)
 {
     $comment = $environment->getRule()->getDescription();
     $environment->getCart()->addGiftItem($this->getProduct(), 1, null, true, array(), array(), $comment);
 }