Merge pull request #85 from oqtane/dev

sync
This commit is contained in:
Shaun Walker 2021-03-25 13:49:47 -04:00 committed by GitHub
commit 7223952eb2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 27 additions and 8 deletions

View File

@ -30,9 +30,9 @@ else
public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Admin; public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Admin;
protected override async Task OnInitializedAsync() protected override async Task OnParametersSetAsync()
{ {
_profiles = await ProfileService.GetProfilesAsync(PageState.Site.SiteId); await GetProfilesAsync();
} }
private async Task DeleteProfile(int profileId) private async Task DeleteProfile(int profileId)
@ -41,7 +41,12 @@ else
{ {
await ProfileService.DeleteProfileAsync(profileId); await ProfileService.DeleteProfileAsync(profileId);
await logger.LogInformation("Profile Deleted {ProfileId}", profileId); await logger.LogInformation("Profile Deleted {ProfileId}", profileId);
AddModuleMessage(Localizer["Profile Deleted"], MessageType.Success); AddModuleMessage(Localizer["Profile Deleted"], MessageType.Success);
await GetProfilesAsync();
StateHasChanged();
} }
catch (Exception ex) catch (Exception ex)
{ {
@ -49,4 +54,9 @@ else
AddModuleMessage(Localizer["Error Deleting Profile"], MessageType.Error); AddModuleMessage(Localizer["Error Deleting Profile"], MessageType.Error);
} }
} }
private async Task GetProfilesAsync()
{
_profiles = await ProfileService.GetProfilesAsync(PageState.Site.SiteId);
}
} }

View File

@ -18,7 +18,7 @@ else
@code { @code {
private bool _useadminborder = false; private bool _useadminborder = false;
private string _paneadminborder = "container"; private string _paneadminborder = "app-pane-admin-border";
private string _panetitle = ""; private string _panetitle = "";
[CascadingParameter] [CascadingParameter]
@ -34,12 +34,11 @@ else
if (PageState.EditMode && UserSecurity.IsAuthorized(PageState.User, PermissionNames.Edit, PageState.Page.Permissions) && Name != PaneNames.Admin) if (PageState.EditMode && UserSecurity.IsAuthorized(PageState.User, PermissionNames.Edit, PageState.Page.Permissions) && Name != PaneNames.Admin)
{ {
_useadminborder = true; _useadminborder = true;
_paneadminborder = "app-pane-admin-border";
_panetitle = "<div class=\"app-pane-admin-title\">" + Name + " Pane</div>"; _panetitle = "<div class=\"app-pane-admin-title\">" + Name + " Pane</div>";
} }
else else
{ {
_paneadminborder = "container"; _useadminborder = false;
_panetitle = ""; _panetitle = "";
} }
@ -130,4 +129,4 @@ else
builder.SetKey(module.PageModuleId); builder.SetKey(module.PageModuleId);
builder.CloseComponent(); builder.CloseComponent();
} }
} }

View File

@ -271,6 +271,7 @@ namespace Oqtane.Controllers
if (result != null) if (result != null)
{ {
_folders.DeleteUserFolder(id);
_users.DeleteUser(id); _users.DeleteUser(id);
_logger.Log(LogLevel.Information, this, LogFunction.Delete, "User Deleted {UserId}", id); _logger.Log(LogLevel.Information, this, LogFunction.Delete, "User Deleted {UserId}", id);
} }

View File

@ -90,7 +90,15 @@ namespace Oqtane.Repository
_db.Folder.Remove(folder); _db.Folder.Remove(folder);
_db.SaveChanges(); _db.SaveChanges();
} }
public void DeleteUserFolder(int userId)
{
string userFolderPath = Utilities.PathCombine("Users", userId.ToString(), System.IO.Path.DirectorySeparatorChar.ToString());
List<int> folderIdsToDelete = new List<int>(_db.Folder.Where(a => a.Path == userFolderPath).Select(a => a.FolderId));
foreach (int folderId in folderIdsToDelete)
{
DeleteFolder(folderId);
}
}
public string GetFolderPath(int folderId) public string GetFolderPath(int folderId)
{ {
Folder folder = _db.Folder.Find(folderId); Folder folder = _db.Folder.Find(folderId);

View File

@ -1,4 +1,4 @@
using System.Collections.Generic; using System.Collections.Generic;
using Oqtane.Models; using Oqtane.Models;
namespace Oqtane.Repository namespace Oqtane.Repository
@ -12,6 +12,7 @@ namespace Oqtane.Repository
Folder GetFolder(int folderId, bool tracking); Folder GetFolder(int folderId, bool tracking);
Folder GetFolder(int siteId, string path); Folder GetFolder(int siteId, string path);
void DeleteFolder(int folderId); void DeleteFolder(int folderId);
void DeleteUserFolder(int userId);
string GetFolderPath(int folderId); string GetFolderPath(int folderId);
string GetFolderPath(Folder folder); string GetFolderPath(Folder folder);
} }