From 9cf903a8807d30419b606acb6d87746470e9ae79 Mon Sep 17 00:00:00 2001 From: jingrow Date: Mon, 29 Dec 2025 19:05:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B3=A8=E5=86=8C=E7=99=BB=E9=99=86=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E5=A2=9E=E5=8A=A0=E5=A4=9A=E8=AF=AD=E8=A8=80=E6=94=AF?= =?UTF-8?q?=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dashboard/src/pages/LoginSignup.vue | 132 ++++++++++++++-------------- jcloud/translations/zh.csv | 50 +++++++++++ 2 files changed, 116 insertions(+), 66 deletions(-) diff --git a/dashboard/src/pages/LoginSignup.vue b/dashboard/src/pages/LoginSignup.vue index a39a5cc..28612c3 100644 --- a/dashboard/src/pages/LoginSignup.vue +++ b/dashboard/src/pages/LoginSignup.vue @@ -11,7 +11,7 @@ @@ -165,7 +165,7 @@ @@ -184,15 +184,15 @@ @@ -270,7 +270,7 @@ - 或 + {{ $t('Or') }} @@ -281,14 +281,14 @@ @click="switchToEmailLogin" icon-left="mail" > - 使用邮箱验证码登陆 + {{ $t('Log in with email verification code') }}
{{ $route.name == 'Login' - ? '没有账户?创建一个账户。' - : '已有账户?登录。' + ? $t('Don\'t have an account? Create one.') + : $t('Already have an account? Log in.') }}
@@ -314,7 +314,7 @@
- 验证 + {{ $t('Verify') }} @@ -367,8 +367,8 @@ > {{ $route.name == 'Login' - ? '新用户?创建一个新账户。' - : '已有账户?登录。' + ? $t('New user? Create a new account.') + : $t('Already have an account? Log in.') }}
@@ -378,9 +378,9 @@ v-else-if="resetPasswordEmailSent" >

- 我们已向 + {{ $t('We have sent an email to') }} {{ email }}发送了一封邮件。请点击收到的链接重置您的密码。 + >{{ $t('. Please click on the link received to reset your password.') }}

