public ActionResult Login(string email, string pass) { using (BrushFX_DBEntities db = new BrushFX_DBEntities()) { SecureUser sU = new SecureUser(); sU.EmailAddress = email; var hashPass = HashPass(pass); sU.PasswordHash = hashPass; var usr = db.SecureUsers.Where(u => u.EmailAddress == email && u.PasswordHash == hashPass).FirstOrDefault(); if (usr != null) { Session["UserKey"] = usr.UserKey.ToString(); Session["Email"] = usr.EmailAddress.ToString(); FormsAuthentication.SetAuthCookie(sU.UserKey.ToString(), true); return(RedirectToAction("Index", "Gallery")); } else { ModelState.AddModelError("LogOnError", "The user name or password entered is incorrect"); return(View()); } return(RedirectToAction("Index", "Home")); } return(RedirectToAction("Index", "Home")); }
public ActionResult Register(SecureUser acc) { if (ModelState.IsValid) { using (BrushFX_DBEntities db = new BrushFX_DBEntities()) { var hashedPass = HashPass(acc.EmailAddress.ToString()); //Check if that user already exists SecureUser emailCheck = db.SecureUsers.FirstOrDefault(u => u.EmailAddress.ToLower().ToString() == acc.EmailAddress.ToLower().ToString()); if (emailCheck == null) { //Call method to register account SaveChanges(acc); //Take them to look at pictures on successful registration SmtpClient mailClient = new SmtpClient("smtp.gmail.com", 587); //remove mine once Nick gets it mailClient.Credentials = new NetworkCredential("*****@*****.**", "Password123!1"); MailMessage mailMessage = new MailMessage(); mailMessage.From = new MailAddress("*****@*****.**"); mailMessage.To.Add(acc.EmailAddress.ToString()); mailMessage.Subject = "BrushFX Sign Up"; mailMessage.Body = "Thank you for signing up for BrushFX! Track all of your past, and plan for your future work at our website!"; try { mailClient.Send(mailMessage); } catch (SmtpFailedRecipientException e) { Console.WriteLine("Email message failed to send to user: "******"Index", "Gallery")); } else { ModelState.AddModelError("emailExists", "This email already exists. Please Sign in or register a new email address"); return(View()); } } ModelState.Clear(); ViewBag.Message = acc.UserName + " successfully registerd"; } return(View()); }
//Creates a new user public ActionResult SaveChanges(SecureUser userAcc) { BrushFX_DBEntities db = new BrushFX_DBEntities(); SecureUser sc = new SecureUser(); sc.UserName = userAcc.UserName; sc.EmailAddress = userAcc.EmailAddress; sc.PasswordHash = HashPass(userAcc.PasswordHash); sc.UserKey = userAcc.UserKey; Session["UserKey"] = sc.UserKey.ToString(); Session["UserName"] = sc.UserName.ToString(); //Signs and passes the authenticated credentials for the entirety of the session FormsAuthentication.SetAuthCookie(sc.UserKey.ToString(), true); db.SecureUsers.Add(sc); db.SaveChanges(); return(RedirectToAction("Index", "Gallery")); }