本文整理汇总了PHP中Varien_Event_Observer::getRequestModel方法的典型用法代码示例。如果您正苦于以下问题:PHP Varien_Event_Observer::getRequestModel方法的具体用法?PHP Varien_Event_Observer::getRequestModel怎么用?PHP Varien_Event_Observer::getRequestModel使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Varien_Event_Observer
的用法示例。
在下文中一共展示了Varien_Event_Observer::getRequestModel方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: adminCheckGuestOrder
/**
* Catch guest order creation in admin
*
* @param Varien_Event_Observer $observer
* @return void
*/
public function adminCheckGuestOrder(Varien_Event_Observer $observer)
{
/* @var $request Mage_Core_Controller_Request_Http */
$request = $observer->getRequestModel();
/** @var $session Mage_Adminhtml_Model_Session_Quote */
$session = $observer->getSession();
if ($request->getParam('is_guest_order')) {
// In case of guest order mark the quote appropriately
$session->getQuote()->setCustomerIsGuest(true);
if (($originalOrderId = $session->getPreviousOrderId()) && !$session->getIsGuestAddressPopulated()) {
// Populate address fields from the original order
$originalOrder = Mage::getModel('sales/order')->load($originalOrderId);
if ($originalOrder->getId()) {
$session->getQuote()->getBillingAddress()->setCustomerAddressId('');
Mage::helper('core')->copyFieldset('sales_copy_order_billing_address', 'to_order', $originalOrder->getBillingAddress(), $session->getQuote()->getBillingAddress());
$session->getQuote()->getShippingAddress()->setCustomerAddressId('');
Mage::helper('core')->copyFieldset('sales_copy_order_shipping_address', 'to_order', $originalOrder->getShippingAddress(), $session->getQuote()->getShippingAddress());
// Don't set our "guest address populated" flag on the session just yet,
// because quote isn't saved during this request in every case. Wait for save.
$session->getQuote()->setFlagGuestAddressOnSave(true);
}
}
}
}
示例2: addRewardPointsAdmin
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);
}
}
}
示例3: uploadSkuCsv
/**
* 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);
}