public JsonResult VratiSveKomentare(OdgovorModel odgovor) { OdgovorDTO odg = Odgovori.Procitaj(odgovor.Id); List <KomentarDTO> KomentariOdgovora = Komentari.VratiSve(odg.Id); if (KomentariOdgovora.Count > 3) { //ovde smo kad ima vise od tri komentara koji treba da budu prikazani ispod odgovora for (int i = 3; i < KomentariOdgovora.Count; i++) { KorisnikDTO kor = Korisnici.Procitaj(KomentariOdgovora[i].KorisnikId); KomentarModel kom = new KomentarModel() { ImeAutora = kor.Ime, Text = KomentariOdgovora[i].Tekst, DatumVreme = KomentariOdgovora[i].DatumVreme, Id = KomentariOdgovora[i].Id, }; odgovor.Komentari.Add(kom); } return(Json(odgovor, JsonRequestBehavior.AllowGet)); } else { return(Json(null)); } }
public ActionResult ObrisiOdgovorConfirmed(int id) { Odgovori odgovori = db.odgovori.Find(id); db.odgovori.Remove(odgovori); db.SaveChanges(); return(RedirectToAction("CommAndRes")); }
public JsonResult OdobriOdgovor(OdgovorModel odgovor) { OdgovorDTO odg = Odgovori.Procitaj(odgovor.Id); odg.Odobreno = 1; Odgovori.Izmeni(odg); return(Json(odgovor, JsonRequestBehavior.AllowGet)); }
public ActionResult Odgovor([Bind(Include = "OdgovorID,KomentarID,UserName,Odgovor")] Odgovori odgovori) { if (ModelState.IsValid) { db.odgovori.Add(odgovori); db.SaveChanges(); return(RedirectToAction("CommAndRes")); } ViewBag.odgovor = User.Identity.GetUserName(); return(View(odgovori)); }
// GET: Odgovoris/Delete/5 public ActionResult ObrisiOdgovor(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Odgovori odgovori = db.odgovori.Find(id); if (odgovori == null) { return(HttpNotFound()); } return(View(odgovori)); }
public ActionResult PostaviOdgovor(int pitanjeId, string textarea) { OdgovorDTO odg = new OdgovorDTO(); odg.DatumVreme = DateTime.Now; odg.KorisnikId = (int)Session["Id"]; odg.Minus = 0; odg.Plus = 0; odg.Odobreno = 0; odg.Tekst = textarea; odg.PitanjeId = pitanjeId; Odgovori.Dodaj(odg); return(PitanjeIOdgovori1(pitanjeId)); }
public ActionResult KlikNaLink(int idOblasti) { OblastModel oblast = new OblastModel(); OblastDTO obl = Business.DataAccess.Oblasti.Procitaj(idOblasti); oblast.Naziv = obl.Ime; oblast.Opis = obl.Opis; oblast.Id = obl.Id; PredmetDTO pr = Predmeti.Procitaj(obl.PredmetId); oblast.ProfesorId = pr.ZaduzenId; foreach (var liter in Literature.VratiSve(idOblasti)) { LiteraturaModel l = new LiteraturaModel() { Id = liter.Id, Naziv = liter.Naziv, Link = liter.Link }; oblast.Literatura.Add(l); } foreach (var pit in Pitanja.VratiSvaPitanjaOblasti(idOblasti)) { KorisnikDTO autorPitanja = Korisnici.Procitaj(pit.KorisnikId); PitanjeModel p = new PitanjeModel() { Id = pit.Id, DatumVreme = pit.DatumVreme, Text = pit.Tekst, AutorPitanja = autorPitanja.Ime, AutorId = autorPitanja.Id, NaslovPitanja = pit.Naslov, BrojOdgovora = Odgovori.VratiSve(pit.Id).Count, }; oblast.Pitanja.ListaPitanja.Add(p); } return(View("~/Views/Oblasti/Oblasti.cshtml", oblast)); }
public JsonResult OceniPozitivno(OdgovorModel odgovor) { OdgovorDTO odg = Odgovori.Procitaj(odgovor.Id); int korisnikId = (int)Session["Id"]; Korisnik_OdgovorDTO nadji = Korisnici_Odgovori.Nadji((int)Session["Id"], odgovor.Id); if (nadji == null) { odg.Plus++; Odgovori.Izmeni(odg); odgovor.Pozitivno++; Korisnik_OdgovorDTO korOdg = new Korisnik_OdgovorDTO(); korOdg.KorisnikId = (int)Session["Id"]; korOdg.OdgovorId = odgovor.Id; Korisnici_Odgovori.Dodaj(korOdg); } return(Json(odgovor, JsonRequestBehavior.AllowGet)); }
static void UnosOdg(Pitanje pitanje, Odgovori odgovori) { /* |---------------------------------------------| | | |Funkcija koja provjerava jeli odgovor koji je| |korisnik unjeo tocan ili netocan. | | | |---------------------------------------------| */ nastavak: string odgovor = ""; while (odgovor.ToLower() != "a" && odgovor.ToLower() != "b" && odgovor.ToLower() != "c" && odgovor.ToLower() != "d" && odgovor.ToLower() != "da") { Console.Write("Unesite vas odgovor (a, b, c ili d): "); odgovor = Console.ReadLine(); if (odgovor.ToLower() != "a" && odgovor.ToLower() != "b" && odgovor.ToLower() != "c" && odgovor.ToLower() != "d" && odgovor.ToLower() != "da") { Console.WriteLine("Niste unjeli niti jedan od ponudenih odgovora niti odlucili odustati!"); Console.WriteLine("Polje za unos odgovora se ponovno otvara."); LogajTrenutnuAkciju("Korisnik nije unjeo niti jedan od odgovora niti odlucio odustati polje za unos odgovora se ponovno otvara."); System.Threading.Thread.Sleep(2500); OcistiOdredeniBrojLinijaUKonzoli(3); } } if (odgovor.ToLower() == "a") { odgovor = odgovori.odgA; } else if (odgovor.ToLower() == "b") { odgovor = odgovori.odgB; } else if (odgovor.ToLower() == "c") { odgovor = odgovori.odgC; } else if (odgovor.ToLower() == "d") { odgovor = odgovori.odgD; } if (odgovor.ToLower() == "da") { string siguran = ""; while (siguran.ToLower() != "da" && siguran.ToLower() != "ne") { Console.Write("Jeste li sigurni: "); siguran = Console.ReadLine(); if (siguran.ToLower() != "da" && siguran.ToLower() != "ne") { Console.WriteLine("Niste unjeli niti da niti ne, unos se ponovno otvara."); System.Threading.Thread.Sleep(1000); OcistiOdredeniBrojLinijaUKonzoli(2); } } if (siguran.ToLower() == "da") { odustaje = true; Console.WriteLine("Odlucili ste odustati."); LogajTrenutnuAkciju("Korisnik je odlucio odustati."); System.Threading.Thread.Sleep(750); Console.Clear(); } else { System.Threading.Thread.Sleep(750); OcistiOdredeniBrojLinijaUKonzoli(3); goto nastavak; } } if (odustaje == false && odgovor.ToLower() != "da") { string konacanOdgovor = ""; while (konacanOdgovor.ToLower() != "da" && konacanOdgovor.ToLower() != "ne") { Console.Write("Jeli to vas konacan odgovor (Da, Ne): "); konacanOdgovor = Console.ReadLine(); if (konacanOdgovor.ToLower() != "da" && konacanOdgovor.ToLower() != "ne") { Console.WriteLine("Niste unjeli niti jedan od ponudenih odabira!"); Console.WriteLine("Polje za odluku o konacnom odgovoru se ponovno otvara."); LogajTrenutnuAkciju("Korisnik nije unjeo niti jedan od ponudenih odabira polje za odluku o konacnom odgovoru se ponovno otvara."); System.Threading.Thread.Sleep(2500); OcistiOdredeniBrojLinijaUKonzoli(3); } } if (konacanOdgovor.ToLower() == "da") { if (odgovor == pitanje.tocanOdg) { LogajTrenutnuAkciju("Korisnik je unjeo tocan odgovor."); Console.WriteLine("TOCNO!"); System.Threading.Thread.Sleep(500); tocno = true; tocniOdgovori++; } else { LogajTrenutnuAkciju("Korisnik je unjeo netocan odgovor."); tocno = false; Console.WriteLine("NETOCNO!"); System.Threading.Thread.Sleep(500); } } else { System.Threading.Thread.Sleep(500); OcistiOdredeniBrojLinijaUKonzoli(2); UnosOdg(pitanje, odgovori); } } }
static Odgovori RandomizirajIIspisiOdgovore(Pitanje pitanje) { /* |-----------------------------------------------| | | |Funkcija koja ce iz pitanja.xml random ispisati| |odgovore na odredeno pitanje tako da njihov | |redosljen nebude isti svaku igru. | | | |-----------------------------------------------| */ string sadrzajOdgovoraA = "", sadrzajOdgovoraB = "", sadrzajOdgovoraC = "", sadrzajOdgovoraD = "", abcd = "a", sadrzajOdgovora = ""; int brojOdg = 1; List <int> iskoristeniOdgovori = new List <int>(); while (brojOdg < 5) { Random rnd = new Random(); int odg = rnd.Next(1, 5); switch (odg) { case 1: { sadrzajOdgovora = pitanje.odgA; break; } case 2: { sadrzajOdgovora = pitanje.odgB; break; } case 3: { sadrzajOdgovora = pitanje.odgC; break; } case 4: { sadrzajOdgovora = pitanje.odgD; break; } } if (!iskoristeniOdgovori.Contains(odg)) { Console.WriteLine("{0}) {1}", abcd, sadrzajOdgovora); iskoristeniOdgovori.Add(odg); switch (brojOdg) { case 1: { sadrzajOdgovoraA = sadrzajOdgovora; abcd = "b"; break; } case 2: { sadrzajOdgovoraB = sadrzajOdgovora; abcd = "c"; break; } case 3: { sadrzajOdgovoraC = sadrzajOdgovora; abcd = "d"; break; } case 4: { sadrzajOdgovoraD = sadrzajOdgovora; break; } } brojOdg++; } } Console.WriteLine("Ako zelis odustati napisi Da"); Odgovori sadrzajiSvihOdgovora = new Odgovori(sadrzajOdgovoraA, sadrzajOdgovoraB, sadrzajOdgovoraC, sadrzajOdgovoraD); return(sadrzajiSvihOdgovora); }
public static List <PitanjeModel> PitanjaPoTagovima(string tagovi) { List <PitanjeDTO> PronadjenaPitanja = new List <PitanjeDTO>(); List <PitanjeModel> PitanjaZaVracanje = new List <PitanjeModel>(); string primljeniTagovi = tagovi; if (primljeniTagovi[0] == '#') { //ovde smo ako pretrazujemo po tagovima char[] separatingChar = { '#', ' ' }; string[] nizTagova = primljeniTagovi.Split(separatingChar, System.StringSplitOptions.RemoveEmptyEntries); List <PitanjeDTO> pitanja = Pitanja.VratiSvaPitanjaTaga(nizTagova[0]); string[] tagoviPitanja = new string[pitanja.Count]; for (int k = 0; k < tagoviPitanja.Length; k++) { tagoviPitanja[k] = ""; } int i = 0; foreach (var pitanje in pitanja) { List <TagDTO> Tagovi = Pitanja.VratiSveTagovePitanja(pitanje.Id); foreach (var tag in Tagovi) { tagoviPitanja[i] = "" + tagoviPitanja[i] + tag.TagIme + " "; } i++; } //treba da konvertujemo listu pitanja u niz pitanja PitanjeDTO[] pitanjaNiz = pitanja.ToArray(); int j = 0; for (int petlja = 0; petlja < tagoviPitanja.Length; petlja++) { int brojac = 0; foreach (var tag in nizTagova) { if (tagoviPitanja[j].Contains(tag)) { brojac++; if (brojac == nizTagova.Length) { PronadjenaPitanja.Add(pitanjaNiz[j]); } } } j++; } foreach (var pit in PronadjenaPitanja) { KorisnikDTO autorPitanja = Korisnici.Procitaj(pit.KorisnikId); List <OdgovorDTO> odgovori = Odgovori.VratiSve(pit.Id); PitanjeModel p = new PitanjeModel() { Id = pit.Id, DatumVreme = pit.DatumVreme, Text = pit.Tekst, AutorPitanja = autorPitanja.Ime, AutorId = autorPitanja.Id, NaslovPitanja = pit.Naslov, Tagovi = TagoviController.TagoviPitanja(pit.Id), BrojOdgovora = odgovori.Count, }; PitanjaZaVracanje.Add(p); } return(PitanjaZaVracanje); } else { //ukoliko je poceo da unosi korisnik nesto razlicito od taga, verovatno je pokusao da trazi po imenu korisnika return(null); } }
public ActionResult ObrisiOdgovor(int idOdgovora, int idPitanja) { Odgovori.Obrisi(idOdgovora); return(RedirectToAction("PitanjeIOdgovori1", new { idPitanja = idPitanja })); }
// // GET: /PitanjaIOdgovori/ public ActionResult PitanjeIOdgovori(int idPitanja) { PitanjaOdgovoriKomentariModel model = new PitanjaOdgovoriKomentariModel(); PitanjeModel pitanje = new PitanjeModel(); List <OdgovorDTO> odgovori = Odgovori.VratiSve(pitanje.Id); //u listi sada imamo sve odgovore, ostaje da njihove parametre prosledimo modelu OdgovoriModel odgovoriModel = new OdgovoriModel(); int i = 0; foreach (var odg in odgovori) { odgovoriModel.ListaOdgovora[i].Text = odg.Tekst; odgovoriModel.ListaOdgovora[i].Pozitivno = odg.Plus; odgovoriModel.ListaOdgovora[i].Negativno = odg.Minus; odgovoriModel.ListaOdgovora[i].Id = odg.Id; } pitanje.Text = "Kako koristiti HTML editor na svom sajtu i koji je najbolji?"; pitanje.AutorPitanja = "Miloš Mladenović"; pitanje.DatumVreme = DateTime.Now; pitanje.Oblast = "Web programiranje"; TagModel tag1 = new TagModel(); tag1.Ime = "programiranje"; TagModel tag2 = new TagModel(); tag2.Ime = "web"; TagModel tag3 = new TagModel(); tag3.Ime = "javascript"; pitanje.Tagovi.Add(tag1); pitanje.Tagovi.Add(tag2); pitanje.Tagovi.Add(tag3); model.Pitanje = pitanje; OdgovorModel odgovor = new OdgovorModel(); odgovor.Pozitivno = 65; odgovor.Negativno = 31; odgovor.Text = "Pokusaj sa CKE Editorom."; odgovor.Odobreno = 1; odgovor.DatumVreme = DateTime.Now; OdgovorModel odgovor1 = new OdgovorModel(); odgovor1.Pozitivno = 115; odgovor1.Negativno = 23; odgovor1.Text = "Pokusaj sa CKE Editorom."; odgovor1.Odobreno = 1; odgovor1.DatumVreme = DateTime.Now; var broj = pitanje.Tagovi.Count; foreach (var tag in pitanje.Tagovi) { } model.Odgovori.Add(odgovor); model.Odgovori.Add(odgovor1); return(View(model)); }
public ActionResult PitanjeIOdgovori1(int idPitanja) { PitanjaOdgovoriKomentariModel model = new PitanjaOdgovoriKomentariModel(); PitanjeModel pitanje = new PitanjeModel(); List <OdgovorDTO> odgovori = Odgovori.VratiSve(pitanje.Id); //u listi sada imamo sve odgovore, ostaje da njihove parametre prosledimo modelu int i = 0; OdgovoriModel odgovoriModel = new OdgovoriModel(); foreach (var odg in odgovori) { odgovoriModel.ListaOdgovora[i].Text = odg.Tekst; odgovoriModel.ListaOdgovora[i].Pozitivno = odg.Plus; odgovoriModel.ListaOdgovora[i].Negativno = odg.Minus; odgovoriModel.ListaOdgovora[i].Id = odg.Id; odgovoriModel.ListaOdgovora[i].AutorId = odg.KorisnikId; } PitanjeDTO pit = Pitanja.Procitaj(idPitanja); //PitanjeDTO pit2 = Pitanja.Nadji(pit.Naslov); List <TagDTO> tagovi = Pitanja.VratiSveTagovePitanja(idPitanja); KorisnikDTO kor = Korisnici.Procitaj(pit.KorisnikId); OblastDTO obl = Oblasti.Procitaj(pit.OblastId); PredmetDTO pred = Predmeti.Procitaj(obl.PredmetId); pitanje.Text = pit.Tekst; pitanje.AutorPitanja = kor.Ime; pitanje.DatumVreme = pit.DatumVreme; pitanje.Oblast = obl.Ime; pitanje.OblastId = pit.OblastId; pitanje.AutorId = kor.Id; pitanje.NaslovPitanja = pit.Naslov; pitanje.Id = pit.Id; pitanje.SlikaAutora = kor.Slika; pitanje.ProfesorId = pred.ZaduzenId; foreach (var tag in tagovi) { TagModel tag1 = new TagModel() { TagIme = tag.TagIme, Ime = tag.Ime, Opis = tag.Opis }; pitanje.Tagovi.Add(tag1); } string slicniTagovi = ""; int prom = 0; foreach (var tag in tagovi) { if (prom < 2) { slicniTagovi = slicniTagovi + "#" + tag.TagIme + " "; } prom++; } model.SlicnaPitanja = OblastiController.PitanjaPoTagovima(slicniTagovi); model.Pitanje = pitanje; foreach (var odg in Odgovori.VratiSve(pitanje.Id)) { KorisnikDTO kor1 = Korisnici.Procitaj(odg.KorisnikId); OdgovorModel odg1 = new OdgovorModel { Odobreno = odg.Odobreno, DatumVreme = odg.DatumVreme, Negativno = odg.Minus, Pozitivno = odg.Plus, Text = odg.Tekst, AutorOdgovora = kor1.Ime, AutorId = kor1.Id, Id = odg.Id, Komentari = NapraviListuKomentara(odg.Id), }; model.Odgovori.Add(odg1); } var broj = pitanje.Tagovi.Count; foreach (var tag in pitanje.Tagovi) { } return(View("~/Views/PitanjeIOdgovori/PitanjeIOdgovori.cshtml", model)); }