@namespace Oqtane.Modules.Admin.ModuleDefinitions @inherits ModuleBase @inject IModuleDefinitionService ModuleDefinitionService @inject NavigationManager NavigationManager @inject IStringLocalizer Localizer
@Localizer["Cancel"]

@code { private int _moduleDefinitionId; private string _name; private string _version; private string _categories; private string _moduledefinitionname = ""; private string _description = ""; private string _owner = ""; private string _url = ""; private string _contact = ""; private string _license = ""; private string _runtimes = ""; private string _permissions; private string _createdby; private DateTime _createdon; private string _modifiedby; private DateTime _modifiedon; #pragma warning disable 649 private PermissionGrid _permissionGrid; #pragma warning restore 649 public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Admin; protected override async Task OnInitializedAsync() { try { _moduleDefinitionId = Int32.Parse(PageState.QueryString["id"]); var moduleDefinition = await ModuleDefinitionService.GetModuleDefinitionAsync(_moduleDefinitionId, ModuleState.SiteId); if (moduleDefinition != null) { _name = moduleDefinition.Name; _version = moduleDefinition.Version; _categories = moduleDefinition.Categories; _moduledefinitionname = moduleDefinition.ModuleDefinitionName; _description = moduleDefinition.Description; _owner = moduleDefinition.Owner; _url = moduleDefinition.Url; _contact = moduleDefinition.Contact; _license = moduleDefinition.License; _runtimes = moduleDefinition.Runtimes; _permissions = moduleDefinition.Permissions; _createdby = moduleDefinition.CreatedBy; _createdon = moduleDefinition.CreatedOn; _modifiedby = moduleDefinition.ModifiedBy; _modifiedon = moduleDefinition.ModifiedOn; } } catch (Exception ex) { await logger.LogError(ex, "Error Loading ModuleDefinition {ModuleDefinitionId} {Error}", _moduleDefinitionId, ex.Message); AddModuleMessage(Localizer["Error.Module.Load"], MessageType.Error); } } private async Task SaveModuleDefinition() { try { var moduledefinition = await ModuleDefinitionService.GetModuleDefinitionAsync(_moduleDefinitionId, ModuleState.SiteId); if (moduledefinition.Name != _name) { moduledefinition.Name = _name; } if (moduledefinition.Description != _description) { moduledefinition.Description = _description; } if (moduledefinition.Categories != _categories) { moduledefinition.Categories = _categories; } moduledefinition.Permissions = _permissionGrid.GetPermissions(); await ModuleDefinitionService.UpdateModuleDefinitionAsync(moduledefinition); await logger.LogInformation("ModuleDefinition Saved {ModuleDefinition}", moduledefinition); NavigationManager.NavigateTo(NavigateUrl()); } catch (Exception ex) { await logger.LogError(ex, "Error Saving ModuleDefinition {ModuleDefinitionId} {Error}", _moduleDefinitionId, ex.Message); AddModuleMessage(Localizer["Error.Module.Save"], MessageType.Error); } } }