Browse Source

CmsKit - Add Script & Style to Page

pull/8059/head
enisn 6 years ago
parent
commit
437186f687
  1. 6
      modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CreatePageInputDto.cs
  2. 4
      modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/PageDto.cs
  3. 6
      modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/UpdatePageInputDto.cs
  4. 4
      modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs
  5. 4
      modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Pages/PageConsts.cs
  6. 27
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/Page.cs
  7. 8
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/PageManager.cs
  8. 4
      modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Public/Pages/PageDto.cs

6
modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CreatePageInputDto.cs

@ -18,5 +18,11 @@ namespace Volo.CmsKit.Admin.Pages
[DynamicMaxLength(typeof(PageConsts), nameof(PageConsts.MaxContentLength))] [DynamicMaxLength(typeof(PageConsts), nameof(PageConsts.MaxContentLength))]
public string Content { get; set; } public string Content { get; set; }
[DynamicMaxLength(typeof(PageConsts), nameof(PageConsts.MaxScriptLength))]
public string Script { get; set; }
[DynamicMaxLength(typeof(PageConsts), nameof(PageConsts.MaxStyleLength))]
public string Style { get; set; }
} }
} }

4
modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/PageDto.cs

@ -11,5 +11,9 @@ namespace Volo.CmsKit.Admin.Pages
public string Slug { get; set; } public string Slug { get; set; }
public string Content { get; set; } public string Content { get; set; }
public string Script { get; set; }
public string Style { get; set; }
} }
} }

6
modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/UpdatePageInputDto.cs

@ -18,5 +18,11 @@ namespace Volo.CmsKit.Admin.Pages
[DynamicMaxLength(typeof(PageConsts), nameof(PageConsts.MaxContentLength))] [DynamicMaxLength(typeof(PageConsts), nameof(PageConsts.MaxContentLength))]
public string Content { get; set; } public string Content { get; set; }
[DynamicMaxLength(typeof(PageConsts), nameof(PageConsts.MaxScriptLength))]
public string Script { get; set; }
[DynamicMaxLength(typeof(PageConsts), nameof(PageConsts.MaxStyleLength))]
public string Style { get; set; }
} }
} }

4
modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs

@ -53,7 +53,7 @@ namespace Volo.CmsKit.Admin.Pages
[Authorize(CmsKitAdminPermissions.Pages.Create)] [Authorize(CmsKitAdminPermissions.Pages.Create)]
public virtual async Task<PageDto> CreateAsync(CreatePageInputDto input) public virtual async Task<PageDto> CreateAsync(CreatePageInputDto input)
{ {
var page = await PageManager.CreateAsync(input.Title, input.Slug, input.Content); var page = await PageManager.CreateAsync(input.Title, input.Slug, input.Content, input.Script, input.Style);
await PageRepository.InsertAsync(page); await PageRepository.InsertAsync(page);
@ -69,6 +69,8 @@ namespace Volo.CmsKit.Admin.Pages
page.SetTitle(input.Title); page.SetTitle(input.Title);
page.SetContent(input.Content); page.SetContent(input.Content);
page.SetScript(input.Script);
page.SetStyle(input.Style);
await PageRepository.UpdateAsync(page); await PageRepository.UpdateAsync(page);

4
modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Pages/PageConsts.cs

@ -9,5 +9,9 @@
public static int MaxSlugLength { get; set; } = 256; public static int MaxSlugLength { get; set; } = 256;
public static int MaxContentLength { get; set; } = int.MaxValue; public static int MaxContentLength { get; set; } = int.MaxValue;
public static int MaxScriptLength { get; set; } = int.MaxValue;
public static int MaxStyleLength { get; set; } = int.MaxValue;
} }
} }

27
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/Page.cs

@ -15,18 +15,31 @@ namespace Volo.CmsKit.Pages
public virtual string Slug { get; protected set; } public virtual string Slug { get; protected set; }
public virtual string Content { get; protected set; } public virtual string Content { get; protected set; }
public virtual string Script { get; protected set; }
public virtual string Style { get; protected set; }
protected Page() protected Page()
{ {
} }
internal Page(Guid id, [NotNull] string title, [NotNull] string slug, string content = null, Guid? tenantId = null) : base(id) internal Page(
Guid id,
[NotNull] string title,
[NotNull] string slug,
string content = null,
string script = null,
string style = null,
Guid? tenantId = null) : base(id)
{ {
TenantId = tenantId; TenantId = tenantId;
SetTitle(title); SetTitle(title);
SetSlug(slug); SetSlug(slug);
SetContent(content); SetContent(content);
SetScript(script);
SetStyle(style);
} }
public virtual void SetTitle(string title) public virtual void SetTitle(string title)
@ -43,5 +56,15 @@ namespace Volo.CmsKit.Pages
{ {
Content = Check.Length(content, nameof(content), PageConsts.MaxContentLength); Content = Check.Length(content, nameof(content), PageConsts.MaxContentLength);
} }
public virtual void SetScript(string script)
{
Script = Check.Length(script, nameof(script), PageConsts.MaxScriptLength);
}
public virtual void SetStyle(string style)
{
Style = Check.Length(style, nameof(style), PageConsts.MaxStyleLength);
}
} }
} }

8
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/PageManager.cs

@ -21,7 +21,9 @@ namespace Volo.CmsKit.Pages
public virtual async Task<Page> CreateAsync( public virtual async Task<Page> CreateAsync(
[NotNull] string title, [NotNull] string title,
[NotNull] string slug, [NotNull] string slug,
[CanBeNull] string content = null) [CanBeNull] string content = null,
[CanBeNull] string script = null,
[CanBeNull] string style = null)
{ {
Check.NotNullOrEmpty(title, nameof(title)); Check.NotNullOrEmpty(title, nameof(title));
Check.NotNullOrEmpty(slug, nameof(slug)); Check.NotNullOrEmpty(slug, nameof(slug));
@ -32,7 +34,9 @@ namespace Volo.CmsKit.Pages
GuidGenerator.Create(), GuidGenerator.Create(),
title, title,
slug, slug,
content, content,
script,
style,
CurrentTenant.Id); CurrentTenant.Id);
} }

4
modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Public/Pages/PageDto.cs

@ -11,5 +11,9 @@ namespace Volo.CmsKit.Public.Pages
public string Slug { get; set; } public string Slug { get; set; }
public string Content { get; set; } public string Content { get; set; }
public string Script { get; set; }
public string Style { get; set; }
} }
} }
Loading…
Cancel
Save