public async Task <GenericResult <SignInPolicy> > SetSignInPolicy(SignInPolicy policy)
        {
            var result = new GenericResult <SignInPolicy>();

            try
            {
                var validationResults = await _setSignInPolicyEngine.ValidateSignInPolicyForSave(policy);

                if (validationResults.IsFailure)
                {
                    result.IsFailure = true;
                    result.Message   = validationResults.Message;
                    return(result);
                }

                result.Data = await _setSignInPolicyEngine.SetSignInPolicy(policy);

                result.Message = "Success";
            }
            catch (Exception ex)
            {
                result.IsFailure = true;
                result.Exception = ex;
                result.Message   = ex.Message;
            }

            return(result);
        }
Exemple #2
0
        public async Task <SignInPolicy> SetSignInPolicy(SignInPolicy policy)
        {
            var data = await _policyAccessor.SetSignInPolicy(policy);

            SetSignInSharedPolicy(policy);
            return(data);
        }
Exemple #3
0
        private void SetSignInSharedPolicy(SignInPolicy policy, SignInOptions shared = null)
        {
            if (shared == null)
            {
                shared = _sharedPolicyAccessor.GetPolicy().SignIn;
            }

            shared.RequireConfirmedEmail       = policy.RequireConfirmedEmail;
            shared.RequireConfirmedPhoneNumber = policy.RequireConfirmedPhoneNumber;

            _sharedPolicyAccessor.SetSignInPolicy(shared);
        }
        internal static SignInPolicyEntity ToEntity(this SignInPolicy model)
        {
            if (model == null)
            {
                return(null);
            }

            return(new SignInPolicyEntity
            {
                Id = model.Id,
                Created = model.Created,
                CreatedById = model.CreatedById,
                RequireConfirmedEmail = model.RequireConfirmedEmail,
                RequireConfirmedPhoneNumber = model.RequireConfirmedPhoneNumber
            });
        }
        public async Task <SignInPolicy> SetSignInPolicy(SignInPolicy policy)
        {
            using (var ctx = new UserDbContext(_options))
            {
                var ent = await ctx.SignInPolicies.AddAsync(policy.ToEntity());

                var cnt = await ctx.SaveChangesAsync();

                if (cnt < 1 || cnt > 2)
                {
                    throw new Exception("There was an error updating the Sign In Policy record.");
                }

                return(ent.Entity.ToModel());
            }
        }
Exemple #6
0
        public async Task <GenericResult <IEnumerable <string> > > ValidateSignInPolicyForSave(SignInPolicy policy)
        {
            var isNull = policy == null;

            return(await Task.FromResult(new GenericResult <IEnumerable <string> >
            {
                IsFailure = isNull,
                Message = isNull
                    ? "Sign In Policy cannot be null."
                    : string.Empty,
                Data = isNull
                    ? new [] { "Sign In Policy cannot be null." }
                    : new string[0]
            }));
        }