Ejemplo n.º 1
0
        public ActionResult Next(int next, int[] oznaceniOdgovori)
        {
            PitanjeOdgovorVM.PitanjeInfo model;
            if (oznaceniOdgovori != null)
            {
                model = svaPitanja[next];
                model.PitanjeOrder = next + 1;

                //if(next <= aktivniTest.Count)
                //{
                //    int trazi = svaPitanja[next-1].Id;
                //    TestOdgovor nadji = db.TestOdgovori.SingleOrDefault(a => a.PitanjeId == trazi && a.TestId == trenutniTest.Id);
                //    //TestOdgovor brisi = db.TestOdgovori.Find(nadji);
                //    aktivniTest.Remove(nadji);
                //    db.TestOdgovori.Remove(nadji);
                //}

                TestOdgovor pit = new TestOdgovor
                {
                    TestId       = trenutniTest.Id,
                    PitanjeId    = svaPitanja[next - 1].Id,
                    OdgovorTacan = false
                };

                aktivniTest.Add(pit);
                db.TestOdgovori.Add(pit);
                db.SaveChanges();

                if (oznaceniOdgovori != null)
                {
                    foreach (int item in oznaceniOdgovori)
                    {
                        KorisnikOdgovor ko = new KorisnikOdgovor
                        {
                            OdgovorId     = item,
                            TestOdgovorId = pit.Id
                        };
                        KorisnikOdgovori.Add(ko);
                    }

                    db.KorisnikOdgovori.AddRange(KorisnikOdgovori);
                    db.SaveChanges();
                }
            }
            else
            {
                ModelState.AddModelError("", "Odabrati barem jedan odgovor!");
                model = svaPitanja[next - 1];
                model.PitanjeOrder = next;
            }

            return(View("Test", model));
        }