private QueryResponse <BoardDto> HandleGettingBoard(string userId, UserBoard userBoard) { QueryResponse <BoardDto> result; _userBoardRepository.UpdateBoardTimeVisited(userBoard); var board = userBoard.Board; board.Lists = board.Lists.Where(x => !x.IsDeleted).ToList(); foreach (var x in board.Lists) { x.Cards = x.Cards.Where(c => !c.IsDeleted).ToList(); } var boardDto = _mapper.Map <Board, BoardDto>(board, opts => opts.AfterMap((src, dest) => dest.IsOwner = src.OwnerId == userId)); boardDto.ObfuscatedId = _obfuscator.Obfuscate(boardDto.Id); foreach (var boardList in boardDto.Lists) { foreach (var card in boardList.Cards) { card.ObfuscatedId = _obfuscator.Obfuscate(card.Id); } } result = new QueryResponse <BoardDto> { ResponseDto = boardDto, HttpStatusCode = HttpStatusCode.OK }; return(result); }
public async Task <MemberDto> ConnectUserWithBoard(AddMemberDto addMemberDto, string userId) { if (!_boardRepository.IsOwner(addMemberDto.BoardId, userId) || _userBoardRepository.IsMember(addMemberDto.BoardId, addMemberDto.MemberId) || await _userManager.FindByIdAsync(addMemberDto.MemberId) == null) { return(null); } UserBoard addedUserBoard; if (_userBoardRepository.GetUserBoard(addMemberDto.BoardId, addMemberDto.MemberId) == null) { var userBoard = new UserBoard { BoardId = addMemberDto.BoardId, UserId = addMemberDto.MemberId }; addedUserBoard = _userBoardRepository.CreateUserBoard(userBoard); } else { addedUserBoard = _userBoardRepository.ChangeUserBoardState(addMemberDto.BoardId, addMemberDto.MemberId); } var result = _mapper.Map <MemberDto>(addedUserBoard.User); return(result); }
//public void Delete(UserBoard data) //{ // _unitOfWork.Repository<UserBoard>().Delete(data); // _unitOfWork.Save(); //} //public IEnumerable<UserBoard> Get() //{ // return _unitOfWork.Repository<UserBoard>().Get().ToList(); //} //public IEnumerable<UserBoard> Get(int id) //{ // return _unitOfWork.Repository<UserBoard>().Get((i) => i.BoardId == id, null , a => a.AspNetUser, b => b.Board).ToList(); //} //public UserBoard GetById(int id) //{ // return _unitOfWork.Repository<UserBoard>().Get(data => data.Id == id).FirstOrDefault(); //} //public Board GetBoardById(int id) //{ // return _unitOfWork.Repository<Board>().Get(data => data.Id == id).FirstOrDefault(); //} //public UserBoard GetFirstOrDefault() //{ // return _unitOfWork.Repository<UserBoard>().Get().FirstOrDefault(); //} public void Insert(UserBoard data) { data.Id = new Random().Next(); _unitOfWork.Repository <UserBoard>().Insert(data); _unitOfWork.SaveChanges(); }
public void UpdateBoardTimeVisited(UserBoard userBoard) { userBoard.LastTimeVisited = DateTime.UtcNow; _context.Attach(userBoard); _context.Entry(userBoard).Property(x => x.LastTimeVisited).IsModified = true; _context.SaveChanges(); }
public IActionResult Create(Board board) { if (!ModelState.IsValid) { return(View()); } var newBoard = new Board() { Name = board.Name }; _unitOfWork.Board.Add(newBoard); _unitOfWork.Save(); var newUserBoard = new UserBoard() { BoardId = newBoard.Id, UserId = Convert.ToInt32(_userManager.GetUserId(HttpContext.User)) }; _unitOfWork.UserBoard.Add(newUserBoard); _unitOfWork.Save(); return(RedirectToAction("Index")); }
private void LookForMatches(UserBoard player, ITargetBlock <Match> playerBlock) { foreach (var opponent in _players.Values) { // Do not match with yourself! if (opponent.Username == player.Username) { continue; } // Match with the first person who has the same GameType if (opponent.Board.GameTypeId != player.Board.GameTypeId) { continue; } var opponentBlock = _blocks[opponent.Username]; // Remove opponent from match making. Remove(opponent.Username); // Remove player from match making. Remove(player.Username); // Notify both async waiting contexts that a match has been found. var playerGoesFirst = FlipCoin(); playerBlock.Post(new Match(player, opponent, playerGoesFirst)); opponentBlock.Post(new Match(opponent, player, !playerGoesFirst)); // Stop searching through the players. break; } }
public async Task <IActionResult> AddUserToBoard(int id, [FromBody] UserIdAndName value) { var board = await _dataContext.Boards.Include(x => x.Users).FirstOrDefaultAsync(x => x.Id == id); var user = await _dataContext.Users.FirstOrDefaultAsync(x => x.Username == value.Username); var existingUsers = board.Users.Select(u => u.UserId); if (user != null) { foreach (var i in existingUsers) { if (i == user.Id) { return(NotFound("User already added")); } } var userBoard = new UserBoard { Board = board, User = user }; board.Users.Add(userBoard); _dataContext.SaveChanges(); return(Ok()); } else { return(NotFound("User doesent exist")); } }
public IActionResult NewBoard(int userid) { var model = new UserBoard { UserId = userid }; return(PartialView("CreateBoardModalPartial", model)); }
public ActionResult Delete(int id) { UserBoard userBoard = db.UserBoards.Find(id); var boardId = userBoard.BoardId; db.UserBoards.Remove(userBoard); db.SaveChanges(); return(RedirectToAction("Index", "UserBoards", new { id = boardId })); }
public UserBoard CreateUserBoard(UserBoard userBoard) { _userBoards.Add(userBoard); _context.SaveChanges(); _context.Entry(userBoard).Reference(x => x.Board).Load(); _context.Entry(userBoard.Board).Reference(x => x.Owner).Load(); _context.Entry(userBoard).Reference(x => x.User).Load(); return(userBoard); }
public async Task <ActionResult <BoardDTO> > addOrRemoveCollaborators(int boardid, int userid, Boolean add) { Console.WriteLine("id user envoyé de deleteUser " + userid); var board = await _context.Boards.FindAsync(boardid); var user = await _context.Users.FindAsync(userid); List <Card> authorCard = new List <Card>(); var boardUser = new UserBoard(); boardUser.Board = board; boardUser.User = user; if (add) { _context.UserBoards.Add(boardUser); _context.SaveChanges(); } else { Console.WriteLine("nombre de liste envoyé de deleteUser " + board.BoardId); if (board.Lists != null) { foreach (var l in board.Lists) { if (l.Cards.Count() != 0) { foreach (var c in l.Cards) { if (c.Collaborators.Count() != 0) { foreach (var uc in c.CardUsers) { if (uc.User == user) { _context.UserCards.Remove(uc); } } } if (c.Author == user) { authorCard.Add(c); } } } } } foreach (var ac in authorCard) { await this.cardsControlleur.Delete(ac.CardId); } _context.UserBoards.Remove(boardUser); _context.SaveChanges(); } return(board.ToDTO()); }
//[ValidateAntiForgeryToken] public ActionResult Create([Bind(Include = "BoardId,UserId")] UserBoard userBoard) { if (ModelState.IsValid) { _service.Insert(userBoard); return(RedirectToAction("Index", new { id = userBoard.BoardId })); } return(new HttpNotFoundResult("Failed")); }
public void CompleteSelection(int distance, string dir) { selection = UserBoard.GetColumn(anchorLocation, distance, dir); selectionDirection = dir; board.ResetPieces(potentialSelection); potentialSelection.Clear(); board.Select(selection); potentialMovesSumito = board.GetMoves(selection, selectionDirection); // Debug.Log(potentialMoves.Count); ChangeButtonsStatus(true); }
public async Task RemoveBoard(UserBoard board) { var images = _context.BoardImages.Where(c => c.BoardId == board.Id); if (images != null && images.Count() > 0) { _context.BoardImages.RemoveRange(images); } _context.UserBoards.Remove(board); await _context.SaveChangesAsync(); }
/// <summary> /// Search the logged in user's Boards /// </summary> /// <returns></returns> public UserBoard SearchBoardsAsync(string query) { UserBoard SearchBoard = new UserBoard(); string fields = "id,name,url,image,creator,created_at,counts,privacy,reason,description"; JObject httpResponse = null; JObject payload = new JObject(); httpResponse = this._httpClient.GetData(this._domain + _version + "/me/search/boards/?fields=" + fields + "&query=" + query, "GET", this._accessToken); SearchBoard = JsonConvert.DeserializeObject <UserBoard>(httpResponse["data"].ToString()); return(SearchBoard); }
//[ValidateAntiForgeryToken] public ActionResult Create([Bind(Include = "BoardId,UserId")] UserBoard userBoard) { userBoard.Id = new Random().Next(); if (ModelState.IsValid) { db.UserBoards.Add(userBoard); db.SaveChanges(); return(RedirectToAction("Index", new { id = userBoard.BoardId })); } return(new HttpNotFoundResult("Failed")); }
public UserBoard GetBoard(long board) { UserBoard userboard = new UserBoard(); string fields = "id,name,url,image,creator,created_at,counts,privacy,reason,description"; JObject httpResponse = null; JObject payload = new JObject(); httpResponse = this._httpClient.GetData(this._domain + _version + "/boards/" + board + "/?fields=" + fields, "GET", this._accessToken); userboard = JsonConvert.DeserializeObject <UserBoard>(httpResponse["data"].ToString()); return(userboard); }
/// <summary> /// Edit a Board /// </summary> /// <param name="name"></param> /// <returns></returns> public UserBoard EditBoard(long boardid, string boardname, string boarddescription) { UserBoard boardcreate = new UserBoard(); JObject httpResponse = null; JObject payload = new JObject(); payload.Add(new JProperty("name", boardname)); payload.Add(new JProperty("description", boarddescription)); httpResponse = this._httpClient.UpdateData(this._domain + _version + "/boards/" + boardid + "/? ", "PATCH", payload.ToString(), this._accessToken); boardcreate = JsonConvert.DeserializeObject <UserBoard>(httpResponse["data"].ToString()); return(boardcreate); }
public int Create(UserBoard userBoard) { userBoard.Id = new Random().Next(); try { db.UserBoards.Add(userBoard); db.SaveChanges(); return(RetunMsg_Success); } catch { return(RetunMsg_Failed); } }
/// <summary> /// Create a Board /// </summary> /// <param name="name"></param> /// <returns></returns> public UserBoard CreateBoard(string name) { UserBoard boardcreate = new UserBoard(); JObject httpResponse = null; JObject payload = new JObject(); payload.Add(new JProperty("name", name)); httpResponse = this._httpClient.PostData(this._domain + _version + "/boards/?", "POST", payload.ToString(), this._accessToken); string response = ""; CreateResponse Response = new CreateResponse(); boardcreate = JsonConvert.DeserializeObject <UserBoard>(httpResponse["data"].ToString()); return(boardcreate); }
private void FireOpponentMissileEasy() { // fire opponent missile bool done = false; while (done == false) { int rowNumber = rand.Next(Battlefield.FIELD_SIZE); int columnNumber = rand.Next(Battlefield.FIELD_SIZE); FireMissileStatus status = UserBoard.FireMissile(columnNumber, rowNumber); if (status == FireMissileStatus.Hit || status == FireMissileStatus.Miss) { done = true; } } }
public int Delete(int id, out int boardId) { UserBoard userBoard = db.UserBoards.Find(id); boardId = userBoard.BoardId; try { db.UserBoards.Remove(userBoard); db.SaveChanges(); return(RetunMsg_Success); } catch { return(RetunMsg_Failed); } }
public async Task <Match> FindMatchAsync(UserBoard player) { if (!_players.TryAdd(player.Username, player)) { return(null); } var block = new WriteOnceBlock <Match>(null); if (!_blocks.TryAdd(player.Username, block)) { _players.Remove(player.Username); return(null); } LookForMatches(player, block); return(await block.ReceiveAsync()); }
public void CreateNewBoard(Board board, string userName) { var currentUserId = Context.Users.Single(x => x.UserName == userName).Id; Context.Boards.Add(board); Context.SaveChanges(); var userBoard = new UserBoard() { BoardId = board.Id, UserId = currentUserId }; Context.UserBoards.Add(userBoard); Context.SaveChanges(); AddDefaultColumsToBoard(board.Id); }
public async Task <UserBoard> AddUserBoard(int id, UserBoard board) { var request = new HttpRequestMessage(new HttpMethod("POST"), _remoteServiceBaseUrl + "/userboards"); request.Content = new StringContent(JsonConvert.SerializeObject(board), Encoding.UTF8, "application/json"); try { var response = await _httpClient.SendAsync(request); return(await response.Content.ReadAsAsync <UserBoard>()); } catch (Exception e) { return(null); } }
public async Task <IActionResult> AddBoardorChannel(int id, bool isChannel, string name = "Новая доска/канал", string descr = "Здесь должно было быть описание") { if (isChannel) { var channel = new Channel() { UserId = id, Name = name, Description = descr, Date = DateTime.Now }; var createdChannel = await _gateway.AddUserChannel(id, channel); if (createdChannel != null) { var fullchannel = new Models.ChannelWithImages() { channel = createdChannel }; return(View("~/Views/Profiles/Channel.cshtml", fullchannel)); } _logger.LogInformation($"%%% couldnt add the channel"); return(BadRequest()); } else { var board = new UserBoard() { UserId = id, BoardName = name, Description = descr }; var createdBoard = await _gateway.AddUserBoard(id, board); if (createdBoard != null) { var fullboard = new Models.BoardWithImages() { board = createdBoard }; return(View("~/Views/Profiles/Board.cshtml", fullboard)); } _logger.LogInformation($"%%% couldnt add the board"); return(BadRequest()); } }
public async Task <BoardDTO> CreateBoardAsync(BoardDTO boardDTO) { var board = new Board { Title = boardDTO.Title, Date = DateTime.UtcNow }; db.Boards.Add(board); await db.SaveChangesAsync(); foreach (UserDTO user in boardDTO.Participants) { var userBoard = new UserBoard { UserId = user.Id, BoardId = board.Id }; db.UserBoards.Add(userBoard); } await db.SaveChangesAsync(); return(db.Boards .Include(b => b.UserBoards) .ThenInclude(ub => ub.User) .Where(b => b.Id == board.Id) .Select(b => new BoardDTO { Id = b.Id, Title = b.Title, Date = b.Date, Participants = b.UserBoards.Select(ub => new UserDTO { Id = ub.UserId, Name = ub.User.Name }) .ToList() }) .FirstOrDefault()); }
private UserBoard InitializeUserBoard(FirstBoardDto boardDto, string userId) { var hash = Guid.NewGuid().ToString("N"); var userBoard = new UserBoard { UserId = userId, Board = new Board { Name = boardDto.BoardName, OwnerId = userId, Lists = new List <List>(), Hash = hash } }; var result = TryInitializeFirstList(boardDto, out List list); if (result) { userBoard.Board.Lists.Add(list); } return(userBoard); }
public void FireOpponentMissile() { if (EasyMode == true) { FireOpponentMissileEasy(); } else { FireOpponentMissileDifficult(); } // check if the game is done if (UserBoard.AreAllShipsSunken()) { GameOver = true; MessageBox.Show("Computer won the game!", "Game Over", MessageBoxButtons.OK, MessageBoxIcon.Information); } else if (ComputerBoard.AreAllShipsSunken()) { GameOver = true; MessageBox.Show("You won the game!", "Game Over", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Follow a Board /// </summary> /// <param name="BoardId"></param> /// <returns></returns> /// public string FollowBoard(long BoardId) { UserBoard boardcreate = new UserBoard(); JObject httpResponse = null; JObject payload = new JObject(); payload.Add(new JProperty("board", BoardId)); httpResponse = this._httpClient.PostData(this._domain + _version + "/me/following/boards/?", "POST", payload.ToString(), this._accessToken); string response = ""; CreateResponse Response = new CreateResponse(); Response = JsonConvert.DeserializeObject <CreateResponse>(httpResponse.ToString()); response = Response.StatusDescription; if (Response.StatusCode == 200) { return("Created Successfully"); } else { return(response); } }