diff --git a/frontend/src/pages/inbounds/ClientRowTable.vue b/frontend/src/pages/inbounds/ClientRowTable.vue index 98521547..1afd5fe0 100644 --- a/frontend/src/pages/inbounds/ClientRowTable.vue +++ b/frontend/src/pages/inbounds/ClientRowTable.vue @@ -13,6 +13,9 @@ import { Modal } from 'ant-design-vue'; import { SizeFormatter, IntlUtil, ColorUtils } from '@/utils'; import InfinityIcon from '@/components/InfinityIcon.vue'; +import { useDatepicker } from '@/composables/useDatepicker.js'; + +const { datepicker } = useDatepicker(); const { t } = useI18n(); @@ -85,7 +88,7 @@ function isClientOnline(email) { function lastOnlineLabel(email) { const ts = props.lastOnlineMap[email]; if (!ts) return '-'; - return IntlUtil.formatDate(ts); + return IntlUtil.formatDate(ts, datepicker.value); } function statsProgress(email) { @@ -299,7 +302,7 @@ function rowKey(client) {
{{ IntlUtil.formatRelativeTime(client.expiryTime) }} diff --git a/frontend/src/pages/inbounds/InboundInfoModal.vue b/frontend/src/pages/inbounds/InboundInfoModal.vue index b9ce3974..92dd66c8 100644 --- a/frontend/src/pages/inbounds/InboundInfoModal.vue +++ b/frontend/src/pages/inbounds/InboundInfoModal.vue @@ -14,8 +14,10 @@ import { } from '@/utils'; import { Inbound, Protocols } from '@/models/inbound.js'; import InfinityIcon from '@/components/InfinityIcon.vue'; +import { useDatepicker } from '@/composables/useDatepicker.js'; const { t } = useI18n(); +const { datepicker } = useDatepicker(); // One modal handles every protocol's info / share view because the // legacy template did the same. The big v-if forks at the top decide @@ -103,7 +105,7 @@ function getRemainingStats() { function formatLastOnline(email) { const ts = props.lastOnlineMap[email]; if (!ts) return '-'; - return IntlUtil.formatDate(ts); + return IntlUtil.formatDate(ts, datepicker.value); } // === IP log ======================================================== @@ -619,14 +621,14 @@ const showSubscriptionTab = computed( {{ t('pages.inbounds.createdAt') }} - {{ IntlUtil.formatDate(clientSettings.created_at) }} + {{ IntlUtil.formatDate(clientSettings.created_at, datepicker) }} - {{ t('pages.inbounds.updatedAt') }} - {{ IntlUtil.formatDate(clientSettings.updated_at) }} + {{ IntlUtil.formatDate(clientSettings.updated_at, datepicker) }} - @@ -688,7 +690,7 @@ const showSubscriptionTab = computed( {{ - IntlUtil.formatDate(clientSettings.expiryTime) }} + IntlUtil.formatDate(clientSettings.expiryTime, datepicker) }} {{ clientSettings.expiryTime / -86400000 }} {{ t('day') }} diff --git a/frontend/src/pages/inbounds/InboundList.vue b/frontend/src/pages/inbounds/InboundList.vue index 256683d4..ada3b799 100644 --- a/frontend/src/pages/inbounds/InboundList.vue +++ b/frontend/src/pages/inbounds/InboundList.vue @@ -30,6 +30,9 @@ import { DBInbound } from '@/models/dbinbound.js'; import { Inbound } from '@/models/inbound.js'; import InfinityIcon from '@/components/InfinityIcon.vue'; import ClientRowTable from './ClientRowTable.vue'; +import { useDatepicker } from '@/composables/useDatepicker.js'; + +const { datepicker } = useDatepicker(); const { t } = useI18n(); @@ -469,7 +472,7 @@ function showQrCodeMenu(dbInbound) {