diff --git a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Edit.razor b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Edit.razor index 23ed0ccc..e09b666c 100644 --- a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Edit.razor +++ b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Edit.razor @@ -8,6 +8,8 @@ @inject NavigationManager NavigationManager @inject IStringLocalizer Localizer @inject IStringLocalizer SharedLocalizer +@inject IPageModuleService PageModuleService +@inject IModuleService ModuleService @if (_initialized) { @@ -131,10 +133,22 @@ @SharedLocalizer["Cancel"] + + +
+   + @SharedLocalizer["Name"] +
+ + + @(string.IsNullOrEmpty(context.Title) ? @context.Name : @context.Title ) + +
+
@if (_languages != null && _languages.Count > 0) { - +
@SharedLocalizer["Name"] @Localizer["Code"] @@ -240,6 +254,8 @@ private DateTime _createdon; private string _modifiedby; private DateTime _modifiedon; + private List _pagesWithModules +; #pragma warning disable 649 private PermissionGrid _permissionGrid; @@ -291,6 +307,18 @@ _languages = _languages.OrderBy(item => item.Name).ToList(); } + // Group modules by PageId + // Get distinct PageIds where modules are present + var distinctPageIds = PageState.Modules + .Where(md => md.ModuleDefinition.ModuleDefinitionId == _moduleDefinitionId && md.IsDeleted == false) + .Select(md => md.PageId) + .Distinct(); + + // Filter and retrieve the corresponding pages + _pagesWithModules = PageState.Pages + .Where(pg => distinctPageIds.Contains(pg.PageId) && pg.IsDeleted == false) + .ToList(); + _initialized = true; } } @@ -439,5 +467,5 @@ AddModuleMessage(Localizer["Error.Validate"], MessageType.Error); } } - + private string Browse(Page page) => string.IsNullOrEmpty(page.Url) ? NavigateUrl(page.Path) : page.Url; } diff --git a/Oqtane.Client/Resources/Modules/Admin/ModuleDefinitions/Edit.resx b/Oqtane.Client/Resources/Modules/Admin/ModuleDefinitions/Edit.resx index 87cc9a12..eda58041 100644 --- a/Oqtane.Client/Resources/Modules/Admin/ModuleDefinitions/Edit.resx +++ b/Oqtane.Client/Resources/Modules/Admin/ModuleDefinitions/Edit.resx @@ -240,4 +240,13 @@ Validate + + Browse + + + Module Count + + + Pages + \ No newline at end of file