@page "/open-acs" @using Microsoft.AspNetCore.Components.WebAssembly.Authentication @using RobotNet.RobotShares.OpenACS @using RobotNet.Shares @using RobotNet.WebApp.Robots.Components.OpenACS @attribute [Authorize] @inject IHttpClientFactory HttpClientFactory Open ACS
Loadding...
@code { private OpenACSSettingsDto PublishSettingDto = new(); private bool OverlayIsVisible = false; private PublishSetting PublishSettingRef = default!; private TrafficSetting TrafficSettingRef = default!; protected override async Task OnAfterRenderAsync(bool firstRender) { await base.OnAfterRenderAsync(firstRender); if (!firstRender) return; await LoadSettings(); } private async Task LoadSettings() { try { OverlayIsVisible = true; StateHasChanged(); using var client = HttpClientFactory.CreateClient("RobotManagerAPI"); var settings = await client.GetFromJsonAsync>("api/OpenACSSettings"); if (settings is null || settings.Data is null || !settings.IsSuccess) PublishSettingDto = new(); else PublishSettingDto = settings.Data; PublishSettingRef.UpdateSettings(PublishSettingDto.PublishSetting); TrafficSettingRef.UpdateSettings(PublishSettingDto.TrafficSetting); OverlayIsVisible = false; StateHasChanged(); } catch (AccessTokenNotAvailableException ex) { ex.Redirect(); } } }