public PitanjeModel VratiPitanjaKorisnikaModel(PitanjeDTO pitanje) { PitanjeModel pit = new PitanjeModel() { Text = pitanje.Tekst, Id = pitanje.Id, DatumVreme = pitanje.DatumVreme, AutorId = pitanje.KorisnikId, OblastId = pitanje.OblastId, NaslovPitanja = pitanje.Naslov, }; foreach (var tag in Pitanja.VratiSveTagovePitanja(pit.Id)) { TagModel tg = new TagModel() { TagID = tag.Id, Ime = tag.Ime, TagIme = tag.TagIme, Opis = tag.Opis }; pit.Tagovi.Add(tg); } return(pit); }
public PrikazRjesenjaViewModel(ArrayList odgovorArray, string imageSource) { OdgovorCollection = new ObservableCollection <PitanjeModel>(); FormulaCollection = new ObservableCollection <PitanjeModel>(); var formulaImage = new PitanjeModel { FormulaImage = imageSource }; FormulaCollection.Add(formulaImage); foreach (var element in odgovorArray) { var rjesenje = new PitanjeModel { Odgovor = element.ToString() }; OdgovorCollection.Add(rjesenje); } NazadCommand = new Command(async() => { await Application.Current.MainPage.Navigation.PopAsync(); }); }
public KorisnickiPanelModel KreirajKorisnickiPanelModel(int korisnikId) { ViewBag.Izmena = false; KorisnikDTO user = Korisnici.Procitaj(korisnikId); //KorisnikDTO user = Korisnici.Nadji((string)Session["Username"]); KorisnikModel korisnik = new KorisnikModel(); korisnik.Ime = user.Ime; korisnik.Prezime = user.Prezime; korisnik.Username = user.Username; korisnik.Opis = user.Opis; korisnik.Smer = user.Smer; korisnik.BrojIndeksa = user.BrojIndeksa; korisnik.Slika = user.Slika; korisnik.Email = user.Email; korisnik.Id = korisnikId; korisnik.Role = user.RoleId; List <PitanjeDTO> ListaPostavljenihPitanja = Pitanja.VratiSvaPitanjaKorisnika(user.Id); List <PitanjeModel> PitanjaKorisnika = new List <PitanjeModel>(); KorisnickiPanelController con = new KorisnickiPanelController(); foreach (var pitanjce in ListaPostavljenihPitanja) { PitanjeModel pit = con.VratiPitanjaKorisnikaModel(pitanjce); PitanjaKorisnika.Add(pit); } KorisnickiPanelModel panel = new KorisnickiPanelModel(); panel.Korisnik = korisnik; panel.Pitanja = PitanjaKorisnika; if (korisnik.Role == 2) { List <PredmetDTO> ZaduzeniPredmeti = Predmeti.VratiSvePredmeteZaduzenog(korisnik.Id); foreach (var pr in ZaduzeniPredmeti) { PredmetModel pred = new PredmetModel() { PregledaProfesor = true, GodinaStudija = pr.GodinaStudija, Id = pr.Id, NazivPredmeta = pr.Naziv, OpisPredmeta = pr.Opis, }; panel.ListaZaduzenihPredmeta.Add(pred); } } return(panel); }
public ArrayList ListaOdgovoraDvijeVarijable(PitanjeModel pitanje) { PitanjeModel = pitanje; return(new ArrayList { PrvaVrijednost(), DrugaVrijednost(), StoRacunamo(), Odgovor() }); }
internal ArrayList ListaOdgvoraTriVarijable(PitanjeModel pitanje) { PitanjeModel = pitanje; return(new ArrayList { PrvaVrijednost(), DrugaVrijednost(), TrećaVrijednost(), StoRacunamo(), Odgovor() }); }
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)); }
internal PitanjeModel GeneriranjePitanja(string tema) { var kinematika = new Kinematika(); var pitanje = new PitanjeModel(); var level = DataBaseService.SelectLevel(tema).Result; var countTotalEntries = DataBaseService.SelectCount(tema, level).Result; var countCorrectAnswers = DataBaseService.SelectCorrectCount(tema, level).Result; var levelToUse = LevelUp(level, countTotalEntries, countCorrectAnswers); switch (tema) { case "Kinematika": return(kinematika.GeneriranjePitanja(levelToUse)); default: break; } return(pitanje); }
public PitanjeViewModel(string naziv) { PitanjeCollection = new ObservableCollection <PitanjeModel>(); OdgovorCollection = new ObservableCollection <PitanjeModel>(); ObavijestKorisnikuCollection = new ObservableCollection <PitanjeModel>(); MjernaJedinicaOdgovoraCollection = new ObservableCollection <PitanjeModel>(); GenerirajPitanjeCommand = new Command <string>(param => { PitanjeCollection.Clear(); OdgovorCollection.Clear(); ObavijestKorisnikuCollection.Clear(); MjernaJedinicaOdgovoraCollection.Clear(); IsVisible = true; OdgovorKorisnika = string.Empty; IsEnabledRiješenje = false; GenPitanje = odabirGranaPitanja.GeneriranjePitanja(param); var pitanje = new PitanjeModel { Pitanje = GenPitanje.Pitanje }; PitanjeCollection.Add(pitanje); var mjernaJedinica = new PitanjeModel { MJRješenje = $"Unesi odgovor u {GenPitanje.MJRješenje}" }; MjernaJedinicaOdgovoraCollection.Add(mjernaJedinica); MinVrijednostRješnja = GenPitanje.MinVrijednostRješenja; MaxVrijednostRješenja = GenPitanje.MaxVrijednostRješenja; IsEnabledProvjeriOdgovor = true; }); ProvjeriOdgovorCommand = new Command(async() => { ConvertToDouble(); int rezultat; if (MinVrijednostRješnja <= OdgovorKorisnikaDouble && OdgovorKorisnikaDouble <= MaxVrijednostRješenja) { var obavjest = new PitanjeModel { ObavjestNakonOdgovora = "Točno", BojaPozdaineOdgovora = Color.LightGreen }; ObavijestKorisnikuCollection.Add(obavjest); rezultat = 1; } else { var obavjest = new PitanjeModel { ObavjestNakonOdgovora = "Netočno", BojaPozdaineOdgovora = Color.LightPink }; ObavijestKorisnikuCollection.Add(obavjest); rezultat = 0; } IsEnabledProvjeriOdgovor = false; IsEnabledRiješenje = true; await DataBaseService.InsertInto(naziv, rezultat, GenPitanje.Level); }); PrikaziOdgovorCommand = new Command <string>(async param => { await Application.Current.MainPage.Navigation.PushAsync(new PrikazRjesenjaView(param, GenPitanje.OdgovorArray, GenPitanje.FormulaImage)); IsEnabledProvjeriOdgovor = false; }); NapredakCommand = new Command(async() => { await Application.Current.MainPage.Navigation.PushAsync(new NapredakView(naziv)); }); }
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 LogIn(LogInModel model) { KorisnikDTO user = Korisnici.Nadji(model.username); if (ModelState.IsValid && user != null && user.Password == model.password && user.StatusId == 1) { if (user.RoleId != 3) { Session["Id"] = user.Id; Session["Role"] = user.RoleId; ViewBag.foto = user.Slika; ViewBag.Ime = user.Ime; ViewBag.Prezime = user.Prezime; ViewBag.Username = user.Username; Session["Username"] = user.Username; Session["Ime"] = user.Ime; Session["Prezime"] = user.Prezime; Session["Password"] = user.Password; Session["GodinaStudija"] = user.GodinaStudija; ViewBag.foto = user.Slika; ViewBag.brIndeksa = user.BrojIndeksa; Session["Status"] = user.StatusId; //sada ovde treba da inicijalizujemo elemente korisnickog modela svim podacima iz baze KorisnikModel korisnik = new KorisnikModel(); korisnik.Ime = user.Ime; korisnik.Prezime = user.Prezime; korisnik.Username = user.Username; korisnik.Opis = user.Opis; korisnik.Smer = user.Smer; korisnik.BrojIndeksa = user.BrojIndeksa; korisnik.Slika = user.Slika; korisnik.Email = user.Email; korisnik.Id = user.Id; korisnik.Role = user.RoleId; List <PitanjeDTO> ListaPostavljenihPitanja = Pitanja.VratiSvaPitanjaKorisnika(user.Id); List <PitanjeModel> PitanjaKorisnika = new List <PitanjeModel>(); KorisnickiPanelController con = new KorisnickiPanelController(); foreach (var pitanjce in ListaPostavljenihPitanja) { PitanjeModel pit = con.VratiPitanjaKorisnikaModel(pitanjce); PitanjaKorisnika.Add(pit); } KorisnickiPanelModel panel = new KorisnickiPanelModel(); panel.Korisnik = korisnik; panel.Pitanja = PitanjaKorisnika; if (korisnik.Role == 2) { List <PredmetDTO> ZaduzeniPredmeti = Predmeti.VratiSvePredmeteZaduzenog(korisnik.Id); foreach (var pr in ZaduzeniPredmeti) { PredmetModel pred = new PredmetModel() { PregledaProfesor = true, GodinaStudija = pr.GodinaStudija, Id = pr.Id, NazivPredmeta = pr.Naziv, OpisPredmeta = pr.Opis, ZaduzeniProfesor = (string)Session["Username"], }; panel.ListaZaduzenihPredmeta.Add(pred); } } return(View("KorisnickiPanel", panel)); } else { Session["Id"] = user.Id; Session["Role"] = user.RoleId; ViewBag.foto = user.Slika; ViewBag.Ime = user.Ime; ViewBag.Prezime = user.Prezime; ViewBag.Username = user.Username; Session["Username"] = user.Username; Session["Ime"] = user.Ime; Session["Prezime"] = user.Prezime; Session["Password"] = user.Password; Session["GodinaStudija"] = user.GodinaStudija; ViewBag.foto = user.Slika; ViewBag.brIndeksa = user.BrojIndeksa; Session["Status"] = user.StatusId; return(RedirectToAction("Administracija", "Administracija")); } } else { ViewBag.BadLogin = true; return(View("Pocetna", model)); } }
// // 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)); }