public ActionResult Contact(Message msg) { MailHelper mailer = new MailHelper(); string response = mailer.EmailFromArvixe( new Message(msg.Sender, msg.Subject, msg.Body)); if (response == "FAIL TO SEND MAIL") { ViewBag.Response = response; return(View()); } else { return(RedirectToAction("Success", new { message = response })); } }
public ActionResult CompleteInfo(ClientInterestViewModel client) { repo.saveClientInfo(client); var userStore = new UserStore <IdentityUser>(); UserManager <IdentityUser> manager = new UserManager <IdentityUser>(userStore); CreateTokenProvider(manager, EMAIL_CONFIRMATION); var user = manager.FindByName(client.userName); var code = manager.GenerateEmailConfirmationToken(user.Id); var callbackUrl = Url.Action("ConfirmEmail", "Home", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); string emailBody = "Please confirm your account by clicking this link: <a href=\"" + callbackUrl + "\">Confirm Registration</a>"; MailHelper mailer = new MailHelper(); string Subject = "Confirm registration"; string response = mailer.EmailFromArvixe( new Message(client.email, Subject, emailBody)); if (response.IndexOf("Success") >= 0) { // ViewBag.Message = "A confirm email has been sent. Please check your email."; TempData["Message"] = "A confirm email has been sent. Please check your email."; return(RedirectToAction("CompleteRegistration")); } else { ViewBag.Message = response; } ClientInterestViewModel newClient = repo.getClientInterest(client.userId); return(View(newClient)); // return RedirectToAction("UserProfile", new { userName = client.userName}); }
public ActionResult ForgotPassword(string email, RegisteredUser userRecovery) { var userStore = new UserStore <IdentityUser>(); UserManager <IdentityUser> manager = new UserManager <IdentityUser>(userStore); var user = manager.FindByEmail(email); CreateTokenProvider(manager, PASSWORD_RESET); var code = manager.GeneratePasswordResetToken(user.Id); var callbackUrl = Url.Action("ResetPassword", "Accounts", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); var body = "Please reset your password by clicking <a href=\"" + callbackUrl + "\">here</a>"; MailHelper mailer = new MailHelper(); string response = mailer.EmailFromArvixe( new RegisteredUser(userRecovery.Email = email, userRecovery.Subject = "Password Recovery Email", userRecovery.Body = body)); return(View("PasswordEmail")); }
public ActionResult ForgotPassword(string email) { //ensures valid input if (ModelState.IsValid) { CaptchaHelper captchaHelper = new CaptchaHelper(); string captchaResponse = captchaHelper.CheckRecaptcha(); ViewBag.CaptchaResponse = captchaResponse; //creates token to be sent to mail helper to allow password reset through email var userStore = new UserStore <IdentityUser>(); UserManager <IdentityUser> manager = new UserManager <IdentityUser>(userStore); var user = manager.FindByEmail(email); CreateToken ct = new CreateToken(); CreateTokenProvider(manager, PASSWORD_RESET); var code = manager.GeneratePasswordResetToken(user.Id); var callbackUrl = Url.Action("ResetPassword", "Home", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); //send callbackUrl to email helper MailHelper mailer = new MailHelper(); string message = "Please reset your password by clicking <a href=\"" + callbackUrl + "\">here</a>"; string subject = "Please reset your password"; try { mailer.EmailFromArvixe(message, user.Email, subject); ViewBag.FakeEmailMessage = "You have been sent an email to finish reseting your password"; } catch (System.Exception ex) { ViewBag.FakeEmailMessage = ex.Message; } } return(View()); }
public ActionResult ForgotPassword(string email) { var userStore = new UserStore <IdentityUser>(); UserManager <IdentityUser> manager = new UserManager <IdentityUser>(userStore); var user = manager.FindByEmail(email); if (user == null) { ViewBag.Message = "Email not found. Please double-check and try again."; return(View()); } CreateTokenProvider(manager, PASSWORD_RESET); var code = manager.GeneratePasswordResetToken(user.Id); var callbackUrl = Url.Action("ResetPassword", "Home", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); string emailBody = "Please reset your password by clicking <a href=\"" + callbackUrl + "\">here</a>"; MailHelper mailer = new MailHelper(); string Subject = "Confirm password reset"; string response = mailer.EmailFromArvixe( new Message(user.Email, Subject, emailBody)); if (response.IndexOf("Success") >= 0) { ViewBag.Message = "A confirm email has been sent. Please check your your email."; ViewBag.Email = user.Email; } else { ViewBag.Message = response; } return(View()); }
public ActionResult Email(string Email) { MailHelper.EmailFromArvixe(Email, "Here is your coupon", "Coupon stuff"); return(View("EmailSent")); }
public ActionResult ForgotPassword(string email) { var userStore = new UserStore<IdentityUser>(); UserManager<IdentityUser> manager = new UserManager<IdentityUser>(userStore); var user = manager.FindByEmail(email); if (user == null) { ViewBag.Message = "Email not found. Please double-check and try again."; return View(); } CreateTokenProvider(manager, PASSWORD_RESET); var code = manager.GeneratePasswordResetToken(user.Id); var callbackUrl = Url.Action("ResetPassword", "Home", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); string emailBody = "Please reset your password by clicking <a href=\"" + callbackUrl + "\">here</a>"; MailHelper mailer = new MailHelper(); string Subject = "Confirm password reset"; string response = mailer.EmailFromArvixe( new Message(user.Email, Subject, emailBody)); if (response.IndexOf("Success") >= 0) { ViewBag.Message = "A confirm email has been sent. Please check your your email."; ViewBag.Email = user.Email; } else { ViewBag.Message = response; } return View(); }
public ActionResult CompleteInfo(ClientInterestViewModel client) { repo.saveClientInfo(client); var userStore = new UserStore<IdentityUser>(); UserManager<IdentityUser> manager = new UserManager<IdentityUser>(userStore); CreateTokenProvider(manager, EMAIL_CONFIRMATION); var user = manager.FindByName(client.userName); var code = manager.GenerateEmailConfirmationToken(user.Id); var callbackUrl = Url.Action("ConfirmEmail", "Home", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); string emailBody = "Please confirm your account by clicking this link: <a href=\"" + callbackUrl + "\">Confirm Registration</a>"; MailHelper mailer = new MailHelper(); string Subject = "Confirm registration"; string response = mailer.EmailFromArvixe( new Message(client.email, Subject, emailBody)); if (response.IndexOf("Success") >= 0) { // ViewBag.Message = "A confirm email has been sent. Please check your email."; TempData["Message"] = "A confirm email has been sent. Please check your email."; return RedirectToAction("CompleteRegistration"); } else { ViewBag.Message = response; } ClientInterestViewModel newClient = repo.getClientInterest(client.userId); return View(newClient); // return RedirectToAction("UserProfile", new { userName = client.userName}); }
public ActionResult Register(RegisteredUser newUser) { //when user registers in checks model requirements to ensure valid input if (ModelState.IsValid) { CaptchaHelper captchaHelper = new CaptchaHelper(); string captchaResponse = captchaHelper.CheckRecaptcha(); ViewBag.CaptchaResponse = captchaResponse; // add user to database, lock account until email confirmation var userStore = new UserStore <IdentityUser>(); UserManager <IdentityUser> manager = new UserManager <IdentityUser>(userStore) { //set account to lock after consecutive failed login attempts UserLockoutEnabledByDefault = true, DefaultAccountLockoutTimeSpan = new TimeSpan(0, 10, 0), MaxFailedAccessAttemptsBeforeLockout = 3 }; var identityUser = new IdentityUser() { UserName = newUser.UserName, Email = newUser.Email }; IdentityResult result = manager.Create(identityUser, newUser.Password); if (result.Succeeded) { samUserRegEntities context = new samUserRegEntities(); AspNetUser user = context.AspNetUsers .Where(u => u.UserName == newUser.UserName).FirstOrDefault(); AspNetRole role = context.AspNetRoles .Where(r => r.Name == "registered").FirstOrDefault(); user.AspNetRoles.Add(role); context.SaveChanges(); //creates token to be passed to mail helper to allow email confirmation CreateToken ct = new CreateToken(); CreateTokenProvider(manager, EMAIL_CONFIRMATION); var code = manager.GenerateEmailConfirmationToken(identityUser.Id); var callbackUrl = Url.Action("ConfirmEmail", "Home", new { userId = identityUser.Id, code = code }, protocol: Request.Url.Scheme); //send callbackURL to email helper MailHelper mailer = new MailHelper(); string email = "Please confirm your account by clicking this link: <a href=\"" + callbackUrl + "\">Confirm Registration</a>"; string subject = "Please confirm your email"; //try //{ mailer.EmailFromArvixe(email, identityUser.Email, subject); ViewBag.FakeConfirmation = "An account confirmation has been sent to your email, please confirm before attempting to login"; //} //catch (System.Exception ex) //{ // ViewBag.FakeConfirmation = ex.Message; //} } } return(View()); }