Exemplo n.º 1
0
        public async Task <IActionResult> OnPostAsync(string returnUrl = null)
        {
            if (ModelState.IsValid)
            {
                var user = new MSSWebUser
                {
                    UserName       = Input.UserName,
                    FirstName      = Input.FirstName,
                    LastName       = Input.LastName,
                    Email          = Input.Email,
                    EmailConfirmed = true //bypass confirm stuff
                };
                var result = await _userManager.CreateAsync(user, Input.Password);

                if (result.Succeeded)
                {
                    _logger.LogInformation("User created a new account with password.");
                    StatusMessage = "Account Created";
                    return(Redirect("./Login"));
                }
                foreach (var error in result.Errors)
                {
                    ModelState.AddModelError(string.Empty, error.Description);
                }
            }

            // If we got this far, something failed, redisplay form
            return(Page());
        }
Exemplo n.º 2
0
        private static async Task SeedUsers(IServiceProvider serviceProvider, IConfiguration config)
        {
            var UserManager = serviceProvider.GetService <UserManager <MSSWebUser> >();

            if (UserManager.FindByNameAsync("dsmith").Result == null)
            {
                var seedUser = new MSSWebUser
                {
                    UserName       = "******",
                    FirstName      = "Dave",
                    LastName       = "Smith",
                    Email          = "*****@*****.**",
                    EmailConfirmed = true
                };
                var createUser = await UserManager.CreateAsync(seedUser, "JavaMan12!");

                if (createUser.Succeeded)
                {
                    await UserManager.AddToRoleAsync(seedUser, "StandardUser");
                }
            }
            if (UserManager.FindByNameAsync("tsawyer").Result == null)
            {
                var seedUser = new MSSWebUser
                {
                    UserName       = "******",
                    FirstName      = "Tom",
                    LastName       = "Sawyer",
                    Email          = "*****@*****.**",
                    EmailConfirmed = true
                };
                var createUser = await UserManager.CreateAsync(seedUser, "JavaMan12!");

                if (createUser.Succeeded)
                {
                    await UserManager.AddToRoleAsync(seedUser, "StandardUser");
                }
            }
            if (UserManager.FindByNameAsync("bjohnson").Result == null)
            {
                var seedUser = new MSSWebUser
                {
                    UserName       = "******",
                    FirstName      = "Bob",
                    LastName       = "Johnson",
                    Email          = "*****@*****.**",
                    EmailConfirmed = true
                };
                var createUser = await UserManager.CreateAsync(seedUser, "JavaMan12!");

                if (createUser.Succeeded)
                {
                    await UserManager.AddToRoleAsync(seedUser, "StandardUser");
                }
            }
        }
Exemplo n.º 3
0
        private async Task LoadAsync(MSSWebUser user)
        {
            var userName = await _userManager.GetUserNameAsync(user);

            Username = userName;

            Input = new InputModel
            {
                FirstName = user.FirstName,
                LastName  = user.LastName
            };
        }
Exemplo n.º 4
0
        private async Task LoadAsync(MSSWebUser user)
        {
            var email = await _userManager.GetEmailAsync(user);

            Email = email;

            Input = new InputModel
            {
                NewEmail = email,
            };

            IsEmailConfirmed = await _userManager.IsEmailConfirmedAsync(user);
        }
Exemplo n.º 5
0
        private static async Task CreateSupAdmin(IServiceProvider serviceProvider, IConfiguration Configuration)
        {
            var RoleManager = serviceProvider.GetService <RoleManager <IdentityRole> >();
            var UserManager = serviceProvider.GetService <UserManager <MSSWebUser> >();

            string[]       roleNames = { "Administrator", "StandardUser" };
            IdentityResult roleResult;

            foreach (var role in roleNames)
            {
                var roleExist = await RoleManager.RoleExistsAsync(role);

                if (!roleExist)
                {
                    roleResult = await RoleManager.CreateAsync(new IdentityRole(role));
                }
            }
            var _admin = await UserManager.FindByIdAsync(Configuration["SupAdminLogin"]);

            if (_admin == null)
            {
                var supAdmin = new MSSWebUser
                {
                    //this would normally be seeded elsewhere, but for the purposes of this project
                    //and limitations, we had to hard code the user and pass for the base admin.
                    //originally we used secrets and configuration to seed.
                    //same applies for the seeded users below.
                    UserName       = "******",
                    FirstName      = "Uber",
                    LastName       = "Admin",
                    Email          = "*****@*****.**",
                    EmailConfirmed = true
                };

                var createSupAdmin = await UserManager.CreateAsync(supAdmin, Configuration["SupAdminPass"]);

                if (createSupAdmin.Succeeded)
                {
                    await UserManager.AddToRoleAsync(supAdmin, "Administrator");
                }
            }
        }