小程序 - 页面固定文案全部改读后台配置(购买、登录、资料、首页、分享、介绍页),代码里不再硬编码 - 已拥有课程时在当前页提示,不再跳购买页再提示 - 介绍页正文由代码常量改为读 settings.page.formula.content 服务端 - 课程相关报错文案(不存在 / 已下架 / 课时不存在 / 未购买 / 已过期 / 重复购买 / 未配置支付商品)改读配置,代码保留默认值兜底 - 新增支付总开关 pay.blocked:打开即拦截下单并下发配置里的提示;开关存在数据库里,开发库与生产库各一份(开发库已开,生产库未设) 后台 - 系统配置页按页面分组折叠,默认收起;认不出来的配置归入「其他」 配套数据(不在代码里):对应的 settings 行已写入生产库与开发库
91 lines
2.5 KiB
JavaScript
91 lines
2.5 KiB
JavaScript
// pages/wode/wode.js
|
|
const api = require('../../utils/api');
|
|
const store = require('../../utils/store');
|
|
const config = require('../../config/index');
|
|
|
|
const app = getApp();
|
|
|
|
Page({
|
|
data: {
|
|
showCode: false,
|
|
headiconUrl: '',
|
|
isLoggedIn: false,
|
|
// 文字全部来自后台配置
|
|
userNameText: '',
|
|
loginBtnText: '',
|
|
version: '',
|
|
qrcodeUrl: '',
|
|
text2: '',
|
|
text3: '',
|
|
text4: '',
|
|
text5: '',
|
|
text6: '',
|
|
},
|
|
|
|
onLoad() {
|
|
app.ready().then(() => {
|
|
this.applyConfig();
|
|
this.applyUser();
|
|
});
|
|
},
|
|
|
|
onShow() {
|
|
if (store.getSiteConfig() && Object.keys(store.getSiteConfig()).length) this.applyConfig();
|
|
this.applyUser();
|
|
},
|
|
|
|
applyConfig() {
|
|
const qrcodeName = store.cfg('profile.qrcode_image');
|
|
this.setData({
|
|
version: store.cfg('site.version'),
|
|
text2: store.cfg('profile.menu.change_info'),
|
|
text3: store.cfg('profile.menu.share'),
|
|
text4: store.cfg('profile.menu.contact'),
|
|
text5: store.cfg('profile.menu.wechat'),
|
|
text6: store.cfg('profile.qrcode_caption'),
|
|
qrcodeUrl: qrcodeName ? config.STATIC_BASE_URL + '/Images/WXCode/' + qrcodeName + '.png' : '',
|
|
});
|
|
},
|
|
|
|
applyUser() {
|
|
const user = store.getUser();
|
|
// 「已登录」看的是用户主动登录过没有(服务端记着这一位),不是有没有 token
|
|
const registered = !!(user && user.isLogin === 1);
|
|
this.setData({
|
|
isLoggedIn: registered,
|
|
userNameText: registered ? user.nickname : store.cfg('profile.user.guest'),
|
|
loginBtnText: registered ? store.cfg('login.button.logout') : store.cfg('profile.button.login'),
|
|
// 未登录一律用默认头像:静默登录仍会带回上次设置的头像,
|
|
// 不挡住的话退出登录后还会显示用户自己的头像。
|
|
headiconUrl:
|
|
registered && user.headiconUrl
|
|
? user.headiconUrl
|
|
: config.STATIC_BASE_URL + config.PLACEHOLDER.USER,
|
|
});
|
|
},
|
|
|
|
toLoginOrOut() {
|
|
wx.navigateTo({ url: '/pages/LoginOrOutDetails/LoginOrOutDetails' });
|
|
},
|
|
|
|
toChangeUserInfo() {
|
|
if (!this.data.isLoggedIn) {
|
|
wx.showToast({ mask: true, icon: 'error', title: store.cfg('profile.tip.needLogin') });
|
|
return;
|
|
}
|
|
wx.navigateTo({ url: '/pages/ChangeUserInfo/ChangeUserInfo' });
|
|
},
|
|
|
|
showQrcode() {
|
|
this.setData({ showCode: true });
|
|
},
|
|
|
|
onCodeClose() {
|
|
this.setData({ showCode: false });
|
|
},
|
|
|
|
onShareAppMessage() {
|
|
return { title: store.cfg('share.title'), path: '/pages/index/index' };
|
|
},
|
|
});
|