30 lines
645 B
C#
30 lines
645 B
C#
|
|
using System.Linq;
|
||
|
|
using System.Threading.Tasks;
|
||
|
|
using Microsoft.AspNetCore.Mvc;
|
||
|
|
using SkyArtShop.Models;
|
||
|
|
using SkyArtShop.Services;
|
||
|
|
|
||
|
|
namespace SkyArtShop.Controllers;
|
||
|
|
|
||
|
|
[Route("page")]
|
||
|
|
public class PageController : Controller
|
||
|
|
{
|
||
|
|
private readonly PostgreSQLService _pgService;
|
||
|
|
|
||
|
|
public PageController(PostgreSQLService pgService)
|
||
|
|
{
|
||
|
|
_pgService = pgService;
|
||
|
|
}
|
||
|
|
|
||
|
|
[HttpGet("{slug}")]
|
||
|
|
public async Task<IActionResult> Index(string slug)
|
||
|
|
{
|
||
|
|
Page page = (await _pgService.GetAllAsync<Page>("Pages")).FirstOrDefault((Page p) => p.PageSlug == slug && p.IsActive);
|
||
|
|
if (page == null)
|
||
|
|
{
|
||
|
|
return NotFound();
|
||
|
|
}
|
||
|
|
return View("View", page);
|
||
|
|
}
|
||
|
|
}
|