diff --git a/script/eventdate.js b/script/eventdate.js index a5ba4ac..2215219 100644 --- a/script/eventdate.js +++ b/script/eventdate.js @@ -5,18 +5,20 @@ import * as RRule from 'https://bitcoin-dresden.de/script/rrule.min.js'; document.addEventListener("DOMContentLoaded", function(event) { - for(const tag of document.getElementsByClassName("rrule") ){ - var now = new Date(); - var rule = rrule.RRule.fromString(tag.getAttribute('data-rrule').toUpperCase()); - var e = rule.after(now); - tag.setAttribute('datetime', new Date(e - -now.getTimezoneOffset()*60000).toISOString()); - var f = new Intl.DateTimeFormat("de-DE", { //timeZoneName: "short", second: "numeric" | day: "2-digit" - timeZone: "UTC", year: "numeric", month: "long", day: "numeric", weekday: "long", hour: "numeric", minute: "numeric" }).format(e).replace(' um ',' ab '); - //~ console.log(f); - tag.innerHTML = "nächster Termin planmäßig am " + f + " Uhr"; - var title = 'planmäßig '+rule.toText().replace('every day','jeden Tag').replace('every week','jede Woche').replace('every month','jeden Monat').replace('every year','jedes Jahr').replace('on the','am').replace('Monday','Montag').replace('Tuesday','Dienstag').replace('Wednesday','Mittwoch').replace('Thursday','Donnerstag').replace('Friday','Freitag').replace('Saturday','Samstag').replace('Sunday','Sonntag').replace('2nd','zweiten').replace('1st','ersten').replace('3rd','dritten').replace('4th','vierten') + " " + f.substr(f.lastIndexOf('ab ')); - //~ console.log(title); - tag.setAttribute('title', title); + for(const tag of document.getElementsByTagName("time") ){ + if (tag.getAttribute('data-rrule') !== null) { + var now = new Date(); + var rule = rrule.RRule.fromString(tag.getAttribute('data-rrule').toUpperCase()); + var e = rule.after(now); + tag.setAttribute('datetime', new Date(e - -now.getTimezoneOffset()*60000).toISOString()); + var f = new Intl.DateTimeFormat("de-DE", { //timeZoneName: "short", second: "numeric" | day: "2-digit" + timeZone: "UTC", year: "numeric", month: "long", day: "numeric", weekday: "long", hour: "numeric", minute: "numeric" }).format(e).replace(' um ',' ab '); + //~ console.log(f); + tag.innerHTML = "nächster Termin planmäßig am " + f + " Uhr"; + var title = 'planmäßig '+rule.toText().replace('every day','jeden Tag').replace('every week','jede Woche').replace('every month','jeden Monat').replace('every year','jedes Jahr').replace('on the','am').replace('Monday','Montag').replace('Tuesday','Dienstag').replace('Wednesday','Mittwoch').replace('Thursday','Donnerstag').replace('Friday','Freitag').replace('Saturday','Samstag').replace('Sunday','Sonntag').replace('2nd','zweiten').replace('1st','ersten').replace('3rd','dritten').replace('4th','vierten') + " " + f.substr(f.lastIndexOf('ab ')); + //~ console.log(title); + tag.setAttribute('title', title); + } } });