/** * 提交商品修改 */ public function post() { // 初始化返回结构体 $return_struct = array('status' => 0, 'code' => 501, 'msg' => 'Not Implemented', 'content' => array()); try { // 初始化返回数据 $return_data = array(); // 收集请求数据 $request_data = $this->input->post(); $request_data = trims::run($request_data); $url_redirect = url::base() . $this->package_name . '/' . $this->class_name; //标签过滤 商品描述保留 tool::filter_strip_tags($request_data, array('desc', 'pdtdes_content')); $product = $request_data; //收集商品详细描述表单数据 $product['descsections'] = array(); if (!empty($request_data['pdtdes_title']) and is_array($request_data['pdtdes_title'])) { foreach ($request_data['pdtdes_title'] as $index => $pdtdes_title) { $descsection = array('title' => $pdtdes_title, 'position' => isset($request_data['pdtdes_position'][$index]) ? $request_data['pdtdes_position'][$index] : '', 'content' => isset($request_data['pdtdes_content'][$index]) ? $request_data['pdtdes_content'][$index] : ''); if (isset($request_data['pdtdes_id'][$index])) { $descsection['id'] = $request_data['pdtdes_id'][$index]; } $product['descsections'][] = $descsection; } } //收集商品批发数据 $product['wholesales'] = array('type' => 0, 'items' => array()); isset($request_data['wholesale_type']) and $product['wholesales']['type'] = $request_data['wholesale_type']; if (isset($product['is_wholesale']) && $product['is_wholesale'] > 0) { if (!empty($request_data['wholesale_indexs']) and is_array($request_data['wholesale_indexs'])) { foreach ($request_data['wholesale_indexs'] as $index) { $wholesale = array(); isset($request_data['wholesale_num_begin_' . $index]) and $wholesale['num_begin'] = $request_data['wholesale_num_begin_' . $index]; isset($request_data['wholesale_value_' . $index]) and $wholesale['value'] = $request_data['wholesale_value_' . $index]; $product['wholesales']['items'][] = $wholesale; } } } BLL_Product::set(&$product); if ($product['id'] <= 0) { throw new MyRuntimeException(Kohana::lang('o_product.no_save'), 500); } if ($request_data['save_redirect'] == 1) { $url_redirect .= '/edit?id=' . $product['id']; } elseif ($request_data['save_redirect'] == 2) { $url_redirect .= '/add'; } remind::set(Kohana::lang('o_product.edit_product_success'), $url_redirect, 'success'); } catch (MyRuntimeException $ex) { $this->_ex($ex, $return_struct, $request_data); } }