Ejemplo n.º 1
0
 /// <summary>
 /// Adds a new user to this blog
 /// </summary>
 /// <param name="user">The user to allow access to</param>
 public void AddUser(User user)
 {
     if (!this.Users.Contains(user))
     {
         this.Users.Add(user);
     }
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Configure a new blog application with a default admin user
        /// </summary>
        /// <param name="sitename">The name of the blog</param>
        /// <param name="title">The title of the blog</param>
        /// <param name="name">The name of the default user</param>
        /// <param name="email">The email of the user</param>
        /// <param name="password">The password</param>
        /// <returns></returns>
        public ServiceResponse<bool> Configure(string sitename, string title, string name, string email, string password)
        {
            Func<bool> func = delegate
            {
                var blog = new Blog()
                {
                    SiteName = sitename,
                    Title = title
                };

                var salt = DevOne.Security.Cryptography.BCrypt.BCryptHelper.GenerateSalt();
                var hash = DevOne.Security.Cryptography.BCrypt.BCryptHelper.HashPassword(password, salt);
                var user = new User()
                {
                    DisplayName = name,
                    Email = email,
                    PasswordHash = hash
                };
                blog.AddUser(user);

                return context.Save(blog).Id > 0;
            };
            return this.Execute(func);
        }