Beispiel #1
0
     if ($meta['action'] == 'apply_points') {
         $points_to_use = empty($request['points_to_use']) ? 0 : intval($request['points_to_use']);
         if (!empty($points_to_use) && abs($points_to_use) == $points_to_use) {
             $cart['points_info']['in_use']['points'] = $points_to_use;
         }
     } elseif ($meta['action'] == 'delete_points') {
         unset($cart['points_info']['in_use']);
     }
     $cart['recalculate'] = true;
     Registry::set('runtime.controller', 'checkout', true);
     fn_calculate_cart_content($cart, $auth, 'S', true, 'F', true);
     Registry::set('runtime.controller', 'twigmo');
     $response->setData(fn_twg_api_get_session_cart($cart));
 } elseif ($meta['action'] == 'place_order') {
     $data = fn_twg_get_api_data($response, $format);
     $order_id = TwigmoOrder::apiPlaceOrder($data, $response, $lang_code);
     if (empty($order_id)) {
         if (!fn_twg_set_internal_errors($response, 'ERROR_FAIL_POST_ORDER')) {
             $response->addError('ERROR_FAIL_POST_ORDER', __('fail_post_order', $lang_code));
         }
         $response->returnResponse();
     }
     TwigmoOrder::returnPlacedOrders($order_id, $response, $items_per_page, $lang_code);
 } elseif ($meta['action'] == 'update') {
     if ($meta['object'] == 'cart') {
         // update cart
         $data = fn_twg_get_api_data($response, $format);
         $cart =& $_SESSION['cart'];
         fn_clear_cart($cart);
         if (!empty($data['products'])) {
             fn_twg_api_add_product_to_cart($data['products'], $cart);