fix(admin): 赠送流量配置项补全中英文案并修正语义描述

- 补提交 giftTraffic i18n key(此前仅表单落库,中文界面显示英文兜底)
- 修正描述:0=时长模式(按试用时长配置),>0=流量模式不限时用完为止
  (原文案「0=不限流量」与后端实际语义相反,会误导运营配置)
This commit is contained in:
2026-08-15 19:52:42 -07:00
parent 6b9ae70491
commit 466507a196
3 changed files with 40 additions and 0 deletions
@@ -94,6 +94,8 @@
"title": "Registration Settings",
"trialConfig": "Trial Configuration",
"trialConfigDescription": "Configure trial subscription, duration and time unit for new users upon registration",
"giftTraffic": "Gift Traffic",
"giftTrafficDescription": "Gift traffic for new users (GB). 0 = duration mode (uses the trial duration above); >0 = quota mode: N GB with no time limit, trial duration is ignored",
"year": "Year(s)"
},
"site": {
@@ -94,6 +94,8 @@
"title": "注册设置",
"trialConfig": "试用配置",
"trialConfigDescription": "配置新用户注册时的试用订阅、时长和时间单位",
"giftTraffic": "赠送流量",
"giftTrafficDescription": "新用户赠送流量(GB)。0 = 时长模式(按上方试用时长配置);大于 0 = 流量模式:赠送 N GB、不限时长、用完为止(此时忽略试用时长配置)",
"year": "年"
},
"site": {
@@ -41,6 +41,7 @@ const registerSchema = z.object({
trial_subscribe: z.number().optional(),
trial_time: z.number().optional(),
trial_time_unit: z.string().optional(),
gift_traffic: z.number().optional(),
enable_trial_email_whitelist: z.boolean().optional(),
trial_email_domain_whitelist: z.string().optional(),
enable_ip_register_limit: z.boolean().optional(),
@@ -75,6 +76,7 @@ export default function RegisterConfig() {
trial_subscribe: undefined,
trial_time: 0,
trial_time_unit: "day",
gift_traffic: 0,
enable_trial_email_whitelist: false,
trial_email_domain_whitelist: "",
enable_ip_register_limit: false,
@@ -449,6 +451,40 @@ export default function RegisterConfig() {
)}
/>
<FormField
control={form.control}
name="gift_traffic"
render={({ field }) => (
<FormItem>
<FormLabel>
{t("register.giftTraffic", "Gift Traffic")}
</FormLabel>
<FormControl>
<EnhancedInput
min={0}
onValueBlur={(value) =>
field.onChange(Number(value))
}
placeholder={t(
"register.inputPlaceholder",
"Please enter"
)}
suffix="GB"
type="number"
value={field.value}
/>
</FormControl>
<FormDescription>
{t(
"register.giftTrafficDescription",
"Gift traffic for new users (GB). 0 = duration mode (uses the trial duration above); >0 = quota mode: N GB with no time limit, trial duration is ignored"
)}
</FormDescription>
<FormMessage />
</FormItem>
)}
/>
<FormField
control={form.control}
name="enable_trial_email_whitelist"