Exemple #1
0
        /// <summary>
        /// Inserts a new User
        /// </summary>
        /// <returns>the inserted user's id</returns>
        public override void Insert(User user)
        {
            if (user == null)
            {
                throw new ArgumentNullException("user");
            }

            if (Exists(user.Username))
            {
                throw new Exception(String.Format("User {0} already exists.", user.Username));
            }

            // insert the user
            DAL.User newUser = new DAL.User
            {
                Enabled  = user.Enabled,
                Password = user.Password,
                Role     = ((short)user.Role),
                Username = user.Username
            };
            newUser.Save();

            // add user profile
            _profileController.Insert(newUser.Id, user.FirstName, user.LastName,
                                      user.Address, user.City, user.State, user.ZipCode, user.PhoneNumber, user.Email);

            // update the passed in user object
            user.ID = newUser.Id;

            // assign the user to a manager
            if (user.ManagerID > 0)
            {
                AssignManager(user.ID, user.ManagerID);
            }
        }