mirror of
https://github.com/jxxghp/MoviePilot-Frontend.git
synced 2026-09-05 15:36:49 +08:00
更新国际化支持:调整多个组件中的文本引入,优化站点设置相关的翻译和文本结构,确保语言切换的准确性和一致性。
This commit is contained in:
+82
-77
@@ -244,39 +244,6 @@ export default {
|
|||||||
recognitionWords: 'Recognition Words',
|
recognitionWords: 'Recognition Words',
|
||||||
cancelShare: 'Cancel Share',
|
cancelShare: 'Cancel Share',
|
||||||
usageCount: 'Used {count} times',
|
usageCount: 'Used {count} times',
|
||||||
basicSettings: 'Basic Settings',
|
|
||||||
basicSettingsDesc: 'Set subscription mode, cycle and other basic settings',
|
|
||||||
mode: 'Subscription Mode',
|
|
||||||
modeHint: 'Auto: automatically crawl site homepage, Site RSS: subscribe via site RSS link',
|
|
||||||
rssInterval: 'Site RSS Interval',
|
|
||||||
rssIntervalHint: 'Set the site RSS running cycle, effective when subscription mode is `Site RSS`',
|
|
||||||
filterRuleGroup: 'Subscription Priority Rule Group',
|
|
||||||
filterRuleGroupHint: 'Filter subscriptions based on selected filter rule groups',
|
|
||||||
bestVersionRuleGroup: 'Version Upgrade Priority Rule Group',
|
|
||||||
bestVersionRuleGroupHint: 'Filter version upgrade subscriptions based on selected filter rule groups',
|
|
||||||
timedSearch: 'Subscription Scheduled Search',
|
|
||||||
timedSearchHint: 'Search all sites every 24 hours to supplement resources that may be missed by subscription',
|
|
||||||
checkLocalMedia: 'Check Local Media Library',
|
|
||||||
checkLocalMediaHint: 'Check if resources exist on storage disk to avoid duplicate downloads',
|
|
||||||
subscribeSites: 'Subscription Sites',
|
|
||||||
subscribeSitesDesc: 'Only selected sites will be used in subscription.',
|
|
||||||
saveSuccess: 'Subscription sites saved successfully',
|
|
||||||
saveFailed: 'Failed to save subscription sites!',
|
|
||||||
settingsSaveSuccess: 'Subscription basic settings saved successfully',
|
|
||||||
settingsSaveFailed: 'Failed to save subscription basic settings!',
|
|
||||||
modes: {
|
|
||||||
auto: 'Auto',
|
|
||||||
rss: 'Site RSS',
|
|
||||||
},
|
|
||||||
intervals: {
|
|
||||||
min5: '5 minutes',
|
|
||||||
min10: '10 minutes',
|
|
||||||
min20: '20 minutes',
|
|
||||||
min30: '30 minutes',
|
|
||||||
hour1: '1 hour',
|
|
||||||
hour12: '12 hours',
|
|
||||||
day1: '1 day',
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
recommend: {
|
recommend: {
|
||||||
all: 'All',
|
all: 'All',
|
||||||
@@ -361,49 +328,6 @@ export default {
|
|||||||
site: {
|
site: {
|
||||||
noSites: 'No Sites',
|
noSites: 'No Sites',
|
||||||
sitesWillBeShownHere: 'Added and supported sites will be displayed here.',
|
sitesWillBeShownHere: 'Added and supported sites will be displayed here.',
|
||||||
siteSync: 'Site Synchronization',
|
|
||||||
siteSyncDesc: 'Quickly sync site data from CookieCloud.',
|
|
||||||
enableLocalCookieCloud: 'Enable Local CookieCloud Server',
|
|
||||||
enableLocalCookieCloudHint:
|
|
||||||
'Use built-in CookieCloud service to sync site data, service address: http://localhost:3000/cookiecloud',
|
|
||||||
serviceAddress: 'Service Address',
|
|
||||||
serviceAddressPlaceholder: 'https://movie-pilot.org/cookiecloud',
|
|
||||||
serviceAddressHint: 'Remote CookieCloud service address, format: https://movie-pilot.org/cookiecloud',
|
|
||||||
userKey: 'User KEY',
|
|
||||||
userKeyHint: 'User KEY generated by CookieCloud browser plugin',
|
|
||||||
e2ePassword: 'End-to-End Encryption Password',
|
|
||||||
e2ePasswordHint: 'End-to-end encryption password generated by CookieCloud browser plugin',
|
|
||||||
autoSyncInterval: 'Auto Sync Interval',
|
|
||||||
autoSyncIntervalHint: 'Time interval for automatically syncing site cookies from CookieCloud server to MoviePilot',
|
|
||||||
syncBlacklist: 'Sync Domain Blacklist',
|
|
||||||
syncBlacklistPlaceholder: 'Multiple domains, separated by commas',
|
|
||||||
syncBlacklistHint: 'CookieCloud sync domain blacklist, multiple domains separated by commas',
|
|
||||||
userAgent: 'Browser User-Agent',
|
|
||||||
userAgentHint: 'User-Agent of the browser with CookieCloud plugin',
|
|
||||||
siteDataRefresh: 'Site Data Refresh',
|
|
||||||
siteDataRefreshInterval: 'Site Data Refresh Interval',
|
|
||||||
siteDataRefreshIntervalHint: 'Time interval for refreshing site user upload/download data',
|
|
||||||
readSiteMessage: 'Read Site Messages',
|
|
||||||
readSiteMessageHint: 'Read site messages and send notifications when refreshing data',
|
|
||||||
siteReset: 'Site Reset',
|
|
||||||
confirmReset: 'Confirm to delete all site data and resync.',
|
|
||||||
confirmResetHint:
|
|
||||||
'Delete all site data and resync from CookieCloud. Please clear all related site settings before this operation.',
|
|
||||||
resetSites: 'Reset Site Data',
|
|
||||||
resettingSites: 'Resetting...',
|
|
||||||
syncInterval: {
|
|
||||||
hourly: 'Hourly',
|
|
||||||
every6Hours: 'Every 6 Hours',
|
|
||||||
every12Hours: 'Every 12 Hours',
|
|
||||||
daily: 'Daily',
|
|
||||||
weekly: 'Weekly',
|
|
||||||
monthly: 'Monthly',
|
|
||||||
never: 'Never',
|
|
||||||
},
|
|
||||||
saveSuccess: 'Site settings saved successfully',
|
|
||||||
saveFailed: 'Failed to save site settings!',
|
|
||||||
resetSuccess: 'Sites reset successfully, please wait for CookieCloud sync to complete!',
|
|
||||||
resetFailed: 'Failed to reset sites!',
|
|
||||||
},
|
},
|
||||||
message: {
|
message: {
|
||||||
loadMore: 'Load More',
|
loadMore: 'Load More',
|
||||||
@@ -516,6 +440,52 @@ export default {
|
|||||||
copyError: 'Copy failed!',
|
copyError: 'Copy failed!',
|
||||||
reloading: 'Applying configuration...',
|
reloading: 'Applying configuration...',
|
||||||
},
|
},
|
||||||
|
site: {
|
||||||
|
siteSync: 'Site Synchronization',
|
||||||
|
siteSyncDesc: 'Quickly sync site data from CookieCloud.',
|
||||||
|
enableLocalCookieCloud: 'Enable Local CookieCloud Server',
|
||||||
|
enableLocalCookieCloudHint:
|
||||||
|
'Use built-in CookieCloud service to sync site data, service address: http://localhost:3000/cookiecloud',
|
||||||
|
serviceAddress: 'Service Address',
|
||||||
|
serviceAddressPlaceholder: 'https://movie-pilot.org/cookiecloud',
|
||||||
|
serviceAddressHint: 'Remote CookieCloud service address, format: https://movie-pilot.org/cookiecloud',
|
||||||
|
userKey: 'User KEY',
|
||||||
|
userKeyHint: 'User KEY generated by CookieCloud browser plugin',
|
||||||
|
e2ePassword: 'End-to-End Encryption Password',
|
||||||
|
e2ePasswordHint: 'End-to-end encryption password generated by CookieCloud browser plugin',
|
||||||
|
autoSyncInterval: 'Auto Sync Interval',
|
||||||
|
autoSyncIntervalHint:
|
||||||
|
'Time interval for automatically syncing site cookies from CookieCloud server to MoviePilot',
|
||||||
|
syncBlacklist: 'Sync Domain Blacklist',
|
||||||
|
syncBlacklistPlaceholder: 'Multiple domains, separated by commas',
|
||||||
|
syncBlacklistHint: 'CookieCloud sync domain blacklist, multiple domains separated by commas',
|
||||||
|
userAgent: 'Browser User-Agent',
|
||||||
|
userAgentHint: 'User-Agent of the browser with CookieCloud plugin',
|
||||||
|
siteDataRefresh: 'Site Data Refresh',
|
||||||
|
siteDataRefreshInterval: 'Site Data Refresh Interval',
|
||||||
|
siteDataRefreshIntervalHint: 'Time interval for refreshing site user upload/download data',
|
||||||
|
readSiteMessage: 'Read Site Messages',
|
||||||
|
readSiteMessageHint: 'Read site messages and send notifications when refreshing data',
|
||||||
|
siteReset: 'Site Reset',
|
||||||
|
confirmReset: 'Confirm to delete all site data and resync.',
|
||||||
|
confirmResetHint:
|
||||||
|
'Delete all site data and resync from CookieCloud. Please clear all related site settings before this operation.',
|
||||||
|
resetSites: 'Reset Site Data',
|
||||||
|
resettingSites: 'Resetting...',
|
||||||
|
syncInterval: {
|
||||||
|
hourly: 'Hourly',
|
||||||
|
every6Hours: 'Every 6 Hours',
|
||||||
|
every12Hours: 'Every 12 Hours',
|
||||||
|
daily: 'Daily',
|
||||||
|
weekly: 'Weekly',
|
||||||
|
monthly: 'Monthly',
|
||||||
|
never: 'Never',
|
||||||
|
},
|
||||||
|
saveSuccess: 'Site settings saved successfully',
|
||||||
|
saveFailed: 'Failed to save site settings!',
|
||||||
|
resetSuccess: 'Sites reset successfully, please wait for CookieCloud sync to complete!',
|
||||||
|
resetFailed: 'Failed to reset sites!',
|
||||||
|
},
|
||||||
notification: {
|
notification: {
|
||||||
channels: 'Notification Channels',
|
channels: 'Notification Channels',
|
||||||
channelsDesc: 'Set message sending channel parameters.',
|
channelsDesc: 'Set message sending channel parameters.',
|
||||||
@@ -644,7 +614,6 @@ export default {
|
|||||||
organizeSaveFailed: 'Failed to save organization options!',
|
organizeSaveFailed: 'Failed to save organization options!',
|
||||||
duplicateDirectoryName: 'Duplicate directory names exist! Cannot save, please modify!',
|
duplicateDirectoryName: 'Duplicate directory names exist! Cannot save, please modify!',
|
||||||
},
|
},
|
||||||
},
|
|
||||||
rule: {
|
rule: {
|
||||||
customRules: 'Custom Rules',
|
customRules: 'Custom Rules',
|
||||||
customRulesDesc: 'Custom priority rule items',
|
customRulesDesc: 'Custom priority rule items',
|
||||||
@@ -700,4 +669,40 @@ export default {
|
|||||||
waiting: 'Waiting',
|
waiting: 'Waiting',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
subscribe: {
|
||||||
|
basicSettings: 'Basic Settings',
|
||||||
|
basicSettingsDesc: 'Set subscription mode, cycle and other basic settings',
|
||||||
|
mode: 'Subscription Mode',
|
||||||
|
modeHint: 'Auto: automatically crawl site homepage, Site RSS: subscribe via site RSS link',
|
||||||
|
rssInterval: 'Site RSS Interval',
|
||||||
|
rssIntervalHint: 'Set the site RSS running cycle, effective when subscription mode is `Site RSS`',
|
||||||
|
filterRuleGroup: 'Subscription Priority Rule Group',
|
||||||
|
filterRuleGroupHint: 'Filter subscriptions based on selected filter rule groups',
|
||||||
|
bestVersionRuleGroup: 'Version Upgrade Priority Rule Group',
|
||||||
|
bestVersionRuleGroupHint: 'Filter version upgrade subscriptions based on selected filter rule groups',
|
||||||
|
timedSearch: 'Subscription Scheduled Search',
|
||||||
|
timedSearchHint: 'Search all sites every 24 hours to supplement resources that may be missed by subscription',
|
||||||
|
checkLocalMedia: 'Check Local Media Library',
|
||||||
|
checkLocalMediaHint: 'Check if resources exist on storage disk to avoid duplicate downloads',
|
||||||
|
subscribeSites: 'Subscription Sites',
|
||||||
|
subscribeSitesDesc: 'Only selected sites will be used in subscription.',
|
||||||
|
saveSuccess: 'Subscription sites saved successfully',
|
||||||
|
saveFailed: 'Failed to save subscription sites!',
|
||||||
|
settingsSaveSuccess: 'Subscription basic settings saved successfully',
|
||||||
|
settingsSaveFailed: 'Failed to save subscription basic settings!',
|
||||||
|
modes: {
|
||||||
|
auto: 'Auto',
|
||||||
|
rss: 'Site RSS',
|
||||||
|
},
|
||||||
|
intervals: {
|
||||||
|
min5: '5 minutes',
|
||||||
|
min10: '10 minutes',
|
||||||
|
min20: '20 minutes',
|
||||||
|
min30: '30 minutes',
|
||||||
|
hour1: '1 hour',
|
||||||
|
hour12: '12 hours',
|
||||||
|
day1: '1 day',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
+67
-65
@@ -242,39 +242,6 @@ export default {
|
|||||||
recognitionWords: '识别词',
|
recognitionWords: '识别词',
|
||||||
cancelShare: '取消分享',
|
cancelShare: '取消分享',
|
||||||
usageCount: '共 {count} 次复用',
|
usageCount: '共 {count} 次复用',
|
||||||
basicSettings: '基础设置',
|
|
||||||
basicSettingsDesc: '设定订阅模式、周期等基础设置',
|
|
||||||
mode: '订阅模式',
|
|
||||||
modeHint: '自动:自动爬取站点首页,站点RSS:通过站点RSS链接订阅',
|
|
||||||
rssInterval: '站点RSS周期',
|
|
||||||
rssIntervalHint: '设置站点RSS运行周期,在订阅模式为`站点RSS`时生效',
|
|
||||||
filterRuleGroup: '订阅优先级规则组',
|
|
||||||
filterRuleGroupHint: '按选定的过滤规则组对订阅进行过滤',
|
|
||||||
bestVersionRuleGroup: '洗版优先级规则组',
|
|
||||||
bestVersionRuleGroupHint: '按选定的过滤规则组对洗版订阅进行过滤',
|
|
||||||
timedSearch: '订阅定时搜索',
|
|
||||||
timedSearchHint: '每隔24小时全站搜索,以补全订阅可能漏掉的资源',
|
|
||||||
checkLocalMedia: '检查本地媒体库资源',
|
|
||||||
checkLocalMediaHint: '检查存储盘是否存在资源,以避免重复下载',
|
|
||||||
subscribeSites: '订阅站点',
|
|
||||||
subscribeSitesDesc: '只有选中的站点才会在订阅中使用。',
|
|
||||||
saveSuccess: '订阅站点保存成功',
|
|
||||||
saveFailed: '订阅站点保存失败!',
|
|
||||||
settingsSaveSuccess: '订阅基础设置保存成功',
|
|
||||||
settingsSaveFailed: '订阅基础设置保存失败!',
|
|
||||||
modes: {
|
|
||||||
auto: '自动',
|
|
||||||
rss: '站点RSS',
|
|
||||||
},
|
|
||||||
intervals: {
|
|
||||||
min5: '5分钟',
|
|
||||||
min10: '10分钟',
|
|
||||||
min20: '20分钟',
|
|
||||||
min30: '半小时',
|
|
||||||
hour1: '1小时',
|
|
||||||
hour12: '12小时',
|
|
||||||
day1: '1天',
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
recommend: {
|
recommend: {
|
||||||
all: '全部',
|
all: '全部',
|
||||||
@@ -400,38 +367,6 @@ export default {
|
|||||||
saveFailed: '站点设置保存失败!',
|
saveFailed: '站点设置保存失败!',
|
||||||
resetSuccess: '站点重置成功,请等待CookieCloud同步完成!',
|
resetSuccess: '站点重置成功,请等待CookieCloud同步完成!',
|
||||||
resetFailed: '站点重置失败!',
|
resetFailed: '站点重置失败!',
|
||||||
search: {
|
|
||||||
basicSettings: '基础设置',
|
|
||||||
basicSettingsDesc: '设定数据源、规则组等基础信息。',
|
|
||||||
recognizeSource: '识别数据源',
|
|
||||||
recognizeSourceDesc: '默认使用TMDB。豆瓣识别中文作品通常更友好,但有些国外作品信息不完整。',
|
|
||||||
themoviedb: 'TheMovieDb',
|
|
||||||
douban: '豆瓣',
|
|
||||||
filterRuleGroup: '过滤规则组',
|
|
||||||
filterRuleGroupDesc: '设置下载过程中使用的过滤规则组。',
|
|
||||||
downloadLabel: '下载任务标签',
|
|
||||||
downloadLabelDesc: '下载器中的下载标签,用于过滤查询。',
|
|
||||||
downloadLabelHint: '支持增加多个标签,英文逗号分隔',
|
|
||||||
downloadSite: '搜索站点',
|
|
||||||
downloadSiteDesc: '设置指定分类搜索的站点范围。',
|
|
||||||
movieSites: '电影站点',
|
|
||||||
tvSites: '电视剧站点',
|
|
||||||
animeSites: '动漫站点',
|
|
||||||
saveSites: '保存站点',
|
|
||||||
saveSuccess: '保存搜索设置成功',
|
|
||||||
saveFailed: '搜索设置保存失败!',
|
|
||||||
saveRuleFailed: '规则保存失败!',
|
|
||||||
movieCategory: '电影',
|
|
||||||
tvCategory: '电视剧',
|
|
||||||
animeCategory: '动漫',
|
|
||||||
downloadUser: '远程搜索自动下载用户',
|
|
||||||
downloadUserHint:
|
|
||||||
'使用Telegram、微信等远程搜索时是否自动下载,多个用户使用英文逗号分隔,设置为all代表所有用户自动下载',
|
|
||||||
multipleNameSearch: '多名称资源搜索',
|
|
||||||
multipleNameSearchHint: '使用多个名称(中文、英文等)搜索站点资源并合并搜索结果,会增加站点访问频率',
|
|
||||||
downloadSubtitle: '下载站点字幕',
|
|
||||||
downloadSubtitleHint: '检查站点资源是否有单独的字幕文件并自动下载',
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
message: {
|
message: {
|
||||||
loadMore: '加载更多',
|
loadMore: '加载更多',
|
||||||
@@ -612,6 +547,37 @@ export default {
|
|||||||
excludeWordsSaveSuccess: '文件整理屏蔽词保存成功',
|
excludeWordsSaveSuccess: '文件整理屏蔽词保存成功',
|
||||||
excludeWordsSaveFailed: '文件整理屏蔽词保存失败!',
|
excludeWordsSaveFailed: '文件整理屏蔽词保存失败!',
|
||||||
},
|
},
|
||||||
|
search: {
|
||||||
|
basicSettings: '基础设置',
|
||||||
|
basicSettingsDesc: '设定数据源、规则组等基础信息。',
|
||||||
|
recognizeSource: '识别数据源',
|
||||||
|
recognizeSourceDesc: '默认使用TMDB。豆瓣识别中文作品通常更友好,但有些国外作品信息不完整。',
|
||||||
|
themoviedb: 'TheMovieDb',
|
||||||
|
douban: '豆瓣',
|
||||||
|
filterRuleGroup: '过滤规则组',
|
||||||
|
filterRuleGroupDesc: '设置下载过程中使用的过滤规则组。',
|
||||||
|
downloadLabel: '下载任务标签',
|
||||||
|
downloadLabelDesc: '下载器中的下载标签,用于过滤查询。',
|
||||||
|
downloadLabelHint: '支持增加多个标签,英文逗号分隔',
|
||||||
|
downloadSite: '搜索站点',
|
||||||
|
downloadSiteDesc: '设置指定分类搜索的站点范围。',
|
||||||
|
movieSites: '电影站点',
|
||||||
|
tvSites: '电视剧站点',
|
||||||
|
animeSites: '动漫站点',
|
||||||
|
saveSites: '保存站点',
|
||||||
|
saveSuccess: '保存搜索设置成功',
|
||||||
|
saveFailed: '搜索设置保存失败!',
|
||||||
|
saveRuleFailed: '规则保存失败!',
|
||||||
|
movieCategory: '电影',
|
||||||
|
tvCategory: '电视剧',
|
||||||
|
animeCategory: '动漫',
|
||||||
|
downloadUser: '远程搜索自动下载用户',
|
||||||
|
downloadUserHint:
|
||||||
|
'使用Telegram、微信等远程搜索时是否自动下载,多个用户使用英文逗号分隔,设置为all代表所有用户自动下载',
|
||||||
|
multipleNameSearch: '多名称资源搜索',
|
||||||
|
multipleNameSearchHint: '使用多个名称(中文、英文等)搜索站点资源并合并搜索结果,会增加站点访问频率',
|
||||||
|
downloadSubtitle: '下载站点字幕',
|
||||||
|
downloadSubtitleHint: '检查站点资源是否有单独的字幕文件并自动下载',
|
||||||
},
|
},
|
||||||
directory: {
|
directory: {
|
||||||
storage: '存储',
|
storage: '存储',
|
||||||
@@ -688,4 +654,40 @@ export default {
|
|||||||
waiting: '等待',
|
waiting: '等待',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
subscribe: {
|
||||||
|
basicSettings: '基础设置',
|
||||||
|
basicSettingsDesc: '设定订阅模式、周期等基础设置',
|
||||||
|
mode: '订阅模式',
|
||||||
|
modeHint: '自动:自动爬取站点首页,站点RSS:通过站点RSS链接订阅',
|
||||||
|
rssInterval: '站点RSS周期',
|
||||||
|
rssIntervalHint: '设置站点RSS运行周期,在订阅模式为`站点RSS`时生效',
|
||||||
|
filterRuleGroup: '订阅优先级规则组',
|
||||||
|
filterRuleGroupHint: '按选定的过滤规则组对订阅进行过滤',
|
||||||
|
bestVersionRuleGroup: '洗版优先级规则组',
|
||||||
|
bestVersionRuleGroupHint: '按选定的过滤规则组对洗版订阅进行过滤',
|
||||||
|
timedSearch: '订阅定时搜索',
|
||||||
|
timedSearchHint: '每隔24小时全站搜索,以补全订阅可能漏掉的资源',
|
||||||
|
checkLocalMedia: '检查本地媒体库资源',
|
||||||
|
checkLocalMediaHint: '检查存储盘是否存在资源,以避免重复下载',
|
||||||
|
subscribeSites: '订阅站点',
|
||||||
|
subscribeSitesDesc: '只有选中的站点才会在订阅中使用。',
|
||||||
|
saveSuccess: '订阅站点保存成功',
|
||||||
|
saveFailed: '订阅站点保存失败!',
|
||||||
|
settingsSaveSuccess: '订阅基础设置保存成功',
|
||||||
|
settingsSaveFailed: '订阅基础设置保存失败!',
|
||||||
|
modes: {
|
||||||
|
auto: '自动',
|
||||||
|
rss: '站点RSS',
|
||||||
|
},
|
||||||
|
intervals: {
|
||||||
|
min5: '5分钟',
|
||||||
|
min10: '10分钟',
|
||||||
|
min20: '20分钟',
|
||||||
|
min30: '半小时',
|
||||||
|
hour1: '1小时',
|
||||||
|
hour12: '12小时',
|
||||||
|
day1: '1天',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ const progressDialog = ref(false)
|
|||||||
const isConfirmResetSites = ref(false)
|
const isConfirmResetSites = ref(false)
|
||||||
|
|
||||||
// 站点重置按钮文本
|
// 站点重置按钮文本
|
||||||
const resetSitesText = ref(t('site.resetSites'))
|
const resetSitesText = ref(t('setting.site.resetSites'))
|
||||||
|
|
||||||
// 站点重置按钮可用状态
|
// 站点重置按钮可用状态
|
||||||
const resetSitesDisabled = ref(false)
|
const resetSitesDisabled = ref(false)
|
||||||
@@ -43,37 +43,37 @@ const siteSetting = ref<any>({
|
|||||||
|
|
||||||
// 同步间隔下拉框
|
// 同步间隔下拉框
|
||||||
const CookieCloudIntervalItems = [
|
const CookieCloudIntervalItems = [
|
||||||
{ title: t('site.syncInterval.hourly'), value: 60 },
|
{ title: t('setting.site.syncInterval.hourly'), value: 60 },
|
||||||
{ title: t('site.syncInterval.every6Hours'), value: 360 },
|
{ title: t('setting.site.syncInterval.every6Hours'), value: 360 },
|
||||||
{ title: t('site.syncInterval.every12Hours'), value: 720 },
|
{ title: t('setting.site.syncInterval.every12Hours'), value: 720 },
|
||||||
{ title: t('site.syncInterval.daily'), value: 1440 },
|
{ title: t('setting.site.syncInterval.daily'), value: 1440 },
|
||||||
{ title: t('site.syncInterval.weekly'), value: 10080 },
|
{ title: t('setting.site.syncInterval.weekly'), value: 10080 },
|
||||||
{ title: t('site.syncInterval.monthly'), value: 43200 },
|
{ title: t('setting.site.syncInterval.monthly'), value: 43200 },
|
||||||
{ title: t('site.syncInterval.never'), value: 0 },
|
{ title: t('setting.site.syncInterval.never'), value: 0 },
|
||||||
]
|
]
|
||||||
|
|
||||||
// 站点数据刷新间隔
|
// 站点数据刷新间隔
|
||||||
const SiteDataRefreshIntervalItems = [
|
const SiteDataRefreshIntervalItems = [
|
||||||
{ title: t('site.syncInterval.hourly'), value: 1 },
|
{ title: t('setting.site.syncInterval.hourly'), value: 1 },
|
||||||
{ title: t('site.syncInterval.every6Hours'), value: 6 },
|
{ title: t('setting.site.syncInterval.every6Hours'), value: 6 },
|
||||||
{ title: t('site.syncInterval.every12Hours'), value: 12 },
|
{ title: t('setting.site.syncInterval.every12Hours'), value: 12 },
|
||||||
{ title: t('site.syncInterval.daily'), value: 24 },
|
{ title: t('setting.site.syncInterval.daily'), value: 24 },
|
||||||
{ title: t('site.syncInterval.weekly'), value: 168 },
|
{ title: t('setting.site.syncInterval.weekly'), value: 168 },
|
||||||
{ title: t('site.syncInterval.never'), value: 0 },
|
{ title: t('setting.site.syncInterval.never'), value: 0 },
|
||||||
]
|
]
|
||||||
|
|
||||||
// 重置站点
|
// 重置站点
|
||||||
async function resetSites() {
|
async function resetSites() {
|
||||||
try {
|
try {
|
||||||
resetSitesDisabled.value = true
|
resetSitesDisabled.value = true
|
||||||
resetSitesText.value = t('site.resettingSites')
|
resetSitesText.value = t('setting.site.resettingSites')
|
||||||
|
|
||||||
const result: { [key: string]: any } = await api.get('site/reset')
|
const result: { [key: string]: any } = await api.get('site/reset')
|
||||||
if (result.success) $toast.success(t('site.resetSuccess'))
|
if (result.success) $toast.success(t('setting.site.resetSuccess'))
|
||||||
else $toast.error(t('site.resetFailed'))
|
else $toast.error(t('setting.site.resetFailed'))
|
||||||
|
|
||||||
resetSitesDisabled.value = false
|
resetSitesDisabled.value = false
|
||||||
resetSitesText.value = t('site.resetSites')
|
resetSitesText.value = t('setting.site.resetSites')
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.log(error)
|
console.log(error)
|
||||||
}
|
}
|
||||||
@@ -115,10 +115,10 @@ async function saveSiteSetting(value: { [key: string]: any }) {
|
|||||||
try {
|
try {
|
||||||
const result: { [key: string]: any } = await api.post('system/env', value)
|
const result: { [key: string]: any } = await api.post('system/env', value)
|
||||||
if (result.success) {
|
if (result.success) {
|
||||||
$toast.success(t('site.saveSuccess'))
|
$toast.success(t('setting.site.saveSuccess'))
|
||||||
await reloadSystem()
|
await reloadSystem()
|
||||||
} else {
|
} else {
|
||||||
$toast.error(t('site.saveFailed'))
|
$toast.error(t('setting.site.saveFailed'))
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.log(error)
|
console.log(error)
|
||||||
@@ -137,8 +137,8 @@ onMounted(() => {
|
|||||||
<VCol cols="12">
|
<VCol cols="12">
|
||||||
<VCard>
|
<VCard>
|
||||||
<VCardItem>
|
<VCardItem>
|
||||||
<VCardTitle>{{ t('site.siteSync') }}</VCardTitle>
|
<VCardTitle>{{ t('setting.site.siteSync') }}</VCardTitle>
|
||||||
<VCardSubtitle>{{ t('site.siteSyncDesc') }}</VCardSubtitle>
|
<VCardSubtitle>{{ t('setting.site.siteSyncDesc') }}</VCardSubtitle>
|
||||||
</VCardItem>
|
</VCardItem>
|
||||||
<VCardText>
|
<VCardText>
|
||||||
<VForm>
|
<VForm>
|
||||||
@@ -146,8 +146,8 @@ onMounted(() => {
|
|||||||
<VCol cols="12" md="6">
|
<VCol cols="12" md="6">
|
||||||
<VCheckbox
|
<VCheckbox
|
||||||
v-model="siteSetting.CookieCloud.COOKIECLOUD_ENABLE_LOCAL"
|
v-model="siteSetting.CookieCloud.COOKIECLOUD_ENABLE_LOCAL"
|
||||||
:label="t('site.enableLocalCookieCloud')"
|
:label="t('setting.site.enableLocalCookieCloud')"
|
||||||
:hint="t('site.enableLocalCookieCloudHint')"
|
:hint="t('setting.site.enableLocalCookieCloudHint')"
|
||||||
persistent-hint
|
persistent-hint
|
||||||
/>
|
/>
|
||||||
</VCol>
|
</VCol>
|
||||||
@@ -156,18 +156,18 @@ onMounted(() => {
|
|||||||
<VCol cols="12" md="6">
|
<VCol cols="12" md="6">
|
||||||
<VTextField
|
<VTextField
|
||||||
v-model="siteSetting.CookieCloud.COOKIECLOUD_HOST"
|
v-model="siteSetting.CookieCloud.COOKIECLOUD_HOST"
|
||||||
:label="t('site.serviceAddress')"
|
:label="t('setting.site.serviceAddress')"
|
||||||
:placeholder="t('site.serviceAddressPlaceholder')"
|
:placeholder="t('setting.site.serviceAddressPlaceholder')"
|
||||||
:disabled="siteSetting.CookieCloud.COOKIECLOUD_ENABLE_LOCAL"
|
:disabled="siteSetting.CookieCloud.COOKIECLOUD_ENABLE_LOCAL"
|
||||||
:hint="t('site.serviceAddressHint')"
|
:hint="t('setting.site.serviceAddressHint')"
|
||||||
persistent-hint
|
persistent-hint
|
||||||
/>
|
/>
|
||||||
</VCol>
|
</VCol>
|
||||||
<VCol cols="12" md="6">
|
<VCol cols="12" md="6">
|
||||||
<VTextField
|
<VTextField
|
||||||
v-model="siteSetting.CookieCloud.COOKIECLOUD_KEY"
|
v-model="siteSetting.CookieCloud.COOKIECLOUD_KEY"
|
||||||
:label="t('site.userKey')"
|
:label="t('setting.site.userKey')"
|
||||||
:hint="t('site.userKeyHint')"
|
:hint="t('setting.site.userKeyHint')"
|
||||||
persistent-hint
|
persistent-hint
|
||||||
/>
|
/>
|
||||||
</VCol>
|
</VCol>
|
||||||
@@ -177,34 +177,34 @@ onMounted(() => {
|
|||||||
:type="isPasswordVisible ? 'text' : 'password'"
|
:type="isPasswordVisible ? 'text' : 'password'"
|
||||||
:append-inner-icon="isPasswordVisible ? 'mdi-eye-off-outline' : 'mdi-eye-outline'"
|
:append-inner-icon="isPasswordVisible ? 'mdi-eye-off-outline' : 'mdi-eye-outline'"
|
||||||
@click:append-inner="isPasswordVisible = !isPasswordVisible"
|
@click:append-inner="isPasswordVisible = !isPasswordVisible"
|
||||||
:label="t('site.e2ePassword')"
|
:label="t('setting.site.e2ePassword')"
|
||||||
:hint="t('site.e2ePasswordHint')"
|
:hint="t('setting.site.e2ePasswordHint')"
|
||||||
persistent-hint
|
persistent-hint
|
||||||
/>
|
/>
|
||||||
</VCol>
|
</VCol>
|
||||||
<VCol cols="12" md="6">
|
<VCol cols="12" md="6">
|
||||||
<VSelect
|
<VSelect
|
||||||
v-model="siteSetting.CookieCloud.COOKIECLOUD_INTERVAL"
|
v-model="siteSetting.CookieCloud.COOKIECLOUD_INTERVAL"
|
||||||
:label="t('site.autoSyncInterval')"
|
:label="t('setting.site.autoSyncInterval')"
|
||||||
:items="CookieCloudIntervalItems"
|
:items="CookieCloudIntervalItems"
|
||||||
:hint="t('site.autoSyncIntervalHint')"
|
:hint="t('setting.site.autoSyncIntervalHint')"
|
||||||
persistent-hint
|
persistent-hint
|
||||||
/>
|
/>
|
||||||
</VCol>
|
</VCol>
|
||||||
<VCol cols="12" md="6">
|
<VCol cols="12" md="6">
|
||||||
<VTextField
|
<VTextField
|
||||||
v-model="siteSetting.CookieCloud.COOKIECLOUD_BLACKLIST"
|
v-model="siteSetting.CookieCloud.COOKIECLOUD_BLACKLIST"
|
||||||
:label="t('site.syncBlacklist')"
|
:label="t('setting.site.syncBlacklist')"
|
||||||
:placeholder="t('site.syncBlacklistPlaceholder')"
|
:placeholder="t('setting.site.syncBlacklistPlaceholder')"
|
||||||
:hint="t('site.syncBlacklistHint')"
|
:hint="t('setting.site.syncBlacklistHint')"
|
||||||
persistent-hint
|
persistent-hint
|
||||||
/>
|
/>
|
||||||
</VCol>
|
</VCol>
|
||||||
<VCol cols="12" md="6">
|
<VCol cols="12" md="6">
|
||||||
<VTextField
|
<VTextField
|
||||||
v-model="siteSetting.CookieCloud.USER_AGENT"
|
v-model="siteSetting.CookieCloud.USER_AGENT"
|
||||||
:label="t('site.userAgent')"
|
:label="t('setting.site.userAgent')"
|
||||||
:hint="t('site.userAgentHint')"
|
:hint="t('setting.site.userAgentHint')"
|
||||||
persistent-hint
|
persistent-hint
|
||||||
/>
|
/>
|
||||||
</VCol>
|
</VCol>
|
||||||
@@ -223,16 +223,16 @@ onMounted(() => {
|
|||||||
</VRow>
|
</VRow>
|
||||||
<VRow>
|
<VRow>
|
||||||
<VCol cols="12">
|
<VCol cols="12">
|
||||||
<VCard :title="t('site.siteDataRefresh')">
|
<VCard :title="t('setting.site.siteDataRefresh')">
|
||||||
<VCardText>
|
<VCardText>
|
||||||
<VForm>
|
<VForm>
|
||||||
<VRow>
|
<VRow>
|
||||||
<VCol cols="12" md="6">
|
<VCol cols="12" md="6">
|
||||||
<VSelect
|
<VSelect
|
||||||
v-model="siteSetting.Site.SITEDATA_REFRESH_INTERVAL"
|
v-model="siteSetting.Site.SITEDATA_REFRESH_INTERVAL"
|
||||||
:label="t('site.siteDataRefreshInterval')"
|
:label="t('setting.site.siteDataRefreshInterval')"
|
||||||
:items="SiteDataRefreshIntervalItems"
|
:items="SiteDataRefreshIntervalItems"
|
||||||
:hint="t('site.siteDataRefreshIntervalHint')"
|
:hint="t('setting.site.siteDataRefreshIntervalHint')"
|
||||||
persistent-hint
|
persistent-hint
|
||||||
/>
|
/>
|
||||||
</VCol>
|
</VCol>
|
||||||
@@ -241,8 +241,8 @@ onMounted(() => {
|
|||||||
<VCol cols="12" md="6">
|
<VCol cols="12" md="6">
|
||||||
<VSwitch
|
<VSwitch
|
||||||
v-model="siteSetting.Site.SITE_MESSAGE"
|
v-model="siteSetting.Site.SITE_MESSAGE"
|
||||||
:label="t('site.readSiteMessage')"
|
:label="t('setting.site.readSiteMessage')"
|
||||||
:hint="t('site.readSiteMessageHint')"
|
:hint="t('setting.site.readSiteMessageHint')"
|
||||||
persistent-hint
|
persistent-hint
|
||||||
/>
|
/>
|
||||||
</VCol>
|
</VCol>
|
||||||
@@ -261,13 +261,13 @@ onMounted(() => {
|
|||||||
</VRow>
|
</VRow>
|
||||||
<VRow>
|
<VRow>
|
||||||
<VCol cols="12">
|
<VCol cols="12">
|
||||||
<VCard :title="t('site.siteReset')">
|
<VCard :title="t('setting.site.siteReset')">
|
||||||
<VCardText>
|
<VCardText>
|
||||||
<div>
|
<div>
|
||||||
<VCheckbox
|
<VCheckbox
|
||||||
v-model="isConfirmResetSites"
|
v-model="isConfirmResetSites"
|
||||||
:label="t('site.confirmReset')"
|
:label="t('setting.site.confirmReset')"
|
||||||
:hint="t('site.confirmResetHint')"
|
:hint="t('setting.site.confirmResetHint')"
|
||||||
persistent-hint
|
persistent-hint
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user