public IActionResult Login(LoginVM podaci) { MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); byte[] b = System.Text.Encoding.UTF8.GetBytes(podaci.Password); b = md5.ComputeHash(b); System.Text.StringBuilder sb = new System.Text.StringBuilder(); foreach (byte x in b) { sb.Append(x.ToString("x2")); } podaci.Password = sb.ToString(); Klijent klijent = _db.Klijenti.SingleOrDefault(k => k.KorisnickoIme == podaci.Username && k.Lozinka == podaci.Password); if (klijent == null) { TempData["Error_Poruka"] = "Pogrešan username ili password"; return(View("Index", podaci)); } var kod = RandomStringGenerator.RandomString(6); var message = new MimeMessage(); message.From.Add(new MailboxAddress("EKnjige", "*****@*****.**")); message.To.Add(new MailboxAddress(klijent.KorisnickoIme, klijent.Email)); message.Subject = "Potvrdni kod"; message.Body = new TextPart("plain") { Text = "Poštovani,\n\n" + "Unesite sljedeci kod da bi ste pristupili sistemu: " + kod }; using (var client = new SmtpClient()) { client.ServerCertificateValidationCallback = (s, c, h, e) => true; client.Connect("smtp.gmail.com", 587, false); client.Authenticate("*****@*****.**", "Administrator!"); client.Send(message); client.Disconnect(true); } AutentifikacijaKodVM kodvm = new AutentifikacijaKodVM() { klijentId = klijent.KlijentID, kodGen = kod, }; return(View("UnosKoda", kodvm)); //HttpContext.Setlogiranikorisnik(klijent); //return RedirectToAction("Index", "KlijentProfil", new { area = "KlijentModul" }); }
public IActionResult Login(LoginVM login) { if (!ModelState.IsValid) { return(View("Index", login)); } Administrator administrator = _db.Administratori.SingleOrDefault(k => k.KorisnickoIme == login.Username && k.Lozinka == login.Password); if (administrator == null) { ModelState.AddModelError("", "Korisnicko ime ili lozinka nisu tacni"); } if (!ModelState.IsValid) { return(View("Index", login)); } var kod = RandomStringGenerator.RandomString(6); var message = new MimeMessage(); message.From.Add(new MailboxAddress("EKnjige", "*****@*****.**")); message.To.Add(new MailboxAddress(administrator.Ime, administrator.Email)); message.Subject = "Potvrdni kod"; message.Body = new TextPart("plain") { Text = "Poštovani,\n\n" + "Unesite sljedeci kod da bi ste pristupili sistemu: " + kod }; using (var client = new SmtpClient()) { client.ServerCertificateValidationCallback = (s, c, h, e) => true; client.Connect("smtp.gmail.com", 587, false); client.Authenticate("*****@*****.**", "Administrator!"); client.Send(message); client.Disconnect(true); } //HttpContext.SetlogiraniAdministrator(administrator); AutentifikacijaKodVM kodvm = new AutentifikacijaKodVM() { adminId = administrator.AdministratorID, kodGen = kod, }; return(View("UnosKoda", kodvm)); //return RedirectToAction("Index", "Administrator", new { area = "AdministratorModul" }); //Autentifikacija.PokreniNovuSesiju(nalog, httpContext.HttpContext); //return RedirectToAction("Index", "Klijent/Rezervacije"); }
public IActionResult ProvjeraKoda(AutentifikacijaKodVM input) { if (input.kodGen == input.kodKor) { Klijent k = _db.Klijenti.SingleOrDefault(a => a.KlijentID == input.klijentId); HttpContext.Setlogiranikorisnik(k); return(RedirectToAction("Index", "KlijentProfil", new { area = "KlijentModul" })); } else { input.kodKor = null; ModelState.AddModelError("", "Uneseni kod nije ispravan"); return(View("UnosKoda", input)); } }
public IActionResult ProvjeraKoda(AutentifikacijaKodVM input) { if (input.kodGen == input.kodKor) { Administrator administrator = _db.Administratori.SingleOrDefault(a => a.AdministratorID == input.adminId); HttpContext.SetlogiraniAdministrator(administrator); return(RedirectToAction("Index", "Administrator", new { area = "AdministratorModul" })); } else { input.kodKor = null; ModelState.AddModelError("", "Uneseni kod nije ispravan"); return(View("UnosKoda", input)); } }