@namespace Oqtane.Modules.Admin.Files @inherits ModuleBase @inject IFileService FileService @inject IFolderService FolderService @inject NavigationManager NavigationManager @inject IStringLocalizer
Localizer @inject IStringLocalizer SharedLocalizer @if (_folders != null) {
@SharedLocalizer["Cancel"]

} @code { private ElementReference form; private bool validated = false; private int _fileId = -1; private string _name; private List _folders; private int _folderId = -1; private string _description = string.Empty; private int _size; private string _createdBy; private DateTime _createdOn; private string _modifiedBy; private DateTime _modifiedOn; public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Admin; public override string Title => "File Management"; protected override async Task OnInitializedAsync() { try { _folders = await FolderService.GetFoldersAsync(PageState.Site.SiteId); _fileId = Int32.Parse(PageState.QueryString["id"]); File file = await FileService.GetFileAsync(_fileId); if (file != null) { _name = file.Name; _folderId = file.FolderId; _description = file.Description; _size = file.Size; _createdBy = file.CreatedBy; _createdOn = file.CreatedOn; _modifiedBy = file.ModifiedBy; _modifiedOn = file.ModifiedOn; } } catch (Exception ex) { await logger.LogError(ex, "Error Loading File {FileId} {Error}", _fileId, ex.Message); AddModuleMessage(Localizer["Error.File.Load"], MessageType.Error); } } private async Task SaveFile() { validated = true; var interop = new Interop(JSRuntime); if (await interop.FormValid(form)) { try { if (_name.IsPathOrFileValid()) { File file = await FileService.GetFileAsync(_fileId); file.Name = _name; file.FolderId = _folderId; file.Description = _description; file = await FileService.UpdateFileAsync(file); await logger.LogInformation("File Saved {File}", file); NavigationManager.NavigateTo(NavigateUrl()); } else { AddModuleMessage(Localizer["Message.File.InvalidName"], MessageType.Warning); } } catch (Exception ex) { await logger.LogError(ex, "Error Saving File {FileId} {Error}", _fileId, ex.Message); AddModuleMessage(Localizer["Error.File.Save"], MessageType.Error); } } else { AddModuleMessage(SharedLocalizer["Message.InfoRequired"], MessageType.Warning); } } }