diff options
Diffstat (limited to 'src/univis.js')
-rw-r--r-- | src/univis.js | 41 |
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 |