Esempio n. 1
0
        public void VratiPitanja(Igra i)
        {
            i.ListaPitanja = new BindingList <Pitanje>();
            try
            {
                konekcija.Open();
                komanda.CommandText = $"SELECT * FROM Pitanje Where IgraId = {i.IgraId}";
                SqlDataReader citac = komanda.ExecuteReader();

                while (citac.Read())
                {
                    Pitanje p = new Pitanje();
                    p.IgraId       = citac.GetInt32(0);
                    p.PitanjeId    = citac.GetInt32(1);
                    p.PitanjeTekst = citac.GetString(2);
                    p.TacanOdgovor = citac.GetString(3);
                    p.BrojPoena    = citac.GetInt32(4);

                    i.ListaPitanja.Add(p);
                }
                citac.Close();
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                if (konekcija != null)
                {
                    konekcija.Close();
                }
            }
        }
Esempio n. 2
0
        public static void Dodaj(OdgovorDTO c)
        {
            try
            {
                ISession s = DataLayer.GetSession();

                Korisnik user = new Korisnik()
                {
                    Id = c.KorisnikId
                };
                Pitanje pit = new Pitanje()
                {
                    Id = c.PitanjeId
                };
                Odgovor odg = new Odgovor()
                {
                    DatumVreme     = c.DatumVreme,
                    Minus          = c.Minus,
                    Plus           = c.Plus,
                    Odobreno       = c.Odobreno,
                    Tekst          = c.Tekst,
                    ImaKorisnika   = user,
                    PripadaPitanju = pit
                };

                s.SaveOrUpdate(odg);
                s.Flush();
                s.Close();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Esempio n. 3
0
        public static void Dodaj(Pitanje_TagDTO c)
        {
            try
            {
                ISession s = DataLayer.GetSession();

                Pitanje p = new Pitanje()
                {
                    Id = c.PitanjeId
                };


                Tag t = new Tag()
                {
                    Id = c.TagId
                };

                Pitanje_Tag Pitanje_Tag = new Pitanje_Tag()
                {
                    Pitanje = p,
                    Tag     = t
                };

                s.SaveOrUpdate(Pitanje_Tag);
                s.Flush();
                s.Close();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Esempio n. 4
0
        private void dataGridPitanja_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            Anketa anketaIzmenaPitanja = null;

            foreach (Anketa anketa in ListePodataka.ListaAnketa)
            {
                if (idAnkete > 0 && anketa.AnketaID == idAnkete)
                {
                    anketaIzmenaPitanja = anketa;
                }
            }

            if (anketaIzmenaPitanja != null)  //ako je pronadjena anketa na osnovu id, razlikuje se od null
            {
                if (anketaIzmenaPitanja.ListaPitanja.Count > 0 && dataGridPitanja.SelectedIndex != -1)
                {
                    Pitanje pitanje = (Pitanje)dataGridPitanja.SelectedItem;

                    dataGridOdgovor.ItemsSource = pitanje.ListaOdgovora; //setuje items source 2. data grida, zato sto sadrzi odgovore za to pitanje

                    tbIzmenaTekstaPitanja.Text = pitanje.TekstPitanja;
                    idPitanjaIzmenaBrisanje    = pitanje.PitanjeID; //setovana globalna promenljiva kojoj ce se pristupiti prilikom izmene
                }
            }
        }
Esempio n. 5
0
        public async Task <IActionResult> Edit(int id, [Bind("Naziv,TestID")] Pitanje pitanje)
        {
            if (id != pitanje.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(pitanje);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!PitanjeExists(pitanje.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["TestID"] = new SelectList(_context.Testovi, "ID", "ID", pitanje.TestID);
            return(View(pitanje));
        }
Esempio n. 6
0
        static public PitanjeDTO Procitaj(int id)
        {
            try
            {
                ISession s = DataLayer.GetSession();

                Pitanje p = s.Load <Pitanje>(id);

                PitanjeDTO Pitanje = new PitanjeDTO
                {
                    Id         = p.Id,
                    Naslov     = p.Naslov,
                    KorisnikId = p.ImaKorisnika.Id,
                    OblastId   = p.PripadaOblasti.Id,
                    DatumVreme = p.DatumVreme,
                    Tekst      = p.Tekst
                };

                s.Flush();
                s.Close();

                return(Pitanje);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                return(null);
            }
        }
Esempio n. 7
0
        static public PitanjeDTO Nadji(string naslov)
        {
            try
            {
                ISession s = DataLayer.GetSession();

                Pitanje p = (from k in s.Query <Pitanje>()
                             where (k.Naslov == naslov)
                             select k).SingleOrDefault();

                PitanjeDTO pit = new PitanjeDTO
                {
                    Id         = p.Id,
                    Naslov     = p.Naslov,
                    Tekst      = p.Tekst,
                    DatumVreme = p.DatumVreme,
                    KorisnikId = p.ImaKorisnika.Id,
                    OblastId   = p.PripadaOblasti.Id,
                };

                s.Flush();
                s.Close();

                return(pit);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                return(null);
            }
        }
Esempio n. 8
0
        public ActionResult Edit(Pitanje pitanje)
        {
            if (ModelState.IsValid)
            {
                ViewBag.K = db.Parametris.FirstOrDefault().K;
                if (pitanje.Zakljucano == true)
                {
                    pitanje.VrPoslZaklj = DateTime.Now;
                }

                int K            = (int)db.Parametris.FirstOrDefault <Parametri>().K;
                int tacanOdgovor = Convert.ToInt32(Request["radioPonudjeno"]);
                for (int i = 0; i < K; i++)
                {
                    string tekstPonudjenog = Request["ponudjeno" + i].ToString();
                    if (tekstPonudjenog == "")
                    {
                        ModelState.AddModelError(string.Empty, "Uneti ponudjene odgovore");
                        pitanje.PonudjeniOdgs = db.PonudjeniOdgs.Where(p => p.IdPit == pitanje.IdPit).ToList();
                        return(View(pitanje));
                    }
                    PonudjeniOdg ponudjeni = db.PonudjeniOdgs.Where(p => p.IdPit == pitanje.IdPit).Where(p => p.RedniBr == i).FirstOrDefault();
                    ponudjeni.Sadrzaj = tekstPonudjenog;
                    ponudjeni.Tacan   = (i == tacanOdgovor ? true : false);

                    db.Entry(ponudjeni).State = EntityState.Modified;
                }

                db.Entry(pitanje).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            ViewBag.IdKor = new SelectList(db.Korisniks, "IdKor", "Ime", pitanje.IdKor);
            return(View(pitanje));
        }
        public async Task <IActionResult> Edit(int id, [Bind("PitanjeId,PitanjeTekst,TacanOdg,NetacenOdg1,NetacenOdg2,NetacenOdg3,KursId")] Pitanje pitanje)
        {
            if (id != pitanje.PitanjeId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(pitanje);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!PitanjeExists(pitanje.PitanjeId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["KursId"] = new SelectList(_context.Kurs, "Id", "Id", pitanje.KursId);
            return(View(pitanje));
        }
Esempio n. 10
0
        public ActionResult DodajPitanje(Pitanje model)
        {
            var kategorije = bazaPodataka.PopisKategorija.OrderBy(x => x.kategorija).ToList();

            ViewBag.Kategorije = kategorije.Select(x => x.kategorija);

            foreach (var kat in kategorije)
            {
                if (kat.kategorija == model.kategorija)
                {
                    model.id_kategorija = kat.id;
                }
            }

            if (!String.IsNullOrWhiteSpace(model.pitanjeTekst))
            {
                var pitanjePostoji = bazaPodataka.PopisPitanja.Any(x => x.id == model.id);
                if (pitanjePostoji)
                {
                    ModelState.AddModelError("id", "Pitanje sa istim ID-jem već postoji!");
                }
            }

            if (ModelState.IsValid)
            {
                bazaPodataka.PopisPitanja.Add(model);
                bazaPodataka.SaveChanges();
                return(View(model));
            }
            else
            {
                var errors = ModelState.GetModelErrors();
                return(Json(new { errors }));
            }
        }
Esempio n. 11
0
        public ActionResult AzurirajPitanje(int pit_id, int user_id)
        {
            if (HttpContext.Request.UrlReferrer != null)
            {
                var dosaoSa = HttpContext.Request.UrlReferrer;
                TempData["dosaoSa"] = dosaoSa;
            }

            Pitanje pitanje = bazaPodataka.PopisPitanja.Find(pit_id);
            var     admin   = bazaPodataka.PopisKorisnika.Find(user_id);

            if (admin.ovlast_sifra == "AD" || user_id == pitanje.korisnicko_ime)
            {
                var kategorije = bazaPodataka.PopisKategorija.OrderBy(x => x.kategorija).ToList();

                PitanjeAzuriranje model = new PitanjeAzuriranje();
                model.PitanjeTekst = pitanje.pitanjeTekst;
                model.KategorijaId = pitanje.id_kategorija;

                ViewBag.Kategorije = kategorije.Select(x => x.kategorija);
                ViewBag.Id         = pit_id;

                return(View(model));
            }
            else
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
        }
Esempio n. 12
0
        private void StartKviz_Click(object sender, EventArgs e) //Klik na dugme za pocetak kviza
        {
            string grad = (string)ListaGradova.SelectedItem;     //Uzima se ime izabranog grada radi pronalaska fajla iz kojeg ce se citati pitanja

            if (grad != null)
            {
                //Kad kviz pocne, sakrivaju se komponente za odabir grada
                label1.Hide();
                ListaGradova.Hide();
                StartKviz.Hide();

                linijeFajla = System.IO.File.ReadAllLines(@"Gradovi\" + grad + ".txt");  //Citanje fajla i smjestanje linija u dati string (folder Gradovi se nalazi na istom mjestu kao i exe fajl)
                string[] podaciLinije = linijeFajla[++indeksPitanja].Split(new char[1] {
                    ','
                });                                                                               //Citanje prvog pitanja (++indeksPitanja jer se preskace prva linija fajla koja samo imenuje kolone)

                updateQuiz(podaciLinije);

                //Kviz je zapocet i sada se pojavljuje pitanje zajedno sa ponudjenim odgovorima
                Pitanje.Show();
                Odg1.Show();
                Odg2.Show();
                Odg3.Show();
            }
        }
        public async Task <IActionResult> Edit(int id, [Bind("PitanjeId,TekstPitanja")] Pitanje pitanje)
        {
            if (id != pitanje.PitanjeId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(pitanje);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!PitanjeExists(pitanje.PitanjeId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(pitanje));
        }
Esempio n. 14
0
        public static void Dodaj(PitanjeDTO c)
        {
            try
            {
                ISession s = DataLayer.GetSession();

                Oblast oblast = new Oblast
                {
                    Id = c.OblastId
                };

                Korisnik korisnik = new Korisnik
                {
                    Id = c.KorisnikId
                };

                Pitanje Pitanje = new Pitanje
                {
                    Tekst          = c.Tekst,
                    Naslov         = c.Naslov,
                    DatumVreme     = c.DatumVreme,
                    PripadaOblasti = oblast,
                    ImaKorisnika   = korisnik,
                };

                s.SaveOrUpdate(Pitanje);
                s.Flush();
                s.Close();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Esempio n. 15
0
        static public List <TagDTO> VratiSveTagovePitanja(int PitanjeId)
        {
            try
            {
                ISession s = DataLayer.GetSession();

                List <TagDTO> retVal = new List <TagDTO>();


                Pitanje     t      = s.Load <Pitanje>(PitanjeId);
                IList <Tag> tagovi = t.ImaTagove;

                foreach (Tag tag in tagovi)
                {
                    TagDTO dto = new TagDTO()
                    {
                        Id     = tag.Id,
                        Ime    = tag.Ime,
                        Opis   = tag.Opis,
                        TagIme = tag.TagIme
                    };

                    retVal.Add(dto);
                }

                return(retVal);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                return(null);
            }
        }
Esempio n. 16
0
        // GET: Pitanjes/Edit/5
        public ActionResult Edit(int?id)
        {
            if (Session["uloga"] == null || Session["uloga"].ToString() != "profesor")
            {
                return(RedirectToAction("UnauthorizedAccess"));
            }

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Pitanje pitanje = db.Pitanjes.Find(id);

            if (pitanje == null)
            {
                return(HttpNotFound());
            }
            if (pitanje.Zakljucano == true)
            {
                return(RedirectToAction("UnlockQuestion", new { id = id }));
            }
            ViewBag.IdKor = new SelectList(db.Korisniks, "IdKor", "Ime", pitanje.IdKor);
            ViewBag.K     = db.Parametris.FirstOrDefault().K;
            return(View(pitanje));
        }
Esempio n. 17
0
        public ActionResult dodajPitanje([Bind(Include = "pit_brj,pit_sadrz,pit_anktbrj,pit_datumpost,odg1,odg2,odg3,odg4")] Pitanje pitanje)
        {
            TempData["Sifra"]     = null;
            pitanje.odg1_glas     = 0;
            pitanje.odg2_glas     = 0;
            pitanje.odg3_glas     = 0;
            pitanje.odg4_glas     = 0;
            pitanje.brojotvaranja = 0;
            pitanje.pit_anktbrj   = db.Anketas.First().ankt_brj;
            Sifra sif = TempData["sifra"] as Sifra;

            // if (db.Anketas.First().ankt_brj != null)
            //     pitanje.pit_anktbrj = db.Anketas.First().ankt_brj;
            // else

            pitanje.pit_datumpost = DateTime.Now;
            if (ModelState.IsValid)
            {
                db.Pitanjes.Add(pitanje);
                db.SaveChanges();
                Anketa anketa = db.Anketas.First();
                anketa.ankt_brjpit++;
                db.Entry(anketa).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("dodajPitanje"));
            }

            return(View(pitanje));
        }
Esempio n. 18
0
        public ActionResult DeleteConfirmed(int id)
        {
            Pitanje pitanje = db.Pitanjes.Find(id);

            db.Pitanjes.Remove(pitanje);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Esempio n. 19
0
 public ActionResult Editpitanje(Pitanje p)
 {
     db.Pitanjes.Where(s => s.id == p.id).FirstOrDefault().tekst      = p.tekst;
     db.Pitanjes.Where(s => s.id == p.id).FirstOrDefault().kategorija = p.kategorija;
     db.Pitanjes.Where(s => s.id == p.id).FirstOrDefault().odgovor    = p.odgovor;
     db.SaveChanges();
     return(RedirectToAction("Pitanja", "Testiranje", new { id = p.kategorija }));
 }
Esempio n. 20
0
        public ActionResult pitanje(int broj)
        {
            //if(brojPitanja == db.Pitanjes.Last().pit_brj) RedirectToAction("kraj");
            // Pitanje pitanje = db.Pitanjes.Last();
            //long idPitanja = int.Parse(Request["brojPitanja"]);
            Sifra sifra1    = TempData["Sifra"] as Sifra;
            long  idPitanja = sifra1.sifra;

            System.Diagnostics.Debug.WriteLine(" sifra " + sifra1.redbrj);
            Pitanje pitanje = db.Pitanjes.Find(idPitanja);

            pitanje.brojotvaranja++;
            if (broj == 1)
            {
                pitanje.odg1_glas++;
            }
            if (broj == 2)
            {
                pitanje.odg2_glas++;
            }
            if (broj == 3)
            {
                pitanje.odg3_glas++;
            }
            if (broj == 4)
            {
                pitanje.odg4_glas++;
            }
            db.Entry(pitanje).State = EntityState.Modified;
            db.SaveChanges();

            if (db.Anketas.First().ankt_brjpit < sifra1.redbrj)
            {
                System.Diagnostics.Debug.WriteLine("kraj price");
                return(RedirectToAction("kraj"));
            }
            else
            {
                var next = db.Pitanjes.Where(item => item.pit_brj > idPitanja)
                           .OrderBy(item => item.pit_brj)
                           .FirstOrDefault();
                System.Diagnostics.Debug.WriteLine(next.pit_brj);
                idPitanja     = next.pit_brj;
                sifra1.sifra  = next.pit_brj;
                ViewBag.ident = next.pit_brj;
                System.Diagnostics.Debug.WriteLine("broj je " + Request["broj"].ToString() + " " + Request["brojPitanja"]);
                //return View();
                Sifra sifra = new Sifra
                {
                    sifra = idPitanja
                };

                TempData["Sifra"] = sifra1;
                return(RedirectToAction("pitanje"));
            }
        }
Esempio n. 21
0
        public ActionResult Editpitanje(int id = 0)
        {
            if (!TestirajPrivilegijeAdmin())
            {
                return(new HttpNotFoundResult("Neovlasten pristup! Vratite se na pocetnu!"));
            }
            Pitanje p = db.Pitanjes.Find(id);

            return(View(p));
        }
Esempio n. 22
0
 public ActionResult Edit([Bind(Include = "pit_brj,pit_sadrz,pit_anktbrj,odg1,odg1_glas,odg2,odg2_glas,odg3,odg3_glas,odg4,odg4_glas,pit_datumpost")] Pitanje pitanje)
 {
     if (ModelState.IsValid)
     {
         db.Entry(pitanje).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(pitanje));
 }
        public async Task <IActionResult> Create([Bind("PitanjeId,TekstPitanja")] Pitanje pitanje)
        {
            if (ModelState.IsValid)
            {
                _context.Add(pitanje);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(pitanje));
        }
        public int?DajKursKviza(Kviz k)
        {
            Odgovor o = _context.Odgovor.FirstOrDefault(x => x.Kviz == k & x.Pitanje != null);

            if (o != null)
            {
                Pitanje p = _context.Pitanje.FirstOrDefault(x => x.PitanjeId == o.PitanjeId);
                return(p.KursId);
            }
            return(null);
        }
Esempio n. 25
0
        public ActionResult Create([Bind(Include = "pit_brj,pit_sadrz,pit_anktbrj,odg1,odg1_glas,odg2,odg2_glas,odg3,odg3_glas,odg4,odg4_glas,pit_datumpost")] Pitanje pitanje)
        {
            if (ModelState.IsValid)
            {
                db.Pitanjes.Add(pitanje);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(pitanje));
        }
Esempio n. 26
0
        public IHttpActionResult PostPitanje(Pitanje pitanje)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Pitanje.Add(pitanje);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = pitanje.PitanjeId }, pitanje));
        }
Esempio n. 27
0
        public ActionResult Deletepitanje(int id = 0)
        {
            if (!TestirajPrivilegijeAdmin())
            {
                return(new HttpNotFoundResult("Neovlasten pristup! Vratite se na pocetnu!"));
            }
            Pitanje k = db.Pitanjes.Find(id);

            db.Pitanjes.Remove(k);
            db.SaveChanges();
            return(RedirectToAction("Pitanja", "Testiranje", new { id = k.kategorija }));
        }
Esempio n. 28
0
        private void dgPitanjaAnkete_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (dgPitanjaAnkete.SelectedIndex != -1)
            {
                Pitanje pitanje = (Pitanje)dgPitanjaAnkete.SelectedItem;
                selektovanoPitanje = pitanje;


                dgOdgovoriPitanja.ItemsSource = pitanje.ListaOdgovora;
                dgOdgovoriPitanja.Items.Refresh();
            }
        }
Esempio n. 29
0
        public async Task <IActionResult> Create([Bind("Naziv,TestID")] Pitanje pitanje)
        {
            if (ModelState.IsValid)
            {
                _context.Add(pitanje);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["TestID"] = new SelectList(_context.Testovi, "ID", "ID", pitanje.TestID);
            return(View(pitanje));
        }
        public async Task <IActionResult> Create([Bind("PitanjeId,PitanjeTekst,TacanOdg,NetacenOdg1,NetacenOdg2,NetacenOdg3,KursId")] Pitanje pitanje)
        {
            if (ModelState.IsValid)
            {
                _context.Add(pitanje);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["KursId"] = new SelectList(_context.Kurs, "Id", "Id", pitanje.KursId);
            return(View(pitanje));
        }