public ActionResult AccountManagement(UsrsModel received) { if (received.cmd == null) { UsrsModel usrs = new UsrsModel(); usrs.UserList = this.UserAdmin.UserList; return View(usrs); } else { switch (received.cmd) { case "Add": { this.UserAdmin.AddNewUser(received); break; } case "Delete": { this.UserAdmin.DeleteUser(received); break; } case "ChangePassword": { this.UserAdmin.ChangePassword(received); break; } } received.UserList = this.UserAdmin.UserList; return View(received); } }
/// <summary> /// Delete user. Use websecurity. /// </summary> /// <param name="InputModel">-users model(universal model for working with users)</param> /// <returns>-users model</returns> public UsrsModel DeleteUser(UsrsModel InputModel) { if (Global.GlobalThings.isUserAdministrator(InputModel.UserName) == false) { if (InputModel.UserName != null || InputModel.UserName!="") { ((SimpleMembershipProvider)Membership.Provider).DeleteAccount(InputModel.UserName); ((SimpleMembershipProvider)Membership.Provider).DeleteUser(InputModel.UserName, true); InputModel.ErrorState = ""; } else { InputModel.ErrorState = "Sorry, but user name is empty"; } } else { InputModel.ErrorState = "Sorry, but administrator can not delete himself"; } return InputModel; }
/// <summary> /// Change password /// </summary> /// <param name="InputModel">-users model(universal model for working with users)</param> /// <returns>-users model</returns> public UsrsModel ChangePassword(UsrsModel InputModel) { if (InputModel.UserName != null || InputModel.UserName != "") { if (InputModel.NewPassword != InputModel.RetypeNewPassword) { InputModel.ErrorState = "Sorry, but passwords are not equal"; } else { if (InputModel.NewPassword == null || InputModel.RetypeNewPassword == null) { InputModel.ErrorState = "Some password is empty"; } else { var token = WebSecurity.GeneratePasswordResetToken(InputModel.UserName); WebSecurity.ResetPassword(token, InputModel.NewPassword); InputModel.ErrorState = "Password has been changed successfully"; } } } else { InputModel.ErrorState = "Sorry, but user name is empty"; } return InputModel; }
/// <summary> /// Register new user, use WebSecurity /// </summary> /// <param name="InputModel">-users model(universal model for working with users)</param> /// <returns>users model</returns> /// public UsrsModel AddNewUser(UsrsModel InputModel) { if (InputModel.UserName == null) { InputModel.ErrorState = "User name is empty"; } else { if (Global.GlobalThings.isUserAdministrator(InputModel.UserName)) { InputModel.ErrorState = "Administrator already exists"; } else { // Check free name in user list bool SameUserFound = false; foreach (var item in UserList) { if (Global.GlobalThings.AreNamesEqual(item, InputModel.UserName)) { SameUserFound = true; break; } } if (SameUserFound == true) { InputModel.ErrorState = "This user already exists"; } else { // User name is free if ((InputModel.Password != InputModel.RetypePassword) || InputModel.Password==null) { InputModel.ErrorState = "Some password is empty or passwords are not equal"; } else { // Passwords are equal WebSecurity.CreateUserAndAccount(InputModel.UserName, InputModel.Password); InputModel.ErrorState = ""; } } } } return InputModel; }
public ActionResult ChangeUserPassword(UsrsModel model) { if (model.NewPassword != null || model.RetypeNewPassword != null) { if (model.NewPassword == model.RetypeNewPassword) { model.UserName = User.Identity.Name; // Load user from identy if (model.NewPassword == model.RetypeNewPassword) { model.isResulted = true; } else { model.ErrorState = "Something error, some password is null or empty, or passwords are not equal"; } } return View(model); } return View(model); }
public ActionResult ChangeUserPassword() { UsrsModel m = new UsrsModel(); return View(m); }
public ActionResult Login(UsrsModel model) { ViewBag.CaptchaMessage= ""; if (this.IsCaptchaValid("Captcha is not valid")) { if (User.Identity.IsAuthenticated == true) { return Redirect("/Admin/Index"); } else { if (model.UserName != null && model.Password != null) { if (WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe)) { return Redirect("/Admin/Index"); } else { ViewBag.ErrorMessage = "User name or password is incorrect"; return View(); } } else { return View(); } } } else { ViewBag.CaptchaMessage = "Message: captcha is not valid."; return View(); } }