Esempio n. 1
0
 /// <summary>
 /// Maps the update user API dto to user.
 /// </summary>
 /// <returns>The update user API dto to user.</returns>
 /// <param name="userApiDto">User API dto.</param>
 /// <param name="user">User.</param>
 public User MapUpdateUserApiDtoToUser(UserApiDto userApiDto, User user)
 {
     user.Description         = userApiDto.Description;
     user.Email               = userApiDto.Email;
     user.FirstName           = userApiDto.FirstName;
     user.LastName            = userApiDto.LastName;
     user.IsOwner             = userApiDto.IsOwner;
     user.IsRoomer            = userApiDto.IsRoomer;
     user.IsAdmin             = userApiDto.IsAdmin;
     user.PhoneNumber         = userApiDto.PhoneNumber;
     user.City                = userApiDto.City;
     user.PostalCode          = userApiDto.PostalCode;
     user.Token               = userApiDto.Token;
     user.TokenExpirationDate = userApiDto.TokenExpirationDate;
     return(user);
 }
Esempio n. 2
0
        /// <summary>
        /// Updates the user async.
        /// </summary>
        /// <returns>The user async.</returns>
        /// <param name="userApiDto">User API dto.</param>
        /// <param name="token">Token.</param>
        public async Task <UserApiDto> UpdateUserAsync(UserApiDto userApiDto, string token)
        {
            var isValid = await _authenticationService.CheckIfTokenIsValidAsync(userApiDto.Token, userApiDto.UserId);

            var user = await _dal.GetUserAsyncByToken(token);

            if (user.IsAdmin == 1 || isValid)
            {
                var userUpdatedApiDto = await _dal.UpdateUserAsync(userApiDto);

                if (userUpdatedApiDto != null)
                {
                    return(userUpdatedApiDto);
                }
                return(null);
            }
            return(null);
        }
Esempio n. 3
0
        public async Task <IActionResult> Put([FromBody] UserApiDto userApiDto)
        {
            //Get header token
            if (Request.Headers.TryGetValue("Authorization", out StringValues headerValues) && userApiDto != null)
            {
                var token = _customEncoder.DecodeBearerAuth(headerValues.First());

                if (token != null)
                {
                    var userApiDtoUpdated = await _userService.UpdateUserAsync(userApiDto, token);

                    if (userApiDtoUpdated != null)
                    {
                        return(Ok(userApiDtoUpdated));
                    }
                    return(StatusCode(404));
                }
                return(StatusCode(403));
            }

            return(StatusCode(401));
        }