Ejemplo n.º 1
0
        public async Task <IActionResult> TryCreate(Model.Input.CreateAccount model)
        {
            if (!ModelState.IsValid)
            {
                return(View("CreateAccount", model));
            }
            else
            {
                var userRepo    = (Repository.IUser) this._services.GetService(typeof(Repository.IUser));
                var loginExists = await userRepo.LoginExists(model.UserName);

                if (loginExists)
                {
                    this.SetFlashError("That user name is unavailable.");
                    this._logger.LogWarning($"An attempt to create duplicate login name was made for '{model.UserName}'.");
                    return(View("CreateAccount", model));
                }

                var user = new Entity.User();
                user.Login    = model.UserName;
                user.Password = model.Password;
                await userRepo.Add(user);

                var loginOk = await DoLogin(user.UserId);

                return(RedirectToAction("Index", "Storefront"));
            }
        }
Ejemplo n.º 2
0
        public IActionResult CreateAccountIndex()
        {
            var model = new Model.Input.CreateAccount();

            return(View("CreateAccount", model));
        }