aboutsummaryrefslogtreecommitdiffstats
path: root/code/api/Pages/BasePageModel.cs
blob: 47f763a6433e91bc3c1220bea3d57a67349d199e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
using Microsoft.AspNetCore.Mvc.Filters;

namespace Quality.Storage.Api.Pages;

public class BasePageModel : PageModel
{
	public LoggedInUserModel LoggedInUser => new(User);
	public bool IsAuthenticated => User.Identity?.IsAuthenticated ?? false;

	public override void OnPageHandlerExecuting(PageHandlerExecutingContext context) {
		if (!(context.HttpContext.User.Identity?.IsAuthenticated ?? true) && !context.HttpContext.Request.Path.StartsWithSegments("/login")) {
			context.Result = new RedirectResult("/login");
		}

		base.OnPageHandlerExecuting(context);
	}
}