public ActionResult GetGamesUserJoined(int contactId, bool isPublicProfileView) { var model = new GameProfileViewModel(); model.IsPublicProfileView = isPublicProfileView; model.ContactId = contactId; var pickUpGames = _gameService.GetPickUpGamesByContactId(contactId); if (pickUpGames == null) { return(PartialView("../Game/_GamesUserJoined", model)); } model.Games = new List <GameListViewModel>(); foreach (var pickUpGame in pickUpGames) { var game = _gameService.GetGameById(pickUpGame.GameId); // Do not add game to list if time passed if (game.EndTime < DateTime.Today.AddDays(-1)) { continue; } // Do not add if user is the creator of game if (game.ContactId == contactId) { continue; } var gameToAdd = new GameListViewModel { EndDate = game.EndTime, GameId = game.GameId, GameStatus = ((GameStatusEnum)game.GameStatusId).ToString(), Sport = _gameService.GetSportNameById(game.SportId), StartDate = game.StartTime, Venue = _venueService.GetVenueNameById(game.VenueId), VenueId = game.VenueId }; if (game.ContactId != null) { gameToAdd.ContactId = game.ContactId; gameToAdd.ContactName = _contactService.GetContactById(game.ContactId).Username; } model.Games.Add(gameToAdd); } model.Games = model.Games.OrderBy(x => x.StartDate).ToList(); return(PartialView("../Game/_GamesUserJoined", model)); }
public async Task <IActionResult> Create([FromBody] GameProfileViewModel model, CancellationToken ct) { var user = await GetCurrentUserAsync(); if (user.Coach == null) { return(BadRequest("You should create coach profile firstly.")); } if (user.Coach.GameProfiles.FirstOrDefault(g => g.Game == model.Game) != null) { return(BadRequest($"Profile for {model.Game} already exists.")); } var gameProfile = model.Adapt <GameProfile>(); user.Coach.GameProfiles.Add(gameProfile); return(Ok()); }
public ActionResult GetGamesStartedByUser(int contactId, bool isPublicProfileView) { var model = new GameProfileViewModel(); model.IsPublicProfileView = isPublicProfileView; model.ContactId = contactId; var games = _gameService.GetCurrentOrderedGamesByContactId(contactId); if (games == null) { return(PartialView("../Game/_GamesUserCreated", model)); } model.Games = new List <GameListViewModel>(); foreach (var game in games) { var gameToAdd = new GameListViewModel { EndDate = game.EndTime, GameId = game.GameId, GameStatus = ((GameStatusEnum)game.GameStatusId).ToString(), Sport = _gameService.GetSportNameById(game.SportId), StartDate = game.StartTime, Venue = _venueService.GetVenueNameById(game.VenueId), VenueId = game.VenueId }; if (game.ContactId != null) { gameToAdd.ContactId = game.ContactId; gameToAdd.ContactName = _contactService.GetContactById(game.ContactId).Username; } model.Games.Add(gameToAdd); } return(PartialView("../Game/_GamesUserCreated", model)); }