From 83cb69b7946e80b1d5b0e150b713f5f73c0401d5 Mon Sep 17 00:00:00 2001 From: jxxghp Date: Mon, 28 Apr 2025 22:17:43 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=9B=BD=E9=99=85=E5=8C=96?= =?UTF-8?q?=E6=94=AF=E6=8C=81=EF=BC=9A=E4=B8=BA=E8=AE=A2=E9=98=85=E5=AD=A3?= =?UTF-8?q?=E8=8A=82=E5=AF=B9=E8=AF=9D=E6=A1=86=E5=8F=8A=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E6=B7=BB=E5=8A=A0=E5=A4=9A=E8=AF=AD=E8=A8=80?= =?UTF-8?q?=E6=96=87=E6=9C=AC=EF=BC=8C=E6=8F=90=E5=8D=87=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E4=BD=93=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dialog/SubscribeSeasonDialog.vue | 42 ++++++++++++------- src/locales/en-US.ts | 23 +++++++--- src/locales/zh-CN.ts | 19 +++++++-- src/locales/zh-TW.ts | 23 +++++++--- 4 files changed, 77 insertions(+), 30 deletions(-) diff --git a/src/components/dialog/SubscribeSeasonDialog.vue b/src/components/dialog/SubscribeSeasonDialog.vue index af3554d5..12b0df79 100644 --- a/src/components/dialog/SubscribeSeasonDialog.vue +++ b/src/components/dialog/SubscribeSeasonDialog.vue @@ -3,6 +3,10 @@ import api from '@/api' import { MediaInfo, MediaSeason, NotExistMediaInfo } from '@/api/types' import { PropType } from 'vue' import NoDataFound from '@/components/NoDataFound.vue' +import { useI18n } from 'vue-i18n' + +// 国际化 +const { t } = useI18n() // 定义事件 const emit = defineEmits(['subscribe', 'close']) @@ -47,15 +51,18 @@ const episodeGroupOptions = computed(() => { item => { return { title: item.name, - subtitle: `${item.group_count} 季 • ${item.episode_count} 集`, + subtitle: `${t('dialog.subscribeSeason.seasonCount', { count: item.group_count })} • ${t( + 'dialog.subscribeSeason.episodeCount', + { count: item.episode_count }, + )}`, value: item.id, } }, ) // 添加不使用选项 options.unshift({ - title: '默认', - subtitle: `${seasonInfos.value.length} 季`, + title: t('dialog.subscribeSeason.defaultGroup'), + subtitle: t('dialog.subscribeSeason.seasonCount', { count: seasonInfos.value.length }), value: '', }) return options @@ -142,11 +149,11 @@ function getExistColor(season: number) { // 计算存在状态的文本 function getExistText(season: number) { const state = seasonsNotExisted.value[season] - if (!state) return '已入库' + if (!state) return t('dialog.subscribeSeason.status.exists') - if (state === 1) return '部分缺失' - else if (state === 2) return '缺失' - else return '已入库' + if (state === 1) return t('dialog.subscribeSeason.status.partial') + else if (state === 2) return t('dialog.subscribeSeason.status.missing') + else return t('dialog.subscribeSeason.status.exists') } // 拼装季图片地址 @@ -191,7 +198,7 @@ onMounted(async () => { - 订阅 - {{ props.media?.title }} + {{ t('dialog.subscribeSeason.title', { title: props.media?.title }) }} @@ -199,7 +206,7 @@ onMounted(async () => { v-model="episodeGroup" :items="episodeGroupOptions" :item-props="episodeGroupItemProps" - label="选择剧集组" + :label="t('dialog.subscribeSeason.selectGroup')" persistent-hint /> @@ -222,15 +229,18 @@ onMounted(async () => { - 第 {{ item.season_number }} 季 + + {{ t('dialog.subscribeSeason.seasonNumber', { number: item.season_number }) }} + - {{ item.vote_average }} + {{ t('dialog.subscribeSeason.voteAverage', { score: item.vote_average }) }} - {{ getYear(item.air_date || '') }} • {{ item.episode_count }} 集 + {{ getYear(item.air_date || '') }} • + {{ t('dialog.subscribeSeason.episodeCount', { count: item.episode_count }) }} - 《{{ media?.title }}》第 {{ item.season_number }} 季于 {{ formatAirDate(item.air_date || '') }} 首播。 + {{ t('dialog.subscribeSeason.airDate', { date: formatAirDate(item.air_date || '') }) }} {
- {{ seasonsSelected.length === 0 ? '请选择订阅季' : '提交订阅' }} + {{ + seasonsSelected.length === 0 + ? t('dialog.subscribeSeason.selectSeasons') + : t('dialog.subscribeSeason.submit') + }}
diff --git a/src/locales/en-US.ts b/src/locales/en-US.ts index 73c02b7c..6721c317 100644 --- a/src/locales/en-US.ts +++ b/src/locales/en-US.ts @@ -1116,6 +1116,23 @@ export default { progress: { processing: 'Processing', }, + subscribeSeason: { + title: 'Subscribe - {title}', + selectGroup: 'Select Episode Group', + defaultGroup: 'Default', + seasonCount: '{count} Seasons', + episodeCount: '{count} Episodes', + seasonNumber: 'Season {number}', + airDate: 'First aired on {date}', + voteAverage: '{score}', + status: { + exists: 'Exists', + partial: 'Partially Missing', + missing: 'Missing', + }, + submit: 'Submit Subscription', + selectSeasons: 'Please select seasons to subscribe', + }, userAddEdit: { add: 'Add User', edit: 'Edit User', @@ -1536,12 +1553,6 @@ export default { season: 'Season {season}', noData: 'No completed subscriptions', }, - subscribeSeason: { - title: 'Select Season', - seasonTitle: 'Season {number}', - close: 'Close', - confirm: 'Confirm', - }, siteUserData: { title: 'Site User Data', updateTime: 'Update Time', diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts index 00caff50..4755982a 100644 --- a/src/locales/zh-CN.ts +++ b/src/locales/zh-CN.ts @@ -1514,10 +1514,21 @@ export default { noData: '没有已完成的订阅', }, subscribeSeason: { - title: '选择季', - seasonTitle: '第 {number} 季', - close: '关闭', - confirm: '确认', + title: '订阅 - {title}', + selectGroup: '选择剧集组', + defaultGroup: '默认', + seasonCount: '{count} 季', + episodeCount: '{count} 集', + seasonNumber: '第 {number} 季', + airDate: '首播于 {date}', + voteAverage: '{score}', + status: { + exists: '已入库', + partial: '部分缺失', + missing: '缺失', + }, + submit: '提交订阅', + selectSeasons: '请选择订阅季', }, siteUserData: { title: '站点用户数据', diff --git a/src/locales/zh-TW.ts b/src/locales/zh-TW.ts index 8778b096..05bc63ef 100644 --- a/src/locales/zh-TW.ts +++ b/src/locales/zh-TW.ts @@ -1092,6 +1092,23 @@ export default { progress: { processing: '處理中', }, + subscribeSeason: { + title: '訂閱 - {title}', + selectGroup: '選擇劇集組', + defaultGroup: '默認', + seasonCount: '{count} 季', + episodeCount: '{count} 集', + seasonNumber: '第 {number} 季', + airDate: '首播於 {date}', + voteAverage: '{score}', + status: { + exists: '已入庫', + partial: '部分缺失', + missing: '缺失', + }, + submit: '提交訂閱', + selectSeasons: '請選擇訂閱季', + }, userAddEdit: { add: '添加用戶', edit: '編輯用戶', @@ -1510,12 +1527,6 @@ export default { season: '第 {season} 季', noData: '沒有已完成的訂閱', }, - subscribeSeason: { - title: '選擇季', - seasonTitle: '第 {number} 季', - close: '關閉', - confirm: '確認', - }, siteUserData: { title: '站點用戶數據', updateTime: '更新時間',