diff --git a/VITTY/VITTY/Core/Model/Classes.swift b/VITTY/VITTY/Core/Model/Classes.swift index 276ed4f..6c7aaf0 100644 --- a/VITTY/VITTY/Core/Model/Classes.swift +++ b/VITTY/VITTY/Core/Model/Classes.swift @@ -7,7 +7,12 @@ import Foundation -struct Classes: Hashable, Codable { +struct Classes: Hashable, Codable, Comparable { + + static func < (lhs: Classes, rhs: Classes) -> Bool { + return lhs.startTime! < rhs.startTime! + } + var courseType: String? var courseCode: String? var courseName: String? @@ -26,6 +31,7 @@ struct Classes: Hashable, Codable { case location = "location" case slot = "slot" } + } diff --git a/VITTY/VITTY/Core/Schedule/View/SchedulePage.swift b/VITTY/VITTY/Core/Schedule/View/SchedulePage.swift index e40a363..db6fe88 100644 --- a/VITTY/VITTY/Core/Schedule/View/SchedulePage.swift +++ b/VITTY/VITTY/Core/Schedule/View/SchedulePage.swift @@ -135,8 +135,7 @@ extension SchedulePage { func timeTableView() -> some View { ScrollView { ForEach(timetableViewModel.timetable.keys.sorted(), id: \.self) { day in - ForEach(timetableViewModel.timetable[day] ?? [], id: \.self) { classes in - + ForEach(timetableViewModel.timetable[day]?.sorted() ?? [], id: \.self) { classes in if day.description.lowercased() == TimetableViewModel.daysOfTheWeek[tabSelected] { ClassCards(classInfo: classes)