예제 #1
0
 public function addRewardPointsAdmin(Varien_Event_Observer $observer)
 {
     $request = $observer->getRequestModel();
     $order_model = $observer->getOrderCreateModel();
     $data = $request->getPost('order');
     $quote = $order_model->getQuote();
     if (isset($data['rewardpoints']['qty'])) {
         if (is_numeric($data['rewardpoints']['qty'])) {
             //$this->applyPoints($data['rewardpoints']['qty']);
             $points = $data['rewardpoints']['qty'];
             $user_points = $this->customerPoints($quote);
             $points = $user_points < $points ? $user_points : $points;
             if ($points > 0) {
                 Mage::helper('rewardpoints/event')->setCreditPoints($points);
                 $quote->setRewardpointsQuantity($points);
                 //->save();
             } else {
                 Mage::getSingleton('rewardpoints/session')->setProductChecked(0);
                 Mage::helper('rewardpoints/event')->setCreditPoints(0);
                 $quote->setRewardpointsQuantity(NULL)->setRewardpointsDescription(NULL)->setBaseRewardpoints(NULL)->setRewardpoints(NULL);
             }
             $order_model->setRecollect(true);
         }
     }
 }
 /**
  * Upload and parse CSV file with SKUs
  *
  * @param Varien_Event_Observer $observer
  * @return null
  */
 public function uploadSkuCsv(Varien_Event_Observer $observer)
 {
     /** @var $helper Enterprise_Checkout_Helper_Data */
     $helper = Mage::helper('enterprise_checkout');
     $rows = $helper->isSkuFileUploaded($observer->getRequestModel()) ? $helper->processSkuFileUploading($observer->getSession()) : array();
     if (empty($rows)) {
         return;
     }
     /* @var $orderCreateModel Mage_Adminhtml_Model_Sales_Order_Create */
     $orderCreateModel = $observer->getOrderCreateModel();
     $cart = $this->_getBackendCart($observer);
     $cart->prepareAddProductsBySku($rows);
     $cart->saveAffectedProducts($orderCreateModel, false);
 }