예제 #1
0
 protected function _afterSave()
 {
     parent::_afterSave();
     if (Kwc_Shop_Cart_Orders::getCartOrderId() == $this->id && $this->status != 'cart') {
         Kwc_Shop_Cart_Orders::resetCartOrderId();
     }
 }
 public function sendContent($includeMaster)
 {
     $session = new Kwf_Session_Namespace('kwcShopCart');
     if ($session->wirecardCartId) {
         Kwc_Shop_Cart_Orders::setCartOrderId($session->wirecardCartId);
         $order = Kwf_Model_Abstract::getInstance(Kwc_Abstract::getSetting($this->_data->parent->parent->parent->componentClass, 'childModel'))->getReferencedModel('Order')->getCartOrder();
         $db = Kwf_Registry::get('db');
         $db->query("UPDATE `kwc_shop_orders` SET `status` = 'cart' WHERE `id` = {$db->quote($order->id)} AND `status` = 'processing'");
         unset($session->wirecardCartId);
     }
     Kwf_Util_Redirect::redirect($this->_data->parent->parent->parent->getUrl());
 }
예제 #3
0
 protected function _formatSelect($parentData, $select)
 {
     $ret = parent::_formatSelect($parentData, $select);
     if (!$ret) {
         return $ret;
     }
     $session = new Kwf_Session_Namespace('kwcShopCart');
     if (!$session->orderId) {
         return null;
     }
     $ret->whereEquals('shop_order_id', Kwc_Shop_Cart_Orders::getCartOrderId());
     return $ret;
 }
 public function sendContent($includeMaster)
 {
     $session = new Kwf_Session_Namespace('kwcShopCart');
     if ($session->wirecardCartId) {
         Kwc_Shop_Cart_Orders::setCartOrderId($session->wirecardCartId);
         $order = Kwf_Model_Abstract::getInstance(Kwc_Abstract::getSetting($this->_data->parent->parent->parent->componentClass, 'childModel'))->getReferencedModel('Order')->getCartOrder();
         if ($order) {
             $order->status = 'cart';
             $order->save();
         }
         unset($session->wirecardCartId);
     }
     Kwf_Util_Redirect::redirect($this->_data->parent->parent->parent->getUrl());
 }
예제 #5
0
 public function processInput($data)
 {
     $custom = isset($data['custom']) ? rawurldecode($data['custom']) : null;
     $data = Kwc_Shop_Cart_Checkout_Payment_Wirecard_LogModel::decodeCallback($custom);
     if ($data) {
         $db = Kwf_Registry::get('db');
         $date = date('Y-m-d H:i:s');
         $sql = "UPDATE `kwc_shop_orders` SET\n              `payment_component_id` = {$db->quote($this->getData()->parent->componentId)},\n              `checkout_component_id` = {$db->quote($this->getData()->parent->parent->componentId)},\n              `cart_component_class` = {$db->quote($this->getData()->parent->parent->parent->componentClass)},\n              `date` = {$db->quote($date)},\n              `status` = 'ordered'\n              WHERE `id` = {$db->quote($data['data']['orderId'])} AND (`status` = 'processing' OR `status` = 'cart')";
         $db->query($sql);
         Kwc_Shop_Cart_Orders::setOverriddenCartOrderId($data['data']['orderId']);
         if (Kwc_Shop_Cart_Orders::getCartOrderId() == $data['data']['orderId']) {
             Kwc_Shop_Cart_Orders::resetCartOrderId();
         }
     }
 }
예제 #6
0
 public function processInput($data)
 {
     $custom = isset($data['custom']) ? rawurldecode($data['custom']) : null;
     $data = Kwc_Shop_Cart_Checkout_Payment_Wirecard_LogModel::decodeCallback($custom);
     if ($data) {
         $order = Kwf_Model_Abstract::getInstance(Kwc_Abstract::getSetting($this->getData()->getParentByClass('Kwc_Shop_Cart_Component')->componentClass, 'childModel'))->getReferencedModel('Order')->getRow($data['data']['orderId']);
         if ($order->status == 'processing' || $order->status == 'cart') {
             $order->payment_component_id = $this->getData()->parent->componentId;
             $order->checkout_component_id = $this->getData()->parent->parent->componentId;
             $order->cart_component_class = $this->getData()->parent->parent->parent->componentClass;
             $order->status = 'ordered';
             $order->date = date('Y-m-d H:i:s');
             $order->save();
         }
         Kwc_Shop_Cart_Orders::setOverriddenCartOrderId($order->id);
         if (Kwc_Shop_Cart_Orders::getCartOrderId() == $order->id) {
             Kwc_Shop_Cart_Orders::resetCartOrderId();
         }
     }
 }
예제 #7
0
 public static function resetCartOrderId()
 {
     $session = new Kwf_Session_Namespace('kwcShopCart');
     //merken damit wir noch auf die order zugreifen können
     if (!isset(self::$_cartOrderId)) {
         self::$_cartOrderId = $session->orderId;
     }
     $session->orderId = null;
 }
예제 #8
0
 protected function _afterInsert(Kwf_Model_Row_Interface $row)
 {
     parent::_afterInsert($row);
     //if getCartOrderId was null (tough it should not happen as the cart is empty in that case and the form doesn't validate then)
     Kwc_Shop_Cart_Orders::setCartOrderId($row->id);
 }
예제 #9
0
 protected function _afterInsert(Kwf_Model_Row_Interface $row)
 {
     parent::_afterInsert($row);
     Kwc_Shop_Cart_Orders::setCartOrderId($row->id);
 }