static function processCartInfo($controller, $transId) { if (isset($controller->ipnProcessor)) { $processor = $controller->ipnProcessor; return $processor($transId); } $cartCode = $transId; $memberId = NULL; $solds = array(); $order = NULL; if (($p = strpos($transId, ';')) !== FALSE) { $orderId = substr($transId, 0, $p); $krcoObjKeyPl = substr($transId, $p + 1); $ordersDb = $controller->getKrcoConfigValue($krcoObjKeyPl, 'db_orders'); $order = $controller->getSingleObject($ordersDb, 'getOrderByLongId', array($orderId)); if ($order) { $memberId = $order->getMemberId(); $solds = $order->getOrderedProducts(); $cartCode = $order->getShoppingCartFid(); $processed = Helper_Cart::processOrderPaid($controller, $order, $krcoObjKeyPl); if (!$processed) { return NULL; } } } $cartObj = self::getCartObjByCartCode($controller, $cartCode); if ($cartObj) { if (!$memberId) { $memberId = $cartObj->getMemberId(); } if (!$solds) { $solds = self::getSoldsOfCart($controller, $cartObj); } } $info = array('cart_code' => $cartCode, 'member_id' => $memberId, 'solds' => $solds, 'order' => $order); $controller->_processedCartInfo = $info; return $info; }