Update backup schedule description translations #4017

This commit is contained in:
advplyr 2025-02-21 18:18:16 -06:00
parent 799879d67d
commit 19a65dba98
4 changed files with 25 additions and 10 deletions

View File

@ -122,7 +122,7 @@ export default {
}, },
scheduleDescription() { scheduleDescription() {
if (!this.cronExpression) return '' if (!this.cronExpression) return ''
const parsed = this.$parseCronExpression(this.cronExpression) const parsed = this.$parseCronExpression(this.cronExpression, this)
return parsed ? parsed.description : `${this.$strings.LabelCustomCronExpression} ${this.cronExpression}` return parsed ? parsed.description : `${this.$strings.LabelCustomCronExpression} ${this.cronExpression}`
}, },
nextBackupDate() { nextBackupDate() {

View File

@ -107,6 +107,19 @@ Vue.prototype.$formatNumber = (num) => {
return Intl.NumberFormat(Vue.prototype.$languageCodes.current).format(num) return Intl.NumberFormat(Vue.prototype.$languageCodes.current).format(num)
} }
/**
* Get the days of the week for the current language
* Starts with Sunday
* @returns {string[]}
*/
Vue.prototype.$getDaysOfWeek = () => {
const days = []
for (let i = 0; i < 7; i++) {
days.push(new Date(2025, 0, 5 + i).toLocaleString(Vue.prototype.$languageCodes.current, { weekday: 'long' }))
}
return days
}
const translations = { const translations = {
[defaultCode]: enUsStrings [defaultCode]: enUsStrings
} }
@ -148,6 +161,7 @@ async function loadi18n(code) {
Vue.prototype.$setDateFnsLocale(languageCodeMap[code].dateFnsLocale) Vue.prototype.$setDateFnsLocale(languageCodeMap[code].dateFnsLocale)
this?.$eventBus?.$emit('change-lang', code) this?.$eventBus?.$emit('change-lang', code)
return true return true
} }

View File

@ -93,7 +93,7 @@ Vue.prototype.$elapsedPrettyExtended = (seconds, useDays = true, showSeconds = t
return strs.join(' ') return strs.join(' ')
} }
Vue.prototype.$parseCronExpression = (expression) => { Vue.prototype.$parseCronExpression = (expression, context) => {
if (!expression) return null if (!expression) return null
const pieces = expression.split(' ') const pieces = expression.split(' ')
if (pieces.length !== 5) { if (pieces.length !== 5) {
@ -102,31 +102,31 @@ Vue.prototype.$parseCronExpression = (expression) => {
const commonPatterns = [ const commonPatterns = [
{ {
text: 'Every 12 hours', text: context.$strings.LabelIntervalEvery12Hours,
value: '0 */12 * * *' value: '0 */12 * * *'
}, },
{ {
text: 'Every 6 hours', text: context.$strings.LabelIntervalEvery6Hours,
value: '0 */6 * * *' value: '0 */6 * * *'
}, },
{ {
text: 'Every 2 hours', text: context.$strings.LabelIntervalEvery2Hours,
value: '0 */2 * * *' value: '0 */2 * * *'
}, },
{ {
text: 'Every hour', text: context.$strings.LabelIntervalEveryHour,
value: '0 * * * *' value: '0 * * * *'
}, },
{ {
text: 'Every 30 minutes', text: context.$strings.LabelIntervalEvery30Minutes,
value: '*/30 * * * *' value: '*/30 * * * *'
}, },
{ {
text: 'Every 15 minutes', text: context.$strings.LabelIntervalEvery15Minutes,
value: '*/15 * * * *' value: '*/15 * * * *'
}, },
{ {
text: 'Every minute', text: context.$strings.LabelIntervalEveryMinute,
value: '* * * * *' value: '* * * * *'
} }
] ]
@ -147,7 +147,7 @@ Vue.prototype.$parseCronExpression = (expression) => {
return null return null
} }
const weekdays = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'] const weekdays = context.$getDaysOfWeek()
var weekdayText = 'day' var weekdayText = 'day'
if (pieces[4] !== '*') if (pieces[4] !== '*')
weekdayText = pieces[4] weekdayText = pieces[4]

View File

@ -393,6 +393,7 @@
"LabelIntervalEvery6Hours": "Every 6 hours", "LabelIntervalEvery6Hours": "Every 6 hours",
"LabelIntervalEveryDay": "Every day", "LabelIntervalEveryDay": "Every day",
"LabelIntervalEveryHour": "Every hour", "LabelIntervalEveryHour": "Every hour",
"LabelIntervalEveryMinute": "Every minute",
"LabelInvert": "Invert", "LabelInvert": "Invert",
"LabelItem": "Item", "LabelItem": "Item",
"LabelJumpBackwardAmount": "Jump backward amount", "LabelJumpBackwardAmount": "Jump backward amount",