-
-
Save F43nd1r/adb382fcaa29538c32932bf1337530ad to your computer and use it in GitHub Desktop.
Export ICS file from KIT Webinscribe. Paste into web console
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var today = new Date(); | |
var date = prompt("Datum des Montags in der ersten Tutorienwoche (Format TT.MM.JJJJ)",('0' + today.getDate()).slice(-2)+"."+('0' + (today.getMonth()+1)).slice(-2)+"."+today.getFullYear()); | |
var count = prompt("Anzahl der Wiederholungen","13"); | |
if(date != null && count != null) { | |
var temp = date.split("."); | |
var year = temp[2]; | |
var month = temp[1]; | |
var day = parseInt(temp[0]); | |
var out = "BEGIN:VCALENDAR\nVERSION:2.0\nPRODID:-//phiresky.de//tools\n"; | |
var t = $("table.piTable>tbody").children; | |
var m = year+month; | |
for (i = 0; i < t.length; i++) { | |
var e = t[i].children, | |
name = e[0].textContent.trim(), | |
tutor = e[1].textContent, | |
regex = /Tutorium (..) ([-0-9:]+) (.*)/.exec(e[2].textContent.trim()), | |
wd = regex[1], | |
zeit = regex[2], | |
raum = regex[3], | |
wd = ["Mo", "Di", "Mi", "Do", "Fr"].indexOf(wd), | |
zeit = /(..):(..)-(..):(..)/.exec(zeit), | |
start = m + (day + wd) + "T" + zeit[1] + zeit[2] + "00", | |
end = m + (day + wd) + "T" + zeit[3] + zeit[4] + "00"; | |
out += "BEGIN:VEVENT"+ | |
"\nLOCATION:" + raum + | |
"\nSUMMARY:Tutorium für " + name.replace(/,/g, "\\,") + | |
"\nDESCRIPTION:" + tutor + | |
"\nDTSTART:" + start + | |
"\nDTEND:" + end + | |
"\nRRULE:FREQ=WEEKLY;COUNT="+count+"\nEND:VEVENT\n"; | |
}; | |
out += "END:VCALENDAR\n"; | |
var a = document.body.appendChild(document.createElement("a")); | |
a.href = URL.createObjectURL(new Blob([out], {type: "text/calendar"})); | |
a.download = "Tutorien "+(month>6?"WS":"SS")+" "+year+" " + $("h3").textContent.match(/.{6}(.*)/)[1] + ".ics"; | |
a.click(); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment