Browse Source

Add page status check for public page access

Introduces a PageStatus property to PageDto and updates PagePublicAppService to only return pages with a published status. This ensures that only published pages are accessible via public endpoints.
pull/24053/head
Mansur Besleney 12 months ago
parent
commit
7680c86439
  1. 3
      modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Contents/PageDto.cs
  2. 12
      modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Public/Pages/PagePublicAppService.cs

3
modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Contents/PageDto.cs

@ -1,5 +1,6 @@
using System; using System;
using Volo.Abp.Application.Dtos; using Volo.Abp.Application.Dtos;
using Volo.CmsKit.Pages;
namespace Volo.CmsKit.Contents; namespace Volo.CmsKit.Contents;
@ -16,4 +17,6 @@ public class PageDto : ExtensibleEntityDto<Guid>
public string Script { get; set; } public string Script { get; set; }
public string Style { get; set; } public string Style { get; set; }
public PageStatus Status { get; set; }
} }

12
modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Public/Pages/PagePublicAppService.cs

@ -54,6 +54,12 @@ public class PagePublicAppService : CmsKitPublicAppServiceBase, IPagePublicAppSe
return null; return null;
} }
// Only return published home page
if (page.Status != PageStatus.Publish)
{
return null;
}
pageCacheItem = ObjectMapper.Map<Page, PageCacheItem>(page); pageCacheItem = ObjectMapper.Map<Page, PageCacheItem>(page);
await PageCache.SetAsync(PageCacheItem.GetKey(PageConsts.DefaultHomePageCacheKey), pageCacheItem, await PageCache.SetAsync(PageCacheItem.GetKey(PageConsts.DefaultHomePageCacheKey), pageCacheItem,
@ -81,6 +87,12 @@ public class PagePublicAppService : CmsKitPublicAppServiceBase, IPagePublicAppSe
return null; return null;
} }
// Only return published pages
if (page.Status != PageStatus.Publish)
{
return null;
}
return ObjectMapper.Map<Page, PageCacheItem>(page); return ObjectMapper.Map<Page, PageCacheItem>(page);
}); });

Loading…
Cancel
Save