chore(邀请新用户页面): 增加阿语翻译

This commit is contained in:
hzj 2025-12-05 12:04:39 +08:00
parent f9bec96d3c
commit 739dd68615
4 changed files with 68 additions and 21 deletions

View File

@ -302,5 +302,20 @@
"enter_card_number": "أدخل رقم البطاقة",
"enter_payee": "أدخل اسم المستفيد",
"admin_policy": "سياسة المشرف"
"admin_policy": "سياسة المشرف",
"invitation_to_register": "دعوة للتسجيل",
"total_invitations": "إجمالي الدعوات:",
"todays_invitation": "دعوات اليوم:",
"invitation_total_income": "إجمالي الدخل:",
"todays_income": "دخل اليوم:",
"users": "المستخدمون",
"remaining_time": "الوقت المتبقي",
"prowide_income": "الدخل المقدم",
"copied_successfully": "تم النسخ بنجاح",
"please_enter_valid_invitation_code": "يرجى إدخال رمز دعوة صالح.",
"invitation_code_bound_successfully": "تم ربط رمز الدعوة بنجاح!",
"invitation_code_binding_failed": "فشل ربط رمز الدعوة.",
"user_id_prefix": "المعرف:",
"day_unit": "يوم"
}

View File

@ -302,5 +302,20 @@
"enter_card_number": "Enter the Card Number",
"enter_payee": "Enter the payee",
"admin_policy": "Admin Policy"
"admin_policy": "Admin Policy",
"invitation_to_register": "Invitation to register",
"total_invitations": "Total invitations:",
"todays_invitation": "Today's invitation:",
"invitation_total_income": "Total income:",
"todays_income": "Today's income:",
"users": "Users",
"remaining_time": "Remaining time",
"prowide_income": "Prowide income",
"copied_successfully": "Copied successfully",
"please_enter_valid_invitation_code": "Please enter a valid invitation code.",
"invitation_code_bound_successfully": "Invitation code bound successfully!",
"invitation_code_binding_failed": "Invitation code binding failed.",
"user_id_prefix": "ID:",
"day_unit": "Day"
}

View File

@ -302,5 +302,20 @@
"enter_card_number": "请输入卡号",
"enter_payee": "请输入收款人",
"admin_policy": "管理员政策"
"admin_policy": "管理员政策",
"invitation_to_register": "邀请注册",
"total_invitations": "总邀请人数:",
"todays_invitation": "今日邀请人数:",
"invitation_total_income": "总收入:",
"todays_income": "今日收入:",
"users": "用户",
"remaining_time": "剩余时间",
"prowide_income": "提供收入",
"copied_successfully": "复制成功",
"please_enter_valid_invitation_code": "请输入有效的邀请码。",
"invitation_code_bound_successfully": "邀请码绑定成功!",
"invitation_code_binding_failed": "邀请码绑定失败。",
"user_id_prefix": "ID:",
"day_unit": "天"
}

View File

