Ejemplo n.º 1
0
        public virtual async Task <AuthResult> ConfirmEmailAsync(TUser user, string token)
        {
            ThrowIfDisposed();
            IUserEmailStore <TUser> emailStore = GetEmailStore();

            if (user == null)
            {
                throw new ArgumentNullException(nameof(user));
            }

            //           if(false)
            //               return AuthResult.Failed(ErrorDescriber.InvalidToken());

            await emailStore.SetEmailConfirmedAsync(user, true, CancellationToken);

            return(await UpdateUserAsync(user));
        }
Ejemplo n.º 2
0
        public virtual async Task <AuthResult> SetEmailAsync(TUser user, string email)
        {
            ThrowIfDisposed();
            IUserEmailStore <TUser> emailStore = GetEmailStore();

            if (user == null)
            {
                throw new ArgumentNullException(nameof(user));
            }

            await emailStore.SetEmailAsync(user, email, CancellationToken);

            await emailStore.SetEmailConfirmedAsync(user, false, CancellationToken);

            await UpdateSecurityStampInternal(user);

            return(await UpdateUserAsync(user));
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> OnPostAsync(string returnUrl = null)
        {
            ReturnUrl = returnUrl;
            if (ModelState.IsValid)
            {
                User user = Activator.CreateInstance <User>();

                await UserStore.SetUserNameAsync(user, Input.Username, CancellationToken.None);

                IUserEmailStore <User> emailStore = UserStore as IUserEmailStore <User>;
                await emailStore.SetEmailAsync(user, Input.Email, CancellationToken.None);

                AuthResult result = await UserManager.CreateAsync(user, Input.Password);

                if (result.Succeeded)
                {
                    Logger.LogInformation(LoggerEventIds.UserCreated, "New user created!");

                    if (UserManager.Options.SignIn.RequireConfirmedAccount)
                    {
                        // DEV ONLY
                        await emailStore.SetEmailConfirmedAsync(user, true, CancellationToken.None);

                        await SignInManager.SignInAsync(user, false);

                        if (returnUrl == null)
                        {
                            return(LocalRedirect("~/"));
                        }
                        else
                        {
                            return(LocalRedirect(returnUrl));
                        }
                    }
                }
            }
            return(Page());
        }
Ejemplo n.º 4
0
 public async Task SetEmailAsConfirmed(MongoIdentityUser user)
 {
     await mongoUserStore.SetEmailConfirmedAsync(user, true, CancellationToken.None);
 }