mirror of
https://gitlab.dit.htwk-leipzig.de/htwk-software/htwkalender.git
synced 2025-08-04 02:39:14 +02:00
fix:#41 added error if html request isn't 200
This commit is contained in:
@@ -50,25 +50,51 @@ func ClearEmptySeminarGroups(seminarGroup model.SeminarGroup) model.SeminarGroup
|
||||
return newSeminarGroup
|
||||
}
|
||||
|
||||
func GetSeminarGroupEventsFromHTML(seminarGroupLabel string) model.SeminarGroup {
|
||||
var seminarGroup model.SeminarGroup
|
||||
func fetchHTMLFromURL(semester, seminarGroupLabel string) (string, error) {
|
||||
url := "https://stundenplan.htwk-leipzig.de/" + semester + "/Berichte/Text-Listen;Studenten-Sets;name;" + seminarGroupLabel + "?template=sws_semgrp&weeks=1-65"
|
||||
result, err := fetch.GetHTML(url)
|
||||
if err != nil {
|
||||
slog.Error("Error occurred while fetching the HTML document:", "error", err)
|
||||
return "", err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
if (time.Now().Month() >= 3) && (time.Now().Month() <= 10) {
|
||||
ssUrl := "https://stundenplan.htwk-leipzig.de/" + string("ss") + "/Berichte/Text-Listen;Studenten-Sets;name;" + seminarGroupLabel + "?template=sws_semgrp&weeks=1-65"
|
||||
result, getError := fetch.GetHTML(ssUrl)
|
||||
if getError == nil {
|
||||
seminarGroup = parseSeminarGroup(result)
|
||||
func GetSeminarGroupEventsFromHTML(seminarGroupLabel string) (model.SeminarGroup, error) {
|
||||
var seminarGroup [2]model.SeminarGroup
|
||||
var result string
|
||||
var errSS error
|
||||
var errWS error
|
||||
|
||||
currentMonth := time.Now().Month()
|
||||
if currentMonth >= 3 && currentMonth <= 10 {
|
||||
result, errSS = fetchHTMLFromURL("ss", seminarGroupLabel)
|
||||
if errSS == nil {
|
||||
seminarGroup[0] = parseSeminarGroup(result)
|
||||
}
|
||||
|
||||
}
|
||||
if currentMonth >= 9 || currentMonth <= 4 {
|
||||
result, errWS = fetchHTMLFromURL("ws", seminarGroupLabel)
|
||||
if errWS == nil {
|
||||
seminarGroup[1] = parseSeminarGroup(result)
|
||||
}
|
||||
}
|
||||
|
||||
if (time.Now().Month() >= 9) || (time.Now().Month() <= 4) {
|
||||
wsUrl := "https://stundenplan.htwk-leipzig.de/" + string("ws") + "/Berichte/Text-Listen;Studenten-Sets;name;" + seminarGroupLabel + "?template=sws_semgrp&weeks=1-65"
|
||||
result, getError := fetch.GetHTML(wsUrl)
|
||||
if getError == nil {
|
||||
seminarGroup = parseSeminarGroup(result)
|
||||
if errSS != nil {
|
||||
if errWS != nil {
|
||||
return model.SeminarGroup{}, errWS
|
||||
} else {
|
||||
return seminarGroup[1], nil
|
||||
}
|
||||
} else {
|
||||
if errWS != nil {
|
||||
return seminarGroup[0], nil
|
||||
} else {
|
||||
seminarGroup[0].Events = append(seminarGroup[0].Events, seminarGroup[1].Events...)
|
||||
return seminarGroup[0], nil
|
||||
}
|
||||
}
|
||||
return seminarGroup
|
||||
}
|
||||
|
||||
func SplitEventType(events []model.Event) ([]model.Event, error) {
|
||||
|
Reference in New Issue
Block a user