@ -5,7 +5,7 @@
<GeneralHeader
:isHomePage="true"
:showHelp="true"
title="Invitation to register"
:title="t('invitation_to_register')"
@help="helpInfoShow = true"
/>
</div>
@ -130,7 +130,7 @@
padding: 2vw;
"
>
<div>Total invitations:</div>
<div>{{ t('total_invitations') }}</div>
<div>{{ myInviteIncome.validInviteCount || 0 }}</div>
</div>
@ -144,7 +144,7 @@
padding: 2vw;
"
>
<div>Today's invitation:</div>
<div>{{ t('todays_invitation') }}</div>
<div>{{ myInviteIncome.todayInviteCount || 0 }}</div>
</div>
@ -158,7 +158,7 @@
padding: 2vw;
"
>
<div>Total income:</div>
<div>{{ t('invitation_total_income') }}</div>
<div style="display: flex; align-items: center">
<img
v-smart-img
@ -171,7 +171,7 @@
</div>
</div>
<!-- 今日邀请人数 -->
<!-- 今日收入 -->
<div
style="
align-self: stretch;
@ -181,7 +181,7 @@
padding: 2vw;
"
>
<div>Today's income:</div>
<div>{{ t('todays_income') }}</div>
<div style="display: flex; align-items: center">
<img
v-smart-img
@ -217,7 +217,7 @@
>
<!-- 头部 -->
<div style="width: 100%; display: flex; align-items: center">
<div style="flex: 1; font-weight: 590; font-size: 0.85em">Users</div>
<div style="flex: 1; font-weight: 590; font-size: 0.85em">{{ t('users') }}</div>
<div
style="
flex: 1;
@ -238,7 +238,7 @@
);
"
></div>
<div style="font-weight: 590; font-size: 0.82em">Remaining time</div>
<div style="font-weight: 590; font-size: 0.82em">{{ t('remaining_time') }}</div>
<div
style="
width: 1px;
@ -252,7 +252,7 @@
></div>
</div>
<div style="flex: 1; font-weight: 590; text-align: end; font-size: 0.82em">
Prowide income
{{ t('prowide_income') }}
</div>
</div>
@ -263,7 +263,7 @@
style="width: 100%; display: flex; align-items: center"
>
<div style="flex: 1; font-weight: 590; font-size: 0.7em">
ID:{{ user.invitedUserAccount || '-' }}
{{ t('user_id_prefix') }}{{ user.invitedUserAccount || '-' }}
</div>
<div
style="
@ -286,7 +286,7 @@
"
></div>
<div style="font-weight: 590; font-size: 0.7em">
{{ user.remainingDays || 0 }}Day
{{ user.remainingDays || 0 }}{{ t('day_unit') }}
</div>
<div
style="
@ -452,7 +452,7 @@
<div
style="padding: 12px; border-radius: 8px; background: rgba(0, 0, 0, 0.4); font-weight: 600"
>
Copied successfully
{{ t('copied_successfully') }}
</div>
</div>
</div>
@ -460,6 +460,7 @@
<script setup>
import { computed, onMounted, ref } from 'vue'
import { useI18n } from 'vue-i18n'
import { useLangStore } from '@/stores/lang'
import { gotoPrivateChat } from '@/utils/appBridge.js'
import { showError, showWarning, showInfo, showSuccess } from '@/utils/toast.js'
@ -482,6 +483,7 @@ import GeneralHeader from '@/components/GeneralHeader.vue'
import itemCenter from '@/components/itemCenter.vue'
import maskLayer from '@/components/MaskLayer.vue'
const { t } = useI18n()
const langStore = useLangStore()
//
const currentLangType = computed(() => {
@ -546,7 +548,7 @@ const showDetail = (reward) => {
} else if (reward.type === 'DOLLARS') {
return `$${reward.content}`
} else {
return `${reward.quantity}Days`
return `${reward.quantity}${t('day_unit')}`
}
}
@ -573,13 +575,13 @@ const copyCode = (text) => {
//
const showAwardText = (award) => {
if (award.type == 'GOLD') return award.quantity
return award.quantity + 'Days'
return award.quantity + t('day_unit')
}
//
const confirmInvitationCode = () => {
if (!invitationCode.value.trim()) {
showWarning('Please enter a valid invitation code.')
showWarning(t('please_enter_valid_invitation_code'))
return
}
}
@ -603,16 +605,16 @@ const apiGetMyInviter = async () => {
//
const confirm = async () => {
if (!invitationCode.value.trim()) {
showWarning('Please enter a valid invitation code.')
showWarning(t('please_enter_valid_invitation_code'))
return
}
let data = { inviteCode: invitationCode.value.trim(), inviteType: 'REGISTER' }
try {
const resBind = await bindInviteCode(data)
if (resBind.status) {
showSuccess('Invitation code bound successfully!')
showSuccess(t('invitation_code_bound_successfully'))
} else {
showError('Invitation code binding failed.')
showError(t('invitation_code_binding_failed'))
}
invitationCode.value = ''
enterCodeShow.value = false