Skip to content
Code-Schnipsel Gruppen Projekte
Checkout.php 2,5 KiB
Newer Older
  • Learn to ignore specific revisions
  • <?php
    
    /**
     * This file contains QUI\ERP\Order\Controls\Checkout
     */
    
    namespace QUI\ERP\Order\Controls;
    
    use QUI;
    use QUI\ERP\Order\Handler;
    
    /**
     * Class Address
     * - Tab / Panel for the address
     *
     * @package QUI\ERP\Order\Controls
     */
    class Checkout extends AbstractOrderingStep
    {
    
        /**
         * @var QUI\ERP\Order\Basket\Basket
         */
        protected $Basket;
    
        /**
         * Basket constructor.
         *
         * @param array $attributes
         */
        public function __construct($attributes = array())
        {
            parent::__construct($attributes);
    
    
    Henning Leutz's avatar
    Henning Leutz committed
            $this->addCSSFile(dirname(__FILE__).'/Checkout.css');
    
        /**
         * @return string
         */
        public function getBody()
        {
            $Engine = QUI::getTemplateManager()->getEngine();
            $Orders = Handler::getInstance();
            $Order  = $Orders->getOrderInProcess($this->getAttribute('orderId'));
    
    
            $Articles = $Order->getArticles()->toUniqueList();
            $Articles->hideHeader();
    
    
    Henning Leutz's avatar
    Henning Leutz committed
            if ($Order->getDataEntry('orderedWithCosts') == 1) {
                $Payment = $Order->getPayment();
                $payment = $Order->getDataEntry('orderedWithCostsPayment');
    
                if ($payment == $Payment->getId() && $Payment->getPaymentType()->isGateway()) {
                    $Engine->assign('Gateway', $Payment);
                }
            }
    
    
                'User'            => $Order->getCustomer(),
                'InvoiceAddress'  => $Order->getInvoiceAddress(),
                'DeliveryAddress' => $Order->getDeliveryAddress(),
                'Payment'         => $Order->getPayment(),
                'Articles'        => $Articles
    
    Henning Leutz's avatar
    Henning Leutz committed
            return $Engine->fetch(dirname(__FILE__).'/Checkout.html');
    
        /**
         * @return string
         */
        public function getIcon()
        {
            return 'fa-shopping-cart';
        }
    
    
    
        public function validate()
        {
            // TODO: Implement validate() method.
        }
    
    Henning Leutz's avatar
    Henning Leutz committed
        /**
         * Order was ordered with costs
         */
    
    Henning Leutz's avatar
    Henning Leutz committed
            $Orders  = Handler::getInstance();
            $Order   = $Orders->getOrderInProcess($this->getAttribute('orderId'));
            $Payment = $Order->getPayment();
    
            $Order->setData('orderedWithCosts', 1);
            $Order->setData('orderedWithCostsPayment', $Payment->getId());
            $Order->save();
    
            if (!$Payment->getPaymentType()->isGateway()) {
                $Order->createOrder(QUI::getUsers()->getSystemUser());
            }