Exemple #1
0
        public async Task <IActionResult> Activate([FromBody] ActivateUserViewModel viewModel)
        {
            var command = new ActivateUserCommand(new AggregateId(viewModel.Id));
            await _commandQueryDispatcherDecorator.DispatchAsync(command);

            return(Ok());
        }
Exemple #2
0
        public async Task <ActionResult> Confirm(ActivateUserViewModel activateUserViewModel)
        {
            var id = GetLoggedInUserId();

            activateUserViewModel =
                await
                _accountOrchestrator.ActivateUser(new ActivateUserViewModel
            {
                AccessCode = activateUserViewModel.AccessCode,
                UserId     = id
            });

            if (activateUserViewModel.Valid)
            {
                return(Redirect(activateUserViewModel.ReturnUrl));
            }

            var response = new OrchestratorResponse <ActivateUserViewModel>
            {
                Data         = activateUserViewModel,
                FlashMessage = new FlashMessageViewModel
                {
                    ErrorMessages = activateUserViewModel.ErrorDictionary,
                    Severity      = FlashMessageSeverityLevel.Error,
                    Headline      = "Errors to fix",
                    Message       = "Check the following details:"
                }
            };

            return(View("Confirm", response));
        }
Exemple #3
0
        public ActionResult Activate(int id)
        {
            ActivateUserViewModel businessViewModel = new ActivateUserViewModel()
            {
                MenuProductGroups = baseViewModel.GetMenu(),
                MenuServiceGroups = baseViewModel.GetMenuServices(),
                FooterRecentBlog  = baseViewModel.GetFooterRecentBlog(),
                UserCode          = id,
            };

            return(View(businessViewModel));
        }
        public ActionResult Activate(int id, Guid businessCode)
        {
            ActivateUserViewModel businessViewModel = new ActivateUserViewModel()
            {
                MenuProductGroups = baseViewModel.GetMenu(),
                MenuServiceGroups = baseViewModel.GetMenuServices(),
                FooterRecentBlog  = baseViewModel.GetFooterRecentBlog()
            };

            ViewBag.PackageId = new SelectList(db.Packages.Where(current => current.IsActive), "Id", "Title");

            return(View(businessViewModel));
        }
        public async Task ThenTheViewModelValuesArePassedToTheOrchestrator()
        {
            var accessCodeViewModel = new ActivateUserViewModel();

            var actual = await _accountController.ConfirmResend();

            _accountOrchestrator.Verify(x => x.ResendActivationCode(It.Is <ResendActivationCodeViewModel>(p => p.UserId.Equals(UserId))), Times.Once);

            var viewResult = actual as RedirectToRouteResult;

            Assert.IsNotNull(viewResult);
            Assert.That(viewResult.RouteValues["Action"], Is.EqualTo("Confirm"));
        }
Exemple #6
0
        public async Task ThenTheViewModelValuesArePassedToTheOrchestrator()
        {
            //Act
            var accessCode          = "myCode";
            var userId              = "myid";
            var accessCodeViewModel = new ActivateUserViewModel {
                AccessCode = accessCode, UserId = userId
            };
            await _accountController.Confirm(accessCodeViewModel);

            //Assert
            _accountOrchestrator.Verify(x => x.ActivateUser(It.Is <ActivateUserViewModel>(p => p.AccessCode.Equals(accessCode) && p.UserId.Equals(userId))), Times.Once);
        }
