@using Oqtane.Modules.HtmlText.Services @using Oqtane.Modules.HtmlText.Models @using Oqtane.Modules.Controls @namespace Oqtane.Modules.HtmlText @inherits ModuleBase @inject IHtmlTextService HtmlTextService @inject ISettingService SettingService @inject NavigationManager NavigationManager @inject IStringLocalizer Localizer @inject IStringLocalizer SharedLocalizer @if (_content != null) { @SharedLocalizer["Cancel"] @if (!string.IsNullOrEmpty(_content)) {

} } @code { public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Edit; public override string Title => "Edit Html/Text"; public override List Resources => new List() { new Resource { ResourceType = ResourceType.Stylesheet, Url = ModulePath() + "Module.css" }, new Resource { ResourceType = ResourceType.Stylesheet, Url = "css/quill/quill1.3.7.bubble.css" }, new Resource { ResourceType = ResourceType.Stylesheet, Url = "css/quill/quill1.3.7.snow.css" } }; private RichTextEditor RichTextEditorHtml; private bool _allowfilemanagement; private string _content = null; private string _createdby; private DateTime _createdon; private string _modifiedby; private DateTime _modifiedon; protected override async Task OnInitializedAsync() { try { _allowfilemanagement = bool.Parse(SettingService.GetSetting(ModuleState.Settings, "AllowFileManagement", "true")); var htmltext = await HtmlTextService.GetHtmlTextAsync(ModuleState.ModuleId); if (htmltext != null) { _content = htmltext.Content; _content = Utilities.FormatContent(_content, PageState.Alias, "render"); _createdby = htmltext.CreatedBy; _createdon = htmltext.CreatedOn; _modifiedby = htmltext.ModifiedBy; _modifiedon = htmltext.ModifiedOn; } else { _content = string.Empty; } } catch (Exception ex) { await logger.LogError(ex, "Error Loading Content {Error}", ex.Message); AddModuleMessage(Localizer["Error.Content.Load"], MessageType.Error); } } private async Task SaveContent() { string content = await RichTextEditorHtml.GetHtml(); content = Utilities.FormatContent(content, PageState.Alias, "save"); try { var htmltext = await HtmlTextService.GetHtmlTextAsync(ModuleState.ModuleId); if (htmltext != null) { htmltext.Content = content; await HtmlTextService.UpdateHtmlTextAsync(htmltext); } else { htmltext = new HtmlText(); htmltext.ModuleId = ModuleState.ModuleId; htmltext.Content = content; await HtmlTextService.AddHtmlTextAsync(htmltext); } await logger.LogInformation("Content Saved {HtmlText}", htmltext); NavigationManager.NavigateTo(NavigateUrl()); } catch (Exception ex) { await logger.LogError(ex, "Error Saving Content {Error}", ex.Message); AddModuleMessage(Localizer["Error.Content.Save"], MessageType.Error); } } }