refactor(admin): fold code highlight and system notice into 常用功能
The 代码高亮 and 系统公告 schemas existed but appeared in no menu, so their routes were never generated (routes come from the sidebar constants). The reference keeps both inside the 常用功能 panel rather than as their own entries, so follow that structure instead of adding sidebar items. - global/common now carries three groups after the lazy-load ones: 代码高亮 (switch / line numbers / buttons / max height / light+dark theme) and 弹窗通知 (policy, content, 4 buttons, size, radius, icon, expiry) - group keys are uniquified (code-highlight, code-theme, notice-*) so they do not collide with the existing performance group - delete the orphan code-highlight.js / system-notice.js schemas and their section entries on both the Vue and PHP sides - delete post-list/pay.js and its PHP counterpart: every post_pay_* and post_download_* key there had zero runtime consumers, and the reference has no such page (paid-content config lives under 支付&付费) tools/health and tools/import-export turned out to already be reachable as custom pages, and remain untouched. Tests: admin contract audit 0 errors (warnings 56 → 51); SPA builds clean; suite 967/968 with the pre-existing frontend-lifecycle failure. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
451b04160b
commit
6c3c0f7c6d
9 files changed
+276
-438
No files matched your search
@@ -1,68 +0,0 @@
|
||||
export const codeHighlightSchema = {
|
||||
key: 'global.code-highlight',
|
||||
title: '代码高亮',
|
||||
icon: 'fa fas fa-code',
|
||||
description: '代码块语法高亮主题、行号、最大高度等配置。',
|
||||
defaults: {
|
||||
highlight_kg: true,
|
||||
highlight_hh: false,
|
||||
highlight_btn: true,
|
||||
highlight_maxheight: 400,
|
||||
highlight_zt: 'enlighter',
|
||||
highlight_dark_zt: 'monokai',
|
||||
},
|
||||
groups: [
|
||||
{
|
||||
key: 'basic',
|
||||
title: '代码高亮设置',
|
||||
icon: 'fa fas fa-pen',
|
||||
fields: [
|
||||
{ key: 'highlight_kg', label: '代码高亮开关', type: 'switch', default: true },
|
||||
{ key: 'highlight_hh', label: '显示行号', type: 'switch', default: false },
|
||||
{ key: 'highlight_btn', label: '显示扩展按钮', type: 'switch', default: true, help: '控制原始代码 / 信息 / 新窗口按钮的显示' },
|
||||
{ key: 'highlight_maxheight', label: '最大高度(px,0=不限)', type: 'number', default: 400, min: 0, max: 2000, help: '代码块最大高度,超出滚动显示。0 表示不限制' },
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 'theme',
|
||||
title: '主题设置',
|
||||
icon: 'fa fas fa-paint-brush',
|
||||
fields: [
|
||||
{
|
||||
key: 'highlight_zt',
|
||||
label: '日间默认主题',
|
||||
type: 'select',
|
||||
default: 'enlighter',
|
||||
options: [
|
||||
{ label: 'Enlighter', value: 'enlighter' },
|
||||
{ label: 'Bootstrap 4', value: 'bootstrap4' },
|
||||
{ label: 'Classic', value: 'classic' },
|
||||
{ label: 'Beyond', value: 'beyond' },
|
||||
{ label: 'Mowtwo', value: 'mowtwo' },
|
||||
{ label: 'Eclipse', value: 'eclipse' },
|
||||
{ label: 'Droide', value: 'droide' },
|
||||
{ label: 'Minimal', value: 'minimal' },
|
||||
{ label: 'Rowhammer', value: 'rowhammer' },
|
||||
{ label: 'Godzilla', value: 'godzilla' },
|
||||
{ label: 'Dracula', value: 'dracula' },
|
||||
{ label: 'Atomic', value: 'atomic' },
|
||||
{ label: 'Monokai', value: 'monokai' },
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 'highlight_dark_zt',
|
||||
label: '暗色默认主题',
|
||||
type: 'select',
|
||||
default: 'monokai',
|
||||
options: [
|
||||
{ label: 'Dracula', value: 'dracula' },
|
||||
{ label: 'Atomic', value: 'atomic' },
|
||||
{ label: 'Monokai', value: 'monokai' },
|
||||
{ label: 'Enlighter', value: 'enlighter' },
|
||||
{ label: 'Bootstrap 4', value: 'bootstrap4' },
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
}
|
||||
@@ -3,11 +3,21 @@ const themeRoot = typeof window !== 'undefined' && window.jioAdminData?.themeUri
|
||||
: ''
|
||||
const defaultThumbnail = themeRoot ? `${themeRoot}/assets/img/thumbnail.svg` : ''
|
||||
|
||||
const noticeColorOptions = [
|
||||
{ label: '主题色', value: 'primary' },
|
||||
{ label: '成功绿', value: 'success' },
|
||||
{ label: '警告橙', value: 'warning' },
|
||||
{ label: '危险红', value: 'danger' },
|
||||
{ label: '信息蓝', value: 'info' },
|
||||
{ label: '深紫', value: 'purple' },
|
||||
{ label: '深灰', value: 'dark' },
|
||||
]
|
||||
|
||||
export const commonSchema = {
|
||||
key: 'global.common',
|
||||
title: '常用功能',
|
||||
icon: 'fa fas fa-cog',
|
||||
description: '管理站点图像懒加载等常用基础配置。',
|
||||
description: '图像懒加载、代码高亮与弹窗公告等全站常用配置。',
|
||||
defaults: {
|
||||
lazy_posts_thumb: true,
|
||||
lazy_avatar: true,
|
||||
@@ -18,6 +28,35 @@ export const commonSchema = {
|
||||
lazy_other: true,
|
||||
lazy_animation: 'blur',
|
||||
thumbnail: defaultThumbnail,
|
||||
highlight_kg: true,
|
||||
highlight_hh: false,
|
||||
highlight_btn: true,
|
||||
highlight_maxheight: 400,
|
||||
highlight_zt: 'enlighter',
|
||||
highlight_dark_zt: 'monokai',
|
||||
system_notice_enabled: true,
|
||||
system_notice_policy: '',
|
||||
system_notice_title: '',
|
||||
system_notice_content: '',
|
||||
system_notice_btn1_text: '',
|
||||
system_notice_btn1_link: '',
|
||||
system_notice_btn1_color: 'primary',
|
||||
system_notice_btn2_text: '',
|
||||
system_notice_btn2_link: '',
|
||||
system_notice_btn2_color: 'primary',
|
||||
system_notice_btn3_text: '',
|
||||
system_notice_btn3_link: '',
|
||||
system_notice_btn3_color: 'primary',
|
||||
system_notice_btn4_text: '',
|
||||
system_notice_btn4_link: '',
|
||||
system_notice_btn4_color: 'primary',
|
||||
system_notice_size: '',
|
||||
system_notice_radius: false,
|
||||
system_notice_class: '',
|
||||
system_notice_title_icon: '',
|
||||
system_notice_title_class: '',
|
||||
system_notice_title_style: '',
|
||||
system_notice_expires: 24,
|
||||
},
|
||||
groups: [
|
||||
{
|
||||
@@ -53,5 +92,123 @@ export const commonSchema = {
|
||||
{ key: 'lazy_other', label: '其它图片懒加载', type: 'switch', default: true },
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 'code-highlight',
|
||||
title: '代码高亮',
|
||||
icon: 'fa fas fa-code',
|
||||
fields: [
|
||||
{ key: 'highlight_kg', label: '代码高亮开关', type: 'switch', default: true },
|
||||
{ key: 'highlight_hh', label: '显示行号', type: 'switch', default: false, dependsOn: { key: 'highlight_kg', value: true } },
|
||||
{ key: 'highlight_btn', label: '显示扩展按钮', type: 'switch', default: true, dependsOn: { key: 'highlight_kg', value: true }, help: '控制原始代码 / 信息 / 新窗口按钮的显示' },
|
||||
{ key: 'highlight_maxheight', label: '最大高度(px,0=不限)', type: 'number', default: 400, min: 0, max: 2000, dependsOn: { key: 'highlight_kg', value: true }, help: '代码块最大高度,超出滚动显示。0 表示不限制' },
|
||||
{
|
||||
key: 'highlight_zt',
|
||||
label: '日间默认主题',
|
||||
type: 'select',
|
||||
default: 'enlighter',
|
||||
dependsOn: { key: 'highlight_kg', value: true },
|
||||
options: [
|
||||
{ label: 'Enlighter', value: 'enlighter' },
|
||||
{ label: 'Bootstrap 4', value: 'bootstrap4' },
|
||||
{ label: 'Classic', value: 'classic' },
|
||||
{ label: 'Beyond', value: 'beyond' },
|
||||
{ label: 'Mowtwo', value: 'mowtwo' },
|
||||
{ label: 'Eclipse', value: 'eclipse' },
|
||||
{ label: 'Droide', value: 'droide' },
|
||||
{ label: 'Minimal', value: 'minimal' },
|
||||
{ label: 'Rowhammer', value: 'rowhammer' },
|
||||
{ label: 'Godzilla', value: 'godzilla' },
|
||||
{ label: 'Dracula', value: 'dracula' },
|
||||
{ label: 'Atomic', value: 'atomic' },
|
||||
{ label: 'Monokai', value: 'monokai' },
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 'highlight_dark_zt',
|
||||
label: '暗色默认主题',
|
||||
type: 'select',
|
||||
default: 'monokai',
|
||||
dependsOn: { key: 'highlight_kg', value: true },
|
||||
options: [
|
||||
{ label: 'Dracula', value: 'dracula' },
|
||||
{ label: 'Atomic', value: 'atomic' },
|
||||
{ label: 'Monokai', value: 'monokai' },
|
||||
{ label: 'Enlighter', value: 'enlighter' },
|
||||
{ label: 'Bootstrap 4', value: 'bootstrap4' },
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 'system-notice',
|
||||
title: '弹窗通知',
|
||||
icon: 'fa fas fa-bullhorn',
|
||||
fields: [
|
||||
{ key: 'system_notice_enabled', label: '启用系统公告', type: 'switch', default: true },
|
||||
{
|
||||
key: 'system_notice_policy',
|
||||
label: '显示对象',
|
||||
type: 'select',
|
||||
default: '',
|
||||
options: [
|
||||
{ label: '所有访客', value: '' },
|
||||
{ label: '仅登录用户', value: 'signin' },
|
||||
{ label: '仅 VIP 会员', value: 'vip' },
|
||||
{ label: '仅非 VIP', value: 'free' },
|
||||
{ label: '仅认证用户', value: 'auth' },
|
||||
],
|
||||
dependsOn: { key: 'system_notice_enabled', value: true },
|
||||
},
|
||||
{ key: 'system_notice_title', label: '公告标题', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_content', label: '公告内容', type: 'textarea', default: '', rows: 5, dependsOn: { key: 'system_notice_enabled', value: true }, help: '支持 HTML 标签' },
|
||||
{ key: 'system_notice_btn1_text', label: '按钮 1 文案', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn1_link', label: '按钮 1 链接', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true }, help: '可选,填写后按钮变为链接' },
|
||||
{ key: 'system_notice_btn1_color', label: '按钮 1 颜色', type: 'select', default: 'primary', options: noticeColorOptions, dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn2_text', label: '按钮 2 文案', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn2_link', label: '按钮 2 链接', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn2_color', label: '按钮 2 颜色', type: 'select', default: 'primary', options: noticeColorOptions, dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn3_text', label: '按钮 3 文案', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn3_link', label: '按钮 3 链接', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn3_color', label: '按钮 3 颜色', type: 'select', default: 'primary', options: noticeColorOptions, dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn4_text', label: '按钮 4 文案', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn4_link', label: '按钮 4 链接', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn4_color', label: '按钮 4 颜色', type: 'select', default: 'primary', options: noticeColorOptions, dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{
|
||||
key: 'system_notice_size',
|
||||
label: '弹窗尺寸',
|
||||
type: 'select',
|
||||
default: '',
|
||||
options: [
|
||||
{ label: '默认', value: '' },
|
||||
{ label: '迷你', value: 'modal-mini' },
|
||||
{ label: '小号', value: 'modal-sm' },
|
||||
{ label: '大号', value: 'modal-lg' },
|
||||
],
|
||||
dependsOn: { key: 'system_notice_enabled', value: true },
|
||||
},
|
||||
{ key: 'system_notice_radius', label: '按钮圆角', type: 'switch', default: false, dependsOn: { key: 'system_notice_enabled', value: true }, help: '开启后弹窗按钮使用圆角样式' },
|
||||
{ key: 'system_notice_class', label: '公告样式类', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_title_icon', label: '标题图标', type: 'icon', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{
|
||||
key: 'system_notice_title_class',
|
||||
label: '标题背景配色',
|
||||
type: 'select',
|
||||
default: '',
|
||||
dependsOn: { key: 'system_notice_enabled', value: true },
|
||||
options: [
|
||||
{ label: '无', value: '' },
|
||||
{ label: '炫彩黄', value: 'jb-yellow' },
|
||||
{ label: '炫彩蓝', value: 'jb-blue' },
|
||||
{ label: '炫彩绿', value: 'jb-green' },
|
||||
{ label: '炫彩紫', value: 'jb-purple' },
|
||||
{ label: '炫彩红', value: 'jb-red' },
|
||||
{ label: '炫彩橙', value: 'jb-orange' },
|
||||
],
|
||||
help: '弹窗标题区域的背景配色方案',
|
||||
},
|
||||
{ key: 'system_notice_title_style', label: '标题样式', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_expires', label: '弹窗周期(小时)', type: 'number', default: 24, min: 0, max: 720, dependsOn: { key: 'system_notice_enabled', value: true }, help: '0 表示永不过期' },
|
||||
],
|
||||
},
|
||||
],
|
||||
}
|
||||
@@ -12,8 +12,6 @@ import { tabbarSchema } from './tabbar.js'
|
||||
import { i18nSchema } from './i18n.js'
|
||||
import { customCodeSchema } from './custom-code.js'
|
||||
import { seoSchema } from './seo.js'
|
||||
import { codeHighlightSchema } from './code-highlight.js'
|
||||
import { systemNoticeSchema } from './system-notice.js'
|
||||
import { shareSchema } from './share.js'
|
||||
|
||||
export const globalSchemas = {
|
||||
@@ -26,7 +24,5 @@ export const globalSchemas = {
|
||||
i18n: i18nSchema,
|
||||
'custom-code': customCodeSchema,
|
||||
seo: seoSchema,
|
||||
'code-highlight': codeHighlightSchema,
|
||||
'system-notice': systemNoticeSchema,
|
||||
share: shareSchema,
|
||||
}
|
||||
@@ -1,149 +0,0 @@
|
||||
export const systemNoticeSchema = {
|
||||
key: 'global.system-notice',
|
||||
title: '弹窗通知',
|
||||
icon: 'fa fas fa-bullhorn',
|
||||
description: '全站弹窗公告配置,支持按用户身份定向、多按钮组、弹窗尺寸与过期周期。',
|
||||
defaults: {
|
||||
system_notice_enabled: true,
|
||||
system_notice_policy: '',
|
||||
system_notice_title: '',
|
||||
system_notice_content: '',
|
||||
system_notice_btn1_text: '',
|
||||
system_notice_btn1_link: '',
|
||||
system_notice_btn1_color: 'primary',
|
||||
system_notice_btn2_text: '',
|
||||
system_notice_btn2_link: '',
|
||||
system_notice_btn2_color: 'primary',
|
||||
system_notice_btn3_text: '',
|
||||
system_notice_btn3_link: '',
|
||||
system_notice_btn3_color: 'primary',
|
||||
system_notice_btn4_text: '',
|
||||
system_notice_btn4_link: '',
|
||||
system_notice_btn4_color: 'primary',
|
||||
system_notice_size: '',
|
||||
system_notice_radius: false,
|
||||
system_notice_class: '',
|
||||
system_notice_title_icon: '',
|
||||
system_notice_title_class: '',
|
||||
system_notice_title_style: '',
|
||||
system_notice_expires: 24,
|
||||
},
|
||||
groups: [
|
||||
{
|
||||
key: 'basic',
|
||||
title: '公告设置',
|
||||
icon: 'fa fas fa-bullhorn',
|
||||
fields: [
|
||||
{ key: 'system_notice_enabled', label: '启用系统公告', type: 'switch', default: true },
|
||||
{
|
||||
key: 'system_notice_policy',
|
||||
label: '显示对象',
|
||||
type: 'select',
|
||||
default: '',
|
||||
options: [
|
||||
{ label: '所有访客', value: '' },
|
||||
{ label: '仅登录用户', value: 'signin' },
|
||||
{ label: '仅 VIP 会员', value: 'vip' },
|
||||
{ label: '仅非 VIP', value: 'free' },
|
||||
{ label: '仅认证用户', value: 'auth' },
|
||||
],
|
||||
dependsOn: { key: 'system_notice_enabled', value: true },
|
||||
},
|
||||
{ key: 'system_notice_title', label: '公告标题', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_content', label: '公告内容', type: 'textarea', default: '', rows: 5, dependsOn: { key: 'system_notice_enabled', value: true }, help: '支持 HTML 标签' },
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 'buttons',
|
||||
title: '按钮组(留空则不显示)',
|
||||
icon: 'fa fas fa-th-large',
|
||||
fields: [
|
||||
{ key: 'system_notice_btn1_text', label: '按钮 1 文案', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn1_link', label: '按钮 1 链接', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true }, help: '可选,填写后按钮变为链接' },
|
||||
{ key: 'system_notice_btn1_color', label: '按钮 1 颜色', type: 'select', default: 'primary', options: [
|
||||
{ label: '主题色', value: 'primary' },
|
||||
{ label: '成功绿', value: 'success' },
|
||||
{ label: '警告橙', value: 'warning' },
|
||||
{ label: '危险红', value: 'danger' },
|
||||
{ label: '信息蓝', value: 'info' },
|
||||
{ label: '深紫', value: 'purple' },
|
||||
{ label: '深灰', value: 'dark' },
|
||||
], dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn2_text', label: '按钮 2 文案', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn2_link', label: '按钮 2 链接', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn2_color', label: '按钮 2 颜色', type: 'select', default: 'primary', options: [
|
||||
{ label: '主题色', value: 'primary' },
|
||||
{ label: '成功绿', value: 'success' },
|
||||
{ label: '警告橙', value: 'warning' },
|
||||
{ label: '危险红', value: 'danger' },
|
||||
{ label: '信息蓝', value: 'info' },
|
||||
{ label: '深紫', value: 'purple' },
|
||||
{ label: '深灰', value: 'dark' },
|
||||
], dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn3_text', label: '按钮 3 文案', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn3_link', label: '按钮 3 链接', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn3_color', label: '按钮 3 颜色', type: 'select', default: 'primary', options: [
|
||||
{ label: '主题色', value: 'primary' },
|
||||
{ label: '成功绿', value: 'success' },
|
||||
{ label: '警告橙', value: 'warning' },
|
||||
{ label: '危险红', value: 'danger' },
|
||||
{ label: '信息蓝', value: 'info' },
|
||||
{ label: '深紫', value: 'purple' },
|
||||
{ label: '深灰', value: 'dark' },
|
||||
], dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn4_text', label: '按钮 4 文案', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn4_link', label: '按钮 4 链接', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_btn4_color', label: '按钮 4 颜色', type: 'select', default: 'primary', options: [
|
||||
{ label: '主题色', value: 'primary' },
|
||||
{ label: '成功绿', value: 'success' },
|
||||
{ label: '警告橙', value: 'warning' },
|
||||
{ label: '危险红', value: 'danger' },
|
||||
{ label: '信息蓝', value: 'info' },
|
||||
{ label: '深紫', value: 'purple' },
|
||||
{ label: '深灰', value: 'dark' },
|
||||
], dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 'style',
|
||||
title: '样式设置',
|
||||
icon: 'fa fas fa-paint-brush',
|
||||
fields: [
|
||||
{
|
||||
key: 'system_notice_size',
|
||||
label: '弹窗尺寸',
|
||||
type: 'select',
|
||||
default: '',
|
||||
options: [
|
||||
{ label: '默认', value: '' },
|
||||
{ label: '迷你', value: 'modal-mini' },
|
||||
{ label: '小号', value: 'modal-sm' },
|
||||
{ label: '大号', value: 'modal-lg' },
|
||||
],
|
||||
dependsOn: { key: 'system_notice_enabled', value: true },
|
||||
},
|
||||
{ key: 'system_notice_radius', label: '按钮圆角', type: 'switch', default: false, dependsOn: { key: 'system_notice_enabled', value: true }, help: '开启后弹窗按钮使用圆角样式' },
|
||||
{ key: 'system_notice_class', label: '公告样式类', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_title_icon', label: '标题图标', type: 'icon', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
{ key: 'system_notice_title_class', label: '标题背景配色', type: 'select', default: '', dependsOn: { key: 'system_notice_enabled', value: true }, options: [
|
||||
{ label: '无', value: '' },
|
||||
{ label: '炫彩黄', value: 'jb-yellow' },
|
||||
{ label: '炫彩蓝', value: 'jb-blue' },
|
||||
{ label: '炫彩绿', value: 'jb-green' },
|
||||
{ label: '炫彩紫', value: 'jb-purple' },
|
||||
{ label: '炫彩红', value: 'jb-red' },
|
||||
{ label: '炫彩橙', value: 'jb-orange' },
|
||||
], help: '弹窗标题区域的背景配色方案' },
|
||||
{ key: 'system_notice_title_style', label: '标题样式', type: 'input', default: '', dependsOn: { key: 'system_notice_enabled', value: true } },
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 'expire',
|
||||
title: '过期设置',
|
||||
icon: 'fa fas fa-clock',
|
||||
fields: [
|
||||
{ key: 'system_notice_expires', label: '弹窗周期(小时)', type: 'number', default: 24, min: 0, max: 720, dependsOn: { key: 'system_notice_enabled', value: true }, help: '0 表示永不过期' },
|
||||
],
|
||||
},
|
||||
],
|
||||
}
|
||||
@@ -7,7 +7,6 @@ import { thumbSchema } from './thumb.js'
|
||||
import { pageSchema } from './page.js'
|
||||
import { filterSchema } from './filter.js'
|
||||
import { featureSchema } from './feature.js'
|
||||
import { paySchema } from './pay.js'
|
||||
import { commentSchema } from './comment.js'
|
||||
import { submitSchema } from './submit.js'
|
||||
|
||||
@@ -17,7 +16,6 @@ export const postListSchemas = {
|
||||
page: pageSchema,
|
||||
filter: filterSchema,
|
||||
feature: featureSchema,
|
||||
pay: paySchema,
|
||||
comment: commentSchema,
|
||||
submit: submitSchema,
|
||||
}
|
||||
@@ -1,46 +0,0 @@
|
||||
export const paySchema = {
|
||||
key: 'post_list.pay',
|
||||
title: '付费内容',
|
||||
icon: 'fa fas fa-yen-sign',
|
||||
description: '配置文章付费阅读、下载功能和购买用户显示。',
|
||||
defaults: {
|
||||
post_pay_enable: false,
|
||||
post_pay_price_default: 0,
|
||||
post_pay_free_logged_show: false,
|
||||
post_pay_box_position: 'content',
|
||||
post_pay_mark: '付费',
|
||||
post_pay_show_user: false,
|
||||
post_download_enable: false,
|
||||
post_download_remote_s: false,
|
||||
post_download_verify_nonce: true,
|
||||
post_download_user_log: true,
|
||||
post_download_post_log: true,
|
||||
},
|
||||
groups: [
|
||||
{
|
||||
key: 'basic',
|
||||
title: '付费设置',
|
||||
icon: 'fa fas fa-database',
|
||||
fields: [
|
||||
{ key: 'post_pay_enable', label: '启用付费内容', type: 'switch', default: false },
|
||||
{ key: 'post_pay_price_default', label: '默认价格', type: 'number', default: 0, min: 0, max: 9999, dependsOn: { key: 'post_pay_enable', value: true } },
|
||||
{ key: 'post_pay_free_logged_show', label: '登录用户显示免费', type: 'switch', default: false, dependsOn: { key: 'post_pay_enable', value: true } },
|
||||
{ key: 'post_pay_box_position', label: '付费框位置', type: 'radio', default: 'content', options: [{ label: '内容前', value: 'content' }, { label: '全文遮罩', value: 'mask' }], dependsOn: { key: 'post_pay_enable', value: true } },
|
||||
{ key: 'post_pay_mark', label: '付费标记', type: 'input', default: '付费', dependsOn: { key: 'post_pay_enable', value: true } },
|
||||
{ key: 'post_pay_show_user', label: '显示购买用户', type: 'switch', default: false, dependsOn: { key: 'post_pay_enable', value: true } },
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 'download',
|
||||
title: '下载设置',
|
||||
icon: 'fa fas fa-download',
|
||||
fields: [
|
||||
{ key: 'post_download_enable', label: '启用下载功能', type: 'switch', default: false },
|
||||
{ key: 'post_download_remote_s', label: '远程文件下载', type: 'switch', default: false, dependsOn: { key: 'post_download_enable', value: true } },
|
||||
{ key: 'post_download_verify_nonce', label: '下载鉴权', type: 'switch', default: true, dependsOn: { key: 'post_download_enable', value: true } },
|
||||
{ key: 'post_download_user_log', label: '用户下载日志', type: 'switch', default: true, dependsOn: { key: 'post_download_enable', value: true } },
|
||||
{ key: 'post_download_post_log', label: '文章下载日志', type: 'switch', default: true, dependsOn: { key: 'post_download_enable', value: true } },
|
||||
],
|
||||
},
|
||||
],
|
||||
}
|
||||
+112
-128
@@ -35,6 +35,118 @@ class GlobalSchema {
|
||||
]],
|
||||
['key' => 'thumbnail', 'label' => '懒加载预载图', 'type' => 'media', 'default' => get_template_directory_uri() . '/assets/img/thumbnail.svg'],
|
||||
]],
|
||||
['key' => 'code-highlight', 'title' => '代码高亮设置', 'fields' => [
|
||||
['key' => 'highlight_kg', 'label' => '代码高亮开关', 'type' => 'switch', 'default' => true],
|
||||
['key' => 'highlight_hh', 'label' => '显示行号', 'type' => 'switch', 'default' => false, 'dependsOn' => ['key' => 'highlight_kg', 'value' => true]],
|
||||
['key' => 'highlight_btn', 'label' => '显示扩展按钮', 'type' => 'switch', 'default' => true, 'dependsOn' => ['key' => 'highlight_kg', 'value' => true]],
|
||||
['key' => 'highlight_maxheight', 'label' => '最大高度(px,0=不限)', 'type' => 'number', 'default' => 400, 'min' => 0, 'max' => 2000, 'dependsOn' => ['key' => 'highlight_kg', 'value' => true]],
|
||||
]],
|
||||
['key' => 'code-theme', 'title' => '主题设置', 'fields' => [
|
||||
['key' => 'highlight_zt', 'label' => '日间默认主题', 'type' => 'select', 'default' => 'enlighter', 'dependsOn' => ['key' => 'highlight_kg', 'value' => true], 'options' => [
|
||||
['label' => '浅色: Enlighter', 'value' => 'enlighter'],
|
||||
['label' => '浅色: Bootstrap', 'value' => 'bootstrap4'],
|
||||
['label' => '浅色: Classic', 'value' => 'classic'],
|
||||
['label' => '浅色: Beyond', 'value' => 'beyond'],
|
||||
['label' => '浅色: Mowtwo', 'value' => 'mowtwo'],
|
||||
['label' => '浅色: Eclipse', 'value' => 'eclipse'],
|
||||
['label' => '浅色: Droide', 'value' => 'droide'],
|
||||
['label' => '浅色: Minimal', 'value' => 'minimal'],
|
||||
['label' => '浅色: Rowhammer', 'value' => 'rowhammer'],
|
||||
['label' => '浅色: Godzilla', 'value' => 'godzilla'],
|
||||
['label' => '深色: Dracula', 'value' => 'dracula'],
|
||||
['label' => '深色: Atomic', 'value' => 'atomic'],
|
||||
['label' => '深色: Monokai', 'value' => 'monokai'],
|
||||
]],
|
||||
['key' => 'highlight_dark_zt', 'label' => '暗色默认主题', 'type' => 'select', 'default' => 'monokai', 'dependsOn' => ['key' => 'highlight_kg', 'value' => true], 'options' => [
|
||||
['label' => '深色: Dracula', 'value' => 'dracula'],
|
||||
['label' => '深色: Atomic', 'value' => 'atomic'],
|
||||
['label' => '深色: Monokai', 'value' => 'monokai'],
|
||||
['label' => '浅色: Enlighter', 'value' => 'enlighter'],
|
||||
['label' => '浅色: Bootstrap', 'value' => 'bootstrap4'],
|
||||
]],
|
||||
]],
|
||||
['key' => 'notice-basic', 'title' => '公告设置', 'fields' => [
|
||||
['key' => 'system_notice_enabled', 'label' => '启用系统公告', 'type' => 'switch', 'default' => true],
|
||||
['key' => 'system_notice_policy', 'label' => '显示对象', 'type' => 'select', 'default' => '', 'options' => [
|
||||
['label' => '所有访客', 'value' => ''],
|
||||
['label' => '仅登录用户', 'value' => 'signin'],
|
||||
['label' => '仅 VIP 会员', 'value' => 'vip'],
|
||||
['label' => '仅非 VIP', 'value' => 'free'],
|
||||
['label' => '仅认证用户', 'value' => 'auth'],
|
||||
]],
|
||||
['key' => 'system_notice_title', 'label' => '公告标题', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_content', 'label' => '公告内容', 'type' => 'textarea', 'default' => ''],
|
||||
]],
|
||||
['key' => 'notice-buttons', 'title' => '按钮组(留空则不显示)', 'fields' => [
|
||||
['key' => 'system_notice_btn1_text', 'label' => '按钮 1 文案', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn1_link', 'label' => '按钮 1 链接', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn1_color', 'label' => '按钮 1 颜色', 'type' => 'select', 'default' => 'primary', 'options' => [
|
||||
['label' => '主题色', 'value' => 'primary'],
|
||||
['label' => '成功绿', 'value' => 'success'],
|
||||
['label' => '警告橙', 'value' => 'warning'],
|
||||
['label' => '危险红', 'value' => 'danger'],
|
||||
['label' => '信息蓝', 'value' => 'info'],
|
||||
['label' => '深紫', 'value' => 'purple'],
|
||||
['label' => '深灰', 'value' => 'dark'],
|
||||
]],
|
||||
['key' => 'system_notice_btn2_text', 'label' => '按钮 2 文案', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn2_link', 'label' => '按钮 2 链接', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn2_color', 'label' => '按钮 2 颜色', 'type' => 'select', 'default' => 'primary', 'options' => [
|
||||
['label' => '主题色', 'value' => 'primary'],
|
||||
['label' => '成功绿', 'value' => 'success'],
|
||||
['label' => '警告橙', 'value' => 'warning'],
|
||||
['label' => '危险红', 'value' => 'danger'],
|
||||
['label' => '信息蓝', 'value' => 'info'],
|
||||
['label' => '深紫', 'value' => 'purple'],
|
||||
['label' => '深灰', 'value' => 'dark'],
|
||||
]],
|
||||
['key' => 'system_notice_btn3_text', 'label' => '按钮 3 文案', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn3_link', 'label' => '按钮 3 链接', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn3_color', 'label' => '按钮 3 颜色', 'type' => 'select', 'default' => 'primary', 'options' => [
|
||||
['label' => '主题色', 'value' => 'primary'],
|
||||
['label' => '成功绿', 'value' => 'success'],
|
||||
['label' => '警告橙', 'value' => 'warning'],
|
||||
['label' => '危险红', 'value' => 'danger'],
|
||||
['label' => '信息蓝', 'value' => 'info'],
|
||||
['label' => '深紫', 'value' => 'purple'],
|
||||
['label' => '深灰', 'value' => 'dark'],
|
||||
]],
|
||||
['key' => 'system_notice_btn4_text', 'label' => '按钮 4 文案', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn4_link', 'label' => '按钮 4 链接', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn4_color', 'label' => '按钮 4 颜色', 'type' => 'select', 'default' => 'primary', 'options' => [
|
||||
['label' => '主题色', 'value' => 'primary'],
|
||||
['label' => '成功绿', 'value' => 'success'],
|
||||
['label' => '警告橙', 'value' => 'warning'],
|
||||
['label' => '危险红', 'value' => 'danger'],
|
||||
['label' => '信息蓝', 'value' => 'info'],
|
||||
['label' => '深紫', 'value' => 'purple'],
|
||||
['label' => '深灰', 'value' => 'dark'],
|
||||
]],
|
||||
]],
|
||||
['key' => 'notice-style', 'title' => '样式设置', 'fields' => [
|
||||
['key' => 'system_notice_size', 'label' => '弹窗尺寸', 'type' => 'select', 'default' => '', 'options' => [
|
||||
['label' => '默认', 'value' => ''],
|
||||
['label' => '迷你', 'value' => 'modal-mini'],
|
||||
['label' => '小号', 'value' => 'modal-sm'],
|
||||
['label' => '大号', 'value' => 'modal-lg'],
|
||||
]],
|
||||
['key' => 'system_notice_radius', 'label' => '按钮圆角', 'type' => 'switch', 'default' => false, 'help' => '开启后弹窗按钮使用圆角样式'],
|
||||
['key' => 'system_notice_class', 'label' => '公告样式类', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_title_icon', 'label' => '标题图标', 'type' => 'icon', 'default' => ''],
|
||||
['key' => 'system_notice_title_class', 'label' => '标题背景配色', 'type' => 'select', 'default' => '', 'options' => [
|
||||
['label' => '无', 'value' => ''],
|
||||
['label' => '炫彩黄', 'value' => 'jb-yellow'],
|
||||
['label' => '炫彩蓝', 'value' => 'jb-blue'],
|
||||
['label' => '炫彩绿', 'value' => 'jb-green'],
|
||||
['label' => '炫彩紫', 'value' => 'jb-purple'],
|
||||
['label' => '炫彩红', 'value' => 'jb-red'],
|
||||
['label' => '炫彩橙', 'value' => 'jb-orange'],
|
||||
], 'help' => '弹窗标题区域的背景配色方案'],
|
||||
['key' => 'system_notice_title_style', 'label' => '标题样式', 'type' => 'input', 'default' => ''],
|
||||
]],
|
||||
['key' => 'notice-expire', 'title' => '过期设置', 'fields' => [
|
||||
['key' => 'system_notice_expires', 'label' => '弹窗周期(小时)', 'type' => 'number', 'default' => 24, 'min' => 0, 'max' => 720, 'help' => '0 表示永不过期'],
|
||||
]],
|
||||
],
|
||||
],
|
||||
'logo' => [
|
||||
@@ -160,134 +272,6 @@ class GlobalSchema {
|
||||
]],
|
||||
],
|
||||
],
|
||||
'code-highlight' => [
|
||||
'key' => 'code-highlight',
|
||||
'title' => '代码高亮',
|
||||
'version' => '1.0.0',
|
||||
'option_key' => 'jio_settings',
|
||||
'groups' => [
|
||||
['key' => 'basic', 'title' => '代码高亮设置', 'fields' => [
|
||||
['key' => 'highlight_kg', 'label' => '代码高亮开关', 'type' => 'switch', 'default' => true],
|
||||
['key' => 'highlight_hh', 'label' => '显示行号', 'type' => 'switch', 'default' => false, 'dependsOn' => ['key' => 'highlight_kg', 'value' => true]],
|
||||
['key' => 'highlight_btn', 'label' => '显示扩展按钮', 'type' => 'switch', 'default' => true, 'dependsOn' => ['key' => 'highlight_kg', 'value' => true]],
|
||||
['key' => 'highlight_maxheight', 'label' => '最大高度(px,0=不限)', 'type' => 'number', 'default' => 400, 'min' => 0, 'max' => 2000, 'dependsOn' => ['key' => 'highlight_kg', 'value' => true]],
|
||||
]],
|
||||
['key' => 'theme', 'title' => '主题设置', 'fields' => [
|
||||
['key' => 'highlight_zt', 'label' => '日间默认主题', 'type' => 'select', 'default' => 'enlighter', 'dependsOn' => ['key' => 'highlight_kg', 'value' => true], 'options' => [
|
||||
['label' => '浅色: Enlighter', 'value' => 'enlighter'],
|
||||
['label' => '浅色: Bootstrap', 'value' => 'bootstrap4'],
|
||||
['label' => '浅色: Classic', 'value' => 'classic'],
|
||||
['label' => '浅色: Beyond', 'value' => 'beyond'],
|
||||
['label' => '浅色: Mowtwo', 'value' => 'mowtwo'],
|
||||
['label' => '浅色: Eclipse', 'value' => 'eclipse'],
|
||||
['label' => '浅色: Droide', 'value' => 'droide'],
|
||||
['label' => '浅色: Minimal', 'value' => 'minimal'],
|
||||
['label' => '浅色: Rowhammer', 'value' => 'rowhammer'],
|
||||
['label' => '浅色: Godzilla', 'value' => 'godzilla'],
|
||||
['label' => '深色: Dracula', 'value' => 'dracula'],
|
||||
['label' => '深色: Atomic', 'value' => 'atomic'],
|
||||
['label' => '深色: Monokai', 'value' => 'monokai'],
|
||||
]],
|
||||
['key' => 'highlight_dark_zt', 'label' => '暗色默认主题', 'type' => 'select', 'default' => 'monokai', 'dependsOn' => ['key' => 'highlight_kg', 'value' => true], 'options' => [
|
||||
['label' => '深色: Dracula', 'value' => 'dracula'],
|
||||
['label' => '深色: Atomic', 'value' => 'atomic'],
|
||||
['label' => '深色: Monokai', 'value' => 'monokai'],
|
||||
['label' => '浅色: Enlighter', 'value' => 'enlighter'],
|
||||
['label' => '浅色: Bootstrap', 'value' => 'bootstrap4'],
|
||||
]],
|
||||
]],
|
||||
],
|
||||
],
|
||||
'system-notice' => [
|
||||
'key' => 'system-notice',
|
||||
'title' => '系统公告',
|
||||
'version' => '2.0.0',
|
||||
'option_key' => 'jio_settings',
|
||||
'groups' => [
|
||||
['key' => 'basic', 'title' => '公告设置', 'fields' => [
|
||||
['key' => 'system_notice_enabled', 'label' => '启用系统公告', 'type' => 'switch', 'default' => true],
|
||||
['key' => 'system_notice_policy', 'label' => '显示对象', 'type' => 'select', 'default' => '', 'options' => [
|
||||
['label' => '所有访客', 'value' => ''],
|
||||
['label' => '仅登录用户', 'value' => 'signin'],
|
||||
['label' => '仅 VIP 会员', 'value' => 'vip'],
|
||||
['label' => '仅非 VIP', 'value' => 'free'],
|
||||
['label' => '仅认证用户', 'value' => 'auth'],
|
||||
]],
|
||||
['key' => 'system_notice_title', 'label' => '公告标题', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_content', 'label' => '公告内容', 'type' => 'textarea', 'default' => ''],
|
||||
]],
|
||||
['key' => 'buttons', 'title' => '按钮组(留空则不显示)', 'fields' => [
|
||||
['key' => 'system_notice_btn1_text', 'label' => '按钮 1 文案', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn1_link', 'label' => '按钮 1 链接', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn1_color', 'label' => '按钮 1 颜色', 'type' => 'select', 'default' => 'primary', 'options' => [
|
||||
['label' => '主题色', 'value' => 'primary'],
|
||||
['label' => '成功绿', 'value' => 'success'],
|
||||
['label' => '警告橙', 'value' => 'warning'],
|
||||
['label' => '危险红', 'value' => 'danger'],
|
||||
['label' => '信息蓝', 'value' => 'info'],
|
||||
['label' => '深紫', 'value' => 'purple'],
|
||||
['label' => '深灰', 'value' => 'dark'],
|
||||
]],
|
||||
['key' => 'system_notice_btn2_text', 'label' => '按钮 2 文案', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn2_link', 'label' => '按钮 2 链接', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn2_color', 'label' => '按钮 2 颜色', 'type' => 'select', 'default' => 'primary', 'options' => [
|
||||
['label' => '主题色', 'value' => 'primary'],
|
||||
['label' => '成功绿', 'value' => 'success'],
|
||||
['label' => '警告橙', 'value' => 'warning'],
|
||||
['label' => '危险红', 'value' => 'danger'],
|
||||
['label' => '信息蓝', 'value' => 'info'],
|
||||
['label' => '深紫', 'value' => 'purple'],
|
||||
['label' => '深灰', 'value' => 'dark'],
|
||||
]],
|
||||
['key' => 'system_notice_btn3_text', 'label' => '按钮 3 文案', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn3_link', 'label' => '按钮 3 链接', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn3_color', 'label' => '按钮 3 颜色', 'type' => 'select', 'default' => 'primary', 'options' => [
|
||||
['label' => '主题色', 'value' => 'primary'],
|
||||
['label' => '成功绿', 'value' => 'success'],
|
||||
['label' => '警告橙', 'value' => 'warning'],
|
||||
['label' => '危险红', 'value' => 'danger'],
|
||||
['label' => '信息蓝', 'value' => 'info'],
|
||||
['label' => '深紫', 'value' => 'purple'],
|
||||
['label' => '深灰', 'value' => 'dark'],
|
||||
]],
|
||||
['key' => 'system_notice_btn4_text', 'label' => '按钮 4 文案', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn4_link', 'label' => '按钮 4 链接', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_btn4_color', 'label' => '按钮 4 颜色', 'type' => 'select', 'default' => 'primary', 'options' => [
|
||||
['label' => '主题色', 'value' => 'primary'],
|
||||
['label' => '成功绿', 'value' => 'success'],
|
||||
['label' => '警告橙', 'value' => 'warning'],
|
||||
['label' => '危险红', 'value' => 'danger'],
|
||||
['label' => '信息蓝', 'value' => 'info'],
|
||||
['label' => '深紫', 'value' => 'purple'],
|
||||
['label' => '深灰', 'value' => 'dark'],
|
||||
]],
|
||||
]],
|
||||
['key' => 'style', 'title' => '样式设置', 'fields' => [
|
||||
['key' => 'system_notice_size', 'label' => '弹窗尺寸', 'type' => 'select', 'default' => '', 'options' => [
|
||||
['label' => '默认', 'value' => ''],
|
||||
['label' => '迷你', 'value' => 'modal-mini'],
|
||||
['label' => '小号', 'value' => 'modal-sm'],
|
||||
['label' => '大号', 'value' => 'modal-lg'],
|
||||
]],
|
||||
['key' => 'system_notice_radius', 'label' => '按钮圆角', 'type' => 'switch', 'default' => false, 'help' => '开启后弹窗按钮使用圆角样式'],
|
||||
['key' => 'system_notice_class', 'label' => '公告样式类', 'type' => 'input', 'default' => ''],
|
||||
['key' => 'system_notice_title_icon', 'label' => '标题图标', 'type' => 'icon', 'default' => ''],
|
||||
['key' => 'system_notice_title_class', 'label' => '标题背景配色', 'type' => 'select', 'default' => '', 'options' => [
|
||||
['label' => '无', 'value' => ''],
|
||||
['label' => '炫彩黄', 'value' => 'jb-yellow'],
|
||||
['label' => '炫彩蓝', 'value' => 'jb-blue'],
|
||||
['label' => '炫彩绿', 'value' => 'jb-green'],
|
||||
['label' => '炫彩紫', 'value' => 'jb-purple'],
|
||||
['label' => '炫彩红', 'value' => 'jb-red'],
|
||||
['label' => '炫彩橙', 'value' => 'jb-orange'],
|
||||
], 'help' => '弹窗标题区域的背景配色方案'],
|
||||
['key' => 'system_notice_title_style', 'label' => '标题样式', 'type' => 'input', 'default' => ''],
|
||||
]],
|
||||
['key' => 'expire', 'title' => '过期设置', 'fields' => [
|
||||
['key' => 'system_notice_expires', 'label' => '弹窗周期(小时)', 'type' => 'number', 'default' => 24, 'min' => 0, 'max' => 720, 'help' => '0 表示永不过期'],
|
||||
]],
|
||||
],
|
||||
],
|
||||
'search' => [
|
||||
'key' => 'search',
|
||||
'title' => '搜索功能',
|
||||
|
||||
@@ -254,32 +254,6 @@ class SchemaPostList {
|
||||
]],
|
||||
],
|
||||
],
|
||||
'pay' => [
|
||||
'key' => 'pay',
|
||||
'title' => '付费内容',
|
||||
'version' => '1.0.0',
|
||||
'option_key' => 'jio_settings',
|
||||
'groups' => [
|
||||
['key' => 'basic', 'title' => '付费设置', 'fields' => [
|
||||
['key' => 'post_pay_enable', 'label' => '启用付费内容', 'type' => 'switch', 'default' => false],
|
||||
['key' => 'post_pay_price_default', 'label' => '默认价格', 'type' => 'number', 'default' => 0, 'min' => 0, 'max' => 9999],
|
||||
['key' => 'post_pay_free_logged_show', 'label' => '登录用户显示免费', 'type' => 'switch', 'default' => false],
|
||||
['key' => 'post_pay_box_position', 'label' => '付费框位置', 'type' => 'radio', 'default' => 'content', 'options' => [
|
||||
['label' => '内容前', 'value' => 'content'],
|
||||
['label' => '全文遮罩', 'value' => 'mask'],
|
||||
]],
|
||||
['key' => 'post_pay_mark', 'label' => '付费标记', 'type' => 'input', 'default' => '付费'],
|
||||
['key' => 'post_pay_show_user', 'label' => '显示购买用户', 'type' => 'switch', 'default' => false],
|
||||
]],
|
||||
['key' => 'download', 'title' => '下载设置', 'fields' => [
|
||||
['key' => 'post_download_enable', 'label' => '启用下载功能', 'type' => 'switch', 'default' => false],
|
||||
['key' => 'post_download_remote_s', 'label' => '远程文件下载', 'type' => 'switch', 'default' => false],
|
||||
['key' => 'post_download_verify_nonce', 'label' => '下载鉴权', 'type' => 'switch', 'default' => true],
|
||||
['key' => 'post_download_user_log', 'label' => '用户下载日志', 'type' => 'switch', 'default' => true],
|
||||
['key' => 'post_download_post_log', 'label' => '文章下载日志', 'type' => 'switch', 'default' => true],
|
||||
]],
|
||||
],
|
||||
],
|
||||
'submit' => [
|
||||
'key' => 'submit',
|
||||
'title' => '前台投稿',
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"generated_at": "2026-11-02T06:04:33+00:00",
|
||||
"generated_at": "2026-11-03T09:49:39+00:00",
|
||||
"errors": [],
|
||||
"warnings": [
|
||||
"customPage tools-update section 'tools/update' not in PHP schema (ok if pure operational page)",
|
||||
@@ -38,7 +38,6 @@
|
||||
"enum incomplete parse for 'pay_box_position' (php subset of js): php=[box_top] js=[box_top,top,bottom,box_bottom]",
|
||||
"enum incomplete parse for 'pay_modo_default' (php subset of js): php=[0] js=[0,points]",
|
||||
"enum incomplete parse for 'pay_wechat_sdk_options' (php subset of js): php=[official_wechat] js=[official_wechat,epay,null]",
|
||||
"enum incomplete parse for 'post_pay_box_position' (php subset of js): php=[content] js=[content,mask]",
|
||||
"enum incomplete parse for 'post_time_source' (php subset of js): php=[date] js=[date,modified]",
|
||||
"enum incomplete parse for 'referral_attribution_model' (php subset of js): php=[first_touch] js=[first_touch,last_touch]",
|
||||
"enum incomplete parse for 'search_type_in' (php subset of js): php=[post] js=[post,user]",
|
||||
@@ -47,10 +46,6 @@
|
||||
"enum incomplete parse for 'sms_ali_api_type' (php subset of js): php=[sms] js=[sms,verify]",
|
||||
"enum incomplete parse for 'sms_sdk' (php subset of js): php=[null] js=[null,ali,tencent,smsbao]",
|
||||
"enum incomplete parse for 'style' (php subset of js): php=[null] js=[null,style2]",
|
||||
"enum incomplete parse for 'system_notice_btn1_color' (php subset of js): php=[primary] js=[primary,success,warning,danger,info,purple,dark]",
|
||||
"enum incomplete parse for 'system_notice_btn2_color' (php subset of js): php=[primary] js=[primary,success,warning,danger,info,purple,dark]",
|
||||
"enum incomplete parse for 'system_notice_btn3_color' (php subset of js): php=[primary] js=[primary,success,warning,danger,info,purple,dark]",
|
||||
"enum incomplete parse for 'system_notice_btn4_color' (php subset of js): php=[primary] js=[primary,success,warning,danger,info,purple,dark]",
|
||||
"enum incomplete parse for 'system_notice_policy' (php subset of js): php=[] js=[,signin,vip,free,auth]",
|
||||
"enum incomplete parse for 'system_notice_size' (php subset of js): php=[] js=[,modal-mini,modal-sm,modal-lg]",
|
||||
"enum incomplete parse for 'theme_mode' (php subset of js): php=[white-theme] js=[white-theme,dark-theme,time-auto]",
|
||||
@@ -67,7 +62,6 @@
|
||||
"domains": {
|
||||
"global": {
|
||||
"sections": [
|
||||
"code-highlight",
|
||||
"common",
|
||||
"custom-code",
|
||||
"email",
|
||||
@@ -76,8 +70,7 @@
|
||||
"logo",
|
||||
"search",
|
||||
"seo",
|
||||
"share",
|
||||
"system-notice"
|
||||
"share"
|
||||
],
|
||||
"files": [
|
||||
"src/Admin/Schema/GlobalSchema.php"
|
||||
@@ -105,7 +98,6 @@
|
||||
"filter",
|
||||
"list",
|
||||
"page",
|
||||
"pay",
|
||||
"submit",
|
||||
"thumb"
|
||||
],
|
||||
@@ -258,7 +250,7 @@
|
||||
"entry": true,
|
||||
"missing_chunks": [],
|
||||
"chunks": [
|
||||
"SchemaPage.D9mbKGcx.js",
|
||||
"SchemaPage.nbpKWBDL.js",
|
||||
"vendor-vue.CibbKclz.js",
|
||||
"FaIcon.DB-L86Cm.js",
|
||||
"useCollapsibleItems.DZpGrxDC.js",
|
||||
@@ -276,8 +268,8 @@
|
||||
"FloatingButtonsSettings.DOwK-RTG.js",
|
||||
"PageHeader.nyzEkEki.js",
|
||||
"FooterTabbarSettings.tb4NL7kN.js",
|
||||
"PostPageSettings.BIi2DEZC.js",
|
||||
"CommentSettings.B-GZllSB.js",
|
||||
"PostPageSettings.C4aWDAvO.js",
|
||||
"CommentSettings.DNlrCxSG.js",
|
||||
"PermissionsCapabilities.DqpqZWmL.js",
|
||||
"CmsCredits.B6Gorymm.js",
|
||||
"ThemeInfoPage.D4pAf5Wr.js",
|
||||
@@ -287,7 +279,7 @@
|
||||
"UsersLevel.9dYF2o-O.js",
|
||||
"UsersBadge.CDPcEJ-D.js",
|
||||
"UsersWechatTemplate.CCecYMLT.js",
|
||||
"UsersTicket.DnG1wULZ.js",
|
||||
"UsersTicket.Y46bme7L.js",
|
||||
"ToolsImportExport.BxHqqdz0.js",
|
||||
"ToolsHealth.DrJqHumh.js",
|
||||
"ToolsUpdate.rL8TduLs.js"
|
||||
|
||||
Reference in new issue
Block a user