public ActionResult CreateUser()
        {
            var user = new FpmUser();
            if (HttpContext.Request.UrlReferrer != null) user.ReturnUrl = HttpContext.Request.UrlReferrer.ToString();

            return View("CreateUser", user);
        }
 private void CheckUserExists(FpmUser user)
 {
     if (user == null)
     {
         throw new FpmException("FPM user does not exist for " + Name);
     }
 }
        public ActionResult InsertUser(FpmUser user)
        {
            if (!TryUpdateModel(user))
            {
                ViewBag.updateError = "Update Failure";
                return View("CreateUser", user);
            }

            _userRepository.CreateUserItem(user, UserDetails.CurrentUser().Name);

            return RedirectToAction("UserIndex");
        }
        public bool UpdateUserItem(FpmUser user, string loggedInUser)
        {
            try
            {
                transaction = CurrentSession.BeginTransaction();

                CurrentSession.Update(user);

                LogUserChange(user.Id, user.UserName, DateTime.Now, "User Updated", loggedInUser, user.DisplayName, user.IsAdministrator);

                transaction.Commit();

                return true;
            }
            catch (Exception exception)
            {
                HandleException(exception);
            }
            return false;
        }
        public bool CreateUserItem(FpmUser user, string loggedInUser)
        {
            try
            {
                transaction = CurrentSession.BeginTransaction();

                var newUserId = (int)CurrentSession.Save(user);

                LogUserChange(newUserId, user.UserName, DateTime.Now, "NewTarget User Created", loggedInUser, user.DisplayName, user.IsAdministrator);

                transaction.Commit();

                return true;
            }
            catch (Exception exception)
            {
                HandleException(exception);
            }
            return false;
        }
 /// <summary>
 /// New user from user ID.
 /// </summary>
 private UserDetails(int userId)
 {
     _fpmUser = reader.GetUserByUserId(userId);
     InitName(_fpmUser.UserName);
 }
        public ActionResult UpdateUser(FpmUser user)
        {
            _userRepository.UpdateUserItem(user, UserDetails.CurrentUser().Name);

            return RedirectToAction("UserIndex");
        }
 public void TestEmailAddress()
 {
     var user = new FpmUser();
     user.UserName = UserNames.Doris; 
     Assert.AreEqual("*****@*****.**", user.EmailAddress);
 }