public ActionResult Add(SingleCompetitionModel model) { if (Request.Cookies["user"] == null) { return(RedirectToAction("Login", "User")); } string username = Logged_username(); var dal = new Competition_services(); if (model.Competition.Name == null || model.Competition.Country == null || model.Image == null) { return(RedirectToAction("Add", new { greska = "Popunite sve podatke o natjecanju!" })); } if (dal.Check_existing(model.Competition.Name) != null) { return(RedirectToAction("Add", new { greska = "Igrač već postoji!" })); } if (model.Competitors == null) { return(RedirectToAction("Add", new { greska = "Dodajte natjecatelje!" })); } if (model.Competitors.Count % 2 != 0) { return(RedirectToAction("Add", new { greska = "Broj natjecatelja mora biti paran!" })); } MemoryStream target = new MemoryStream(); model.Image.InputStream.CopyTo(target); model.Competition.Emblem = target.ToArray(); dal.New_competition(model, username); return(View()); }
public ActionResult Add(string greska) { if (Request.Cookies["user"] == null) { return(RedirectToAction("Login", "User")); } string username = Logged_username(); Set_TempData(username); var dal = new Player_services(); var dal2 = new Team_services(); var dal3 = new CompetitionType_services(); BindingList <Type_of_competition> competitionType = dal3.Competition_type_list(); ViewBag.Types = competitionType; BindingList <Sport> sportovi = dal2.Sportovi(); ViewBag.Sportovi = sportovi; TempData["Greska"] = greska; SingleCompetitionModel model = new SingleCompetitionModel(); List <SelectListItem> svi = new List <SelectListItem>(); foreach (var one in dal2.Team_list()) { SelectListItem jedan = new SelectListItem(); jedan.Text = one.Name; svi.Add(jedan); } foreach (var one in dal.Player_list()) { SelectListItem jedan = new SelectListItem(); jedan.Text = one.Name; svi.Add(jedan); } model.Sports = svi; return(View(model)); }
public void New_competition(SingleCompetitionModel model, string username) { using (var ctx = new Context()) { List <Contestant> contestants = new List <Contestant>(); foreach (var one in model.Competitors) { var dal = new Team_services(); var dal2 = new Player_services(); Team x = dal.Check_existing(one); if (x == null) { Player y = dal2.Check_existing(one); contestants.Add(ctx.Contestants.FirstOrDefault(m => m.ID == y.ID)); } else { contestants.Add(ctx.Contestants.FirstOrDefault(m => m.ID == x.ID)); } } Competition competition = new Competition(); competition.Name = model.Competition.Name; competition.Country = model.Competition.Country; competition.Emblem = model.Competition.Emblem; competition.Sport = ctx.Sports.FirstOrDefault(u => u.ID == model.Competition.Sport.ID); competition.User = ctx.Users.FirstOrDefault(u => u.Username == username); competition.Type_of_competition = ctx.Type_of_competitions.FirstOrDefault(u => u.ID == model.Competition.Type_of_competition.ID); competition.Number_of_competitors = model.Competitors.Count; competition.Season = DateTime.Today.Year; ctx.Competitions.Add(competition); ctx.SaveChanges(); if (model.Comment != null) { Competition_comment commentDB = new Competition_comment(); commentDB.Comment = model.Comment; commentDB.Active = true; commentDB.Date = DateTime.UtcNow; commentDB.Competition = competition; commentDB.User = ctx.Users.FirstOrDefault(u => u.Username == username); ctx.Competition_comments.Add(commentDB); ctx.SaveChanges(); } foreach (Contestant one in contestants) { Competition_contestant contestant = new Competition_contestant(); contestant.Competition = competition; contestant.Contestant = one; ctx.Competition_contestants.Add(contestant); ctx.SaveChanges(); } if (competition.Type_of_competition.LeagueCup) { GenerateMatchesLeague(competition, contestants); } else { GenerateMatchesCup(competition, contestants); } } }