date filter formatting
This commit is contained in:
parent
63f84b5ec2
commit
bd20394175
4 changed files with 44 additions and 3 deletions
36
src/filters/dateFilter.js
Normal file
36
src/filters/dateFilter.js
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
/*
|
||||||
|
Stolen from https://stackoverflow.com/a/31615643
|
||||||
|
via https://github.com/andy-piccalilli/hylia
|
||||||
|
*/
|
||||||
|
const appendSuffix = (n) => {
|
||||||
|
var s = ['th', 'st', 'nd', 'rd'],
|
||||||
|
v = n % 100
|
||||||
|
return n + (s[(v - 20) % 10] || s[v] || s[0])
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = function dateFilter(value) {
|
||||||
|
const dateObject = new Date(value)
|
||||||
|
|
||||||
|
const months = [
|
||||||
|
'January',
|
||||||
|
'February',
|
||||||
|
'March',
|
||||||
|
'April',
|
||||||
|
'May',
|
||||||
|
'June',
|
||||||
|
'July',
|
||||||
|
'August',
|
||||||
|
'September',
|
||||||
|
'October',
|
||||||
|
'November',
|
||||||
|
'December'
|
||||||
|
]
|
||||||
|
// fixes off by one day error
|
||||||
|
let datePlusOne = dateObject.getDate() + 1
|
||||||
|
|
||||||
|
const dayWithSuffix = appendSuffix(dateObject.getDate())
|
||||||
|
|
||||||
|
return `${
|
||||||
|
months[dateObject.getMonth()]
|
||||||
|
} ${datePlusOne}, ${dateObject.getFullYear()}`
|
||||||
|
}
|
||||||
4
src/filters/w3DateFilter.js
Normal file
4
src/filters/w3DateFilter.js
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
module.exports = function w3cDate(value) {
|
||||||
|
const dateObject = new Date(value)
|
||||||
|
return dateObject.toISOString()
|
||||||
|
}
|
||||||
|
|
@ -1,9 +1,10 @@
|
||||||
---
|
---
|
||||||
layout: base
|
layout: base
|
||||||
---
|
---
|
||||||
|
<p>« Back to posts</p>
|
||||||
<article>
|
<article>
|
||||||
<h2>{{ title }}</h2>
|
<h2>{{ title }}</h2>
|
||||||
|
<time>{{ date | dateFilter }}</time>
|
||||||
{{ content | safe }}
|
{{ content | safe }}
|
||||||
{% for tag in tags %}
|
{% for tag in tags %}
|
||||||
{% set tagUrl %}/tags/{{ tag | slug }}/{% endset %}
|
{% set tagUrl %}/tags/{{ tag | slug }}/{% endset %}
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,8 @@
|
||||||
{{ post.data.title }}
|
{{ post.data.title }}
|
||||||
</h2>
|
</h2>
|
||||||
</a>
|
</a>
|
||||||
<time>
|
<time datetime="{{ post.data.date | w3Date }}">
|
||||||
{{ post.data.date }}
|
{{ post.data.date | dateFilter }}
|
||||||
</time>
|
</time>
|
||||||
<p>
|
<p>
|
||||||
{{ post.data.page.excerpt }}
|
{{ post.data.page.excerpt }}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue