diff --git a/src/indiware_connector.rs b/src/indiware_connector.rs index bbc3f75..2d821ec 100644 --- a/src/indiware_connector.rs +++ b/src/indiware_connector.rs @@ -410,6 +410,17 @@ pub async fn get_class_timetable(_conn: DbConn, class: String, url: String) -> T dbg!("Failed: {:?}", &i); } } + response.courses.sort_by(|a, b| { + let n1 = a.as_object().unwrap().get("St").unwrap().as_i64().unwrap(); + let sb1 = a.as_object().unwrap().get("Fa").unwrap().as_str().unwrap(); + let n2 = b.as_object().unwrap().get("St").unwrap().as_i64().unwrap(); + let sb2 = b.as_object().unwrap().get("Fa").unwrap().as_str().unwrap(); + if n1 == n2 { + sb1.cmp(&sb2) + } else { + n1.cmp(&n2) + } + }); response.count = response.courses.len(); } else if class == String::from("12") && i.as_object()