diff --git a/Oqtane.Client/Modules/Controls/FileManager.razor b/Oqtane.Client/Modules/Controls/FileManager.razor
index c8c5e82a..9822859d 100644
--- a/Oqtane.Client/Modules/Controls/FileManager.razor
+++ b/Oqtane.Client/Modules/Controls/FileManager.razor
@@ -59,7 +59,7 @@
}
- @if (_image != string.Empty && ShowImage)
+ @if (_image != string.Empty)
{
@((MarkupString) _image)
@@ -126,7 +126,7 @@
public EventCallback
OnUpload { get; set; } // optional - executes a method in the calling component when a file is uploaded
[Parameter]
- public EventCallback OnChange { get; set; } // optional - executes a method in the calling component when a file is selected
+ public EventCallback OnSelect { get; set; } // optional - executes a method in the calling component when a file is selected
[Parameter]
public EventCallback OnDelete { get; set; } // optional - executes a method in the calling component when a file is deleted
@@ -138,6 +138,11 @@
_id = Id;
}
+ if (!ShowFiles)
+ {
+ ShowImage = false;
+ }
+
if (!string.IsNullOrEmpty(Folder))
{
_folders = new List { new Folder { FolderId = -1, Name = Folder } };
@@ -154,12 +159,14 @@
if (file != null)
{
FolderId = file.FolderId;
+ await OnSelect.InvokeAsync(FileId);
}
else
{
FileId = -1; // file does not exist
}
}
+
await SetImage();
if (!string.IsNullOrEmpty(Filter))
@@ -237,7 +244,10 @@
{
_message = string.Empty;
FileId = int.Parse((string)e.Value);
- await OnChange.InvokeAsync(FileId);
+ if (FileId != -1)
+ {
+ await OnSelect.InvokeAsync(FileId);
+ }
await SetImage();
StateHasChanged();
@@ -250,7 +260,7 @@
if (FileId != -1)
{
_file = await FileService.GetFileAsync(FileId);
- if (_file != null && _file.ImageHeight != 0 && _file.ImageWidth != 0)
+ if (_file != null && ShowImage && _file.ImageHeight != 0 && _file.ImageWidth != 0)
{
var maxwidth = 200;
var maxheight = 200;
@@ -292,21 +302,14 @@
_message = Localizer["Success.File.Upload"];
_messagetype = MessageType.Success;
+ // set FileId to first file in upload collection
await GetFiles();
-
- if (upload.Length == 1)
+ var file = _files.Where(item => item.Name == upload[0]).FirstOrDefault();
+ if (file != null)
{
- var file = _files.Where(item => item.Name == upload[0]).FirstOrDefault();
- if (file != null)
- {
- FileId = file.FileId;
- await SetImage();
- await OnUpload.InvokeAsync(FileId);
- }
- }
- else
- {
- await OnUpload.InvokeAsync(-1);
+ FileId = file.FileId;
+ await SetImage();
+ await OnUpload.InvokeAsync(FileId);
}
StateHasChanged();
}
diff --git a/Oqtane.Server/Repository/SiteRepository.cs b/Oqtane.Server/Repository/SiteRepository.cs
index 6200bc63..bbf8c856 100644
--- a/Oqtane.Server/Repository/SiteRepository.cs
+++ b/Oqtane.Server/Repository/SiteRepository.cs
@@ -136,7 +136,7 @@ namespace Oqtane.Repository
Permissions = new List
{
new Permission(PermissionNames.Browse, RoleNames.Admin, true),
- new Permission(PermissionNames.View, RoleNames.Admin, true),
+ new Permission(PermissionNames.View, RoleNames.Everyone, true),
new Permission(PermissionNames.Edit, RoleNames.Admin, true)
}.EncodePermissions()
});