using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using SkyArtShop.Models;
using SkyArtShop.Services;

namespace SkyArtShop.ViewComponents;

public class FooterPagesViewComponent : ViewComponent
{
	private readonly PostgreSQLService _pgService;

	public FooterPagesViewComponent(PostgreSQLService pgService)
	{
		_pgService = pgService;
	}

	public async Task<IViewComponentResult> InvokeAsync()
	{
		return View((from p in await _pgService.GetAllAsync<Page>("Pages")
			where p.IsActive
			orderby p.PageName
			select p).ToList());
	}
}
