From 25173ae85ccd4a07da055f044429a739d0746f44 Mon Sep 17 00:00:00 2001 From: Shaun Walker Date: Sat, 21 May 2022 10:10:57 -0400 Subject: [PATCH] Ddd filtering by Category to Module Management - default to Common --- .../Modules/Admin/Languages/Add.razor | 3 +- .../Admin/ModuleDefinitions/Index.razor | 108 +++++++++++------- .../Modules/Admin/SystemInfo/Index.razor | 1 + .../Admin/ModuleDefinitions/Index.resx | 3 + 4 files changed, 75 insertions(+), 40 deletions(-) diff --git a/Oqtane.Client/Modules/Admin/Languages/Add.razor b/Oqtane.Client/Modules/Admin/Languages/Add.razor index 80119785..ea4fe23e 100644 --- a/Oqtane.Client/Modules/Admin/Languages/Add.razor +++ b/Oqtane.Client/Modules/Admin/Languages/Add.razor @@ -20,6 +20,7 @@ else @if (_availableCultures.Count() == 0) { + @SharedLocalizer["Cancel"] } else { @@ -47,9 +48,9 @@ else + @SharedLocalizer["Cancel"] } - @SharedLocalizer["Cancel"]
diff --git a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Index.razor b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Index.razor index 049582c6..3cfbcb7e 100644 --- a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Index.razor +++ b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Index.razor @@ -12,11 +12,32 @@ } else { - - @((MarkupString)" ") - - - +
+
+
+ + @((MarkupString)" ") + +
+
+ +
+
+
+ +
    @@ -30,9 +51,9 @@ else @if (context.AssemblyName != "Oqtane.Client") - { + { - } + } @context.Name @context.Version @@ -65,6 +86,8 @@ else @code { private List _moduleDefinitions; private List _packages; + private List _categories = new List(); + private string _category = "Common"; public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Host; @@ -74,6 +97,7 @@ else { _moduleDefinitions = await ModuleDefinitionService.GetModuleDefinitionsAsync(PageState.Site.SiteId); _packages = await PackageService.GetPackagesAsync("module"); + _categories = _moduleDefinitions.SelectMany(m => m.Categories.Split(',')).Distinct().ToList(); } catch (Exception ex) { @@ -115,38 +139,44 @@ else { return package.Version; } - } - return version; - } + } + return version; + } - private async Task DownloadModule(string packagename, string version) - { - try - { - await PackageService.DownloadPackageAsync(packagename, version, Constants.PackagesFolder); - await logger.LogInformation("Module Downloaded {ModuleDefinitionName} {Version}", packagename, version); - await ModuleDefinitionService.InstallModuleDefinitionsAsync(); - AddModuleMessage(string.Format(Localizer["Success.Module.Install"], NavigateUrl("admin/system")), MessageType.Success); - } - catch (Exception ex) - { - await logger.LogError(ex, "Error Downloading Module {ModuleDefinitionName} {Version} {Error}", packagename, version, ex.Message); - AddModuleMessage(Localizer["Error.Module.Download"], MessageType.Error); - } - } + private async Task DownloadModule(string packagename, string version) + { + try + { + await PackageService.DownloadPackageAsync(packagename, version, Constants.PackagesFolder); + await logger.LogInformation("Module Downloaded {ModuleDefinitionName} {Version}", packagename, version); + await ModuleDefinitionService.InstallModuleDefinitionsAsync(); + AddModuleMessage(string.Format(Localizer["Success.Module.Install"], NavigateUrl("admin/system")), MessageType.Success); + } + catch (Exception ex) + { + await logger.LogError(ex, "Error Downloading Module {ModuleDefinitionName} {Version} {Error}", packagename, version, ex.Message); + AddModuleMessage(Localizer["Error.Module.Download"], MessageType.Error); + } + } - private async Task DeleteModule(ModuleDefinition moduleDefinition) - { - try - { - await ModuleDefinitionService.DeleteModuleDefinitionAsync(moduleDefinition.ModuleDefinitionId, moduleDefinition.SiteId); - AddModuleMessage(Localizer["Success.Module.Delete"], MessageType.Success); - NavigationManager.NavigateTo(NavigateUrl(PageState.Page.Path, true)); - } - catch (Exception ex) - { - await logger.LogError(ex, "Error Deleting Module {ModuleDefinition} {Error}", moduleDefinition, ex.Message); - AddModuleMessage(Localizer["Error.Module.Delete"], MessageType.Error); - } - } + private async Task DeleteModule(ModuleDefinition moduleDefinition) + { + try + { + await ModuleDefinitionService.DeleteModuleDefinitionAsync(moduleDefinition.ModuleDefinitionId, moduleDefinition.SiteId); + AddModuleMessage(Localizer["Success.Module.Delete"], MessageType.Success); + NavigationManager.NavigateTo(NavigateUrl(PageState.Page.Path, true)); + } + catch (Exception ex) + { + await logger.LogError(ex, "Error Deleting Module {ModuleDefinition} {Error}", moduleDefinition, ex.Message); + AddModuleMessage(Localizer["Error.Module.Delete"], MessageType.Error); + } + } + + private void CategoryChanged(ChangeEventArgs e) + { + _category = (string)e.Value; + StateHasChanged(); + } } diff --git a/Oqtane.Client/Modules/Admin/SystemInfo/Index.razor b/Oqtane.Client/Modules/Admin/SystemInfo/Index.razor index 77878a1b..7b3a149f 100644 --- a/Oqtane.Client/Modules/Admin/SystemInfo/Index.razor +++ b/Oqtane.Client/Modules/Admin/SystemInfo/Index.razor @@ -142,6 +142,7 @@ +

@code { public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Host; diff --git a/Oqtane.Client/Resources/Modules/Admin/ModuleDefinitions/Index.resx b/Oqtane.Client/Resources/Modules/Admin/ModuleDefinitions/Index.resx index 834bbe33..817b22db 100644 --- a/Oqtane.Client/Resources/Modules/Admin/ModuleDefinitions/Index.resx +++ b/Oqtane.Client/Resources/Modules/Admin/ModuleDefinitions/Index.resx @@ -150,4 +150,7 @@ Edit + + Modules + \ No newline at end of file