Add sorting functionality for prospects with new ProspectSortControl component
This commit is contained in:
@@ -65,32 +65,6 @@ namespace FoodsharingSiegen.Server.Pages
|
||||
await EditProspectDialog.ShowAsync(ModalService, LoadProspects);
|
||||
}
|
||||
|
||||
private async Task OpenSortDialogAsync()
|
||||
{
|
||||
await ProspectSortDialog.ShowAsync(ModalService, CurrentSort, async option =>
|
||||
{
|
||||
CurrentSort = option;
|
||||
|
||||
await InvokeAsync(StateHasChanged);
|
||||
});
|
||||
}
|
||||
|
||||
private bool HasCustomSort => CurrentSort != ProspectSortOption.NameAscending;
|
||||
|
||||
private string CurrentSortText => CurrentSort switch
|
||||
{
|
||||
ProspectSortOption.NameDescending => "Sortierung: Name (absteigend)",
|
||||
ProspectSortOption.ModifiedAscending => "Sortierung: Zuletzt geaendert (aufsteigend) ",
|
||||
ProspectSortOption.ModifiedDescending => "Sortierung: Zuletzt geaendert (absteigend) ",
|
||||
_ => string.Empty
|
||||
};
|
||||
|
||||
private async Task ResetSortAsync()
|
||||
{
|
||||
CurrentSort = ProspectSortOption.NameAscending;
|
||||
await InvokeAsync(StateHasChanged);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Private Method FilterChangedAsync
|
||||
@@ -106,18 +80,6 @@ namespace FoodsharingSiegen.Server.Pages
|
||||
await LocalStorageService.SetItem(StorageKeys.ProspectFilter, Filter);
|
||||
}
|
||||
|
||||
private List<Prospect> SortProspects(List<Prospect> prospects)
|
||||
{
|
||||
return CurrentSort switch
|
||||
{
|
||||
ProspectSortOption.NameAscending => prospects.OrderBy(x => x.Name, StringComparer.OrdinalIgnoreCase).ToList(),
|
||||
ProspectSortOption.NameDescending => prospects.OrderByDescending(x => x.Name, StringComparer.OrdinalIgnoreCase).ToList(),
|
||||
ProspectSortOption.ModifiedAscending => prospects.OrderBy(x => x.Modified ?? x.Created).ToList(),
|
||||
ProspectSortOption.ModifiedDescending => prospects.OrderByDescending(x => x.Modified ?? x.Created).ToList(),
|
||||
_ => prospects
|
||||
};
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Private Method LoadProspects
|
||||
|
||||
Reference in New Issue
Block a user