Exemplo n.º 1
0
        public async Task Accept(bool accepted)
        {
            if (!accepted)
            {
                throw new BadRequestException("MUST_BE_ACCEPTED");
            }

            var securityUserId = await _currentSecurityUserProvider.GetSecurityUserIdAsync(User);

            await _userToSService.AcceptAsync(securityUserId);
        }
        public async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next)
        {
            var requestMethod = _requestMethodProviderFactory.Create(context.HttpContext);
            var endpoint      = _endpointProvider.Create(context.ActionDescriptor as ControllerActionDescriptor);

            if (!requestMethod.IsOptionsRequest() && endpoint.IsProtected())
            {
                var securityUserId = await _currentSecurityUserProvider.GetSecurityUserIdAsync(context.HttpContext.User);

                var isAccepted = await _userToSService.IsAcceptedAsync(securityUserId);

                if (!isAccepted)
                {
                    context.Result = new BadRequestObjectResult("TOS_IS_NOT_ACCEPTED");

                    return;
                }
            }

            await next();
        }