...
|
...
|
@@ -14,7 +14,7 @@ const cookie = global.yoho.cookie; |
|
|
const helpers = global.yoho.helpers;
|
|
|
const log = global.yoho.logger;
|
|
|
const config = global.yoho.config;
|
|
|
const url = require('url');
|
|
|
const utils = require(global.utils);
|
|
|
const RegService = require('../models/reg-service');
|
|
|
const AuthHelper = require('../models/auth-helper');
|
|
|
|
...
|
...
|
@@ -33,6 +33,9 @@ function doPassportCallback(openId, nickname, sourceType, req, res) { |
|
|
if (/signin|login/.test(refer)) {
|
|
|
refer = `${config.siteUrl}/home`;
|
|
|
}
|
|
|
|
|
|
refer = utils.refererLimit(refer);
|
|
|
|
|
|
if (openId && nickname) {
|
|
|
return AuthHelper.signinByOpenID(nickname, openId, sourceType, shoppingKey).then((result) => {
|
|
|
if (result.code !== 200) {
|
...
|
...
|
@@ -65,13 +68,7 @@ const common = { |
|
|
refer = req.get('Referer');
|
|
|
}
|
|
|
|
|
|
refer = decodeURI(refer);
|
|
|
|
|
|
let urlObj = url.parse(refer, false, true);
|
|
|
|
|
|
if (urlObj.hostname && !/(?:yohobuy\.com$)|(?:yoho\.cn$)/.test(urlObj.hostname)) {
|
|
|
refer = '/home';
|
|
|
}
|
|
|
refer = utils.refererLimit(refer);
|
|
|
|
|
|
|
|
|
refer && !/signin|login|passport/.test(refer) && res.cookie('refer', encodeURI(refer), {
|
...
|
...
|
@@ -170,6 +167,9 @@ const local = { |
|
|
if (/sign|login/.test(refer)) {
|
|
|
refer = `${config.siteUrl}/home`;
|
|
|
}
|
|
|
|
|
|
refer = utils.refererLimit(refer);
|
|
|
|
|
|
user.session = refer;
|
|
|
user.href = refer;
|
|
|
AuthHelper.syncUserSession(user.uid, req, res, user.session_key).then(() => {
|
...
|
...
|
@@ -193,6 +193,8 @@ const local = { |
|
|
res.clearCookie('_SPK');
|
|
|
let refer = req.get('Referer') || config.siteUrl;
|
|
|
|
|
|
refer = utils.refererLimit(refer);
|
|
|
|
|
|
res.redirect(refer);
|
|
|
}
|
|
|
};
|
...
|
...
|
|