diff --git a/ajax/frontend/basket/removePos.php b/ajax/frontend/basket/removePos.php index 4320d81352c58925ae708d10b9a0f16f60d9faae..43c1a41455e19b7c59e130d2fb0d1ea8055e2e04 100644 --- a/ajax/frontend/basket/removePos.php +++ b/ajax/frontend/basket/removePos.php @@ -15,7 +15,7 @@ function ($basketId, $pos) { $User = QUI::getUserBySession(); $Basket = new QUI\ERP\Order\Basket\Basket($basketId, $User); - $Basket->getProducts()?->removePos($pos); + $Basket->getProducts()->removePos($pos); QUI::getEvents()->fireEvent( 'quiqqerOrderBasketRemovePos', diff --git a/ajax/frontend/order/getOrderControl.php b/ajax/frontend/order/getOrderControl.php index 0c8b788491ffa72c780fc8aae83f15fc8a75f0e1..1cfc1d748462acb03bb074b41a5fd1e8fd328f12 100644 --- a/ajax/frontend/order/getOrderControl.php +++ b/ajax/frontend/order/getOrderControl.php @@ -20,10 +20,15 @@ function ($orderHash) { $Output = new QUI\Output(); $result = $OrderProcess->create(); $css = QUI\Control\Manager::getCSS(); + $View = null; + + if (method_exists($OrderProcess->getOrder(), 'getView')) { + $View = $OrderProcess->getOrder()->getView(); + } return [ 'html' => $Output->parse($css . $result), - 'data' => $OrderProcess->getOrder()->getView()->toArray() + 'data' => $View?->toArray() ]; }, ['orderHash'] diff --git a/ajax/frontend/order/getStep.php b/ajax/frontend/order/getStep.php index b7cd5c68a623de89988cc0b68978fe2c7b0759f7..88b4091701599ec623af4940db2b7448c7af654f 100644 --- a/ajax/frontend/order/getStep.php +++ b/ajax/frontend/order/getStep.php @@ -28,11 +28,6 @@ function ($orderId, $step, $orderHash, $basketEditable) { ]); $Current = $OrderProcess->getCurrentStep(); - - if (!$Current) { - $Current = $OrderProcess->getFirstStep(); - } - $OrderProcess->setAttribute('step', $Current->getName()); $html = $OrderProcess->create(); diff --git a/ajax/frontend/order/processing/savePayment.php b/ajax/frontend/order/processing/savePayment.php index 050595937f2a885aa4e6e3b0d30d40a23d625d71..f44b1511361290c548679ed846bd4fddc26db4fb 100644 --- a/ajax/frontend/order/processing/savePayment.php +++ b/ajax/frontend/order/processing/savePayment.php @@ -22,12 +22,13 @@ function ($orderHash, $payment) { 'step' => $Processing->getName() ]); - /* @var $Processing Processing */ $Processing = $OrderProcess->getCurrentStep(); $Order = $OrderProcess->getOrder(); - $Processing->setAttribute('Order', $Order); - $Processing->savePayment($payment); + + if (method_exists($Processing, 'savePayment')) { + $Processing->savePayment($payment); + } }, ['orderHash', 'payment'] ); diff --git a/ajax/frontend/order/reload.php b/ajax/frontend/order/reload.php index 16b8c12b7579396e4b709cb70ab5b83141f8e616..80021bd3240dc01658fea8de40a45d091b0b31a9 100644 --- a/ajax/frontend/order/reload.php +++ b/ajax/frontend/order/reload.php @@ -25,10 +25,6 @@ function ($orderId, $step, $orderHash, $basketEditable) { $Order = $OrderProcess->getOrder(); $Current = $OrderProcess->getCurrentStep(); - if (!$Current) { - $Current = $OrderProcess->getFirstStep(); - } - $OrderProcess->setAttribute('step', $Current->getName()); $OrderProcess->setAttribute('orderHash', $Order->getUUID()); diff --git a/ajax/frontend/order/send.php b/ajax/frontend/order/send.php index 9779b71fc7f12dee384ab3228c505661ca67a4e4..edbd4142e68aa2de5db6a8c56e0be29bd3275955 100644 --- a/ajax/frontend/order/send.php +++ b/ajax/frontend/order/send.php @@ -32,11 +32,7 @@ function ($current, $orderHash, $formData) { ]); $result = $OrderProcess->create(); - $current = false; - - if ($OrderProcess->getCurrentStep()) { - $current = $OrderProcess->getCurrentStep()->getName(); - } + $current = $OrderProcess->getCurrentStep()->getName(); return [ 'html' => $result, diff --git a/ajax/frontend/order/setQuantity.php b/ajax/frontend/order/setQuantity.php index 7ef1f249e5bd7cddc2d96f1899c58c9da577bae8..885045dd772a66d6baf6458631b0bea261e5271d 100644 --- a/ajax/frontend/order/setQuantity.php +++ b/ajax/frontend/order/setQuantity.php @@ -30,7 +30,7 @@ function ($orderHash, $pos, $quantity) { $Products = $Basket->getProducts(); $products = $Products->getProducts(); // get as array - if (isset($products[$pos])) { + if (isset($products[$pos]) && method_exists($products[$pos], 'setQuantity')) { $products[$pos]->setQuantity($quantity); }