Newer
Older

Henning Leutz
committed
<?php
/**
* This file contains package_quiqqer_order_ajax_frontend_basket_toOrderInProcess
*/
use QUI\ERP\Order\Factory;

Henning Leutz
committed
/**
* Saves the basket to the temporary order
*
* @param integer $basketId
* @param string $orderHash
* @return array
*/
QUI::$Ajax->registerFunction(
'package_quiqqer_order_ajax_frontend_basket_toOrderInProcess',
function ($basketId, $orderHash) {
$User = QUI::getUserBySession();
if (QUI::getUsers()->isNobodyUser($User)) {

Henning Leutz
committed
}
$Basket = new QUI\ERP\Order\Basket\Basket($basketId, $User);

Henning Leutz
committed
$OrderHandler = QUI\ERP\Order\Handler::getInstance();

Henning Leutz
committed
if (!empty($orderHash)) {
try {
$Order = QUI\ERP\Order\Handler::getInstance()->getOrderByHash($orderHash);
} catch (QUI\Exception $Exception) {

Henning Leutz
committed
QUI\System\Log::writeDebugException($Exception);

Henning Leutz
committed
}
}
if ($Order === null) {
try {
$Order = $OrderHandler->getLastOrderInProcessFromUser($User);
} catch (QUI\Exception) {
$Order = Factory::getInstance()->createOrderInProcess();

Henning Leutz
committed
}
}
return $Order->getUUID();

Henning Leutz
committed
},
['basketId', 'orderHash']
);