protected override async Task OnAfterRenderAsync(bool firstRender) { if (_loaded) { return; } _loaded = true; _creating = NavigationManager.ToBaseRelativePath(NavigationManager.Uri).ToLowerInvariant(). StartsWith("admin/licenses/create", StringComparison.InvariantCulture); if (Id <= 0 && !_creating) { return; } _model = _creating ? new Database.Models.License() : await Service.GetAsync(Id); _authState = await AuthenticationStateProvider.GetAuthenticationStateAsync(); _editing = _creating || NavigationManager.ToBaseRelativePath(NavigationManager.Uri).ToLowerInvariant(). StartsWith("admin/licenses/edit/", StringComparison.InvariantCulture); if (_editing) { SetCheckboxes(); } StateHasChanged(); }
async void OnSaveClicked() { if (_unknownText) { _model.Text = null; } else if (string.IsNullOrWhiteSpace(_model.Text)) { return; } if (string.IsNullOrWhiteSpace(_model.Text) || _model.Name?.Length > 255) { return; } if (string.IsNullOrWhiteSpace(_model.SPDX) || _model.SPDX?.Length > 255) { return; } if (_unknownLink) { _model.Link = null; } else if (string.IsNullOrWhiteSpace(_model.Link) || _model.Link?.Length > 512) { return; } if (_creating) { Id = await Service.CreateAsync(_model, (await UserManager.GetUserAsync(_authState.User)).Id); } else { await Service.UpdateAsync(_model, (await UserManager.GetUserAsync(_authState.User)).Id); } _editing = false; _creating = false; _model = await Service.GetAsync(Id); SetCheckboxes(); StateHasChanged(); }
async void OnCancelClicked() { _editing = false; if (_creating) { NavigationManager.ToBaseRelativePath("admin/licenses"); return; } _model = await Service.GetAsync(Id); SetCheckboxes(); StateHasChanged(); }