public IActionResult Create(DrugModel drugModel) { try { int? userId = HttpContext.Session.GetInt32("userId"); User user = _context.Users.Where(u => u.Id == userId) .Include(u => u.Applicant) .Include(u => u.Manufacturer) .FirstOrDefault(); if (user != null && user.Applicant != null) { if (ModelState.IsValid !) { Drug drug = new Drug { TradeName = drugModel.TradeName, InternationalName = drugModel.InternationalName, Form = drugModel.Form, Formula = drugModel.Formula, Applicant = user.Applicant }; _context.Drugs.Add(drug); _context.SaveChanges(); return(RedirectToAction("Personal", "Drug")); } return(View()); } } catch { } return(RedirectToAction("Login", "User")); }
public IActionResult Register(Registration registration) { if (ModelState.IsValid) { User existingUser = _context.Users.Where(u => u.Email == registration.Email).FirstOrDefault(); if (existingUser == null) { if (registration.Password1 == registration.Password2) { User user = new User { Email = registration.Email, Password = PasswordHandler.CreatePasswordHash(registration.Password1) }; _context.Users.Add(user); _context.SaveChanges(); if (registration.RegistrationType == "Applicant") { Applicant applicant = new Applicant { Name = registration.Name, Country = registration.Country, City = registration.City, StreetAddress = registration.StreetAddress, UserId = user.Id }; _context.Applicants.Add(applicant); _context.SaveChanges(); } else if (registration.RegistrationType == "Manufacturer") { Manufacturer manufacturer = new Manufacturer { Name = registration.Name, Country = registration.Country, City = registration.City, StreetAddress = registration.StreetAddress, UserId = user.Id }; _context.Manufacturers.Add(manufacturer); _context.SaveChanges(); } return(RedirectToAction("Login", "User")); } else { ModelState.AddModelError(string.Empty, "Passwords aren't the same"); } } else { ModelState.AddModelError(string.Empty, "Email is already taken"); } } return(View(registration)); }