/// <summary> /// Method that will Update the Player passed in the parameters to the database /// </summary> /// <param name="player">Object Player to Update</param> public async Task <ApiResponse> Update(Player player) { try { if (!await _playerBusiness.CheckUpdate(player)) { if (player.ImageChanged) { if (player.Picture != null && player.Picture != "") { _imageBusiness.DeleteImage(player.Picture); } player.Picture = await _imageBusiness.UploadImage(player.ImageBase64, $"{player.FirstName}-{player.LastName}-{player.Login}-{DateTime.Now.ToString("yyyyMMddHHmmss")}"); } if (player.PasswordChanged) { player.Password = _cryption.Encrypt(player.Password); } _context.Players.Update(player); await _context.SaveChangesAsync(); return(new ApiResponse { Status = ApiStatus.Ok, Message = ApiAction.Update, Response = player }); } else { return(new ApiResponse { Status = ApiStatus.CantDelete, Message = "Le pseudo et l'e-mail doivent être uniques." }); } } catch (Exception e) { return(TranslateError.Convert(e)); } }