Пример #1
0
        public ConfirmAccountResponse Execute(string code)
        {
            var userId   = Guid.Parse(HttpContext.Current.Session["UserId"].ToString());
            var dbHelper = new DBHelper();
            var user     = dbHelper.GetUserForVerification(userId);

            var response = new ConfirmAccountResponse();

            if ((DateTime.Now - user.Verification.verification_create_data).TotalSeconds > Int64.Parse(WebConfigurationManager.AppSettings["KeyRegistratioLive"]))
            {
                response.IsTimeEnd = true;
                return(response);
            }

            if (user.Verification.verification_key != code)
            {
                response.IsErrorCode = true;
                return(response);
            }

            dbHelper.UpdateAccountActiveStatus(user);
            HttpContext.Current.Session.Clear();

            response.IsSuccess = true;

            return(response);
        }
Пример #2
0
        public async Task <IActionResult> ConfirmAccount(Guid token)
        {
            ConfirmAccountResponse response = await _accountService.ConfirmAccountAsync(token);

            if (response.IsValid())
            {
                return(NoContent());
            }

            return(BadRequest(response.GetErrors()));
        }
Пример #3
0
        public async Task <ConfirmAccountResponse> ConfirmAccountAsync(Guid token)
        {
            ConfirmAccountResponse response = new ConfirmAccountResponse();

            User user = await _unitOfWork.UserRepository.GetUserByTokenConfirmationAsync(token);

            if (user != null)
            {
                user.ActiveUser();

                _unitOfWork.UserRepository.Update(user);
                await _unitOfWork.SaveAsync();
            }
            else
            {
                response.SetError(new ErrorResponse(string.Empty, Msg.InvalidConfirmToken));
            }

            return(response);
        }