diff --git a/frontend/src/components/layout/AppHeader.vue b/frontend/src/components/layout/AppHeader.vue index d0e452605..ab94ab946 100644 --- a/frontend/src/components/layout/AppHeader.vue +++ b/frontend/src/components/layout/AppHeader.vue @@ -6,7 +6,7 @@ @@ -96,7 +96,7 @@ {{ t('admin.settings.payment.customMethodDisplayName') }} - + = { 'admin.settings.payment.customMethodType': 'Payment type', 'admin.settings.payment.customMethodUpstreamType': 'Upstream type', 'admin.settings.payment.customMethodDisplayName': 'Display name', + 'admin.settings.payment.customMethodDisplayNamePlaceholder': '信用卡', 'admin.settings.payment.paymentGuideTrigger': 'View payment guide', 'admin.settings.payment.alipayGuideSummary': 'Desktop prefers QR precreate and falls back to cashier; mobile prefers WAP checkout.', 'admin.settings.payment.wxpayGuideSummary': 'Desktop prefers Native QR; mobile routes to JSAPI or H5 based on browser context.', diff --git a/frontend/src/i18n/locales/en/admin/settings.ts b/frontend/src/i18n/locales/en/admin/settings.ts index ec68ce1b1..24eb4ce60 100644 --- a/frontend/src/i18n/locales/en/admin/settings.ts +++ b/frontend/src/i18n/locales/en/admin/settings.ts @@ -649,6 +649,7 @@ export default { customMethodType: 'Payment type', customMethodUpstreamType: 'Upstream type', customMethodDisplayName: 'Display name', + customMethodDisplayNamePlaceholder: 'e.g. Credit card', stripeWebhookHint: 'Configure the following URL as a Webhook endpoint in Stripe Dashboard:', stripeWebhookApiVersionHint: 'Set this Webhook endpoint API version to match the integrated Stripe SDK. Recommended: {version}. A mismatch can cause webhook parsing errors.', airwallexWebhookHint: 'Configure the following URL as a Webhook endpoint in Airwallex. Select at least Payment Intent -> Succeeded (payment_intent.succeeded), preferably also Payment Intent -> Cancelled (payment_intent.cancelled). Use the account default or latest stable API version.', diff --git a/frontend/src/i18n/locales/en/common.ts b/frontend/src/i18n/locales/en/common.ts index be13f5aaa..367b2aa35 100644 --- a/frontend/src/i18n/locales/en/common.ts +++ b/frontend/src/i18n/locales/en/common.ts @@ -44,6 +44,9 @@ export default { inactive: 'Inactive', more: 'More', close: 'Close', + toggleMenu: 'Toggle menu', + userMenu: 'User menu', + pageNotFound: 'Page not found', enabled: 'Enabled', disabled: 'Disabled', total: 'Total', diff --git a/frontend/src/i18n/locales/zh/admin/settings.ts b/frontend/src/i18n/locales/zh/admin/settings.ts index f5827d0e1..1201f354b 100644 --- a/frontend/src/i18n/locales/zh/admin/settings.ts +++ b/frontend/src/i18n/locales/zh/admin/settings.ts @@ -644,6 +644,7 @@ export default { customMethodType: '支付方式', customMethodUpstreamType: '上游 type', customMethodDisplayName: '显示名称', + customMethodDisplayNamePlaceholder: '如:信用卡', stripeWebhookHint: '请在 Stripe Dashboard 中将以下地址配置为 Webhook 端点:', stripeWebhookApiVersionHint: 'Webhook 端点的 API 版本请与当前集成的 Stripe SDK 对齐,建议选择 {version};版本不一致可能导致回调事件解析失败。', airwallexWebhookHint: '请在 Airwallex 后台将以下地址配置为 Webhook 端点;事件至少选择 Payment Intent -> Succeeded(payment_intent.succeeded),建议同时选择 Payment Intent -> Cancelled(payment_intent.cancelled);API version 选择账户默认或最新稳定版本。', diff --git a/frontend/src/i18n/locales/zh/common.ts b/frontend/src/i18n/locales/zh/common.ts index 02de40946..78c929e55 100644 --- a/frontend/src/i18n/locales/zh/common.ts +++ b/frontend/src/i18n/locales/zh/common.ts @@ -44,6 +44,9 @@ export default { inactive: '禁用', more: '更多', close: '关闭', + toggleMenu: '切换菜单', + userMenu: '用户菜单', + pageNotFound: '页面不存在', enabled: '已启用', disabled: '已禁用', total: '总计', diff --git a/frontend/src/views/user/CustomPageView.vue b/frontend/src/views/user/CustomPageView.vue index 00a133eb0..8006695dd 100644 --- a/frontend/src/views/user/CustomPageView.vue +++ b/frontend/src/views/user/CustomPageView.vue @@ -230,7 +230,7 @@ async function fetchAndRenderMarkdown(slug: string) { headers: authStore.token ? { Authorization: `Bearer ${authStore.token}` } : {}, }) if (!resp.ok) { - renderedHtml.value = 'Page not found' + renderedHtml.value = `${t('common.pageNotFound')}` return } let raw = await resp.text()
Page not found
${t('common.pageNotFound')}