diff --git a/KIKunstKirstenKlöckner/Pages/Gallery.razor b/KIKunstKirstenKlöckner/Pages/Gallery.razor index dd01c44..0bb7830 100644 --- a/KIKunstKirstenKlöckner/Pages/Gallery.razor +++ b/KIKunstKirstenKlöckner/Pages/Gallery.razor @@ -33,40 +33,63 @@ @code { - IEnumerable? _bildInfos; + List? _bildInfos; protected override async Task OnInitializedAsync() { - _bildInfos = await BildInfoData.GetAllBildInfosAsync(); + _bildInfos = (await BildInfoData.GetAllBildInfosAsync()).ToList(); await base.OnInitializedAsync(); } - + async Task ShowImageDialog(BildInfoModel bildInfo) { WunschInfoModel wunschInfo = await WunschInfoData.GetWunschInfoAsync(bildInfo.WunschId); + int listIndex = _bildInfos.IndexOf(_bildInfos.First(info => info.Id == bildInfo.Id)); + List bilderVomWunsch = _bildInfos!.Where(info => info.WunschId == wunschInfo.Id).ToList(); + void ButtonLeft() + { + listIndex = (listIndex != 0) ? listIndex - 1 : 0; + bildInfo = _bildInfos[listIndex]; + DialogService.Refresh(); + } + + void ButtonRight() + { + listIndex = (listIndex != _bildInfos.Count - 1) ? listIndex + 1 : _bildInfos.Count - 1; + bildInfo = _bildInfos[listIndex]; + DialogService.Refresh(); + } + + var result = await DialogService.OpenAsync(wunschInfo.Wunsch, ds => - @
+ @
- - - - + +
+ + + + +
+
@foreach (var bild in bilderVomWunsch) { + Click="() => { bildInfo = bild; DialogService.Refresh(); }" /> }
-
, +
+ , new DialogOptions() { CloseDialogOnOverlayClick = true, Width = "50%" }); } + [Inject] private IWebHostEnvironment _environment { get; set; } }