コード例 #1
0
        public IActionResult Start(decimal id)
        {
            Groep groep = _groepRepository.GetById(id);

            if (groep == null)
            {
                return(NotFound());
            }

            if (groep.Currentstate == null)
            {
                groep.InitializeState();
                groep.KanSpelen();
                groep.Spelen();
                _groepRepository.SaveChanges();
            }

            if (groep.Fout == 3)
            {
                groep.Blok();
                _groepRepository.SaveChanges();
                return(RedirectToAction("Feedback", "Groep", new { Id = groep.Id }));
            }

            Pad pad = groep.getCurrentGroepPad(groep.Progress).Paden;

            ViewData["Oefening"] = pad.OefeningNaamNavigation;
            getFile(pad.OefeningNaamNavigation.Opgave);
            return(View(new AntwoordViewModel(pad, groep)));
        }
コード例 #2
0
        public IActionResult Lounge(decimal id)
        {
            Groep groep = _groepRepository.GetById(id);

            if (groep == null)
            {
                return(NotFound());
            }


            if (groep.Currentstate == null)
            {
                groep.InitializeState();
                groep.GekozenEnVergrendeld();
                //groep.KanSpelen();
                //groep.Spelen();
                _groepRepository.SaveChanges();
            }
            else if (groep.Currentstate.GetStateEnum() == State.BLOK)
            {
                return(RedirectToAction("Feedback", "Groep", new { Id = groep.Id }));
            }


            return(View(groep));
        }
コード例 #3
0
        /// <summary>
        ///     Kiest de Groep om het spel te spelen
        /// </summary>
        /// <param name="sessieId">Id van de huidige Sessie</param>
        /// <param name="groepsId">Id van de gekozen Groep</param>
        /// <returns>
        ///     GroepOverzicht View met als Model de gekozen Groep
        ///     NotFoundResult indien de Groep niet gevonden werd
        ///     RedirectToAction Index in SessieController indien de Groep al gekozen werd
        /// </returns>
        public IActionResult KiesGroep(int sessieId, int groepsId)
        {
            Groep gekozenGroep = _groepsRepository.GetById(groepsId);

            if (gekozenGroep == null)
            {
                return(NotFound());
            }
            if (gekozenGroep.DeelnameBevestigd)
            {
                TempData["error"] = "Groep is al gekozen!";
                return(RedirectToAction(nameof(Index), "Sessie"));
            }

            gekozenGroep.DeelnameBevestigd = true;
            _groepsRepository.SaveChanges();
            TempData["message"]  = "Je hebt nu deelgenomen, zo dadelijk kan je beginnen";
            ViewData["sessieId"] = sessieId;

            return(View("GroepOverzicht", gekozenGroep));
        }
コード例 #4
0
        public IActionResult DeBlokkeer(decimal groepsId, string sessieId)
        {
            var groep = _groepRepository.GetById(groepsId);

            if (groep == null)
            {
                return(NotFound());
            }

            if (groep.Currentstate.GetStateEnum() == State.BLOK)
            {
                groep.Spelen();
                groep.ResetFout();
                Groepstate state = groep.Currentstate;

                _groepRepository.SaveChanges();

                _groepstateRepository.Delete(state);
                _groepstateRepository.SaveChangesAsync();
            }

            return(RedirectToAction(nameof(Groepen), new { Id = sessieId }));
        }