Example #1
0
        public async Task <IActionResult> GetUser()
        {
            var claimsIdentity = User.Identity as ClaimsIdentity;

            if (claimsIdentity.IsAuthenticated)
            {
                var email = claimsIdentity.FindFirst(ClaimTypes.Email)?.Value;
                if (email != null && await _authenticationLogic.CheckEmailExists(email))
                {
                    return(Ok(new UserInfo
                    {
                        Name = claimsIdentity.Name,
                        IsAuthenticated = true
                    }));
                }
                else
                {
                    _logger.LogWarning($"Unregistered user with email '{email}' tried to login!");
                    return(Unauthorized());
                }
            }
            return(Ok(LoggedOutUser));
        }