<?php use Action\AbstractAction; use Plugin\Helpers; /** * 商品列表相关的控制器 * */ class IndexController extends AbstractAction { /** * 品类商品列表页 * * @param string $gender "1,3"表示男, "2,3"表示女, "1,2,3"表示全部 * @param integer $brand 品牌Id * @param integer $sort 品类查询sort参数 * @param integer $color 颜色Id * @param integer $size 尺码Id * @param string $price 价格 * @param string $p_d 折扣 */ public function indexAction() { // // 过滤请求参数 // $condition = filter_input_array(INPUT_GET, array( // 'brand' => FILTER_DEFAULT, // 'sort' => FILTER_DEFAULT, // 'msort' => FILTER_DEFAULT, // 'misort' => FILTER_DEFAULT, // 'color' => FILTER_DEFAULT, // 'size' => FILTER_DEFAULT, // 'style' => FILTER_DEFAULT, // 'price' => FILTER_DEFAULT, // 'discount' => FILTER_DEFAULT, // 'gender' => FILTER_DEFAULT, // 'p_d' => FILTER_DEFAULT,), false); // // // 转义品牌 // if (isset($condition['brand'])) { // $condition['brand'] = rawurldecode($condition['brand']); // } // // 转义分类 // if (isset($condition['sort'])) { // $condition['sort'] = rawurldecode($condition['sort']); // } // // 转义一级分类 // if (isset($condition['msort'])) { // $condition['msort'] = rawurldecode($condition['msort']); // } // // 转义二级分类 // if (isset($condition['misort'])) { // $condition['misort'] = rawurldecode($condition['misort']); // } // // 转义颜色 // if (isset($condition['color'])) { // $condition['color'] = rawurldecode($condition['color']); // } // // 转义尺码 // if (isset($condition['size'])) { // $condition['size'] = rawurldecode($condition['size']); // } // // 转义风格 // if (isset($condition['style'])) { // $condition['style'] = rawurldecode($condition['style']); // } // // 转义价格 // if (isset($condition['price'])) { // $condition['price'] = rawurldecode($condition['price']); // } // // 转换折扣 // if (isset($condition['discount'])) { // $condition['p_d'] = rawurldecode($condition['discount']); // } // // 为了兼容现在运营在用的p_d // if (isset($condition['p_d'])) { // $condition['discount'] = rawurldecode($condition['p_d']); // } // // 性别参数,不传则从COOKIE获取 // if (!isset($condition['gender'])) { // $condition['gender'] = Helpers::getGenderByCookie(); // } else { // $condition['gender'] = rawurldecode($condition['gender']); // } // 品类名称参数, 不传则默认为全部 $name = $this->get('sort_name'); if (empty($name)) { $name = $this->get('title', '全部'); } $this->setTitle($name); $this->setNavHeader($name, true, SITE_MAIN); // if (!$condition) { // $condition = array(); // } // $goodList = $condition; $goodList = array(); $goodList['cartUrl'] = Helpers::url('/cart/index/index', null); $this->_view->display('index', array( 'goodListPage' => true, 'showDownloadApp' => true, 'goodList' => $goodList, 'pageFooter' => true, )); } /** * 品牌商品列表页 * * @param string $gender "1,3"表示男, "2,3"表示女, "1,2,3"表示全部 * @param integer $sort 品类查询sort参数 * @param integer $color 颜色Id * @param integer $size 尺码Id * @param string $price 价格 * @param string $p_d 折扣 */ public function brandAction() { /* 品牌域名参数 @see Bootstrap.php */ $domain = $this->param('named'); if (empty($domain)) { $this->go(SITE_MAIN); } // 存标题信息 $title = ''; $brandLogo = Product\ListModel::getBrandLogoByDomain($domain, $title); $brandId = 0; if ($brandLogo && isset($brandLogo['id'])) { $brandId = $brandLogo['id']; } /* 通过品牌域名找到对应的品牌ID */ // $domainList = Product\ListModel::getAllBrandDomains(); // $brandIds = array_keys($domainList, $domain); // $brandId = 0; // if (isset($brandIds[0])) { // $brandId = $brandIds[0]; // } // 当前的登录用户UID $uid = $this->getUid(); /* 搜索框相关 */ $from = $this->get('from'); $query = $this->get('query'); // /* 过滤请求参数 */ // $condition = filter_input_array(INPUT_GET, array( // 'sort' => FILTER_DEFAULT, // 'msort' => FILTER_DEFAULT, // 'misort' => FILTER_DEFAULT, // 'color' => FILTER_DEFAULT, // 'size' => FILTER_DEFAULT, // 'style' => FILTER_DEFAULT, // 'price' => FILTER_DEFAULT, // 'discount' => FILTER_DEFAULT, // 'gender' => FILTER_DEFAULT, // 'p_d' => FILTER_DEFAULT,), false); // $condition['brand'] = $brandId; // // 转义分类 // if (isset($condition['sort'])) { // $condition['sort'] = rawurldecode($condition['sort']); // } // // 转义一级分类 // if (isset($condition['msort'])) { // $condition['msort'] = rawurldecode($condition['msort']); // } // // 转义二级分类 // if (isset($condition['misort'])) { // $condition['misort'] = rawurldecode($condition['misort']); // } // // 转义颜色 // if (isset($condition['color'])) { // $condition['color'] = rawurldecode($condition['color']); // } // // 转义尺码 // if (isset($condition['size'])) { // $condition['size'] = rawurldecode($condition['size']); // } // // 转义风格 // if (isset($condition['style'])) { // $condition['style'] = rawurldecode($condition['style']); // } // // 转义价格 // if (isset($condition['price'])) { // $condition['price'] = rawurldecode($condition['price']); // } // // 转换折扣 // if (isset($condition['discount'])) { // $condition['p_d'] = rawurldecode($condition['discount']); // } // // 为了兼容现在运营在用的p_d // if (isset($condition['p_d'])) { // $condition['discount'] = rawurldecode($condition['p_d']); // } // if ($brandId === 0) { // $condition['query'] = $domain; // } // // if (isset($condition['gender'])) { // $condition['gender'] = rawurldecode($condition['gender']); // } else { // $condition['gender'] = Helpers::getGenderByCookie(); // } $data = array(); $data['goodListPage'] = true; $data['showDownloadApp'] = true; // 从搜索页过来的,显示搜索框, 和进入品牌引导信息 if ($from === 'search') { $data['goodList'] = array(); //$data['goodList']['brandWay'] = \Product\ListModel::getBrandLogoByIds($brandId, $title); $data['goodList']['brandWay'] = $brandLogo; $data['goodList']['search']['default'] = $query; $data['goodList']['search']['url'] = Helpers::url('', null, 'search'); } // 品牌一览过来的展示品牌介绍和LOGO elseif ($brandId !== 0) { $data['brandHome'] = \Product\ListModel::getBrandIntro($brandId, $uid, $title); $data['goodList'] = array(); } // 右下角的购物车链接 $data['goodList']['cartUrl'] = Helpers::url('/cart/index/index', null); //$data['goodList'] += $condition; $data['pageFooter'] = true; if ($title === '') { $title = $domain; } $this->setTitle($title); $this->setNavHeader($title, true, SITE_MAIN); $this->_view->display('index', $data); } }