summaryrefslogtreecommitdiff
path: root/Controllers/UserAccountsController.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Controllers/UserAccountsController.cs')
-rw-r--r--Controllers/UserAccountsController.cs13
1 files changed, 13 insertions, 0 deletions
diff --git a/Controllers/UserAccountsController.cs b/Controllers/UserAccountsController.cs
index 51c2481..2a0a8dd 100644
--- a/Controllers/UserAccountsController.cs
+++ b/Controllers/UserAccountsController.cs
@@ -4,6 +4,7 @@ using Microsoft.AspNetCore.Mvc;
using BackendPIA.Forms;
using BackendPIA.Models;
using BackendPIA.Services;
+using Microsoft.AspNetCore.Authorization;
using BackendPIA.Errors;
using BackendPIA.Logics;
@@ -25,6 +26,18 @@ namespace BackendPIA.Controllers {
_token_generator = token_generator;
}
+ [HttpGet("user")]
+ [Authorize(Roles = "Regular")]
+ public async Task<ActionResult<UserAccountDTO>> Show() {
+ string email = HttpContext.User.Claims.Where(c => c.Type.Contains("email")).First().Value;
+ var user = await _user_account_service.GetUserAccount(email);
+
+ if(user == null)
+ return StatusCode(404, "User couldn't be found.");
+
+ return Ok(_mapper.Map<UserAccountDTO>(user));
+ }
+
[HttpPost("signup")]
public async Task<ActionResult<AuthenticationToken>> Create(UserAccountForm form) {
CreateUserAccountLogic logic = new CreateUserAccountLogic(_token_generator, _manager, form, _mapper, _user_account_service, "Regular");