@@ -401,7 +401,7 @@
- 由 今果 Jingrow 提供支持 + {{ $t('Powered by Jingrow') }}
@@ -463,7 +463,7 @@ export default { this.account_request = account_request; this.otpRequested = true; this.otpResendCountdown = 30; - toast.success('验证码已发送至您的邮箱'); + toast.success(this.$t('Verification code has been sent to your email')); }, onError: (error) => { if (error?.exc_type !== 'ValidationError') { @@ -514,11 +514,11 @@ export default { onSuccess() { this.otp = ''; this.otpResendCountdown = 30; - toast.success('验证码已发送至您的邮箱'); + toast.success(this.$t('Verification code has been sent to your email')); }, onError(err) { toast.error( - getToastErrorMessage(err, '验证码重发失败'), + getToastErrorMessage(err, this.$t('Failed to resend verification code')), ); }, }; @@ -532,11 +532,11 @@ export default { onSuccess() { this.otpSent = true; this.otpResendCountdown = 30; - toast.success('验证码已发送至您的邮箱'); + toast.success(this.$t('Verification code has been sent to your email')); }, onError(err) { toast.error( - getToastErrorMessage(err, '验证码发送失败'), + getToastErrorMessage(err, this.$t('Failed to send verification code')), ); }, }; @@ -615,7 +615,7 @@ export default { }, onSuccess(res) { if (res && res.success === false) { - toast.error(res.message || '注册失败,请检查您的信息'); + toast.error(res.message || this.$t('Sign up failed, please check your information')); return; } @@ -630,7 +630,7 @@ export default { onError(err) { const errorMessage = err?.messages?.length ? err.messages.join('\n') - : (err?.message || '注册失败,请检查您的信息'); + : (err?.message || this.$t('Sign up failed, please check your information')); toast.error(errorMessage); }, }; @@ -661,27 +661,27 @@ export default { this.checkTwoFactorAndResetPassword(); } else { if (!this.username) { - toast.error('用户名不能为空'); + toast.error(this.$t('Username cannot be empty')); return; } if (!this.phoneNumber) { - toast.error('手机号不能为空'); + toast.error(this.$t('Phone number cannot be empty')); return; } if (!this.isPhoneNumberValid) { - toast.error('请输入正确的手机号码格式'); + toast.error(this.$t('Please enter a valid phone number format')); return; } if (!this.signupPassword) { - toast.error('密码不能为空'); + toast.error(this.$t('Password cannot be empty')); return; } if (this.signupPassword !== this.confirmPassword) { - toast.error('两次输入的密码不一致'); + toast.error(this.$t('Passwords do not match')); return; } if (!this.isPasswordValid) { - toast.error('密码必须至少8个字符,并包含大小写字母和数字'); + toast.error(this.$t('Password must be at least 8 characters and contain uppercase and lowercase letters and numbers')); return; } this.$resources.signupWithUsername.submit(); @@ -879,17 +879,17 @@ export default { }, title() { if (this.hasForgotPassword) { - return '重置密码'; + return this.$t('Reset Password'); } else if (this.isLogin) { if (this.saasProduct) { - return `登录您的账户以开始使用 ${this.saasProduct.title}`; + return this.$t('Log in to your account to start using {product}', { product: this.saasProduct.title }); } - return '登录您的账户'; + return this.$t('Log in to your account'); } else { if (this.saasProduct) { - return `注册以创建您的 ${this.saasProduct.title} 站点`; + return this.$t('Sign up to create your {product} site', { product: this.saasProduct.title }); } - return '创建新账户'; + return this.$t('Create New Account'); } }, useEmail() { @@ -925,10 +925,10 @@ export default { return 'bg-green-500'; }, passwordStrengthText() { - if (this.passwordStrength < 40) return '弱'; - if (this.passwordStrength < 60) return '一般'; - if (this.passwordStrength < 80) return '强'; - return '非常强'; + if (this.passwordStrength < 40) return this.$t('Weak'); + if (this.passwordStrength < 60) return this.$t('Fair'); + if (this.passwordStrength < 80) return this.$t('Strong'); + return this.$t('Very Strong'); }, passwordStrengthTextClass() { if (this.passwordStrength < 40) return 'text-red-500'; diff --git a/jcloud/translations/zh.csv b/jcloud/translations/zh.csv index 64fc9af..3a3d493 100644 --- a/jcloud/translations/zh.csv +++ b/jcloud/translations/zh.csv @@ -1084,3 +1084,53 @@ Currently Active,当前激活, Switch,切换, Select Team,选择团队, This feature is only available for system users,此功能仅对系统用户可用, +2FA code from your authenticator app,来自您的身份验证应用的2FA代码, +Verify,验证, +I remember my password,我记得我的密码, +Username or Email,用户名或邮箱, +Forgot Password?,忘记密码?, +Log In,登录, +Verification Code,验证码, +Resend Verification Code,重新发送验证码, +in,在, +seconds,秒后, +Send Verification Code,发送验证码, +Log in with,使用, +Username,用户名, +Set username,设置用户名, +Email (optional),邮箱 (可选), +Phone Number,手机号, +Please enter your phone number,请输入您的手机号码, +Please enter a valid phone number format,请输入正确的手机号码格式, +Set login password,设置登录密码, +Password must be at least 8 characters and contain uppercase and lowercase letters and numbers,密码必须至少8个字符,并包含大小写字母和数字, +Password Strength,密码强度, +Confirm Password,确认密码, +Enter password again,再次输入密码, +Passwords do not match,两次输入的密码不一致, +Sign Up,注册, +Or,或, +Log in with email verification code,使用邮箱验证码登陆, +Log in with password,使用密码登陆, +Don't have an account? Create one.,没有账户?创建一个账户。, +Already have an account? Log in.,已有账户?登录。, +New user? Create a new account.,新用户?创建一个新账户。, +We have sent an email to,我们已向, +. Please click on the link received to reset your password.,发送了一封邮件。请点击收到的链接重置您的密码。, +Powered by Jingrow,由 今果 Jingrow 提供支持, +Verification code has been sent to your email,验证码已发送至您的邮箱, +Failed to resend verification code,验证码重发失败, +Failed to send verification code,验证码发送失败, +Sign up failed, please check your information,注册失败,请检查您的信息, +Username cannot be empty,用户名不能为空, +Phone number cannot be empty,手机号不能为空, +Password cannot be empty,密码不能为空, +Reset Password,重置密码, +Log in to your account,登录您的账户, +Log in to your account to start using {product},登录您的账户以开始使用 {product}, +Sign up to create your {product} site,注册以创建您的 {product} 站点, +Create New Account,创建新账户, +Weak,弱, +Fair,一般, +Strong,强, +Very Strong,非常强,