Example #1
0
        public User CreateUser(string username, string firstname, string lastname, string displayname, string title, int rateGroup, string passwordHash, string email = null)
        {
            var next_identity = this.UnitOfWork.Session.CreateSQLQuery("SELECT max([identity]) FROM Users").List<int>().Single();

            var user = new User
            {
                Username = username,
                FirstName = firstname,
                LastName = lastname,
                DisplayName = displayname,
                Title = title,
                RateGroup = rateGroup,
                Disabled = false,
                Identity = next_identity + 1,
                PasswordHash = passwordHash,
            };

            if (string.IsNullOrEmpty(email) || ! email.IsValidEmail())
            {
                user.SetDefaultEmailAddress(username);
            }
            else
            {
                user.Email = email;
            }
            
            user.Validate();
            return Persist<User>(user);
        }
Example #2
0
 public Person CreatePersonFor(User user)
 {
     if (user.Person != null)
         throw new InvalidOperationException("User already has a Person object attached");
     var person = new Person
     {
         User = user,
     };
     user.Person = person;
     user.Validate();
     return person;
 }