public virtual ActionResult EditTournament(long tournamentId) { var tournament = TournamentService.GetTournamentGuarded(tournamentId); var model = new EditTournamentViewModel(tournament); return(View(model)); }
public void SaveTournament_DeletesRound_ReordersIndicies() { var updatedTournament = new Tournament(); updatedTournament.InitializeDefaults(); var dbMock = DatabaseFaker.GetFake(); var db = dbMock.Object; updatedTournament.Rounds.First().RoundNo = 2; int firstRoundNo = 2; dbMock.Setup(p => p.GetTournament(It.IsAny <long>())).Returns(updatedTournament); dbMock.Setup(p => p.UpdateTournamentAndRounds(It.IsAny <Tournament>())).Callback <Tournament>( (tournament) => { firstRoundNo = tournament.Rounds.First().RoundNo; }); var target = new TournamentAdminController(db, null, new Mock <NaHub>().Object); var updatedTouranmentModel = new EditTournamentViewModel(updatedTournament); target.SaveTournament(updatedTouranmentModel); Assert.AreEqual(1, firstRoundNo); }
public ActionResult Update(int TournamentID = -1) { logger.Debug("User " + WebSecurity.GetUserId(User.Identity.Name) + " \"" + User.Identity.Name + "\" visited TournamentsManagement/Tournament/Update"); Tournament tournament = repository.Tournaments.Where(t => t.TournamentID == TournamentID).FirstOrDefault(); if (tournament == null) { logger.Warn("Tournament with id = " + TournamentID + " not found"); throw new HttpException(404, "Tournament not found"); } EditTournamentViewModel viewModel = new EditTournamentViewModel() { TournamentID = tournament.TournamentID, Name = tournament.Name, TournamentTypesListID = (int)tournament.Type, TournamentFormatsListID = (int)tournament.Format, ShowSolutionSendingTime = tournament.ShowSolutionSendingTime, ShowTimer = tournament.ShowTimer, StartDate = tournament.StartDate, StartTime = tournament.StartDate, EndDate = tournament.EndDate, EndTime = tournament.EndDate, Problems = tournament.Problems.Select(p => p.Name) }; return(View(viewModel)); }
public ActionResult EditTournament(EditTournamentViewModel viewModel) { var tour = new SAP.DAL.Tables.Tournament { Id = viewModel.Id, Title = viewModel.Title, Description = viewModel.Description, StartDate = viewModel.StartDate.Add(viewModel.StartTime), EndDate = viewModel.EndDate.Add(viewModel.EndTime), MaxUsers = viewModel.MaxUsers }; bool result = _tournamentManager.EditTournament(tour); if (result) { TempData["Alert"] = SetAlert.Set("Poprawnie zmodfyfikowano turniej " + viewModel.Title, "Sukces", AlertType.Success); } else { TempData["Alert"] = SetAlert.Set("Wystąpił błąd, prosimy spróbować później", "Błąd", AlertType.Danger); } return(RedirectToAction("Index")); }
public virtual ActionResult SaveTournament(EditTournamentViewModel model) { var tourney = TournamentService.GetTournamentGuarded(model.Tournament.Id); model.IndexToRoundNo(); model.Tournament.Rounds = model.RoundList; TournamentService.UpdateTournamentAndRounds(model.Tournament); return(this.RedirectToAction(MVC.Admin.TournamentAdmin.EditTournament(tourney.Id))); }
// Called from javascript public virtual ActionResult EditTournamentRound(int id) { var model = new EditTournamentViewModel(); // Dummy container object model.RoundIx = id; model.RoundList = new List <Round>(id + 1); model.RoundCount = id + 1; for (int i = 0; i < id + 1; i++) { model.RoundList.Add(new Round()); } return(PartialView(model)); }
public virtual ActionResult StartTournament(EditTournamentViewModel model) { SaveTournament(model); var tourney = TournamentService.GetTournamentGuarded(model.Tournament.Id); ValidationResultSet result; if (!tourney.CanBeStarted(out result)) { FormFeedbackHandler.SetError(HttpContext, result.GetFirstErrorMessage()); } else { TournamentService.StartTournament(tourney); } return(this.RedirectToAction(MVC.Admin.TournamentAdmin.EditTournament(tourney.Id))); }
public void StartTournament_SavesAndStarts() { var dbMock = DatabaseFaker.GetFake(); var db = dbMock.Object; var controller = new TournamentAdminController(db, ServiceFaker.GetFakeFormFeedbackHandler(), new Mock <NaHub>().Object); var tournament = Factory.CreateInitializedTourney() .WithJudges(1) .WithContestants(4); db.AddTournament(tournament); var model = new EditTournamentViewModel(tournament); model.RoundList[0].ContestantsPerHeat = 3; controller.StartTournament(model); Assert.AreEqual(3, tournament.GetRoundNo(1).ContestantsPerHeat); Assert.AreEqual(TournamentStatus.Running, tournament.Status); }
public void CreateShallowCopyOf_OK() { var round = new Round() { Id = 2 }; var tournament = new Tournament(); tournament.Name = "Roger"; tournament.Id = 1; tournament.Rounds = new HashSet <Round>(); tournament.Rounds.Add(round); var tmodel = new EditTournamentViewModel(tournament); Assert.AreEqual("Roger", tmodel.Tournament.Name); Assert.AreEqual(1, tmodel.Tournament.Id); Assert.AreSame(tournament.Rounds, tmodel.Tournament.Rounds); Assert.AreSame(tournament.Rounds.ToList().FirstOrDefault(), tmodel.Tournament.Rounds.ToList().FirstOrDefault()); Assert.AreEqual(tournament.Rounds.ToList().FirstOrDefault(), tmodel.RoundList[0]); }
public void EditTournamentPost_AddDeleteAndReplaceOk() { var dbMock = DatabaseFaker.GetFake(); var db = dbMock.Object; var oldTournament = new Tournament(); oldTournament.Rounds = new HashSet <Round>(); oldTournament.Rounds.Add(new Round() { Id = 1 }); oldTournament.Rounds.Add(new Round() { Id = 2 }); db.AddTournament(oldTournament); var newTournament = new Tournament(); newTournament.Rounds = new HashSet <Round>(); var newTournamentModel = new EditTournamentViewModel(newTournament); newTournamentModel.RoundList.Add(new Round() { Id = 1, Title = "Hi" }); newTournamentModel.RoundList.Add(new Round() { Id = 3 }); var target = new TournamentAdminController(db, ServiceFaker.GetFakeFormFeedbackHandler(), new Mock <NaHub>().Object); target.SaveTournament(newTournamentModel); Assert.IsTrue(oldTournament.Rounds.Any(p => p.Id == 1), "1"); Assert.IsFalse(oldTournament.Rounds.Any(p => p.Id == 2), "2"); Assert.IsTrue(oldTournament.Rounds.Any(p => p.Id == 3), "3"); Assert.AreEqual("Hi", oldTournament.Rounds.FirstOrDefault(p => p.Id == 1).Title); }
public ActionResult EditTournament(int tournamentId) { var dbModel = _tournamentManager.Tournaments .Where(x => x.Id == tournamentId) .FirstOrDefault(); var viewModel = new EditTournamentViewModel { Id = dbModel.Id, Title = dbModel.Title, Description = dbModel.Description, StartDate = dbModel.StartDate.Date, EndDate = dbModel.EndDate.Date, StartTime = dbModel.StartDate.TimeOfDay, EndTime = dbModel.EndDate.TimeOfDay, MaxUsers = dbModel.MaxUsers, IsActive = dbModel.IsActive, IsConfigured = dbModel.IsConfigured }; return(View(viewModel)); }
public void SaveTournament_StartedTournament_SavesNewName() { var updatedTournament = new Tournament(); updatedTournament.InitializeDefaults(); updatedTournament.Name = "After"; var savedTournament = new Tournament(); savedTournament.InitializeDefaults(); savedTournament.Name = "Before"; var dbMock = DatabaseFaker.GetFake(); var db = dbMock.Object; dbMock.Setup(p => p.GetTournament(It.IsAny <long>())).Returns(savedTournament); var target = new TournamentAdminController(db, ServiceFaker.GetFakeFormFeedbackHandler(), new Mock <NaHub>().Object); var updatedTouranmentModel = new EditTournamentViewModel(updatedTournament); target.SaveTournament(updatedTouranmentModel); Assert.AreEqual("After", savedTournament.Name); }
public EditTournamentView(EditTournamentViewModel vm) { InitializeComponent(); vm.CloseAction = this.Close; DataContext = vm; }
public virtual ActionResult CreateTournament() { var model = new EditTournamentViewModel(new Tournament()); return(View(model)); }