Exemple #7
0
        //public async Task<IHttpActionResult> Activate(UserActivation model)
        public IHttpActionResult Activate(ActivateUserViewModel model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }
                //TODO: uniform exception management (FluentValidation). When user is already activated should display a proper message
                CommandWorker.ActivateUser(model);

                return(Ok());
            }
            catch (Exception e)
            {
                return(BadRequest(e.Message));
            }
        }
        public ActionResult Activate(ActivateUserViewModel activeCode)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    User user = db.Users.FirstOrDefault(current => current.Code == activeCode.UserCode && current.Password == activeCode.ActivateCode);

                    if (user == null)
                    {
                        ModelState.AddModelError("invalidCode", "کد وارد شده صحیح نمی باشد");
                    }
                    else
                    {
                        user.IsActive         = true;
                        user.LastModifiedDate = DateTime.Now;

                        Order order = CreateOrder(user.Id);

                        if (order != null)
                        {
                            UpdateQuestionOrderId(order.Id, activeCode.QuestionId);
                            db.SaveChanges();

                            string returnUrl = "/paymentrequest?amount=" + order.TotalAmount + "&orderId=" + order.Id;
                            return(Redirect(returnUrl));
                        }
                    }
                }
            }
            catch (Exception e)
            {
                ModelState.AddModelError("catchError", "مشکلی در پردازش اطلاعات به وجود آمده است. لطفا دوباره وارد سایت شوید.");
            }
            ActivateUserViewModel businessViewModel = new ActivateUserViewModel()
            {
                MenuProductGroups = baseViewModel.GetMenu(),
                MenuServiceGroups = baseViewModel.GetMenuServices(),
                FooterRecentBlog  = baseViewModel.GetFooterRecentBlog()
            };

            return(View(businessViewModel));
        }
Exemple #9
0
        public void Arrange()
        {
            _mediator = new Mock <IMediator>();
            _mediator.Setup(m => m.SendAsync(It.IsAny <ActivateUserCommand>()))
            .ReturnsAsync(new ActivateUserCommandResult
            {
                ReturnUrl = ReturnUrl
            });

            _owinWrapper = new Mock <IOwinWrapper>();
            _logger      = new Mock <ILogger>();

            _accountOrchestrator = new AccountOrchestrator(_mediator.Object, _owinWrapper.Object, _logger.Object);

            _model = new ActivateUserViewModel
            {
                UserId     = UserId,
                AccessCode = AccessCode
            };
        }
Exemple #10
0
        public ActionResult Activate(ActivateUserViewModel activeCode)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    User user = db.Users.FirstOrDefault(current => current.Code == activeCode.UserCode && current.Password == activeCode.ActivateCode);

                    if (user == null)
                    {
                        ModelState.AddModelError("invalidCode", "کد وارد شده صحیح نمی باشد");
                    }
                    else
                    {
                        user.IsActive         = true;
                        user.LastModifiedDate = DateTime.Now;

                        db.SaveChanges();
                        TempData["success"] = "با تشکر. حساب کاربری شما در وب سایت دکتر کامران صحت با موفقیت فعال شد.";

                        activeCode.MenuProductGroups = baseViewModel.GetMenu();
                        activeCode.MenuServiceGroups = baseViewModel.GetMenuServices();
                        activeCode.FooterRecentBlog  = baseViewModel.GetFooterRecentBlog();

                        return(View(activeCode));
                    }
                }
            }
            catch (Exception e)
            {
                ModelState.AddModelError("catchError", "مشکلی در پردازش اطلاعات به وجود آمده است. لطفا دوباره وارد سایت شوید.");
            }
            ActivateUserViewModel businessViewModel = new ActivateUserViewModel()
            {
                MenuProductGroups = baseViewModel.GetMenu(),
                MenuServiceGroups = baseViewModel.GetMenuServices(),
                FooterRecentBlog  = baseViewModel.GetFooterRecentBlog()
            };

            return(View(businessViewModel));
        }
        public virtual async Task <ActivateUserViewModel> ActivateUser(ActivateUserViewModel model)
        {
            try
            {
                var result = await _mediator.SendAsync(new ActivateUserCommand
                {
                    AccessCode = model.AccessCode,
                    UserId     = model.UserId
                });


                model.ReturnUrl = result.ReturnUrl;
                return(model);
            }
            catch (InvalidRequestException ex)
            {
                _logger.Info(ex, ex.Message);


                model.ErrorDictionary = ex.ErrorMessages;
                return(model);
            }
        }
Exemple #12
0
 public void ActivateUser(ActivateUserViewModel model)
 {
     bus.Send(new ActivateUserCommand(model.UserName, model.Key));
 }