mirror of
https://github.com/tcsenpai/obsidiangarden_netlify.git
synced 2025-06-06 04:35:20 +00:00
Fix Timestamp Parsing Error that renders Invalid Datetime (#252)
* fix: Some timestamps cannot be parsed * fix: update dateToZulu to use try catch
This commit is contained in:
parent
7bbcbecc50
commit
046f8a7bac
@ -517,9 +517,13 @@ module.exports = function (eleventyConfig) {
|
|||||||
|
|
||||||
|
|
||||||
eleventyConfig.addFilter("dateToZulu", function (date) {
|
eleventyConfig.addFilter("dateToZulu", function (date) {
|
||||||
if (!date) return "";
|
try {
|
||||||
return new Date(date).toISOString("dd-MM-yyyyTHH:mm:ssZ");
|
return new Date(date).toISOString("dd-MM-yyyyTHH:mm:ssZ");
|
||||||
|
} catch {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
eleventyConfig.addFilter("jsonify", function (variable) {
|
eleventyConfig.addFilter("jsonify", function (variable) {
|
||||||
return JSON.stringify(variable) || '""';
|
return JSON.stringify(variable) || '""';
|
||||||
});
|
});
|
||||||
|
@ -1,7 +1,17 @@
|
|||||||
<script src=" https://fastly.jsdelivr.net/npm/luxon@3.2.1/build/global/luxon.min.js "></script>
|
<script src=" https://fastly.jsdelivr.net/npm/luxon@3.2.1/build/global/luxon.min.js "></script>
|
||||||
<script defer>
|
<script defer>
|
||||||
TIMESTAMP_FORMAT = "{{meta.timestampSettings.timestampFormat}}";
|
TIMESTAMP_FORMAT = "{{meta.timestampSettings.timestampFormat}}";
|
||||||
document.querySelectorAll('.human-date').forEach(function (el) {
|
document.querySelectorAll('.human-date').forEach(function (el) {
|
||||||
el.innerHTML = luxon.DateTime.fromISO(el.getAttribute('data-date') || el.innerText).toFormat(TIMESTAMP_FORMAT);
|
date = el.getAttribute('data-date') || el.innerText
|
||||||
});
|
parsed_date = luxon.DateTime.fromISO(date)
|
||||||
|
if (parsed_date.invalid != null){
|
||||||
|
// Date cannot be parsed
|
||||||
|
parsed_date = luxon.DateTime.fromSQL(date)
|
||||||
|
}
|
||||||
|
if (parsed_date.invalid != null){
|
||||||
|
// Date still cannot be parsed
|
||||||
|
parsed_date = luxon.DateTime.fromHTML(date)
|
||||||
|
}
|
||||||
|
el.innerHTML = parsed_date.toFormat(TIMESTAMP_FORMAT);
|
||||||
|
})
|
||||||
</script>
|
</script>
|
@ -7,7 +7,7 @@ eleventyExcludeFromCollections: true
|
|||||||
{% for page in collections.all %}
|
{% for page in collections.all %}
|
||||||
<url>
|
<url>
|
||||||
<loc>{{ meta.siteBaseUrl }}{{ page.url | url }}</loc>
|
<loc>{{ meta.siteBaseUrl }}{{ page.url | url }}</loc>
|
||||||
<lastmod>{{ page.date.toISOString() }}</lastmod>
|
<lastmod>{{ page.date | dateToZulu }}</lastmod>
|
||||||
</url>
|
</url>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</urlset>
|
</urlset>
|
Loading…
x
Reference in New Issue
Block a user