aboutsummaryrefslogtreecommitdiff
path: root/src/univis.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/univis.js')
-rw-r--r--src/univis.js41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/univis.js b/src/univis.js
new file mode 100644
index 0000000..f770bd7
--- /dev/null
+++ b/src/univis.js
@@ -0,0 +1,41 @@
+import * as xml from "xml-js"
+
+import { readXML } from "./files.js"
+
+function getRoomName(key) {
+ for (let room of res.Room) {
+ if (room._attributes.key == key) {
+ return room.short._text;
+ }
+ }
+
+ return "?";
+}
+
+function serializeLecture(lecture) {
+ let name = lecture.short?._text ?? lecture.name._text
+
+ for (let term in lecture.terms) {
+ let t = lecture.terms[term];
+
+ if (!t.starttime) continue;
+
+ let von = t.starttime._text.replace(":", "h");
+ let bis = t.endtime._text.replace(":", "h");
+
+ let raum = getRoomName(t.room.UnivISRef._attributes.key);
+
+ console.log(`${name}, ${von}, ${bis}, ${raum}`);
+ }
+}
+
+let data = readXML();
+let res = (xml.xml2js(data, {compact: true})).UnivIS;
+
+let semester = res._attributes.semester;
+
+console.log("semester: " + semester)
+
+for (let lecture of res.Lecture) {
+ serializeLecture(lecture)
+} \ No newline at end of file