Browse Source

Merge branch 'cms-kit/blog-initial' of https://github.com/abpframework/abp into cms-kit/blog-initial

pull/7226/head
enisn 5 years ago
parent
commit
92b86a8eca
  1. 4
      modules/cms-kit/src/Volo.CmsKit.Public.Web/CmsKitPublicWebModule.cs
  2. 34
      modules/cms-kit/src/Volo.CmsKit.Public.Web/Controllers/PageController.cs
  3. 13
      modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Pages/Index.cshtml
  4. 34
      modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Pages/Index.cshtml.cs
  5. 9
      modules/cms-kit/src/Volo.CmsKit.Public.Web/Views/Page/Index.cshtml

4
modules/cms-kit/src/Volo.CmsKit.Public.Web/CmsKitPublicWebModule.cs

@ -61,10 +61,6 @@ namespace Volo.CmsKit.Public.Web
{
Configure<RazorPagesOptions>(options =>
{
if (GlobalFeatureManager.Instance.IsEnabled<PagesFeature>())
{
options.Conventions.AddPageRoute("/CmsKit/Pages/Index", @"{*pageUrl:minlength(1)}");
}
});
}
}

34
modules/cms-kit/src/Volo.CmsKit.Public.Web/Controllers/PageController.cs

@ -0,0 +1,34 @@
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.ActionConstraints;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.CmsKit.Public.Pages;
namespace Volo.CmsKit.Public.Web.Controllers
{
public class PageController : CmsKitPublicControllerBase
{
protected IPageAppService PageAppService { get; }
public PageController(IPageAppService pageAppService)
{
PageAppService = pageAppService;
}
[HttpGet("/{*url}", Order = int.MaxValue)]
public async Task<IActionResult> IndexAsync(string url)
{
var page = await PageAppService.FindByUrlAsync(url);
if (page == null)
{
return NotFound();
}
return View("~/Views/Page/Index.cshtml", page);
}
}
}

13
modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Pages/Index.cshtml

@ -1,13 +0,0 @@
@page "{*pageUrl}"
@using Microsoft.AspNetCore.Mvc.Localization
@using Volo.CmsKit.Localization
@using Volo.CmsKit.Public.Web.Pages.CmsKit.Shared.Components.Pages
@model Volo.CmsKit.Public.Web.Pages.CmsKit.Pages.IndexModel
@inject IHtmlLocalizer<CmsKitResource> L
@await Component.InvokeAsync(typeof(DefaultPageViewComponent),
new
{
pageId = Model.Page.Id,
title = Model.Page.Title
})

34
modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Pages/Index.cshtml.cs

@ -1,34 +0,0 @@
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Volo.CmsKit.Public.Pages;
using Volo.CmsKit.Web.Pages;
namespace Volo.CmsKit.Public.Web.Pages.CmsKit.Pages
{
public class IndexModel : CommonPageModel
{
[BindProperty(SupportsGet = true)]
public string PageUrl { get; set; }
protected readonly IPageAppService PageAppService;
public PageDto Page;
public IndexModel(IPageAppService pageAppService)
{
PageAppService = pageAppService;
}
public async Task<IActionResult> OnGetAsync()
{
Page = await PageAppService.FindByUrlAsync(PageUrl);
if (Page == null)
{
return NotFound();
}
return Page();
}
}
}

9
modules/cms-kit/src/Volo.CmsKit.Public.Web/Views/Page/Index.cshtml

@ -0,0 +1,9 @@
@model Volo.CmsKit.Public.Pages.PageDto
@using Volo.CmsKit.Public.Web.Pages.CmsKit.Shared.Components.Pages
@await Component.InvokeAsync(typeof(DefaultPageViewComponent), new
{
pageId = Model.Id,
title = Model.Title
})
Loading…
Cancel
Save