From dbc104f8375dd0bd138ba79ec1d4b2a328365d9f Mon Sep 17 00:00:00 2001 From: cnachtigall1991 <40701475+cnachtigall1991@users.noreply.github.com> Date: Sun, 17 Oct 2021 22:54:57 +0200 Subject: [PATCH] fixed date bug that displayed 1 hours instead of 1 hour --- src/utils/DateTime.js | 64 ++++++++++++++++++++++--------------------- 1 file changed, 33 insertions(+), 31 deletions(-) diff --git a/src/utils/DateTime.js b/src/utils/DateTime.js index 128ab7e..a8bfda1 100644 --- a/src/utils/DateTime.js +++ b/src/utils/DateTime.js @@ -1,48 +1,50 @@ import {DateTime, Duration} from "luxon/build/es6/luxon"; export const FormatDuration = (d) => { - const duration = Duration.fromObject({hours: 0, minutes: 0, seconds: d}).normalize().toObject() + const duration = Duration.fromObject({hours: 0, minutes: 0, seconds: d}).normalize().toObject() - if (duration.hours > 1) - return `${duration.hours} h ${duration.minutes} min` - else if (duration.hours < 1) - return `${duration.minutes} min` + if (duration.hours > 1) + return `${duration.hours} h ${duration.minutes} min` + else if (duration.hours < 1) + return `${duration.minutes} min` } export const FormatFullDuration = (d) => { - const duration = Duration.fromObject({hours: 0, minutes: 0, seconds: d}).normalize() + const duration = Duration.fromObject({hours: 0, minutes: 0, seconds: d}).normalize() - if (duration.hours > 1) - return duration.toFormat('hh:mm:ss') - else if (duration.hours < 1) - return duration.toFormat('mm:ss') + if (duration.hours > 1) + return duration.toFormat('hh:mm:ss') + else if (duration.hours < 1) + return duration.toFormat('mm:ss') } export const FormatDate = (date) => { - const matchDate = DateTime.fromISO(date) - const diff = DateTime.now().diff(matchDate) + const matchDate = DateTime.fromISO(date) + const diff = DateTime.now().diff(matchDate) - if (diff.as('days') > 10) - return matchDate.toLocaleString({weekday: 'short', day: '2-digit', month: '2-digit', year: 'numeric'}) - else if (diff.as('days') < 1) - if (diff.as('hours') < 1) - return Math.floor(diff.as('minutes')) + ' minutes ago' - else - return Math.floor(diff.as('hours')) + ' hours ago' + if (diff.as('days') > 10) + return matchDate.toLocaleString({weekday: 'short', day: '2-digit', month: '2-digit', year: 'numeric'}) + else if (diff.as('days') < 1) + if (diff.as('hours') < 1) + return Math.floor(diff.as('minutes')) + ' minutes ago' + else if (Math.floor(diff.as('hours')) === 1) + return Math.floor(diff.as('hours')) + ' hour ago' else - return Math.floor(diff.as('days')) + ' days ago' + return Math.floor(diff.as('hours')) + ' hours ago' + else + return Math.floor(diff.as('days')) + ' days ago' } export const FormatFullDate = (date) => { - const matchDate = DateTime.fromISO(date) + const matchDate = DateTime.fromISO(date) - return matchDate.toLocaleString({ - weekday: 'short', - day: '2-digit', - month: '2-digit', - year: 'numeric', - hour: '2-digit', - minute: '2-digit', - second: '2-digit' - }) -} \ No newline at end of file + return matchDate.toLocaleString({ + weekday: 'short', + day: '2-digit', + month: '2-digit', + year: 'numeric', + hour: '2-digit', + minute: '2-digit', + second: '2-digit' + }) +}