feat(admin): manage captcha configuration centrally

- add a dedicated Filament settings tab for captcha drivers
- persist selections into config-compatible schema and migrate legacy keys
- extend captcha manager to consume database overrides transparently

Signed-off-by: Qi HU <github@spcsky.com>
This commit is contained in:
Qi HU
2025-10-13 12:15:33 +08:00
parent 60e1e45d73
commit ce913b7a54
5 changed files with 274 additions and 0 deletions
+42
View File
@@ -144,6 +144,48 @@ return [
'max_uploaded_duration' => '最大上传量倍数有效时间范围',
'max_uploaded_duration_help' => '单位:小时。种子发布后的这个时间范围内,最大上传量倍数生效,超过此范围不生效。设置为 0 一直生效',
],
'captcha' => [
'tab_header' => '验证码',
'driver' => '验证码驱动',
'driver_help' => '选择在登录等公开页面展示的验证码方案。',
'drivers' => [
'image' => '内置图片验证码',
'cloudflare_turnstile' => 'Cloudflare Turnstile',
'google_recaptcha_v2' => 'Google reCAPTCHA v2',
],
'turnstile' => [
'section' => 'Cloudflare Turnstile 配置',
'site_key' => '站点密钥',
'site_key_help' => '在 Cloudflare Turnstile 后台获取。',
'secret_key' => '私钥',
'secret_key_help' => '请妥善保管,不要泄露。',
'theme' => '主题',
'theme_help' => '选择“自动”时会根据页面自动适配。',
'theme_auto' => '自动',
'theme_light' => '浅色',
'theme_dark' => '深色',
'size' => '组件尺寸',
'size_help' => '弹性模式会根据容器宽度自动拉伸。',
'size_normal' => '普通',
'size_compact' => '紧凑',
'size_flexible' => '弹性',
],
'recaptcha' => [
'section' => 'Google reCAPTCHA v2 配置',
'site_key' => '站点密钥',
'site_key_help' => '在 Google reCAPTCHA 控制台获取。',
'secret_key' => '私钥',
'secret_key_help' => '请妥善保管,不要泄露。',
'theme' => '主题',
'theme_help' => '深色主题适用于深色背景。',
'theme_light' => '浅色',
'theme_dark' => '深色',
'size' => '组件尺寸',
'size_help' => '紧凑模式适合较窄的布局。',
'size_normal' => '普通',
'size_compact' => '紧凑',
],
],
'meilisearch' => [
'tab_header' => 'Meilisearch',
'enabled' => '是否启用 Meilisearch',