fix:#41 refactored function

This commit is contained in:
Elmar Kresse
2024-06-24 15:34:24 +02:00
parent bfb05b6704
commit a65a57bec6

View File

@@ -28,24 +28,35 @@ import (
func toEvents(tables [][]*html.Node, days []string) []model.Event { func toEvents(tables [][]*html.Node, days []string) []model.Event {
var events []model.Event var events []model.Event
for table := range tables { for tableIndex, table := range tables {
for row := range tables[table] { day := days[tableIndex]
for _, row := range table {
tableData := findTableData(row)
if len(tableData) == 0 {
continue
}
events = append(events, createEventsFromTableData(tableData, day)...)
}
}
return events
}
func createEventsFromTableData(tableData []*html.Node, day string) []model.Event {
var events []model.Event
tableData := findTableData(tables[table][row])
if len(tableData) > 0 {
start, _ := types.ParseDateTime(date.CreateTimeFromHourAndMinuteString(getTextContent(tableData[1]))) start, _ := types.ParseDateTime(date.CreateTimeFromHourAndMinuteString(getTextContent(tableData[1])))
end, _ := types.ParseDateTime(date.CreateTimeFromHourAndMinuteString(getTextContent(tableData[2]))) end, _ := types.ParseDateTime(date.CreateTimeFromHourAndMinuteString(getTextContent(tableData[2])))
courses := getTextContent(tableData[7])
name := getTextContent(tableData[3]) name := getTextContent(tableData[3])
if functions.OnlyWhitespace(name) { if functions.OnlyWhitespace(name) {
name = "Sonderveranstaltung" name = "Sonderveranstaltung"
} }
courses := getTextContent(tableData[7])
if len(courses) > 0 { if len(courses) > 0 {
for _, course := range strings.Split(courses, " ") { for _, course := range strings.Split(courses, " ") {
events = append(events, model.Event{ events = append(events, model.Event{
Day: days[table], Day: day,
Week: getTextContent(tableData[0]), Week: getTextContent(tableData[0]),
Start: start, Start: start,
End: end, End: end,
@@ -59,9 +70,6 @@ func toEvents(tables [][]*html.Node, days []string) []model.Event {
}) })
} }
} }
}
}
}
return events return events
} }