feat: add confirmation dialogs for deleting exercises and routines

This commit is contained in:
2026-01-31 00:22:22 +01:00
parent 8300331276
commit 8875060917
2 changed files with 12 additions and 1 deletions

View File

@@ -4,6 +4,7 @@
@inject ApiClient Api @inject ApiClient Api
@inject NavigationManager Navigation @inject NavigationManager Navigation
@inject UserContext UserContext @inject UserContext UserContext
@inject IJSRuntime JS
<PageTitle>Exercises</PageTitle> <PageTitle>Exercises</PageTitle>
@@ -154,6 +155,9 @@
private async Task DeleteExerciseAsync(int exerciseId) private async Task DeleteExerciseAsync(int exerciseId)
{ {
var confirmed = await JS.InvokeAsync<bool>("confirm", "Are you sure you want to delete this exercise?");
if (!confirmed) return;
await Api.DeleteExerciseAsync(UserContext.UserId, exerciseId); await Api.DeleteExerciseAsync(UserContext.UserId, exerciseId);
ExerciseList.RemoveAll(e => e.Id == exerciseId); ExerciseList.RemoveAll(e => e.Id == exerciseId);
} }

View File

@@ -4,6 +4,7 @@
@inject ApiClient Api @inject ApiClient Api
@inject NavigationManager Navigation @inject NavigationManager Navigation
@inject UserContext UserContext @inject UserContext UserContext
@inject IJSRuntime JS
<PageTitle>Routines</PageTitle> <PageTitle>Routines</PageTitle>
@@ -255,6 +256,9 @@
private async Task DeleteRoutineAsync(int routineId) private async Task DeleteRoutineAsync(int routineId)
{ {
var confirmed = await JS.InvokeAsync<bool>("confirm", "Are you sure you want to delete this routine?");
if (!confirmed) return;
await Api.DeleteRoutineAsync(UserContext.UserId, routineId); await Api.DeleteRoutineAsync(UserContext.UserId, routineId);
RoutineList.RemoveAll(r => r.Id == routineId); RoutineList.RemoveAll(r => r.Id == routineId);
} }
@@ -288,8 +292,11 @@
return ExerciseList.FirstOrDefault(e => e.Id == exerciseId)?.Name ?? "Exercise"; return ExerciseList.FirstOrDefault(e => e.Id == exerciseId)?.Name ?? "Exercise";
} }
private void AbortRun() private async Task AbortRun()
{ {
var confirmed = await JS.InvokeAsync<bool>("confirm", "Are you sure you want to abort this routine run?");
if (!confirmed) return;
ActiveRun = null; ActiveRun = null;
RunEntries = new List<RoutineRunEntryDto>(); RunEntries = new List<RoutineRunEntryDto>();
} }