public async Task <IActionResult> Buy(int editionId, EditionPaymentType editionPaymentType, int?subscriptionStartType) //subscriptionStartType is used as int instead of SubscriptionStartType because MVC can not bind nullable enums
        {
            var edition = await _tenantRegistrationAppService.GetEdition(editionId);

            var model = new PaymentViewModel
            {
                Edition            = edition,
                EditionPaymentType = editionPaymentType
            };

            if (subscriptionStartType.HasValue)
            {
                model.SubscriptionStartType = (SubscriptionStartType)subscriptionStartType.Value;
            }

            return(View("Index", model));
        }
        public async Task <ActionResult> Register(int?editionId, SubscriptionStartType?subscriptionStartType = null)
        {
            CheckTenantRegistrationIsEnabled();

            var model = new TenantRegisterViewModel
            {
                PasswordComplexitySetting = await _passwordComplexitySettingStore.GetSettingsAsync(),
                SubscriptionStartType     = subscriptionStartType,
                EditionPaymentType        = EditionPaymentType.NewRegistration
            };

            if (editionId.HasValue)
            {
                model.EditionId = editionId.Value;
                model.Edition   = await _tenantRegistrationAppService.GetEdition(editionId.Value);
            }

            ViewBag.UseCaptcha = UseCaptchaOnRegistration();

            return(View(model));
        }
Пример #3
0
        public async Task <IActionResult> Buy(int tenantId, int editionId, int?subscriptionStartType, int?editionPaymentType)
        {
            SetTenantIdCookie(tenantId);

            var edition = await _tenantRegistrationAppService.GetEdition(editionId);

            var model = new BuyEditionViewModel
            {
                Edition         = edition,
                PaymentGateways = _paymentAppService.GetActiveGateways(new GetActiveGatewaysInput())
            };

            if (editionPaymentType.HasValue)
            {
                model.EditionPaymentType = (EditionPaymentType)editionPaymentType.Value;
            }

            if (subscriptionStartType.HasValue)
            {
                model.SubscriptionStartType = (SubscriptionStartType)subscriptionStartType.Value;
            }

            return(View("Buy", model));
        }