diff options
-rw-r--r-- | server/src/routes/ui/sort.rs | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/server/src/routes/ui/sort.rs b/server/src/routes/ui/sort.rs index 2c5f0cc..542b7af 100644 --- a/server/src/routes/ui/sort.rs +++ b/server/src/routes/ui/sort.rs @@ -132,6 +132,7 @@ pub fn filter_and_sort_nodes( default_sort: (SortProperty, SortOrder), nodes: &mut Vec<(String, NodePublic, NodeUserData)>, ) { + let sort_prop = f.sort_by.unwrap_or(default_sort.0); nodes.retain(|(_id, node, udata)| { let mut o = true; if let Some(prop) = &f.filter_kind { @@ -158,16 +159,13 @@ pub fn filter_and_sort_nodes( } } } - if let Some(sort_by) = &f.sort_by { - match sort_by { - SortProperty::ReleaseDate => o &= node.release_date.is_some(), - SortProperty::Duration => o &= node.media.is_some(), - _ => (), - } + match sort_prop { + SortProperty::ReleaseDate => o &= node.release_date.is_some(), + SortProperty::Duration => o &= node.media.is_some(), + _ => (), } o }); - let sort_prop = f.sort_by.unwrap_or(default_sort.0); match sort_prop { SortProperty::Duration => { nodes.sort_by_key(|(_, n, _)| (n.media.as_ref().unwrap().duration * 1000.) as i64) |