Exemplo n.º 1
0
        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());
        }
Exemplo n.º 2
0
        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));
        }
Exemplo n.º 3
0
        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);
                }
            }
        }