diff options
Diffstat (limited to 'web/source/frontend/index.js')
| -rw-r--r-- | web/source/frontend/index.js | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/web/source/frontend/index.js b/web/source/frontend/index.js index b9de769bd..860d6d10a 100644 --- a/web/source/frontend/index.js +++ b/web/source/frontend/index.js @@ -315,22 +315,26 @@ function inLightbox(element) { lightbox.pswp.currSlide.data.attachmentId; } +// Define + reuse one DateTimeFormat (cheaper). +const dateTimeFormat = Intl.DateTimeFormat( + undefined, + { + year: 'numeric', + month: 'short', + day: '2-digit', + hour: '2-digit', + minute: '2-digit', + hour12: false + }, +); + +// Reformat time text to browser locale. Array.from(document.getElementsByTagName('time')).forEach(timeTag => { const datetime = timeTag.getAttribute('datetime'); const currentText = timeTag.textContent.trim(); // Only format if current text contains precise time. if (currentText.match(/\d{2}:\d{2}/)) { const date = new Date(datetime); - timeTag.textContent = date.toLocaleString( - undefined, - { - year: 'numeric', - month: 'short', - day: '2-digit', - hour: '2-digit', - minute: '2-digit', - hour12: false - }, - ); + timeTag.textContent = dateTimeFormat.format(date); } }); |
