function cw_aom_normalize_after_update($doc, $original = array()) { global $addons, $app_main_dir; $doc = cw_call('cw_aom_recalculate_totals', array($doc)); cw_cart_normalize($doc); if ($doc['info']['cause_id']) { $doc['cause_info'] = cw_doc_get_cause_info($doc['info']['cause_id'], 0, $doc['cause_info']['doc'], 1); } if (is_array($doc['products'])) { foreach ($doc['products'] as $pk => $product) { $product_id = $product['product_id']; $options = array(); if (is_array($product['product_options'])) { foreach ($product['product_options'] as $k => $v) { $options[$k] = $v['option_id']; } } $doc['products'][$pk]['items_in_stock'] = cw_aom_get_quantity_in_stock($product['warehouse_customer_id'], $product_id, $original['order']['status'], $options, $original['products'][$pk]); $doc['products'][$pk]['items_in_backorder'] = cw_aom_get_quantity_in_stock($product['warehouse_customer_id'], $product_id, $original['order']['status'], $options, $original['products'][$pk], 'avail_sold'); # kornev, TOFIX if ($addons['product_options']) { $options = $product['extra_data']['product_options']; $product_options = cw_call('cw_get_product_classes', array('product_id' => $product['product_id'])); $product_options = cw_call('cw_product_options_set_selected', array($product_options, $options)); $doc['products'][$pk]['display_options'] = $product_options; } } } return $doc; }
} exit(0); } if ($action == 'delete_item' && isset($index) && !$aom_orders[$doc_id]['saved']) { unset($aom_orders[$doc_id]['products'][$index]); $aom_orders[$doc_id]['info']['use_shipping_cost_alt'] = 'N'; $doc_data = cw_doc_get($doc_id, 0); $aom_orders[$doc_id] = cw_aom_normalize_after_update($aom_orders[$doc_id], $doc_data); } if ($action == 'update_item_info' && isset($index) && !$aom_orders[$doc_id]['saved']) { $aom_orders[$doc_id]['info']['use_shipping_cost_alt'] = 'N'; $doc_data = cw_doc_get($doc_id, 0); $product_id = $aom_orders[$doc_id]['products'][$index]['product_id']; $v = $product_details[$index]; $v['amount'] = intval($v['amount']); $count_product_in_stock = cw_aom_get_quantity_in_stock($aom_orders[$doc_id]['products'][$index]['warehouse_customer_id'], $product_id, $doc_data['order']['status'], $v['product_options'], $doc_data['products'][$index]); if ($is_old) { $count_product_in_stock += $v['amount']; } # kornev # pos orders && supplier orders are unlimited if ($v['amount'] > 0) { $aom_orders[$doc_id]['products'][$index]['amount'] = $config['unlimited_products'] ? $v['amount'] : min($v['amount'], $count_product_in_stock); } $v['price'] = cw_aom_validate_price($v['price']); if ($config['Taxes']['display_taxed_order_totals'] == 'Y') { $v['price'] = cw_taxes_price_without_tax($v['price'], $aom_orders[$doc_id]['products'][$index]['taxes']); } $product_options_result = array(); # kornev, TOFIX if ($v['product_options'] && $addons['product_options']) {