Skip to content

Commit 0532925

Browse files
author
NewSkyLine
committed
Fixed timezone
1 parent 8254ffa commit 0532925

3 files changed

Lines changed: 36 additions & 10 deletions

File tree

package-lock.json

Lines changed: 16 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,14 @@
1313
"author": "",
1414
"license": "ISC",
1515
"devDependencies": {
16+
"@types/luxon": "^3.4.2",
1617
"@types/node": "^20.11.5",
1718
"gh-pages": "^6.1.1",
1819
"typescript": "^5.3.3"
1920
},
2021
"dependencies": {
2122
"ics": "^3.7.2",
23+
"luxon": "^3.4.4",
2224
"webuntis": "^2.0.3"
2325
}
2426
}

src/app.ts

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { parseTimetable } from "./untis_utils/data";
55
import * as fs from "fs";
66
import * as ics from "ics";
77
import { generateFileList } from "./html_gen/schema";
8+
import { DateTime } from "luxon";
89

910
(async () => {
1011
const untis = new WebUntis(
@@ -29,22 +30,29 @@ import { generateFileList } from "./html_gen/schema";
2930
let icsEvents: ics.EventAttributes[] = [];
3031

3132
events.forEach((event) => {
33+
const startTime = DateTime.fromJSDate(event.startTime).setZone(
34+
"Europe/Vienna"
35+
);
36+
const endTime = DateTime.fromJSDate(event.endTime).setZone(
37+
"Europe/Vienna"
38+
);
39+
3240
icsEvents.push({
3341
title: event.name,
3442
description: event.description as string,
3543
start: [
36-
event.startTime.getFullYear(),
37-
event.startTime.getMonth() + 1,
38-
event.startTime.getDate(),
39-
event.startTime.getHours(),
40-
event.startTime.getMinutes(),
44+
startTime.year,
45+
startTime.month,
46+
startTime.day,
47+
startTime.hour,
48+
startTime.minute,
4149
],
4250
end: [
43-
event.endTime.getFullYear(),
44-
event.endTime.getMonth() + 1,
45-
event.endTime.getDate(),
46-
event.endTime.getHours(),
47-
event.endTime.getMinutes(),
51+
endTime.year,
52+
endTime.month,
53+
endTime.day,
54+
endTime.hour,
55+
endTime.minute,
4856
],
4957
location: event.room,
5058
});

0 commit comments

Comments
 (0)