Authored by 陈轩

新人注册

... ... @@ -81,36 +81,8 @@ const common = {
};
/**
* 判断 referer 是否来自 个人中心( http://m.yohobuy.com/home)
* @param referer string url
* @return boolean
*/
function isFromMy(referer) {
let bool = false;
let urlObject;
if (!referer) {
return bool;
}
referer = decodeURIComponent(referer);
urlObject = url.parse(referer, false, true);
if (urlObject.host === 'm.yohobuy.com' && urlObject.pathname === '/home') {
bool = true;
}
return bool;
}
const local = {
loginPage: (req, res) => {
if (isFromMy(req.get('referer'))) {
_.set(req.session, 'phoneReg.isFromMy', true);
}
// 先清除cookie
// res.clearCookie('LE' + md5('_LOGIN_EXPIRE'), {
// domain: 'yohobuy.com'
... ...
... ... @@ -8,6 +8,7 @@
'use strict';
const _ = require('lodash');
const url = require('url');
const utils = require(global.utils);
const helpers = global.yoho.helpers;
const sign = global.yoho.sign;
... ... @@ -59,6 +60,17 @@ let index = (req, res) => {
return res.redirect(req.get('refer') || '/');
}
// 判断是否 来自 个人中心
if (!_.get(req.session, 'phoneReg.isFromMy')) {
let referer = req.get('Referer') || '';
let urlObj = url.parse(referer, true, true);
referer = _.get(urlObj, 'query.refer', '');
urlObj = url.parse(referer, true, true);
urlObj.path === '/home' && _.set(req.session, 'phoneReg.isFromMy', '1');
}
// 设置注册有效时间30分钟, 防机器刷
// req.session.REG_EXPIRE = Date.now() + 1800000;
let refer = req.query.refer;
... ... @@ -362,7 +374,7 @@ let setPassword = (req, res, next) => {
let password = req.body.password;
let token = req.body.token;
let smsCode = +req.body.smsCode;
let isFromMy = _.get(req.session, 'phoneReg.isFromMy', false);
let isFromMy = _.get(req.session, 'phoneReg.isFromMy', '0');
// 判断参数是否合法
if (!smsCode || !_.isString(token) || !_.isNumber(mobile) || !_.isNumber(area) || !password) {
... ... @@ -387,7 +399,9 @@ let setPassword = (req, res, next) => {
// 验证注册的标识码是否有效
let resultCopy = null;
console.log('isFromMy:', isFromMy);
RegService.regMobileAes(area, mobile, password, shoppingKey, smsCode, isFromMy).then((result) => {
console.log(result);
if (!result.code || result.code !== 200) {
return Promise.reject(result);
}
... ...
... ... @@ -97,7 +97,7 @@ const RegService = {
return api.post('', params);
},
regMobileAes(area, mobile, password, shoppingKey, smsCode, isFromMy) {
isFromMy = isFromMy || false;
isFromMy = isFromMy || '0';
let params = {
method: 'app.passport.registerAES',
... ...