SteppedCheckout::setupSteps PHP Метод

setupSteps() публичный статический Метод

Set up CheckoutPage_Controller decorators for managing steps
public static setupSteps ( $steps = null )
    public static function setupSteps($steps = null)
    {
        if (!is_array($steps)) {
            //default steps
            $steps = array('membership' => 'CheckoutStep_Membership', 'contactdetails' => 'CheckoutStep_ContactDetails', 'shippingaddress' => 'CheckoutStep_Address', 'billingaddress' => 'CheckoutStep_Address', 'paymentmethod' => 'CheckoutStep_PaymentMethod', 'summary' => 'CheckoutStep_Summary');
        }
        CheckoutPage::config()->steps = $steps;
        if (!CheckoutPage::config()->first_step) {
            reset($steps);
            CheckoutPage::config()->first_step = key($steps);
        }
        //initiate extensions
        Object::add_extension("CheckoutPage_Controller", "SteppedCheckout");
        foreach ($steps as $action => $classname) {
            Object::add_extension("CheckoutPage_Controller", $classname);
        }
    }

Usage Example

 public function setUp()
 {
     parent::setUp();
     ShopTest::setConfiguration();
     //set up steps
     SteppedCheckout::setupSteps();
     //use default steps
     $this->socks = $this->objFromFixture("Product", "socks");
     $this->socks->publish('Stage', 'Live');
     $checkoutpage = $this->objFromFixture("CheckoutPage", "checkout");
     $checkoutpage->publish('Stage', 'Live');
     $this->checkout = new CheckoutPage_Controller();
     $this->checkout->handleRequest(new SS_HTTPRequest("GET", "checkout"), DataModel::inst());
     $this->cart = $this->objFromFixture("Order", "cart");
     ShoppingCart::singleton()->setCurrent($this->cart);
 }
All Usage Examples Of SteppedCheckout::setupSteps