public ActionResult ForgotPassword(string email) { CaptchaHelper captchaHelper = new CaptchaHelper(); string captchaResponse = captchaHelper.CheckRecaptcha(); ViewBag.CaptchaResponse = captchaResponse; if (captchaResponse == VALID_CAPTCHA) { 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", "Home", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); var emailMsg = "<h3>Please reset your password by clicking</h3> <a href=\"" + callbackUrl + "\">This Link</a>"; MailHelper mailer = new MailHelper(); string response = mailer.EmailFromArvixe(new RegisteredUser { Email = user.Email, UserName = user.UserName }, emailMsg); ViewBag.Response = response; TempData["response"] = response; return RedirectToAction("Index", "Home"); } return View(); }
public ActionResult Register(RegisteredUser newUser) { CaptchaHelper captchaHelper = new CaptchaHelper(); string captchaResponse = captchaHelper.CheckRecaptcha(); ViewBag.CaptchaResponse = captchaResponse; TempData["captcha"] = captchaResponse; var userStore = new UserStore<IdentityUser>(); UserManager<IdentityUser> manager = new UserManager<IdentityUser>(userStore) { UserLockoutEnabledByDefault = true, DefaultAccountLockoutTimeSpan = new System.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 && captchaResponse == VALID_CAPTCHA) { 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); string email = "<h3>Please confirm your account by clicking this link:</h3><a href=\"" + callbackUrl + "\">Confirm Registration</a>"; MailHelper mailer = new MailHelper(); string response = mailer.EmailFromArvixe(newUser, email); ViewBag.Response = response; TempData["response"] = response; } return RedirectToAction("Index","Home"); }