diff --git a/Lieb/Data/RaidService.cs b/Lieb/Data/RaidService.cs index 0312a76..1e2db22 100644 --- a/Lieb/Data/RaidService.cs +++ b/Lieb/Data/RaidService.cs @@ -336,6 +336,11 @@ namespace Lieb.Data return false; } + if(raid.EndTimeUTC < DateTimeOffset.UtcNow) + { + return false; + } + return true; } diff --git a/Lieb/Pages/Raids/RaidOverview.razor b/Lieb/Pages/Raids/RaidOverview.razor index ef42f75..8df4cac 100644 --- a/Lieb/Pages/Raids/RaidOverview.razor +++ b/Lieb/Pages/Raids/RaidOverview.razor @@ -19,8 +19,17 @@ +
+ -@foreach (var raid in _raids) { +
+@foreach (var raid in _raidsToShow.OrderBy(r => r.StartTimeUTC)) +{
} @@ -31,6 +40,9 @@ { private List _raids; private LiebUser? _user; + private DateTime _startDate = DateTime.Now.Date; + private DateTime _endDate = DateTime.Now.Date.AddDays(15).AddSeconds(-1); + private List _raidsToShow; protected override async Task OnInitializedAsync() { @@ -43,5 +55,18 @@ } _raids = RaidService.GetRaids(); + _raidsToShow = _raids.Where(r => r.StartTimeUTC > _startDate && r.StartTimeUTC < _endDate).ToList(); + } + + private void StartFilterChanged(ChangeEventArgs e) + { + _startDate = DateTime.Parse(e.Value.ToString()); + _raidsToShow = _raids.Where(r => r.StartTimeUTC > _startDate && r.StartTimeUTC < _endDate).ToList(); + } + + private void EndFilterChanged(ChangeEventArgs e) + { + _endDate = DateTime.Parse(e.Value.ToString()).AddDays(1).AddSeconds(-1); + _raidsToShow = _raids.Where(r => r.StartTimeUTC > _startDate && r.StartTimeUTC < _endDate).ToList(); } }