@using Oqtane.Modules.Controls @using SZUAbsolventenverein.Module.AdminModules.Services @using SZUAbsolventenverein.Module.AdminModules.Models @namespace SZUAbsolventenverein.Module.AdminModules @inherits ModuleBase @inject IAdminModulesService AdminModulesService @inject NavigationManager NavigationManager @inject IStringLocalizer Localizer
@Localizer["Cancel"]

@if (PageState.Action == "Edit") { }
@code { public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Edit; public override string Actions => "Add,Edit"; public override string Title => "Manage AdminModules"; public override List Resources => new List() { new Stylesheet("_content/SZUAbsolventenverein.Module.AdminModules/Module.css") }; private ElementReference form; private RichTextEditor RichTextEditorHtml; private bool validated = false; private int _id; private string _betreff; private string _richText; private string _createdby; private DateTime _createdon; private string _modifiedby; private DateTime _modifiedon; protected override async Task OnInitializedAsync() { try { if (PageState.Action == "Edit") { _id = Int32.Parse(PageState.QueryString["id"]); AdminModules AdminModules = await AdminModulesService.GetAdminModulesAsync(_id, ModuleState.ModuleId); if (AdminModules != null) { _betreff = AdminModules.Name; _richText = AdminModules.Content; _createdby = AdminModules.CreatedBy; _createdon = AdminModules.CreatedOn; _modifiedby = AdminModules.ModifiedBy; _modifiedon = AdminModules.ModifiedOn; } } } catch (Exception ex) { await logger.LogError(ex, "Error Loading AdminModules {AdminModulesId} {Error}", _id, ex.Message); AddModuleMessage(Localizer["Message.LoadError"], MessageType.Error); } } private async Task Save() { try { validated = true; var interop = new Oqtane.UI.Interop(JSRuntime); if (await interop.FormValid(form)) { string content = await RichTextEditorHtml.GetHtml(); content = Utilities.FormatContent(content, PageState.Alias, "save"); if (PageState.Action == "Add") { AdminModules AdminModules = new AdminModules(); AdminModules.ModuleId = ModuleState.ModuleId; AdminModules.Name = _betreff; AdminModules.Content = content; AdminModules = await AdminModulesService.AddAdminModulesAsync(AdminModules); await logger.LogInformation("AdminModules Added {AdminModules}", AdminModules); } else { AdminModules AdminModules = await AdminModulesService.GetAdminModulesAsync(_id, ModuleState.ModuleId); AdminModules.Name = _betreff; AdminModules.Content = content; await AdminModulesService.UpdateAdminModulesAsync(AdminModules); await logger.LogInformation("AdminModules Updated {AdminModules}", AdminModules); } NavigationManager.NavigateTo(NavigateUrl()); } else { AddModuleMessage(Localizer["Message.SaveValidation"], MessageType.Warning); } } catch (Exception ex) { await logger.LogError(ex, "Error Saving AdminModules {Error}", ex.Message); AddModuleMessage(Localizer["Message.SaveError"], MessageType.Error); } } }