public ActionResult DeleteConfirmed(Guid id) { ParticipantDivisionInt participantDivisionInt = db.ParticipantDivisionInts.Find(id); Participant participant = db.Participants.Find(participantDivisionInt.ParticipantId); if (!(User.IsInRole("Administrator") || User.IsInRole(participant.TournamentId.ToString().ToLower()))) { return(Content("Access denied: this user doesn't have permission to alter the selected tournament!")); } db.ParticipantDivisionInts.Remove(participantDivisionInt); db.Divisions.Where(d => d.DivisionId == participantDivisionInt.DivisionId).First().Bracket = null; db.SaveChanges(); return(RedirectToAction("Details", "Divisions", new { id = participantDivisionInt.DivisionId })); }
// GET: ParticipantDivisionInts/Details/5 public ActionResult Details(Guid?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ParticipantDivisionInt participantDivisionInt = db.ParticipantDivisionInts.Find(id); if (participantDivisionInt == null) { return(HttpNotFound()); } return(View(participantDivisionInt)); }
public ActionResult Edit([Bind(Include = "ParticipantDivisionIntId,ParticipantId,DivisionId,OrderId")] ParticipantDivisionInt participantDivisionInt) { if (ModelState.IsValid) { Participant participant = db.Participants.Find(participantDivisionInt.ParticipantId); if (!(User.IsInRole("Administrator") || User.IsInRole(participant.TournamentId.ToString().ToLower()))) { return(Content("Access denied: this user doesn't have permission to alter the selected tournament!")); } db.Entry(participantDivisionInt).State = EntityState.Modified; db.Divisions.Where(d => d.DivisionId == participantDivisionInt.DivisionId).First().Bracket = null; db.SaveChanges(); return(RedirectToAction("Details", "Divisions", new { id = participantDivisionInt.DivisionId })); } ViewBag.DivisionId = new SelectList(db.Divisions, "DivisionId", "Id", participantDivisionInt.DivisionId); ViewBag.ParticipantId = new SelectList(db.Participants, "ParticipantId", "Name", participantDivisionInt.ParticipantId); return(View(participantDivisionInt)); }
public ActionResult Create([Bind(Include = "ParticipantDivisionIntId,ParticipantId,DivisionId,OrderId")] ParticipantDivisionInt participantDivisionInt) { if (ModelState.IsValid) { Participant participant = db.Participants.Find(participantDivisionInt.ParticipantId); if (!(User.IsInRole("Administrator") || User.IsInRole(participant.TournamentId.ToString().ToLower()))) { return(Content("Access denied: this user doesn't have permission to alter the selected tournament!")); } participantDivisionInt.ParticipantDivisionIntId = Guid.NewGuid(); db.ParticipantDivisionInts.Add(participantDivisionInt); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.DivisionId = new SelectList(db.Divisions, "DivisionId", "Id", participantDivisionInt.DivisionId); ViewBag.ParticipantId = new SelectList(db.Participants, "ParticipantId", "Name", participantDivisionInt.ParticipantId); return(View(participantDivisionInt)); }
public ActionResult Delete(Guid?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ParticipantDivisionInt participantDivisionInt = db.ParticipantDivisionInts.Find(id); if (participantDivisionInt == null) { return(HttpNotFound()); } Participant participant = db.Participants.Find(participantDivisionInt.ParticipantId); if (!(User.IsInRole("Administrator") || User.IsInRole(participant.TournamentId.ToString().ToLower()))) { return(Content("Access denied: this user doesn't have permission to alter the selected tournament!")); } return(View(participantDivisionInt)); }
// GET: Tournaments/Details/5 public ActionResult Copy(Guid tournamentId) { var tournament = db.Tournaments .Include(t => t.Schools) .Include(t => t.Participants) .Include(t => t.Divisions) .AsNoTracking() .FirstOrDefault(e => e.TournamentId == tournamentId); if (tournament == null) { return(HttpNotFound()); } var copiedTournament = new Tournament(); copiedTournament.Name = String.Format("Copy of ({0})", tournament.Name.Replace("{", "(").Replace("}", ")")); copiedTournament.TournamentId = Guid.NewGuid(); Dictionary <Guid, Participant> exchangeKeysDrawer = new Dictionary <Guid, Participant>(); foreach (var sch in tournament.Schools) { var school = new School() { Name = sch.Name, SchoolId = Guid.NewGuid(), TournamentId = copiedTournament.TournamentId, Tournament = copiedTournament }; copiedTournament.Schools.Add(school); foreach (var part in sch.Participants) { var participant = new Participant() { ParticipantId = Guid.NewGuid(), Name = part.Name, SchoolId = school.SchoolId, School = school, TournamentId = copiedTournament.TournamentId, Tournament = copiedTournament }; exchangeKeysDrawer.Add(part.ParticipantId, participant); school.Participants.Add(participant); } } foreach (var div in tournament.Divisions) { var division = new Division() { DivisionId = Guid.NewGuid(), Id = div.Id, Name = div.Name, Bracket = div.Bracket, DoubleElimination = div.DoubleElimination, NoComebackFromLooserBracket = div.NoComebackFromLooserBracket, NoSecondaryFinal = div.NoSecondaryFinal, DrawBracket = div.DrawBracket, ConsolidationRound = div.ConsolidationRound, OrderId = div.OrderId, Title = div.Title, RoundRobin = div.RoundRobin, TournamentId = copiedTournament.TournamentId, Tournament = copiedTournament }; copiedTournament.Divisions.Add(division); foreach (var pd in div.ParticipantDivisionInts) { var participantDiv = new ParticipantDivisionInt() { ParticipantDivisionIntId = Guid.NewGuid(), Division = division, DivisionId = division.DivisionId, Participant = exchangeKeysDrawer[pd.ParticipantId], ParticipantId = exchangeKeysDrawer[pd.ParticipantId].ParticipantId, OrderId = div.OrderId }; division.ParticipantDivisionInts.Add(participantDiv); } } db.Tournaments.Add(copiedTournament); db.SaveChanges(); return(RedirectToAction("Index")); }