diff --git a/DbFirst.BlazorWasm/Pages/Dashboard.razor b/DbFirst.BlazorWasm/Pages/Dashboard.razor index eb0a3b9..0890078 100644 --- a/DbFirst.BlazorWasm/Pages/Dashboard.razor +++ b/DbFirst.BlazorWasm/Pages/Dashboard.razor @@ -48,16 +48,27 @@
- +
+ + @(IsDesigner ? "Zum Viewer wechseln" : "Zum Designer wechseln") + +
+
@code { [Parameter] public string? DashboardId { get; set; } + [SupplyParameterFromQuery] public string? Mode { get; set; } + + private bool IsDesigner => !string.Equals(Mode, "viewer", StringComparison.OrdinalIgnoreCase); + private WorkingMode CurrentMode => IsDesigner ? WorkingMode.Designer : WorkingMode.ViewerOnly; + private string DashboardKey => $"DefaultDashboard-{(IsDesigner ? "designer" : "viewer")}"; + private string DashboardEndpoint => $"{Configuration["ApiBaseUrl"]?.TrimEnd('/')}/api/dashboard"; @@ -68,4 +79,10 @@ Navigation.NavigateTo("dashboards/default", replace: true); } } + + private void ToggleMode() + { + var targetMode = IsDesigner ? "viewer" : "designer"; + Navigation.NavigateTo($"dashboards/default?mode={targetMode}", replace: true); + } } \ No newline at end of file diff --git a/DbFirst.BlazorWebApp/Components/Pages/Dashboard.razor b/DbFirst.BlazorWebApp/Components/Pages/Dashboard.razor index eb0a3b9..b1295e5 100644 --- a/DbFirst.BlazorWebApp/Components/Pages/Dashboard.razor +++ b/DbFirst.BlazorWebApp/Components/Pages/Dashboard.razor @@ -48,17 +48,26 @@
- +
+ + @(IsDesigner ? "Zum Viewer wechseln" : "Zum Designer wechseln") + +
+
@code { [Parameter] public string? DashboardId { get; set; } + [SupplyParameterFromQuery] public string? Mode { get; set; } + private bool IsDesigner => !string.Equals(Mode, "viewer", StringComparison.OrdinalIgnoreCase); + private WorkingMode CurrentMode => IsDesigner ? WorkingMode.Designer : WorkingMode.ViewerOnly; + private string DashboardKey => $"DefaultDashboard-{(IsDesigner ? "designer" : "viewer")}"; private string DashboardEndpoint => $"{Configuration["ApiBaseUrl"]?.TrimEnd('/')}/api/dashboard"; protected override void OnParametersSet() @@ -68,4 +77,10 @@ Navigation.NavigateTo("dashboards/default", replace: true); } } + + private void ToggleMode() + { + var targetMode = IsDesigner ? "viewer" : "designer"; + Navigation.NavigateTo($"dashboards/default?mode={targetMode}", replace: true); + } } \ No newline at end of file