private void GotoStep(CheckoutStepEnum step) { foreach (var wizardStep in WizardSteps) { wizardStep.IsActive = wizardStep.Step == step; } _currentStep = step; switch (step) { case CheckoutStepEnum.PersonalInfo: StepView = new PersonalInfoStepView() { Data = _personalInfoStepData, WizardBackCommand = WizardBackCommand, WizardNextCommand = WizardNextCommand, }; break; case CheckoutStepEnum.PhoneNumber: StepView = new PhoneNumberStepView() { Data = _phoneNumberStepData, WizardBackCommand = WizardBackCommand, WizardNextCommand = WizardNextCommand, }; break; case CheckoutStepEnum.DeliveryInfo: StepView = new DeliveryInfoStepView() { Data = _deliveryInfoStepData, WizardBackCommand = WizardBackCommand, WizardNextCommand = WizardNextCommand, }; break; case CheckoutStepEnum.OrderConfirmation: StepView = new OrderConfirmationStepView() { WizardBackCommand = WizardBackCommand, WizardNextCommand = WizardNextCommand, }; break; case CheckoutStepEnum.PaymentInfo: StepView = new PaymentInfoStepView() { Data = _paymentInfoStepData, WizardBackCommand = WizardBackCommand, WizardNextCommand = WizardNextCommand, }; break; default: StepView = null; break; } }
public CheckoutWizardStep(CheckoutStepEnum step) { Step = step; StepNumber = (int)step; UpdateState(); }
private void SetWizardStepValue(CheckoutStepEnum step, string value) { var wizardStep = WizardSteps .Where(x => x.Step == step) .FirstOrDefault(); if (wizardStep != null) { wizardStep.Value = value; } }
protected void SelectPane(CheckoutStepEnum step) { cpeShippingAddress.ClientState = "true"; cpeBillingAddress.ClientState = "true"; cpeShippingMethods.ClientState = "true"; //cpePaymentMethods.ClientState = "true"; //cpePaymentInfo.ClientState = "true"; cpeConfirm.ClientState = "true"; cpeShippingAddress.Collapsed = true; cpeBillingAddress.Collapsed = true; cpeShippingMethods.Collapsed = true; //cpePaymentMethods.Collapsed = true; //cpePaymentInfo.Collapsed = true; cpeConfirm.Collapsed = true; btnModifyShippingAddress.Enabled = false; btnModifyBillingAddress.Enabled = false; btnModifyShippingMethod.Enabled = false; //btnModifyPaymentMethod.Enabled = false; //btnModifyPaymentInfo.Enabled = false; //process step selection switch (step) { case CheckoutStepEnum.ShippingAddress: if (this.ShippingService.ShoppingCartRequiresShipping(Cart)) { cpeShippingAddress.Collapsed = false; cpeShippingAddress.ClientState = "false"; ctrlCheckoutShippingAddress.BindData(); } else { SelectPane(CheckoutStepEnum.BillingAddress); } break; case CheckoutStepEnum.BillingAddress: btnModifyShippingAddress.Enabled = true; cpeBillingAddress.ClientState = "false"; cpeBillingAddress.Collapsed = false; ctrlCheckoutBillingAddress.BindData(); break; case CheckoutStepEnum.ShippingMethod: if (this.ShippingService.ShoppingCartRequiresShipping(Cart)) { btnModifyShippingAddress.Enabled = true; btnModifyBillingAddress.Enabled = true; cpeShippingMethods.ClientState = "false"; cpeShippingMethods.Collapsed = false; ctrlCheckoutShippingMethod.BindData(); } else { //SelectPane(CheckoutStepEnum.PaymentMethod); ctrlCheckoutPaymentMethod.BindData(); ctrlCheckoutPaymentInfo.BindData(); SelectPane(CheckoutStepEnum.Confirm); } break; case CheckoutStepEnum.PaymentMethod: btnModifyShippingAddress.Enabled = true; btnModifyBillingAddress.Enabled = true; btnModifyShippingMethod.Enabled = true; //cpePaymentMethods.ClientState = "false"; //cpePaymentMethods.Collapsed = false; //ctrlCheckoutPaymentMethod.BindData(); break; case CheckoutStepEnum.PaymentInfo: bool isPaymentWorkflowRequired = IsPaymentWorkflowRequired(); PaymentMethod paymentMethod = null; if (NopContext.Current.User != null) { paymentMethod = NopContext.Current.User.LastPaymentMethod; } if ((paymentMethod != null && paymentMethod.IsActive) || //validate payment method !isPaymentWorkflowRequired) //or payment workflow is not required { btnModifyShippingAddress.Enabled = true; btnModifyBillingAddress.Enabled = true; btnModifyShippingMethod.Enabled = true; //btnModifyPaymentMethod.Enabled = true; //cpePaymentInfo.ClientState = "false"; //cpePaymentInfo.Collapsed = false; //ctrlCheckoutPaymentInfo.LoadPaymentControl(); //ctrlCheckoutPaymentInfo.BindData(); } else { SelectPane(CheckoutStepEnum.Confirm); } break; case CheckoutStepEnum.Confirm: btnModifyShippingAddress.Enabled = true; btnModifyBillingAddress.Enabled = true; btnModifyShippingMethod.Enabled = true; //btnModifyPaymentMethod.Enabled = true; //btnModifyPaymentInfo.Enabled = true; cpeConfirm.ClientState = "false"; cpeConfirm.Collapsed = false; ctrlCheckoutConfirm.BindData(); OrderSummaryControl.BindData(); break; default: throw new NopException("Not supported checkout step"); } }
protected void SelectPane(CheckoutStepEnum step) { cpeShippingAddress.ClientState = "true"; cpeBillingAddress.ClientState = "true"; cpeShippingMethods.ClientState = "true"; cpePaymentMethods.ClientState = "true"; cpePaymentInfo.ClientState = "true"; cpeConfirm.ClientState = "true"; cpeShippingAddress.Collapsed = true; cpeBillingAddress.Collapsed = true; cpeShippingMethods.Collapsed = true; cpePaymentMethods.Collapsed = true; cpePaymentInfo.Collapsed = true; cpeConfirm.Collapsed = true; btnModifyShippingAddress.Enabled = false; btnModifyBillingAddress.Enabled = false; btnModifyShippingMethod.Enabled = false; btnModifyPaymentMethod.Enabled = false; btnModifyPaymentInfo.Enabled = false; //process step selection switch(step) { case CheckoutStepEnum.ShippingAddress: if(ShippingManager.ShoppingCartRequiresShipping(Cart)) { cpeShippingAddress.Collapsed = false; cpeShippingAddress.ClientState = "false"; ctrlCheckoutShippingAddress.BindData(); } else { SelectPane(CheckoutStepEnum.BillingAddress); } break; case CheckoutStepEnum.BillingAddress: btnModifyShippingAddress.Enabled = true; cpeBillingAddress.ClientState = "false"; cpeBillingAddress.Collapsed = false; ctrlCheckoutBillingAddress.BindData(); break; case CheckoutStepEnum.ShippingMethod: if(ShippingManager.ShoppingCartRequiresShipping(Cart)) { btnModifyShippingAddress.Enabled = true; btnModifyBillingAddress.Enabled = true; cpeShippingMethods.ClientState = "false"; cpeShippingMethods.Collapsed = false; ctrlCheckoutShippingMethod.BindData(); } else { SelectPane(CheckoutStepEnum.PaymentMethod); } break; case CheckoutStepEnum.PaymentMethod: btnModifyShippingAddress.Enabled = true; btnModifyBillingAddress.Enabled = true; btnModifyShippingMethod.Enabled = true; cpePaymentMethods.ClientState = "false"; cpePaymentMethods.Collapsed = false; ctrlCheckoutPaymentMethod.BindData(); break; case CheckoutStepEnum.PaymentInfo: PaymentMethod paymentMethod = null; if(NopContext.Current.User != null) { paymentMethod = NopContext.Current.User.LastPaymentMethod; } if(paymentMethod != null && paymentMethod.IsActive) { btnModifyShippingAddress.Enabled = true; btnModifyBillingAddress.Enabled = true; btnModifyShippingMethod.Enabled = true; btnModifyPaymentMethod.Enabled = true; cpePaymentInfo.ClientState = "false"; cpePaymentInfo.Collapsed = false; ctrlCheckoutPaymentInfo.LoadPaymentControl(); ctrlCheckoutPaymentInfo.BindData(); } else { SelectPane(CheckoutStepEnum.PaymentMethod); } break; case CheckoutStepEnum.Confirm: btnModifyShippingAddress.Enabled = true; btnModifyBillingAddress.Enabled = true; btnModifyShippingMethod.Enabled = true; btnModifyPaymentMethod.Enabled = true; btnModifyPaymentInfo.Enabled = true; cpeConfirm.ClientState = "false"; cpeConfirm.Collapsed = false; ctrlCheckoutConfirm.BindData(); OrderSummaryControl.BindData(); break; default: throw new NopException("Not supported checkout step"); } }
protected void SelectPane(CheckoutStepEnum step) { cpeShippingAddress.ClientState = "true"; cpeBillingAddress.ClientState = "true"; cpeShippingMethods.ClientState = "true"; cpePaymentMethods.ClientState = "true"; cpePaymentInfo.ClientState = "true"; cpeConfirm.ClientState = "true"; cpeShippingAddress.Collapsed = true; cpeBillingAddress.Collapsed = true; cpeShippingMethods.Collapsed = true; cpePaymentMethods.Collapsed = true; cpePaymentInfo.Collapsed = true; cpeConfirm.Collapsed = true; btnModifyShippingAddress.Enabled = false; btnModifyBillingAddress.Enabled = false; btnModifyShippingMethod.Enabled = false; btnModifyPaymentMethod.Enabled = false; btnModifyPaymentInfo.Enabled = false; //process step selection switch (step) { case CheckoutStepEnum.ShippingAddress: if (this.ShippingService.ShoppingCartRequiresShipping(Cart)) { cpeShippingAddress.Collapsed = false; cpeShippingAddress.ClientState = "false"; ctrlCheckoutShippingAddress.BindData(); } else { SelectPane(CheckoutStepEnum.BillingAddress); } break; case CheckoutStepEnum.BillingAddress: btnModifyShippingAddress.Enabled = true; cpeBillingAddress.ClientState = "false"; cpeBillingAddress.Collapsed = false; ctrlCheckoutBillingAddress.BindData(); break; case CheckoutStepEnum.ShippingMethod: if (this.ShippingService.ShoppingCartRequiresShipping(Cart)) { btnModifyShippingAddress.Enabled = true; btnModifyBillingAddress.Enabled = true; cpeShippingMethods.ClientState = "false"; cpeShippingMethods.Collapsed = false; ctrlCheckoutShippingMethod.BindData(); } else { SelectPane(CheckoutStepEnum.PaymentMethod); } break; case CheckoutStepEnum.PaymentMethod: btnModifyShippingAddress.Enabled = true; btnModifyBillingAddress.Enabled = true; btnModifyShippingMethod.Enabled = true; cpePaymentMethods.ClientState = "false"; cpePaymentMethods.Collapsed = false; ctrlCheckoutPaymentMethod.BindData(); break; case CheckoutStepEnum.PaymentInfo: bool isPaymentWorkflowRequired = IsPaymentWorkflowRequired(); PaymentMethod paymentMethod = null; if (NopContext.Current.User != null) { paymentMethod = NopContext.Current.User.LastPaymentMethod; } if ((paymentMethod != null && paymentMethod.IsActive) || //validate payment method !isPaymentWorkflowRequired) //or payment workflow is not required { btnModifyShippingAddress.Enabled = true; btnModifyBillingAddress.Enabled = true; btnModifyShippingMethod.Enabled = true; btnModifyPaymentMethod.Enabled = true; cpePaymentInfo.ClientState = "false"; cpePaymentInfo.Collapsed = false; ctrlCheckoutPaymentInfo.LoadPaymentControl(); ctrlCheckoutPaymentInfo.BindData(); } else { SelectPane(CheckoutStepEnum.PaymentMethod); } break; case CheckoutStepEnum.Confirm: btnModifyShippingAddress.Enabled = true; btnModifyBillingAddress.Enabled = true; btnModifyShippingMethod.Enabled = true; btnModifyPaymentMethod.Enabled = true; btnModifyPaymentInfo.Enabled = true; cpeConfirm.ClientState = "false"; cpeConfirm.Collapsed = false; ctrlCheckoutConfirm.BindData(); OrderSummaryControl.BindData(); break; default: throw new NopException("Not supported checkout step"); } }