using System; using System.Security.Claims; using Microsoft.AspNetCore.Mvc; using Dough.Models.Database; using Dough.Utilities; namespace Dough.Controllers { [ApiController] [Route("api/[controller]")] public class BaseController : ControllerBase { public LoggedInUserModel LoggedInUser => new LoggedInUserModel { Id = User.GetClaimValueOrDefault(ClaimTypes.NameIdentifier)?.ToGuidOrDefault() ?? default, Username = User.GetClaimValueOrDefault(ClaimTypes.Name), SessionStart = User.GetClaimValueOrDefault(ClaimTypes.AuthenticationInstant).ToDateTimeOrDefault() }; public class LoggedInUserModel { public Guid Id { get; set; } public string Username { get; set; } public DateTime SessionStart { get; set; } } } }