Authored by 陈峰

Merge branch 'release/6.8.5' into 'master'

Release/6.8.5



See merge request !420
... ... @@ -27,11 +27,10 @@
<strong>市场合作:</strong><br/>
北京:(+86)10-56312548<br/>
上海:(+86)21-63317121-8083<br/>
EMAIL:marketing#yoho.cn (发送邮件时请将#换成@)
</p><br/>
<p>
<strong>网站合作:</strong><br/>
EMAIL:community#yoho.cn (发送邮件时请将#换成@)
EMAIL:advertising#yoho.cn (发送邮件时请将#换成@)
</p><br/>
<p>
<strong>有货品牌合作:</strong><br/>
... ...
... ... @@ -22,10 +22,11 @@
收件人:{{name}}&nbsp;&nbsp;&nbsp;联系号码:{{phone}}&nbsp;&nbsp; &nbsp;邮编:{{postcode}}
</p>
{{/ refund}}
<p class="retund-address">请确保电话填写准确,否则会影响物流信息查询</p>
<p>我们将在收到退货之后的第一时间为您处理。</p>
{{^}}
<h1>{{type}}申请已提交!</h1>
<p>请您耐心等待审核,审核通过后我们会将{{type}}信息发送至您的手机上</p>
<p>请您耐心等待审核。</p>
{{/if}}
<p>
您可以在左侧 <span> 我的退货/换货 </span>
... ...
... ... @@ -74,8 +74,8 @@
<div class="protoctolwrapper">
<span>
绑定即表示您已阅读并同意<br>
<a target="_blank" href="{{serviceUrl}}" class="protoctol">YOHO!BUY 有货服务条款</a>
<a class="protoctol" href="{{privacyUrl}}" target="_blank">YOHO!BUY 有货隐私政策</a>
<a target="_blank" href="{{serviceUrl}}" class="protoctol">有货用户服务协议</a>
<a class="protoctol" href="{{privacyUrl}}" target="_blank">有货隐私条款</a>
</span>
</div>
<div class="btnwrapper">
... ... @@ -83,4 +83,4 @@
</div>
</div>
{{> gee-captcha}}
\ No newline at end of file
{{> gee-captcha}}
... ...
... ... @@ -72,8 +72,8 @@
<div class="protoctolwrapper">
<span>
绑定即表示您已阅读并同意<br>
<a target="_blank" href="{{serviceUrl}}" class="protoctol">YOHO!BUY 有货服务条款</a>
<a class="protoctol" href="{{privacyUrl}}" target="_blank">YOHO!BUY 有货隐私政策</a>
<a target="_blank" href="{{serviceUrl}}" class="protoctol">有货用户服务协议</a>
<a class="protoctol" href="{{privacyUrl}}" target="_blank">有货隐私条款</a>
</span>
</div>
<div class="btnwrapper clearfix">
... ... @@ -81,4 +81,4 @@
</div>
</div>
{{> gee-captcha}}
\ No newline at end of file
{{> gee-captcha}}
... ...
<div class="register-page">
<ul>
<li class="clearfix">
<select id="region" class="region" name="region">
{{#each region}}
<option {{#if selected}}selected="selected"{{/if}} value="{{areaCode}}">{{name}}</option>
{{/each}}
</select>
</li>
<li class="clearfix" data-index="0">
<span id="country-code" class="country-code">{{location}}</span>
<input value="" id="phone-num" class="input va phone-num" type="text" name="phoneNum" placeholder="请输入手机号码" autocomplete="off">
</li>
<li class="w330 clearfix" data-index="1">
<input id="captcha" class="input va captcha" type="text" name="captcha" placeholder="图形验证码" autocomplete="off" maxlength="4">
<img id="captcha-img" class="captcha-img" src="{{image2 captchaUrl}}" alt="">
<a class="link change-captcha">换一张</a>
</li>
<li class="clearfix" data-index="2">
<input id="msg-captcha" class="input va msg-captcha" type="text" name="msgCaptcha" placeholder="短信验证码" autocomplete="off" maxlength="4">
<input id="send-captcha" class="btn send-captcha disable" type="button" value="获取短信验证码">
<span id="msg-tip" class="hide msg-tip">短信验证码已发送至您的手机,请查收</span>
</li>
<li class="clearfix" data-index="3">
<input id="pwd" class="input va pwd" name="pwd" placeholder="设置密码" autocomplete="off" maxlength="20" type="password">
<div class="pwd-intensity-container">
<span class="pwd-intensity low"></span>
<span class="pwd-intensity mid"></span>
<span class="pwd-intensity high"></span>
</div>
<div id="pwd-tips" class="hide pwd-tips">
<div class="default" id="pwd-tip1"><i></i>密码只支持6-20位字符</div>
<div class="default" id="pwd-tip2"><i></i>由字母、 数字组合,不能包含特殊符号</div>
</div>
</li>
<li class="items-container clearfix">
<input id="agree-terms" class="agree-terms" type="checkbox" checked="">
<span>
我已阅读并同意遵守
<a class="link go-yoho-items" href="{{itemUrl}}" target="_blank">YOHO!BUY 有货服务条款</a>
</span>
</li>
<li class="clearfix">
<input name="refer" id="refer" type="hidden" value="{{referUrl}}">
<input id="register-btn" class="btn register-btn disable" type="submit" value="{{regBtnText}}" disabled="">
</li>
{{# loginUrl}}
<li class="quick-login-container">
我已注册YOHO!BUY 有货账号
<a class="link go-login" href="{{.}}">快速登录</a>
</li>
{{/loginUrl}}
{{# skipUrl}}
<li class="skip-user-info">
<a href="{{.}}">跳过此步</a>
</li>
{{/skipUrl}}
</ul>
<div id="err-tip" class="err-tip hide">
<span></span>
<b></b>
</div>
<input name="" type="hidden" id="open-id" value="{{openId}}"/>
<input name="" type="hidden" id="source-type" value="{{sourceType}}"/>
</div>
<div class="register-page">
<ul>
<li class="clearfix">
<select id="region" class="region" name="region">
{{#each region}}
<option {{#if selected}}selected="selected"{{/if}} value="{{areaCode}}">{{name}}</option>
{{/each}}
</select>
</li>
<li class="clearfix" data-index="0">
<span id="country-code" class="country-code">{{location}}</span>
<input value="" id="phone-num" class="input va phone-num" type="text" name="phoneNum" placeholder="请输入手机号码" autocomplete="off">
</li>
<li class="w330 clearfix" data-index="1">
<input id="captcha" class="input va captcha" type="text" name="captcha" placeholder="图形验证码" autocomplete="off" maxlength="4">
<img id="captcha-img" class="captcha-img" src="{{image2 captchaUrl}}" alt="">
<a class="link change-captcha">换一张</a>
</li>
<li class="clearfix" data-index="2">
<input id="msg-captcha" class="input va msg-captcha" type="text" name="msgCaptcha" placeholder="短信验证码" autocomplete="off" maxlength="4">
<input id="send-captcha" class="btn send-captcha disable" type="button" value="获取短信验证码">
<span id="msg-tip" class="hide msg-tip">短信验证码已发送至您的手机,请查收</span>
</li>
<li class="clearfix" data-index="3">
<input id="pwd" class="input va pwd" name="pwd" placeholder="设置密码" autocomplete="off" maxlength="20" type="password">
<div class="pwd-intensity-container">
<span class="pwd-intensity low"></span>
<span class="pwd-intensity mid"></span>
<span class="pwd-intensity high"></span>
</div>
<div id="pwd-tips" class="hide pwd-tips">
<div class="default" id="pwd-tip1"><i></i>密码只支持6-20位字符</div>
<div class="default" id="pwd-tip2"><i></i>由字母、 数字组合,不能包含特殊符号</div>
</div>
</li>
<li class="items-container clearfix">
<input id="agree-terms" class="agree-terms" type="checkbox" checked="">
<span>
我已阅读并同意遵守
<a class="link go-yoho-items" href="{{itemUrl}}" target="_blank">有货用户服务协议</a>
</span>
</li>
<li class="clearfix">
<input name="refer" id="refer" type="hidden" value="{{referUrl}}">
<input id="register-btn" class="btn register-btn disable" type="submit" value="{{regBtnText}}" disabled="">
</li>
{{# loginUrl}}
<li class="quick-login-container">
我已注册YOHO!BUY 有货账号
<a class="link go-login" href="{{.}}">快速登录</a>
</li>
{{/loginUrl}}
{{# skipUrl}}
<li class="skip-user-info">
<a href="{{.}}">跳过此步</a>
</li>
{{/skipUrl}}
</ul>
<div id="err-tip" class="err-tip hide">
<span></span>
<b></b>
</div>
<input name="" type="hidden" id="open-id" value="{{openId}}"/>
<input name="" type="hidden" id="source-type" value="{{sourceType}}"/>
</div>
... ...
... ... @@ -45,8 +45,8 @@
<li class="items-container clearfix">
<span>
注册即表示您已阅读并同意<br>
<a class="link go-yoho-items" href="{{itemUrl}}" target="_blank">YOHO!BUY 有货服务条款</a>
<a class="link go-yoho-items" href="{{privacyUrl}}" target="_blank">YOHO!BUY 有货隐私政策</a>
<a class="link go-yoho-items" href="{{itemUrl}}" target="_blank">有货用户服务协议</a>
<a class="link go-yoho-items" href="{{privacyUrl}}" target="_blank">有货隐私条款</a>
</span>
</li>
<li class="clearfix reg-btn-area">
... ...
... ... @@ -7,7 +7,7 @@
const isProduction = process.env.NODE_ENV === 'production';
const isTest = process.env.NODE_ENV === 'test';
const isTest = process.env.NODE_ENV === 'test3';
// 修改 sockets 默认设置
require('http').globalAgent.maxSockets = 10;
... ... @@ -302,12 +302,12 @@ if (isProduction) {
Object.assign(module.exports, {
appName: 'yohobuy-node',
domains: {
singleApi: process.env.TEST_API || 'http://testapi.yoho.cn:28078/',
api: process.env.TEST_API || 'http://testapi.yoho.cn:28078/',
service: process.env.TEST_API || 'http://testapi.yoho.cn:28078/',
singleApi: process.env.TEST_API || 'http://api-test3.dev.yohocorp.com/',
api: process.env.TEST_API || 'http://api-test3.dev.yohocorp.com/',
service: process.env.TEST_API || 'http://api-test3.dev.yohocorp.com/',
global: process.env.TEST_GOLBAL || 'http://global-test-soa.yohops.com:9999/',
search: process.env.TEST_SEARCH || 'http://192.168.102.216:8080/yohosearch/',
serviceNotify: process.env.TEST_API || 'http://testapi.yoho.cn:28078/',
serviceNotify: process.env.TEST_API || 'http://api-test3.dev.yohocorp.com/',
imSocket: 'ws://socket.yohobuy.com:10240',
imCs: 'http://im.yohobuy.com/api',
yohoNowApi: process.env.YOHO_NOW_API || 'http://yohonow-test.yohops.com:9999/',
... ...
... ... @@ -200,6 +200,8 @@
<a target="_blank" href="http://www.yohobuy.com/help/qualificationInfo" rel="nofollow">出版物经营许可证</a>
<span>|</span>
<a target="_blank" href="https://www.yohobuy.com/help/detail?id=238" rel="nofollow">苏B2-20120395</a>
<span>|</span>
<a target="_blank" href="https://www.yohobuy.com/help/detail?id=266" rel="nofollow">食品经营许可证</a>
</p>
</div>
<div class="copyright">
... ...
{}
\ No newline at end of file
... ...
{
"name": "yohobuy-node",
"version": "6.8.32",
"version": "6.8.5",
"private": true,
"description": "A New Yohobuy Project With Express",
"repository": {
... ... @@ -9,9 +9,10 @@
},
"scripts": {
"start": "node app.js",
"dev": "nodemon -e js,hbs -i public/ app.js",
"dev": "nodemon -e js,hbs -i public/ -i dist/ app.js",
"static": "webpack-dev-server --config ./public/build/webpack.dev.config.js",
"build": "webpack --config ./public/build/webpack.prod.config.js",
"build:node": "node ./public/build/node-build.js",
"online": "NODE_ENV=\"production\" node app.js",
"debug": "DEBUG=\"express:*\" nodemon -e js,hbs -i public/ app.js",
"lint-js": "eslint -c .eslintrc --cache --fix .",
... ...
const shelljs = require('shelljs');
const path = require('path');
const distDir = path.join(__dirname, '../../dist/node');
shelljs.rm('-rf', distDir);
shelljs.mkdir('-p', distDir);
const cpPaths = [
'favicon.ico',
'.npmrc',
'process.json',
'Dockerfile',
'yarn.lock',
'package.json',
'*.js',
'config',
'apps',
'doraemon',
'mix',
'utils',
'static',
'manifest.json'
];
new Promise(resolve => { // 加载manifest.json文件
resolve();
}).then(() => { // 拷贝node代码
cpPaths.forEach(p => {
let dist = distDir;
let file = p;
if (typeof p === 'object') {
dist = path.join(dist, p[1]);
file = p[0];
if (!shelljs.test('-e', dist)) {
shelljs.mkdir('-p', dist);
}
}
shelljs.cp('-R', path.join(__dirname, '../../', file), dist);
});
}).then(() => { // 安装依赖和清理node_modules
shelljs.cd(distDir);
if (shelljs.exec('yarn --production=true').code !== 0) {
throw 'yarn install faild';
}
}).catch(error => {
console.error(`error:${error}`);
return process.exit(1); //eslint-disable-line
});
... ...
... ... @@ -18,7 +18,7 @@ const opacity = require('postcss-opacity');
const spritescore = require('postcss-sprites/lib/core');
const config = require('../../package.json');
const devInfo = require('./dev-info.js');
const distDir = path.join(__dirname, `../dist/${config.name}/${config.version}`);
const distDir = path.join(__dirname, `../../dist/statics/${config.name}/${config.version}`);
const dist = {
img: distDir + '/img',
font: distDir + '/font'
... ...
... ... @@ -5,7 +5,7 @@ const shelljs = require('shelljs');
const _ = require('lodash');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const config = require('../../package.json');
const distDir = path.join(__dirname, `../dist/${config.name}/${config.version}`);
const distDir = path.join(__dirname, `../../dist/statics/${config.name}/${config.version}`);
let baseConfig = require('./webpack.base.config.js');
// cope img font
... ...