Authored by 姜枫

merge

@@ -15,7 +15,7 @@ const AuthHelper = require('../models/auth-helper'); @@ -15,7 +15,7 @@ const AuthHelper = require('../models/auth-helper');
15 15
16 const loginPage = `${config.siteUrl}/passport/login/index`; 16 const loginPage = `${config.siteUrl}/passport/login/index`;
17 17
18 -function doPassportCallback(openId, nickname, req, res) { 18 +function doPassportCallback(openId, nickname, sourceType, req, res) {
19 let shoppingKey = cookie.getShoppingKey(req); 19 let shoppingKey = cookie.getShoppingKey(req);
20 let refer = req.cookies.refer; 20 let refer = req.cookies.refer;
21 21
@@ -26,11 +26,11 @@ function doPassportCallback(openId, nickname, req, res) { @@ -26,11 +26,11 @@ function doPassportCallback(openId, nickname, req, res) {
26 } 26 }
27 27
28 if (openId && nickname) { 28 if (openId && nickname) {
29 - AuthHelper.signinByOpenID(nickname, openId, 'wechat', shoppingKey).then((result) => { 29 + AuthHelper.signinByOpenID(nickname, openId, sourceType, shoppingKey).then((result) => {
30 if (result.data['is_bind'] && result.data['is_bind'] === 'N') { //eslint-disable-line 30 if (result.data['is_bind'] && result.data['is_bind'] === 'N') { //eslint-disable-line
31 return helpers.urlFormat('/passport/bind/index', { 31 return helpers.urlFormat('/passport/bind/index', {
32 openId: openId, 32 openId: openId,
33 - sourceType: 'wechat', 33 + sourceType: sourceType,
34 refer: refer 34 refer: refer
35 }); 35 });
36 } else if (result.code === 200 && result.data.uid) { 36 } else if (result.code === 200 && result.data.uid) {
@@ -52,6 +52,9 @@ const wechat = { @@ -52,6 +52,9 @@ const wechat = {
52 beforeLogin: (req, res, next) => { 52 beforeLogin: (req, res, next) => {
53 let refer = req.query.refer; 53 let refer = req.query.refer;
54 54
  55 + if (!refer) {
  56 + refer = req.get('Referer');
  57 + }
55 refer && res.cookie('refer', encodeURI(refer)); 58 refer && res.cookie('refer', encodeURI(refer));
56 next(); 59 next();
57 }, 60 },
@@ -67,7 +70,7 @@ const wechat = { @@ -67,7 +70,7 @@ const wechat = {
67 let nickname = user.displayName || user._json.nickname; 70 let nickname = user.displayName || user._json.nickname;
68 let openId = user.id || user._json.unionid; 71 let openId = user.id || user._json.unionid;
69 72
70 - doPassportCallback(openId, nickname, req, res); 73 + doPassportCallback(openId, nickname, 'wechat', req, res);
71 })(req, res, next); 74 })(req, res, next);
72 } 75 }
73 }; 76 };