feat(ui): 记录页月份联动与多项 UI 美化/修复
- records: 底部列表与月份选择器联动,新增 [本月|最近] 分段控件;标题/空态随模式切换 - leaderboard: 领奖台布局(冠军居中+皇冠)、次数标注于底座且三档水平对齐;头像 cloud:// 批量预解析提速(云函数需重新部署) - index/timer: 主色底图标改白色变体修复隐形;目标数字按微信字体缩放补偿真机遮挡 - settings: 配色方案横滑渐变色卡;头像上传前压缩至 200px - theme: 新增 teal 主题;暗黑背景统一对齐 - 圆形头像双保险(image 自身 border-radius)修复月/年榜方图 注: cloudfunctions/leaderboard 改动须在开发者工具重新部署才生效。
This commit is contained in:
@@ -28,6 +28,19 @@ const PAGE_SIZE = 100
|
||||
* can't be re-run by a user. It's destructive.
|
||||
*/
|
||||
exports.main = async () => {
|
||||
// 安全闸门:仅允许白名单内的管理员调用,否则直接拒绝,防止被任意用户
|
||||
// 触发批量删除(该函数以特权身份运行且会删文档)。白名单在云函数环境变量
|
||||
// ADMIN_OPENIDS 中以逗号分隔配置;未配置时默认拒绝(失败安全),避免误部署后被滥用。
|
||||
const ctx = cloud.getWXContext()
|
||||
const caller = (ctx && ctx.OPENID) || ''
|
||||
const allowlist = (process.env.ADMIN_OPENIDS || '')
|
||||
.split(',')
|
||||
.map(s => s.trim())
|
||||
.filter(Boolean)
|
||||
if (!caller || allowlist.length === 0 || !allowlist.includes(caller)) {
|
||||
return { err: 'forbidden', msg: '无权限执行该操作' }
|
||||
}
|
||||
|
||||
// 1. Page through every doc in the collection.
|
||||
const docs = []
|
||||
let skip = 0
|
||||
|
||||
Reference in New Issue
Block a user