/** * 产品显示页面 * */ private function product() { require_once "shopGoods.class.php"; $obj_shop_goods = new ShopGoodsClass(); /*当前产品信息*/ $condition['goods_id'] = intval($this->_input['id']); if ($condition['goods_id'] == 0) { header("Location:index.php"); exit; } $condition['no_state'] = 1; $product_array = $this->obj_product->getProductInfo($condition); /*产品颜色,产品规格*/ $c_array = @explode('|', $product_array['goods_color']); $s_array = @explode('|', $product_array['goods_size']); $color_select = $product_array['goods_color'] != '' ? Common::Select('goods_color', array_combine($c_array, $c_array)) : ''; $size_select = $product_array['goods_size'] != '' ? Common::Select('goods_size', array_combine($s_array, $s_array)) : ''; $this->output('color_select', $color_select); //颜色输出 $this->output('size_select', $size_select); //规格输出 /*产品多图*/ require_once 'goods.class.php'; $goods = new GoodsClass(); if ($product_array['shop_goods_id'] != '') { $product_array['more_image'] = $goods->getGoodsImage($product_array['shop_goods_id']); } else { $product_array['more_image'] = $goods->getGoodsImage($product_array['goods_id']); } $this->output('more_image_num', count($product_array['more_image']) + 1); $this->output('product_array', $product_array); /*浏览量*/ $goods_click = intval($product_array['goods_click']) + 1; $this->obj_goods->modifyGoods($goods_click, $condition['goods_id'], "goods_click"); /*推荐产品*/ $commend_array = $this->obj_product->getProductSpecific(array('goods_commend' => 1, 'goods_state' => 1)); $this->output('commend_array', $commend_array); /*产品属性*/ $goods_attr_body = @unserialize($product_array['goods_attr_body']); //商品内的属性 include 'goodsClass.class.php'; //载入产品分类文件 $goods_class = new GoodsClassClass(); $goods_type_id = $goods_class->getGoodsClassInfo(array('class_id' => $product_array['class_id']), 'goods_type_id,class_other_attr'); if ($goods_type_id[0] != '') { include 'goodsType.class.php'; $goods_type = new GoodsTypeClass(); $type_array = $goods_type->getTypeInfo(array('goods_type_id' => $goods_type_id[0])); /*判断商品类型状态,如果关闭则不执行*/ if ($type_array['goods_type_state'] == 1) { $attr_array = $goods_type->goodsAttrArray(array('txt_goods_type_id' => $type_array['goods_type_id'])); $goods_attr = array(); $i = 0; foreach ($attr_array as $val) { if (!empty($goods_attr_body['class_attr'][$val['attribute_id']])) { $goods_attr[$i]['title'] = $val['attribute_name']; $goods_attr[$i]['vaule'] = $goods_attr_body['class_attr'][$val['attribute_id']]; $i++; } } $this->output('goods_attr', $goods_attr); } } /*产品所在分类独有属性*/ if (is_array($goods_type_id['class_other_attr']) and count($goods_type_id['class_other_attr']) > 0) { $goods_other_attr = array(); foreach ($goods_type_id['class_other_attr'] as $key => $value) { if (!empty($goods_attr_body['class_other_attr'][$key])) { $goods_other_attr[] = array('attr_name' => $value, 'attr_value' => $goods_attr_body['class_other_attr'][$key]); } } } $this->output('goods_other_attr', $goods_other_attr); /*相关商品*/ if ($product_array['goods_link_goods'] != '') { if (intval($product_array['shop_goods_id']) == 0) { $goods_link_goods = $this->obj_goods->ajaxGoodsSearch(array('goods_id_str' => $product_array['goods_link_goods'], 'other_action' => 'modify_link'), '*'); } $this->output('goods_link_goods', $goods_link_goods); } /*相关文章*/ if ($product_array['goods_link_article'] != '') { include 'article.class.php'; $article = new ArticleClass(); $goods_link_article = $article->ajaxArticleSearch(array('article_id_str' => $product_array['goods_link_article'], 'other_action' => 'modify_link')); $this->output('goods_link_article', $goods_link_article); } /*产品导航条*/ include BasePath . "/share/" . NC_SHOP_DIR . "goods_class_show.php"; $array = array(); foreach ($node_cache as $k => $v) { if ($v[0] == intval($product_array['class_id'])) { $array['class_id'] = $v[0]; $array['class_top_id'] = $v[1]; $array['key_id'] = $k; break; } } $class_menu = $this->obj_product_class->prductClassMenu($array); $this->output('class_menu', $class_menu); /*评论列表*/ require_once "commonpage.class.php"; $obj_page = new CommonPage(); $obj_page->pagebarnum(10); $conditon_array = array('goods_id' => $condition['goods_id']); $comment_array = $this->obj_comment->getGoodsCommentList($conditon_array, $obj_page); $show_page = $obj_page->show(3); $this->output('comment_array', $comment_array); $this->output('show_page', $show_page); /*侧边商品分类显示*/ $class_array = $goods_class->getClassSort(); $this->output('class_array', $class_array); /*商品品牌*/ $brand_array = $this->obj_brand->getBrandList(array('show_type' => 'class_show')); $this->output('brand_array', $brand_array); /*当前类热卖商品*/ $hot_array = $this->obj_product_class->productClassList($array, '', 'goods.goods_name,goods.goods_id,goods.shop_goods_id', '', ' order by goods.goods_click desc', 8); $this->output('hot_array', $hot_array); /*浏览过的商品*/ if ($this->getCookies('c_product_viewed') != '') { $view_goods_array = $this->obj_product_class->productClassList(array('c_product_viewed' => $this->getCookies('c_product_viewed')), '', 'goods.goods_name,goods.goods_id,goods.goods_small_image,shop_goods_id'); $this->output('view_goods_array', $view_goods_array); } /*添加该商品到cookie,浏览商品*/ $this->setReviewed(intval($this->_input['id'])); $this->showpage("product"); }
/** * 删除商品分类 * */ private function delGoodsClass() { /*权限检查*/ $this->checkAdmin('goods_class_move'); $class_id = intval($this->_input['id']); $select_value = intval($this->_input['select']); $productClassArray = $this->obj_goods_class->listClassDetail(""); switch ($select_value) { case 1: // 删除当前分类包括当前分类的子分类和商品 //查出所有子集分类 $sub_class = $this->obj_goods_class->getArrayById($productClassArray, $result, $class_id); $sub_class[] = $class_id; $rs = $this->obj_goods_class->delGoodsClass($sub_class, "class_id"); if ($rs) { $rs = $this->obj_goods->delGoods($sub_class, "class_id"); if ($rs) { $this->obj_goods_class->createGoodsClassArray(); /*日志保存*/ $log_array = array(); $log_array['log_info'] = $this->_lang['admin_goods_class_goods_del_ok']; $this->obj_log->inLog($log_array); $this->adminMessage($this->_lang['admin_goods_class_goods_del_ok'], $this->_configinfo['websit']['site_url'] . "/admin/admin_goods_class.php?action=list", 1, 1000); } else { /*日志保存*/ $log_array = array(); $log_array['log_info'] = $this->_lang['admin_goods_class_goods_del_false']; $this->obj_log->inLog($log_array); $this->adminMessage($this->_lang['admin_goods_class_goods_del_false'], $this->_configinfo['websit']['site_url'] . "/admin/admin_goods_class.php?action=list", 1, 1000); } } else { /*日志保存*/ $log_array = array(); $log_array['log_info'] = $this->_lang['admin_goods_class_goods_del_false']; $this->obj_log->inLog($log_array); $this->adminMessage($this->_lang['admin_goods_class_goods_del_false'], $this->_configinfo['websit']['site_url'] . "/admin/admin_goods_class.php?action=list", 1, 1000); } break; case 2: //删除当前分类,移动子分类和商品 $class_top_id = $this->_input['txt_class_top_id' . $class_id . "_2"]; if ($class_top_id == 0) { $this->adminMessage($this->_lang['admin_goods_class_list_select_error'], $this->_configinfo['websit']['site_url'] . "/admin/admin_goods_class.php?action=list", 1, 1000); } $input_param['class_top_id'] = intval($class_top_id); $sub_one_class = $this->obj_goods_class->getArrayById($productClassArray, $result, $class_id); /* 检查修改的分类topid是否是当前分类的下级,如果是返回错误,不是的话,正常进行 */ $sub_one_class[] = $class_id; if ($sub_one_class != null) { if (in_array($class_top_id, $sub_one_class)) { $this->adminMessage($this->_lang['admin_goods_class_list_del_error1'], $this->refer_url, 1, 3000); } } /* 查出下一级分类 */ $sub_one_class = array(); $sub_one_class = $this->obj_goods_class->getOneArrayById($productClassArray, $result, $class_id); $sub_one_class_string = empty($sub_one_class) ? $class_id : @implode(",", $sub_one_class) . ',' . $class_id; /* 移动子类 */ $update_class = $this->obj_goods_class->modifyMoreGoodsClass($input_param, array("more_id" => $sub_one_class_string)); /* 移动当前类商品 */ $update_goods = $this->obj_goods->modifyGoods($class_top_id, $class_id, "class_id", "class_id"); /* 删除当前类 */ $input['class_id'] = $class_id; $del_goods_class = $this->obj_goods_class->delGoodsClass($input, "class_id"); if ($del_goods_class) { $this->obj_goods_class->createGoodsClassArray(); $this->adminMessage($this->_lang['admin_goods_oper_succ'], $this->_configinfo['websit']['site_url'] . "/admin/admin_goods_class.php?action=list", 1, 1000); } break; case 3: //删除当前分类和子分类,只移动商品 $class_top_id = $this->_input['txt_class_top_id' . $class_id . "_2"]; if ($class_top_id == 0) { $this->adminMessage($this->_lang['admin_goods_class_list_select_error'], $this->_configinfo['websit']['site_url'] . "/admin/admin_goods_class.php?action=list", 1, 1000); } //查出所有子集分类 $sub_class = $this->obj_goods_class->getArrayById($productClassArray, $result, $class_id); $sub_class[] = $class_id; /* 检查修改的分类topid是否是当前分类的下级,如果是返回错误,不是的话,正常进行 */ if ($sub_class != null) { if (in_array($class_top_id, $sub_class)) { $this->adminMessage($this->_lang['admin_goods_class_list_del_error'], $this->refer_url, 1, 3000); } } $sub_class_string = @implode(",", $sub_class); $rs = $this->obj_goods_class->delGoodsClass($sub_class, "class_id"); if ($rs) { $input_param['class_id'] = $class_top_id; $this->obj_goods->moveGoods($input_param, array("more_id" => $sub_class_string)); $this->obj_goods_class->createGoodsClassArray(); $this->adminMessage($this->_lang['admin_goods_oper_succ'], $this->_configinfo['websit']['site_url'] . "/admin/admin_goods_class.php?action=list", 1, 1000); } else { $this->adminMessage($this->_lang['admin_goods_oper_fill'], $this->_configinfo['websit']['site_url'] . "/admin/admin_goods_class.php?action=list", 1, 4000); } break; } }