diff options
author | Anton Tananaev <anton@traccar.org> | 2022-11-06 17:00:03 -0800 |
---|---|---|
committer | Anton Tananaev <anton@traccar.org> | 2022-11-06 17:00:03 -0800 |
commit | a9c8b1b6c513257a5fd69cf00992d4fec59d6069 (patch) | |
tree | b2fa1bd33ae8766affb4ac1cfdba2dde5a9a54de /modern/src/common | |
parent | 4d6d5eca8c6ee8c43340d18d323816885edeb9da (diff) | |
download | trackermap-web-a9c8b1b6c513257a5fd69cf00992d4fec59d6069.tar.gz trackermap-web-a9c8b1b6c513257a5fd69cf00992d4fec59d6069.tar.bz2 trackermap-web-a9c8b1b6c513257a5fd69cf00992d4fec59d6069.zip |
Respect 12 hour time
Diffstat (limited to 'modern/src/common')
-rw-r--r-- | modern/src/common/components/PositionValue.js | 3 | ||||
-rw-r--r-- | modern/src/common/util/formatter.js | 17 |
2 files changed, 18 insertions, 2 deletions
diff --git a/modern/src/common/components/PositionValue.js b/modern/src/common/components/PositionValue.js index a851c886..27f793c6 100644 --- a/modern/src/common/components/PositionValue.js +++ b/modern/src/common/components/PositionValue.js @@ -24,13 +24,14 @@ const PositionValue = ({ position, property, attribute }) => { const altitudeUnit = useAttributePreference('altitudeUnit'); const speedUnit = useAttributePreference('speedUnit'); const coordinateFormat = usePreference('coordinateFormat'); + const hours12 = usePreference('twelveHourFormat'); const formatValue = () => { switch (key) { case 'fixTime': case 'deviceTime': case 'serverTime': - return formatTime(value); + return formatTime(value, 'seconds', hours12); case 'latitude': return formatCoordinate('latitude', value, coordinateFormat); case 'longitude': diff --git a/modern/src/common/util/formatter.js b/modern/src/common/util/formatter.js index 88398c68..56c02547 100644 --- a/modern/src/common/util/formatter.js +++ b/modern/src/common/util/formatter.js @@ -17,7 +17,22 @@ export const formatNumber = (value, precision = 1) => Number(value.toFixed(preci export const formatPercentage = (value) => `${value}%`; -export const formatTime = (value, format = 'YYYY-MM-DD HH:mm:ss') => (value ? moment(value).format(format) : ''); +export const formatTime = (value, format, hours12) => { + if (value) { + const m = moment(value); + switch (format) { + case 'date': + return m.format('YYYY-MM-DD'); + case 'time': + return m.format(hours12 ? 'hh:mm:ss A' : 'HH:mm:ss'); + case 'minutes': + return m.format(hours12 ? 'YYYY-MM-DD hh:mm A' : 'YYYY-MM-DD HH:mm'); + default: + return m.format(hours12 ? 'YYYY-MM-DD hh:mm:ss A' : 'YYYY-MM-DD HH:mm:ss'); + } + } + return ''; +}; export const formatStatus = (value, t) => t(prefixString('deviceStatus', value)); export const formatAlarm = (value, t) => (value ? t(prefixString('alarm', value)) : ''); |