public async Task <IActionResult> DodajUposlenik(KorisnikZaposlenikDodajVM model) { if (!ModelState.IsValid) { model.Gradovi = GetGradovi(); model.Plate = GetPlate(); model.TipoviUposlenika = GetTipoviUposlenika(); return(View("DodajUposlenik", model)); } var nalog = new Nalog { Id = Guid.NewGuid().ToString(), UserName = model.Username, IsUposlenik = true }; await userManager.CreateAsync(nalog, model.Password); var noviZaposlenik = new Uposlenik { BrojTelefona = model.BrojTelefona, GradID = model.GradID.Value, Ime = model.Ime, Prezime = model.Prezime, PlataID = model.PlataID.Value, TipUposlenikaID = model.TipUposlenikaID.Value, UserId = nalog.Id }; db.Uposlenici.Add(noviZaposlenik); db.SaveChanges(); return(RedirectToAction("Index")); }
public IActionResult NalogUnesiPredjenuKm([Bind("Predjenja_Kilometraza, Id")] Nalog nalog) { if (ModelState.IsValid) { try { var nalogDb = _context.Nalogs.Where(n => n.Id == nalog.Id).FirstOrDefault(); nalogDb.Predjenja_Kilometraza = nalog.Predjenja_Kilometraza; _context.Nalogs.Update(nalogDb); _context.SaveChanges(); var obavijest = new Notifikacije(); obavijest.Datum_i_vrijeme_objave = DateTime.Now.ToString(); obavijest.Naslov = "Nalog Zavrsen"; obavijest.Sadrzaj = "Vas nalog je zavrsen, zahvaljujemo na koristenju usluga Rent-a-car, nadamo se buducoj saradnji! Pregledajte listu trenutnih naloga na: <a href='/Iznajmljivanje/NaloziList' >Moji Nalozi</a>"; obavijest.KorisnikId = _context.Korisnicki_nalogs.Where(k => k.KorisnikId == nalogDb.KorisnikID).FirstOrDefault().Id; _context.Notifikacijes.Add(obavijest); _context.SaveChanges(); var nalozi = _context.Nalogs.Include(v => v.Vozilo).AsNoTracking().ToList(); return(View("NaloziListPotvrda", nalozi)); } catch { var nalozi = _context.Nalogs.Include(v => v.Vozilo).AsNoTracking().ToList(); return(View("NaloziListPotvrda", nalozi)); } } var nalogReturn = _context.Nalogs.Where(n => n.Id == nalog.Id).FirstOrDefault(); return(View("NalogZavrsi", nalogReturn)); }
public void OnAuthorization(AuthorizationFilterContext context) { Nalog nalog = Autentifikacija.GetLogiraniNalog(context.HttpContext); if (nalog == null) { context.HttpContext.Response.Redirect("/Autentifikacija/Prijava"); return; } if (_sviKorisnici) { return; } if (!_sviKorisnici && nalog.IsAdministrator && _korisnickeUloge.Contains(TipKorisnika.Administrator)) { return; } if (!_sviKorisnici && nalog.IsUposlenik && _korisnickeUloge.Contains(TipKorisnika.Uposlenik)) { return; } if (!_sviKorisnici && nalog.IsKlijent && _korisnickeUloge.Contains(TipKorisnika.Klijent)) { return; } context.HttpContext.Response.Redirect("/Autentifikacija/Prijava"); }
public ActionResult DeleteConfirmed(int id) { Nalog nalog = db.Nalogs.Find(id); db.Nalogs.Remove(nalog); db.SaveChanges(); return(RedirectToAction("Index")); }
public IActionResult PrikazRezervacija(string sortOrder, int page = 1) { Nalog trenutniNalog = Autentifikacija.GetLogiraniNalog(HttpContext); Data.Models.Klijent klijent = db.Klijenti.FirstOrDefault(x => x.NalogID == trenutniNalog.id); ViewData["brojArtikala"] = db.NarudzbaStavke.Where(x => x.Narudzba.KlijentID == klijent.id).Sum(q => q.Kolicina); ViewBag.ProstorijaSortParm = String.IsNullOrEmpty(sortOrder)? "Prostorija_desc" : ""; ViewBag.DatumSortParm = sortOrder == "Datum" ? "Datum_desc" : "Datum"; RezervacijePrikazRezervacijaVM model = new RezervacijePrikazRezervacijaVM(); model.rows = db.Rezervacije .Include(x => x.Uplata) .Include(x => x.Klijent) .Include(x => x.Termin) .ThenInclude(x => x.Prostorija) .Where(x => x.KlijentID == klijent.id) .Select(x => new RezervacijePrikazRezervacijaVM.Row() { RezervacijaID = x.id, Klijent = x.Klijent.Ime + " " + x.Klijent.Prezime, DatumVrijeme = x.Termin.DatumIVrijeme.ToString("yyyy-MM-dd hh:mm"), Prostorija = x.Termin.Prostorija.Naziv, Uplata = x.Uplata.Iznos.ToString() ?? "0", Odobrena = x.Odobrena }).OrderBy(x => x.RezervacijaID).Skip((page - 1) * PageSize).Take(PageSize).ToList(); model.PagingInfo = new Web.ViewModels.PagingInfo() { CurrentPage = page, ItemsPerPage = PageSize, TotalItems = db.Rezervacije.Count() }; switch (sortOrder) { case "Prostorija_desc": model.rows = model.rows.OrderByDescending(x => x.Prostorija); break; case "Datum": model.rows = model.rows.OrderBy(x => x.DatumVrijeme); break; case "Datum_desc": model.rows = model.rows.OrderByDescending(x => x.DatumVrijeme); break; default: model.rows = model.rows.OrderBy(x => x.Prostorija); break; } return(View(model)); }
public IActionResult emailActivation(int nalogId) { Nalog nalog = db.Nalozi.Where(x => x.id == nalogId).FirstOrDefault(); nalog.emailActivated = true; db.SaveChanges(); return(RedirectToAction("Prijava", "Autentifikacija")); }
public IActionResult Index() { Nalog trenutniNalog = Autentifikacija.GetLogiraniNalog(HttpContext); Data.Models.Klijent klijent = db.Klijenti.FirstOrDefault(x => x.NalogID == trenutniNalog.id); ViewData["brojArtikala"] = db.NarudzbaStavke.Where(x => x.Narudzba.KlijentID == klijent.id).Sum(q => q.Kolicina); return(PartialView()); }
public IActionResult tokenLogin(int nalogId, int poruka) { UnlockToken neiskoristen = db.UnlockTokeni.Where(x => x.NalogID == nalogId && x.isUsed == false).FirstOrDefault(); Nalog nalog = db.Nalozi.Where(x => x.id == nalogId).FirstOrDefault(); if (neiskoristen == null) { string noviToken = TokenGenerator.GetUniqueKey(); UnlockToken u = new UnlockToken { NalogID = nalog.id, isUsed = false, token = noviToken, DateCreated = DateTime.Now }; db.UnlockTokeni.Add(u); db.SaveChanges(); var message = new MimeMessage(); message.From.Add(new MailboxAddress("Sportski centar ASA", "*****@*****.**")); message.To.Add(new MailboxAddress(nalog.KorisnickoIme, nalog.email)); message.Subject = "Vaš token za login"; message.Body = new TextPart("plain") { Text = "Poštovani,\n" + "Molimo vas da nakon uspješnog logina unesete sljedeći token da biste pristupili daljim opcijama:\n" + u.token }; using (var client = new SmtpClient()) { client.ServerCertificateValidationCallback = (s, c, h, e) => true; client.Connect("smtp.gmail.com", 587, false); client.Authenticate("*****@*****.**", "SportskiCentarASA123"); client.Send(message); client.Disconnect(true); } } AutentifikacijaTokenLoginVM model = new AutentifikacijaTokenLoginVM { nalogId = nalog.id }; if (poruka == 1) { model.msg = "Token nije validan, molimo vas unesite token koji ste dobili na vašu email adresu."; } return(View(model)); }
public IActionResult Registracija(AutentifikacijaRegistracijaVM klijent) { Nalog noviNalog = new Nalog { KorisnickoIme = klijent.KorisnickoIme, Lozinka = klijent.Password, IsAdministrator = false, IsKlijent = true, IsUposlenik = false, email = klijent.email, emailActivated = false }; db.Nalozi.Add(noviNalog); Klijent noviKlijent = new Klijent { Ime = klijent.Ime, Prezime = klijent.Prezime, Spol = klijent.Spol, JBMG = klijent.JBMG, GradID = klijent.GradID, NalogID = noviNalog.id }; db.Klijenti.Add(noviKlijent); db.SaveChanges(); var message = new MimeMessage(); message.From.Add(new MailboxAddress("Sportski centar ASA", "*****@*****.**")); message.To.Add(new MailboxAddress(noviKlijent.Ime, noviNalog.email)); message.Subject = "Aktivacija profila"; message.Body = new TextPart("plain") { Text = "Poštovani,\n" + "Hvala vam što ste se registrovali na naš portal, molimo vas da aktivirate vaš nalog klikom na link ispod:\n" + "https://sportskicentarasa.azurewebsites.net/Autentifikacija/emailActivation?nalogId=" + noviNalog.id }; using (var client = new SmtpClient()) { client.ServerCertificateValidationCallback = (s, c, h, e) => true; client.Connect("smtp.gmail.com", 587, false); client.Authenticate("*****@*****.**", "SportskiCentarASA123"); client.Send(message); client.Disconnect(true); } if (!ModelState.IsValid) { return(View(klijent)); } return(RedirectToAction("Prijava", "Autentifikacija")); }
public static Nalog GetLogiraniNalog(HttpContext context) { Nalog nalog = context.Session.GetJson <Nalog>(_logiraniNalog); if (nalog != null) { return(nalog); } PokreniNovuSesiju(nalog, context); return(nalog); }
public ActionResult parseEdit([Bind(Include = "NalogID,Username,Password,JMBG,SlikaID")] Nalog nalog) { if (ModelState.IsValid) { db.Entry(nalog).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index", "Home")); } return(RedirectToAction("korisnickiNalog", "Nalog")); }
public static Nalog GetLogiraniNalog(HttpContext httpContext) { Nalog nalog = httpContext.Session.Get <Nalog>(_logiraniNalog); if (nalog == null) { return(nalog); } PokreniNovuSesiju(nalog, httpContext); return(nalog); }
public ActionResult Edit([Bind(Include = "NalogId,VoziloID,KlijentID,MozeInostranstvo,VracaUInostranstvu,Datum")] Nalog nalog) { if (ModelState.IsValid) { db.Entry(nalog).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.KlijentID = new SelectList(db.Klijents, "KlijentId", "Ime", nalog.KlijentID); ViewBag.VoziloID = new SelectList(db.Voziloes, "VoziloId", "BrojRegistracije", nalog.VoziloID); return(View(nalog)); }
public ActionResult Edit([Bind(Include = "NalogID,Username,Password,JMBG,SlikaID")] Nalog nalog) { if (ModelState.IsValid) { db.Entry(nalog).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.FK_JMBG = new SelectList(db.Korisnik, "JMBG", "Ime", nalog.JMBG); ViewBag.FK_SlikaID = new SelectList(db.Slika, "SlikaID", "Link", nalog.SlikaID); return(View(new ViewDataContainer(nalog, new AdminView()))); }
public FileStreamResult ViewImage(int FajlID) { Nalog trenutniNalog = Autentifikacija.GetLogiraniNalog(HttpContext); Data.Models.Klijent klijent = db.Klijenti.FirstOrDefault(x => x.NalogID == trenutniNalog.id); ViewData["brojArtikala"] = db.NarudzbaStavke.Where(x => x.Narudzba.KlijentID == klijent.id).Sum(q => q.Kolicina); Fajl image = db.Fajlovi.FirstOrDefault(m => m.Id == FajlID); MemoryStream ms = new MemoryStream(image.Podaci); return(new FileStreamResult(ms, image.Tip)); }
// GET: Nalogs/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Nalog nalog = db.Nalogs.Find(id); if (nalog == null) { return(HttpNotFound()); } return(View(nalog)); }
public IActionResult Index() { Nalog trenutniNalog = Autentifikacija.GetLogiraniNalog(HttpContext); AdminNalogIndexVM model = _db.Administratori.Where(q => q.NalogID == trenutniNalog.id).Select(x => new AdminNalogIndexVM { id = x.id, ime = x.Ime, prezime = x.Prezime, username = x.Nalog.KorisnickoIme, lozinka = x.Nalog.Lozinka, email = x.Nalog.email }).FirstOrDefault(); return(View(model)); }
public static int SpremiLokacijuPauka(string grad, _PozicijaPauka pozicija, int idAplikacije) { try { using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije))) { if (pozicija.IDVozila == null) { try { pozicija.IDVozila = db.VozilaPaukas.First(i => i.IDTerminala == pozicija.IDTerminala).IDVozila; } catch { pozicija.IDVozila = 0; } } if (pozicija.IDVozila < 0 || pozicija.IDVozila == null) { Sustav.SpremiGresku(grad, new ApplicationException(pozicija.IDVozila + " " + pozicija.IDTerminala), idAplikacije, "SPREMI LOKACIJU PAUKA"); return(0); } LokacijePauka lp = new LokacijePauka(); lp.IDVozila = pozicija.IDVozila; lp.IDNacinaPozicioniranja = pozicija.IDNacinaPozicioniranja; lp.IDTerminala = pozicija.IDTerminala; lp.LatPauka = pozicija.LatPauka; lp.LongPauka = pozicija.LngPauka; lp.DatumVrijemePauka = pozicija.DatumVrijeme; lp.IDStatusaLokacija = pozicija.IDStatusaLokacije; lp.IDCentralneLokacije = pozicija.IDCentralneLokacije; lp.GPSAcc = pozicija.Preciznost; lp.Brzina = pozicija.Brzina; lp.Battery = pozicija.Baterija; db.LokacijePaukas.InsertOnSubmit(lp); db.SubmitChanges(); return(Nalog.IDDodjeljenogNaloga(grad, pozicija, idAplikacije)); } } catch (Exception ex) { Sustav.SpremiGresku(grad, ex, idAplikacije, "SPREMI LOKACIJU PAUKA"); return(0); } }
// GET: Nalog/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Nalog nalog = db.Nalog.Find(id); if (nalog == null) { return(HttpNotFound()); } return(View(new ViewDataContainer(nalog, new AdminView()))); }
public void TapOnNalog(Nalog nalog) { if (curTaxation.nalogs.Exists(x => x == nalog.type)) { // Add points PointsAdd(10); Debug.Log("Click On Right Nalog"); } else { // Minus points PointsAdd(-10); Debug.Log("Click On Wrong Nalog"); } }
public IActionResult PovecajSmanjiStanje(int NarudzbaStavkeID, int OdabranaKolicina) { Nalog trenutniNalog = Autentifikacija.GetLogiraniNalog(HttpContext); Data.Models.Klijent klijent = db.Klijenti.FirstOrDefault(x => x.NalogID == trenutniNalog.id); ViewData["brojArtikala"] = db.NarudzbaStavke.Where(x => x.Narudzba.KlijentID == klijent.id).Sum(q => q.Kolicina); NarudzbaStavke postojecaNarudzba = db.NarudzbaStavke.Where(s => s.id == NarudzbaStavkeID).SingleOrDefault(); postojecaNarudzba.Kolicina = OdabranaKolicina; db.SaveChanges(); return(RedirectToAction("UvidKorpe")); }
public IActionResult Obrisi(int NarudzbaStavkeID) { Nalog trenutniNalog = Autentifikacija.GetLogiraniNalog(HttpContext); Data.Models.Klijent klijent = db.Klijenti.FirstOrDefault(x => x.NalogID == trenutniNalog.id); ViewData["brojArtikala"] = db.NarudzbaStavke.Where(x => x.Narudzba.KlijentID == klijent.id).Sum(q => q.Kolicina); NarudzbaStavke narudzbaStavke = db.NarudzbaStavke.Where(s => s.id == NarudzbaStavkeID).SingleOrDefault(); db.NarudzbaStavke.Remove(narudzbaStavke); db.SaveChanges(); return(RedirectToAction("UvidKorpe")); }
// GET: Nalogs/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Nalog nalog = db.Nalogs.Find(id); if (nalog == null) { return(HttpNotFound()); } ViewBag.KlijentID = new SelectList(db.Klijents, "KlijentId", "Ime", nalog.KlijentID); ViewBag.VoziloID = new SelectList(db.Voziloes, "VoziloId", "BrojRegistracije", nalog.VoziloID); return(View(nalog)); }
// GET: Nalog/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Nalog nalog = db.Nalog.Find(id); if (nalog == null) { return(HttpNotFound()); } ViewBag.FK_JMBG = new SelectList(db.Korisnik, "JMBG", "Ime", nalog.JMBG); ViewBag.FK_SlikaID = new SelectList(db.Slika, "SlikaID", "Link", nalog.SlikaID); return(View(new ViewDataContainer(nalog, new AdminView()))); }
public IActionResult PrikazTermina() { List <Termin> listaTermina = db.Termini.Include(w => w.Prostorija).ToList(); List <Rezervacija> listaRezervacija = db.Rezervacije.Include(s => s.Termin).ToList(); List <Termin> slobodniTermini = new List <Termin>(); List <Termin> zauzetiTermini = new List <Termin>(); foreach (var x in listaTermina) { bool nadjen = false; foreach (var y in listaRezervacija) { if (x.id == y.TerminID) { nadjen = true; } } if (nadjen != true) { slobodniTermini.Add(x); } } Nalog trenutniNalog = Autentifikacija.GetLogiraniNalog(HttpContext); Data.Models.Klijent klijent = db.Klijenti.FirstOrDefault(x => x.NalogID == trenutniNalog.id); ViewData["brojArtikala"] = db.NarudzbaStavke.Where(x => x.Narudzba.KlijentID == klijent.id).Sum(q => q.Kolicina); RezervacijePrikazTerminaVM model = new RezervacijePrikazTerminaVM { KlijentID = klijent.id, rows = slobodniTermini.Select(x => new RezervacijePrikazTerminaVM.Row { TerminID = x.id, Prostorija = x.Prostorija.Naziv, DatumVrijeme = x.DatumIVrijeme, Cijena = x.Cijena }).ToList(), }; return(View(model)); }
public IActionResult Verify(Nalog acc) { connectionString(); con.Open(); com.Connection = con; com.CommandText = "select * from login where korisnickoIme='" + acc.KorisnickoIme + "'and lozinka='" + acc.Lozinka + "'"; dr = com.ExecuteReader(); if (dr.Read()) { con.Close(); return(View("Admin")); } else { con.Close(); return(View("Error")); } }
public IActionResult PrikazNaloga() { Nalog trenutniNalog = Autentifikacija.GetLogiraniNalog(HttpContext); Data.Models.Klijent klijent = db.Klijenti.FirstOrDefault(x => x.NalogID == trenutniNalog.id); ViewData["brojArtikala"] = db.NarudzbaStavke.Where(x => x.Narudzba.KlijentID == klijent.id).Sum(q => q.Kolicina); NalogPrikazNalogaVM model = new NalogPrikazNalogaVM() { KlijentID = klijent.id, Ime = klijent.Ime, KorisnickoIme = trenutniNalog.KorisnickoIme, Prezime = klijent.Prezime, Grad = db.Gradovi.Where(s => s.id == klijent.GradID).Select(s => s.Naziv).SingleOrDefault() }; return(View(model)); }
public IActionResult Index() { Nalog trenutniNalog = Autentifikacija.GetLogiraniNalog(HttpContext); Data.Models.Uposlenik u = db.Uposlenici.FirstOrDefault(x => x.NalogID == trenutniNalog.id); NalogIndexVM vm = new NalogIndexVM() { UposlenikID = u.id, Ime = u.Ime, KorisnickoIme = trenutniNalog.KorisnickoIme, Prezime = u.Prezime, Grad = db.Gradovi.FirstOrDefault(x => x.id == u.GradID).Naziv,//nije moglo na laksi nacin Plata = db.Plate.FirstOrDefault(x => x.id == u.PlataID).Iznos, TipUposlenika = db.TipoviUposlenika.FirstOrDefault(x => x.id == u.TipUposlenikaID).Naziv }; return(View(vm)); }
public IActionResult RezervisiTermin(int TerminID) { Nalog trenutniNalog = Autentifikacija.GetLogiraniNalog(HttpContext); Data.Models.Klijent klijent = db.Klijenti.FirstOrDefault(x => x.NalogID == trenutniNalog.id); ViewData["brojArtikala"] = db.NarudzbaStavke.Where(x => x.Narudzba.KlijentID == klijent.id).Sum(q => q.Kolicina); Rezervacija novaRezervacija = new Rezervacija { Odobrena = false, TerminID = TerminID, KlijentID = klijent.id, }; db.Rezervacije.Add(novaRezervacija); db.SaveChanges(); return(RedirectToAction("PrikazTermina")); }
public IActionResult provjeriToken(string token, int nalogId) { UnlockToken t = db.UnlockTokeni.Where(x => x.NalogID == nalogId && x.isUsed == false).FirstOrDefault(); Nalog nalog = db.Nalozi.Where(x => x.id == nalogId).FirstOrDefault(); if (t.token == token) { t.isUsed = true; t.DateUsed = DateTime.Now; db.SaveChanges(); Autentifikacija.PokreniNovuSesiju(nalog, httpContext.HttpContext); return(RedirectToAction("Index", "Administrator/Admin")); } else { return(Redirect("/Autentifikacija/tokenLogin?nalogId=" + nalogId + "&poruka=1")); } }