public virtual MailMessage PasswordReset(string token, User user) { var mailMessage = new MailMessage {Subject = String.Format(Resources.EmailTemplates.PasswordReset_Subject, BgResources.Messages_SiteTitle)}; ViewBag.Token = token; ViewBag.UserName = user.Username; ViewBag.Email = user.Email; mailMessage.To.Add(user.Email); mailMessage.From = new MailAddress(BgResources.Email_UserName); PopulateBody(mailMessage, viewName: "PasswordReset"); return mailMessage; }
public override string CreateAccount(string userName, string password, string email, string firstname, string lastname, string timezone, string culture, bool requireConfirmationToken) { if (string.IsNullOrEmpty(password)) { throw new MembershipCreateUserException(MembershipCreateStatus.InvalidPassword); } string hashedPassword = CodeFirstCrypto.HashPassword(password); if (hashedPassword.Length > 128) { throw new MembershipCreateUserException(MembershipCreateStatus.InvalidPassword); } if (string.IsNullOrEmpty(userName)) { throw new MembershipCreateUserException(MembershipCreateStatus.InvalidUserName); } if (string.IsNullOrEmpty(email)) { throw new MembershipCreateUserException(MembershipCreateStatus.InvalidEmail); } using (BlogUnitOfWork context = new BlogUnitOfWork(new ModelContextInit())) { dynamic user = context.Users.FirstOrDefault(Usr => Usr.Username == userName); dynamic emailuser = context.Users.FirstOrDefault(Usr => Usr.Email == email); if (user != null) { throw new MembershipCreateUserException(MembershipCreateStatus.DuplicateUserName); } if (emailuser != null) { throw new MembershipCreateUserException(MembershipCreateStatus.DuplicateEmail); } string token = null; if (requireConfirmationToken) { token = CodeFirstCrypto.GenerateToken(); } int defaultNumPasswordFailures = 0; User NewUser = new User { UserId = Guid.NewGuid(), Username = userName, Password = hashedPassword, IsConfirmed = !requireConfirmationToken, Email = email, ConfirmationToken = token, CreateDate = DateTime.UtcNow, PasswordChangedDate = DateTime.UtcNow, PasswordFailuresSinceLastSuccess = defaultNumPasswordFailures, LastPasswordFailureDate = DateTime.UtcNow, Culture = culture, TimeZone = timezone, FirstName = firstname, LastName = lastname, }; context.Users.Add(NewUser); context.SaveChanges(); return token; } }
public virtual MailMessage Register(string token, string to, User user) { var mailMessage = new MailMessage { Subject = String.Format(Resources.EmailTemplates.RegisterMail_Subject, BgResources.Messages_SiteTitle) }; ViewBag.Token = token; ViewBag.UserName = user.Username; ViewBag.Email = user.Email; ViewBag.ConfirmationToken = user.ConfirmationToken; mailMessage.To.Add(to); mailMessage.From = new MailAddress(BgResources.Email_UserName); PopulateBody(mailMessage, viewName: "Register"); return mailMessage; }
public ActionResult Edit(User user, string[] selectedroles) { if (ModelState.IsValid) { AccountServices.SaveUser(user,selectedroles); return RedirectToAction("Index"); } return View(user); }