From b81646c1d42ab57774817b63d5b7c2703768f4c8 Mon Sep 17 00:00:00 2001 From: Marcel Baumgartner Date: Thu, 11 Apr 2024 08:41:43 +0200 Subject: [PATCH] Fixed crash when deleting images --- .../Servers/UI/Views/Admin/Images/Index.razor | 45 +++++++++++-------- 1 file changed, 26 insertions(+), 19 deletions(-) diff --git a/Moonlight/Features/Servers/UI/Views/Admin/Images/Index.razor b/Moonlight/Features/Servers/UI/Views/Admin/Images/Index.razor index de9c501..86c5f34 100644 --- a/Moonlight/Features/Servers/UI/Views/Admin/Images/Index.razor +++ b/Moonlight/Features/Servers/UI/Views/Admin/Images/Index.razor @@ -32,6 +32,7 @@ Load="Load" ValidateDelete="ValidateDelete" ValidateAdd="ValidateAdd" + CustomDelete="CustomDelete" @ref="Crud"> @@ -101,7 +102,30 @@ { if (ServerRepository.Get().Any(x => x.Image.Id == serverImage.Id)) throw new DisplayException("A server using this image exists. Please delete the servers using this image to continue"); + + return Task.CompletedTask; + } + private Task ValidateAdd(ServerImage image) + { + // Set defaults + + image.StopCommand = "^C"; + image.StartupCommand = "echo Startup command here"; + image.AllocationsNeeded = 1; + image.InstallScript = "#! /bin/bash\necho Done"; + image.InstallShell = "/bin/bash"; + image.InstallDockerImage = "debian:latest"; + image.OnlineDetection = "Running"; + image.AllowDockerImageChange = false; + image.DefaultDockerImage = 0; + image.ParseConfiguration = "[]"; + + return Task.CompletedTask; + } + + private Task CustomDelete(ServerImage serverImage) + { var image = ImageRepository .Get() .Include(x => x.Variables) @@ -148,28 +172,11 @@ return Task.CompletedTask; } - private Task ValidateAdd(ServerImage image) - { - // Set defaults - - image.StopCommand = "^C"; - image.StartupCommand = "echo Startup command here"; - image.AllocationsNeeded = 1; - image.InstallScript = "#! /bin/bash\necho Done"; - image.InstallShell = "/bin/bash"; - image.InstallDockerImage = "debian:latest"; - image.OnlineDetection = "Running"; - image.AllowDockerImageChange = false; - image.DefaultDockerImage = 0; - image.ParseConfiguration = "[]"; - - return Task.CompletedTask; - } - private async Task Export(ServerImage image) { var json = await ImageConversionHelper.ExportAsJson(image); - await FileDownloadService.DownloadString($"{image.Name}.json", json); + var imageName = image.Name.Replace(" ", ""); + await FileDownloadService.DownloadString($"{imageName}.json", json); await ToastService.Success($"Successfully exported '{image.Name}'"); }