protected void ResetPass_Click(object sender, EventArgs e) { string code = Verification.Text.ToString(); string pass = Password.Text.ToString(); passReset reset = null; using (var ctx = new CVGSEntities()) { reset = ctx.passResets .Where(s => s.resetCode == code).FirstOrDefault(); if (reset != null) { login log = new login(); log.username = reset.username; log.password = pass; if (ModelState.IsValid) { ctx.Entry(log).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); ctx.passResets.Remove(reset); ctx.SaveChanges(); } Response.Redirect("~/Account/Login"); } else { ErrorMessage.Text = "Invalid Verification Code"; } } }
protected void Forgot(object sender, EventArgs e) { String email = email = Email.Text.Trim(); String code = GetUniqueKey(6); UserModel login = null; using (var ctx = new CVGSEntities()) { login = ctx.users .Where(s => s.email == email) .Select(s => new UserModel() { username = s.username, firstName = s.firstName, lastname = s.lastName, email = s.email, mailAddress = s.mailAddress, shipAddress = s.shipAddress, age = s.age, employee = s.employee, }).FirstOrDefault <UserModel>(); } passReset resetPass = new passReset(); resetPass.resetCode = code; resetPass.username = login.username; using (var ctx = new CVGSEntities()) { if (ModelState.IsValid) { ctx.passResets.Add(resetPass); ctx.SaveChanges(); } } System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(); message.To.Add(email); message.Subject = "CVGS password reset code"; message.From = new System.Net.Mail.MailAddress("*****@*****.**"); message.Body = "Please enter the following code on the reset password page of CVGS: " + code; System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("smtp-mail.outlook.com"); smtp.Port = 587; smtp.Credentials = new System.Net.NetworkCredential("*****@*****.**", "CVGSPassword"); smtp.EnableSsl = true; smtp.Send(message); Response.Redirect("~/Account/ResetPassword"); }