Index.php 6.06 KB
<?php 
use Action\WebAction;
use LibModels\Web\Product\FavoriteData;
use Product\BrandsModel;

use product\HotrankModel;

class IndexController extends WebAction
{
    /**
    * 品牌首页
    */
    public function brandAction()
    {
        //品牌域名,没有获取到品牌域名的跳转首页
        $domain = $this->param('named');
        if (empty($domain)) {
            $this->go(SITE_MAIN);
        }    
        //根据品牌域名获取品牌id(同时判断品牌域名是否有效),无效跳转首页
        $type = 1;
        $result = BrandsModel::getBrandByDomain($domain, $type);
        if (!$result) {
            $this->go(SITE_MAIN);
        }
        
        //获取uid
        $uid = $this->getUid();
        
        //传品牌ID参数
        $condition = array();
        $condition['brand'] = isset($result['brandId']) ? $result['brandId'] : '';
        
        //品牌系列参数
        $condition['folder_id'] = $this->get('folder_id');
        
        //$options参数数组
        $options = array();
        $options['brandName'] = $domain;
        $options['uid'] = $uid;
        $options['brandId'] = isset($result['brandId']) ? $result['brandId'] : '';
        $options['node'] = isset($result['node']) ? $result['node'] : '';
        $options['brandBanner'] = isset($result['brandBanner']) ? $result['brandBanner'] : '';
        $options['brandNameEn'] = isset($result['brandNameEn']) ? $result['brandNameEn'] : '';
        $options['brandNameCn'] = isset($result['brandNameCn']) ? $result['brandNameCn'] : '';
        $options['reviewNum'] = 6;
        $options['controller'] = 'Index';
        $options['action'] = 'brand';
        
        //调用模型获得数据
        $data = BrandsModel::getBrandSearchData($condition, $options);
        
        $data = array(
            //初始化js
            'searchListPage' => true,
            'list' => $data
        );
        $this->setTitle('潮流商品搜索 | YOHO!有货');
        $this->setKeywords('Yoho! 有货,潮流,时尚,流行,购物,B2C,正品,购物网站,网上购物,货到付款,品牌服饰,男士护肤,黑框眼镜,匡威,板鞋,i.t,izzue,5cm,eastpak,vans,lylescott,g-shock,new balance,lacoste,melissa,casio,卡西欧手表,舒雅,jasonwood,odm,AAAA,香港购物,日本潮流');
        $this->setDescription('潮流商品搜索,上衣,衬衫,TEE,卫衣,冲锋衣,风衣,羽绒服,裤子,休闲鞋,板鞋,配饰,复古眼镜');
        $this->setWebNavHeader();
        //渲染模板
        $this->_view->display('list',$data);
    }
    
    //品牌介绍页
    public function aboutAction()
    {
        //品牌域名
        $domain = $this->param('named');
        if (empty($domain)) {
            $this->go(SITE_MAIN);
        }    
        $uid = $this->getUid();
        
        
        //根据品牌域名获取品牌id(同时判断品牌域名是否有效),无效跳转首页TODO
        $type = 2;
        $result = BrandsModel::getBrandByDomain($domain, $type);
        if (!$result) {
            $this->go(SITE_MAIN);
        }
        
        //品牌ID参数
        $condition = array();
        $condition['brand'] = isset($result['brandId']) ? $result['brandId'] : '';
        
        //$options参数数组
        $options = array();
        $options['brandName'] = $domain;
        $options['uid'] = $uid;
        $options['brandId'] = isset($result['brandId']) ? $result['brandId'] : '';
        $options['brandBanner'] = isset($result['brandBanner']) ? $result['brandBanner'] : '';
        $options['brandAbout'] = isset($result['brandAbout']) ? $result['brandAbout'] : '';
        $options['controller'] = 'Index';
        $options['action'] = 'brand';
        //调用模型获得数据
        $data = BrandsModel::getBrandIntro($condition, $options);
        
        $data = array(
            //初始化js
            'searchListPage' => true,
            'list' => $data
        );
        
        $this->setWebNavHeader();
        //渲染模板
        $this->_view->display('list',$data);
    }
    
    //收藏品牌
    public function favoriteBrandAction()
    {
        if (!$this->isAjax()) {
            return;
        }
        $result = array(
            'code' => 400,
            'message' => 'operation failed'
            );
        $uid = $this->getUid();
        $brandId = $this->post('brandId');
        do{
            if (!$uid) {
                $result = array(
                    'code' => 403,
                    'message' => 'uid is null'
                    );
                break;
            }
            if ($uid && $brandId) {
                //调用接口收藏或取消收藏
                $result = FavoriteData::changeFavoriteBrand($uid, $brandId);
                break;
            }
        }while(false);
        
        $this->echoJson($result);
    }
    
     /**
     * 热销排行
     */
    public function hotrankAction() 
    {
        //获取频道
        $channel = HotrankModel::getChannelResource();
        $this->setWebNavHeader($channel['channel']);
        $page = $this->get('page',1);	
        $sort = $this->get('sid',1);
        $data = array( 'hotrankPage' => true,
                        'footerTop'=> true,
                        'hotrank' => HotrankModel::getHotrankResource($channel, $sort, $page)
                    );
       $this->_view->display('hotrank', $data);
    }
    
    /*
     * 一周热卖加载更多
     */
    public function getdataAction()
    {
        $page = $this->get('page',1);
        //加载到100个以后停止
        if($page > 2)
        {
            echo json_encode(array('code'=>201,'data'=>''));
            exit;
        }
        $sid = $this->get('sid',1);
        //获取频道资源
        $channel = HotrankModel::getChannelResource();
        //获取一周热卖资源
        $data =  HotrankModel::getListData($channel, $sid, $page);
        echo json_encode($data);
        exit;   
    }
}