diff options
Diffstat (limited to 'ExamTemplate/Services/UserService.cs')
| -rw-r--r-- | ExamTemplate/Services/UserService.cs | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/ExamTemplate/Services/UserService.cs b/ExamTemplate/Services/UserService.cs index 6b5078b..329d21e 100644 --- a/ExamTemplate/Services/UserService.cs +++ b/ExamTemplate/Services/UserService.cs @@ -1,4 +1,5 @@ -using System.Threading.Tasks;
+using System.Security.Claims;
+using System.Threading.Tasks;
using AutoMapper;
using ExamTemplate.Data.Models;
using ExamTemplate.Data.Repositories;
@@ -50,5 +51,28 @@ namespace ExamTemplate.Services return this._autoMapper.Map<UserServiceModel>(user);
}
+
+ public async Task<UserServiceModel> GetUserByClaimsAsync(ClaimsPrincipal claimsPrincipal)
+ {
+ User user = await this._userRepository.GetByClaimsAsync(claimsPrincipal);
+
+ return this._autoMapper.Map<UserServiceModel>(user);
+ }
+
+ public async Task<bool> EditUserAsync(ClaimsPrincipal claimsPrincipal, EditUserServiceModel editUserServiceModel)
+ {
+ User user = await this._userRepository.GetByClaimsAsync(claimsPrincipal);
+
+ user.UserName = editUserServiceModel.Username;
+ user.FirstName = editUserServiceModel.FirstName;
+ user.LastName = editUserServiceModel.LastName;
+
+ return await this._userRepository.EditUserAsync(user);
+ }
+
+ public bool IsSignedIn(ClaimsPrincipal claimsPrincipal)
+ {
+ return this._signInManager.IsSignedIn(claimsPrincipal);
+ }
}
}
|
