mirror of
https://gitlab.dit.htwk-leipzig.de/htwk-software/htwkalender-pwa.git
synced 2025-07-16 01:28:50 +02:00
special case: merge two semesters at end of semester
This commit is contained in:
@ -45,6 +45,11 @@ func GetSemesterStart(date time.Time) time.Time {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check if is in last month of semester
|
||||||
|
func IsLastMonthOfSemester(date time.Time) bool {
|
||||||
|
return date.Month() == START_OF_WINTER_SEMESTER_MONTH-1 || date.Month() == START_OF_SUMMER_SEMESTER_MONTH-1
|
||||||
|
}
|
||||||
|
|
||||||
// Check if the given date is before the start of summer semester
|
// Check if the given date is before the start of summer semester
|
||||||
func isBeforeSummerSemester(date time.Time) bool {
|
func isBeforeSummerSemester(date time.Time) bool {
|
||||||
return date.Month() < START_OF_SUMMER_SEMESTER_MONTH
|
return date.Month() < START_OF_SUMMER_SEMESTER_MONTH
|
||||||
|
@ -74,6 +74,10 @@ func GetRoomOccupancyList(app *pocketbase.PocketBase, granularity int) (model.Ro
|
|||||||
fromTime := functions.GetSemesterStart(now)
|
fromTime := functions.GetSemesterStart(now)
|
||||||
toTime := functions.GetSemesterStart(now.AddDate(0, 6, 0))
|
toTime := functions.GetSemesterStart(now.AddDate(0, 6, 0))
|
||||||
|
|
||||||
|
if functions.IsLastMonthOfSemester(now) {
|
||||||
|
toTime = functions.GetSemesterStart(now.AddDate(1, 0, 0))
|
||||||
|
}
|
||||||
|
|
||||||
// calculate the number of blocks for the given time range and granularity
|
// calculate the number of blocks for the given time range and granularity
|
||||||
timeDifference := toTime.Sub(fromTime)
|
timeDifference := toTime.Sub(fromTime)
|
||||||
numberOfBlocks := int(math.Ceil(timeDifference.Minutes() / float64(granularity)))
|
numberOfBlocks := int(math.Ceil(timeDifference.Minutes() / float64(granularity)))
|
||||||
|
Reference in New Issue
Block a user