Authored by 毕凯

频道页面增加底部

@@ -3,10 +3,31 @@ @@ -3,10 +3,31 @@
3 * @author: Bi Kai<kai.bi@yoho.cn> 3 * @author: Bi Kai<kai.bi@yoho.cn>
4 * @date: 2016/05/09 4 * @date: 2016/05/09
5 */ 5 */
  6 +'use strict';
  7 +const _ = require('lodash');
6 const channelModel = require('../models/channel'); 8 const channelModel = require('../models/channel');
7 -var helpers = require('../../../library/helpers'); 9 +const helpers = require('../../../library/helpers');
8 10
9 const mod = 'channel'; 11 const mod = 'channel';
  12 +let footerTab = {
  13 + indexUrl: helpers.url('/?go=1'), // 首页
  14 + categoryUrl: helpers.url('/cate'), // 分类
  15 + guangUrl: helpers.url('', null, 'guang'), // 逛首页
  16 + shoppingCartUrl: helpers.url('/cart/index/index'), // 购物车
  17 + mineUrl: helpers.url('/home') // 个人中心
  18 +};
  19 +
  20 +exports.switchChannel = (req, res, next) => {
  21 + let channel = req.cookies._Channel;
  22 +
  23 + if (req.query.go && channel) {
  24 + res.redirect('/' + channel);
  25 + } else {
  26 + // 设置浏览器缓存5分钟 300000ms
  27 + res.set('Expires', (new Date(_.now() + 300000)).toGMTString());
  28 + return next();
  29 + }
  30 +};
10 31
11 /** 32 /**
12 * 男生首页 33 * 男生首页
@@ -19,9 +40,13 @@ exports.boys = (req, res) => { @@ -19,9 +40,13 @@ exports.boys = (req, res) => {
19 res.render('channel', Object.assign({ 40 res.render('channel', Object.assign({
20 module: mod, 41 module: mod,
21 page: 'home', 42 page: 'home',
  43 + title: '男生首页',
22 homeHeader: { 44 homeHeader: {
23 searchUrl: helpers.url('/search', null, 'search') 45 searchUrl: helpers.url('/search', null, 'search')
24 - } 46 + },
  47 + maybeLike: true,
  48 + showFooterTab: footerTab,
  49 + pageFooter: true
25 }, result)); 50 }, result));
26 }); 51 });
27 }; 52 };
@@ -9,6 +9,18 @@ const sign = require('../../../library/sign'); @@ -9,6 +9,18 @@ const sign = require('../../../library/sign');
9 9
10 const api = new API(); 10 const api = new API();
11 11
  12 +const processFloor = (list) => {
  13 + const formatData = {};
  14 +
  15 + list = list || [];
  16 + _.forEach(list, (floor) => {
  17 +
  18 + // FIXME 楼层数据处理有问题
  19 + formatData[_.camelCase(floor.template_name)] = floor.data; // 接口数据格式化,键使用驼峰写法
  20 + });
  21 + return formatData;
  22 +};
  23 +
12 /** 24 /**
13 * 获取频道页面资源位 25 * 获取频道页面资源位
14 */ 26 */
@@ -25,19 +37,18 @@ const getChannelResource = (gender) => { @@ -25,19 +37,18 @@ const getChannelResource = (gender) => {
25 result = JSON.parse(result); 37 result = JSON.parse(result);
26 38
27 if (result.code === 200) { 39 if (result.code === 200) {
28 - const formatDate = {};  
29 -  
30 - result.data.list = result.data.list || [];  
31 - _.forEach(result.data.list, (floor) => {  
32 - formatDate[_.camelCase(floor.template_name)] = floor.data; // 接口数据格式化,键使用驼峰写法  
33 - });  
34 - return formatDate; 40 + return processFloor(result.data.list);
35 } else { 41 } else {
36 return result; 42 return result;
37 } 43 }
38 }); 44 });
39 }; 45 };
40 46
  47 +/**
  48 + * 获取频道页面数据
  49 + * @param {[object]} params
  50 + * @return {[object]}
  51 + */
41 exports.getChannelDate = (params) => { 52 exports.getChannelDate = (params) => {
42 var channelData = {}; 53 var channelData = {};
43 54
@@ -12,10 +12,10 @@ const channel = require(cRoot); @@ -12,10 +12,10 @@ const channel = require(cRoot);
12 12
13 const router = express.Router(); // eslint-disable-line 13 const router = express.Router(); // eslint-disable-line
14 14
15 -router.get('/boys', channel.boys); 15 +router.get('/boys', channel.switchChannel, channel.boys);
16 16
17 -// router.get('/girls', channel.girls);  
18 -// router.get('/kids', channel.kids);  
19 -// router.get('/lifestyle', channel.lifestyle); 17 +// router.get('/girls', channel.switchChannel, channel.girls);
  18 +// router.get('/kids', channel.switchChannel, channel.kids);
  19 +// router.get('/lifestyle', channel.switchChannel, channel.lifestyle);
20 20
21 module.exports = router; 21 module.exports = router;