...
|
...
|
@@ -15,7 +15,7 @@ const AuthHelper = require('../models/auth-helper'); |
|
|
|
|
|
const loginPage = `${config.siteUrl}/passport/login/index`;
|
|
|
|
|
|
function doPassportCallback(openId, nickname, req, res) {
|
|
|
function doPassportCallback(openId, nickname, sourceType, req, res) {
|
|
|
let shoppingKey = cookie.getShoppingKey(req);
|
|
|
let refer = req.cookies.refer;
|
|
|
|
...
|
...
|
@@ -26,11 +26,11 @@ function doPassportCallback(openId, nickname, req, res) { |
|
|
}
|
|
|
|
|
|
if (openId && nickname) {
|
|
|
AuthHelper.signinByOpenID(nickname, openId, 'wechat', shoppingKey).then((result) => {
|
|
|
AuthHelper.signinByOpenID(nickname, openId, sourceType, shoppingKey).then((result) => {
|
|
|
if (result.data['is_bind'] && result.data['is_bind'] === 'N') { //eslint-disable-line
|
|
|
return helpers.urlFormat('/passport/bind/index', {
|
|
|
openId: openId,
|
|
|
sourceType: 'wechat',
|
|
|
sourceType: sourceType,
|
|
|
refer: refer
|
|
|
});
|
|
|
} else if (result.code === 200 && result.data.uid) {
|
...
|
...
|
@@ -52,6 +52,9 @@ const wechat = { |
|
|
beforeLogin: (req, res, next) => {
|
|
|
let refer = req.query.refer;
|
|
|
|
|
|
if (!refer) {
|
|
|
refer = req.get('Referer');
|
|
|
}
|
|
|
refer && res.cookie('refer', encodeURI(refer));
|
|
|
next();
|
|
|
},
|
...
|
...
|
@@ -67,7 +70,7 @@ const wechat = { |
|
|
let nickname = user.displayName || user._json.nickname;
|
|
|
let openId = user.id || user._json.unionid;
|
|
|
|
|
|
doPassportCallback(openId, nickname, req, res);
|
|
|
doPassportCallback(openId, nickname, 'wechat', req, res);
|
|
|
})(req, res, next);
|
|
|
}
|
|
|
};
|
...
|
...
|
|