fn_update_option_combination($_data); } } $suffix = ".inventory?product_id={$_REQUEST['product_id']}"; } if ($mode == 'update_combinations') { if (!empty($_REQUEST['inventory'])) { foreach ($_REQUEST['inventory'] as $k => $v) { fn_update_option_combination($v, $k); } } $suffix = ".inventory?product_id={$_REQUEST['product_id']}"; } if ($mode == 'm_delete_combinations') { foreach ($_REQUEST['combination_hashes'] as $v) { fn_delete_option_combination($v); } $suffix = ".inventory?product_id={$_REQUEST['product_id']}"; } // Apply global options to the selected products if ($mode == 'apply') { if (!empty($_REQUEST['apply_options']['options'])) { $_data = $_REQUEST['apply_options']; foreach ($_data['options'] as $key => $value) { $products_ids = empty($_data['product_ids']) ? array() : explode(',', $_data['product_ids']); foreach ($products_ids as $k) { $updated_products[$k] = db_get_row("SELECT a.product_id, a.company_id, b.product FROM ?:products as a" . " LEFT JOIN ?:product_descriptions as b ON a.product_id = b.product_id" . " AND lang_code = ?s" . " WHERE a.product_id = ?i", CART_LANGUAGE, $k); if ($_data['link'] == 'N') { fn_clone_product_options(0, $k, $value); } else { db_query("REPLACE INTO ?:product_global_option_links (option_id, product_id) VALUES (?i, ?i)", $value, $k);
public function delete($id) { $data = array(); $status = Response::STATUS_OK; $product_id = db_get_field('SELECT product_id FROM ?:product_options_inventory WHERE combination_hash = ?s', $id); list($_status, $message) = $this->checkProductId($product_id); if ($_status != Response::STATUS_OK) { return array('status' => $status, 'data' => array('message' => $message)); } if (fn_delete_option_combination($id)) { $status = Response::STATUS_NO_CONTENT; $data = array(); } else { $status = Response::STATUS_NOT_FOUND; } return array('status' => $status, 'data' => $data); }