My Roster
@*DateRangePicker a custom open source component found at https://github.com/jdtcn/BlazorDateRangePicker*@
@if (shifts == null) { } else{ @foreach(var s in shifts) { } }
Shift range from Monday-Friday
Day Date Location Start Finish Hours
Please select a date from calendar above.
@s.ShiftDate.DayOfWeek @s.ShiftDate.ToShortDateString() @s.Location @s.StartTime @s.FinishTime @s.Hours
Shift Information
@{ switch (jobSelected) { case true: case false: if (shifts == null) {

Please select a date from input above.

} else{ } break; } }
Leave Request
@key @StartDate
@code { private IList shifts = new List(); public ShiftDto shift{get;set;} public int userID{get;set;} public string key {get; set;} public DateTimeOffset StartDate {get;set;} [CascadingParameter] public Task authenticationStateTask { get; set; } private string _authMessage; protected async Task GetRoster(DateTimeOffset date) { var authState = await authenticationStateTask; var userIdString = authState.User.Claims.SingleOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value; userID = Int32.Parse(userIdString); key = (userID+""+date.Day+""+date.Month+""+date.Year).ToString(); shifts = await api.GetShiftsForUser(key); } @* protected override async Task OnInitializedAsync() { startDate = GetMonday(DateTime.Now); await GetRoster(startDate); } *@ public bool jobSelected { get; set;} public void displayJob(JobDto u){ jobSelected =! jobSelected; } public DateTimeOffset GetMonday(DateTimeOffset date){ var day=date.DayOfWeek; switch (day) { case (DayOfWeek.Tuesday): { return (date.DateTime.AddDays(-1)); } case (DayOfWeek.Wednesday): { return (date.DateTime.AddDays(-2)); } case (DayOfWeek.Thursday): { return (date.DateTime.AddDays(-3)); } case (DayOfWeek.Friday): { return (date.DateTime.AddDays(-4)); } case (DayOfWeek.Saturday): { return (date.DateTime.AddDays(-5)); } case (DayOfWeek.Sunday): { return (date.DateTime.AddDays(-6)); } default: { return date; } } } }