if ($isRefreshDataAndSaveOperation && !$order->isCanceled() && !$order->isPaid()) { /** @var \Bitrix\Sale\PaymentCollection $paymentCollection */ if (($paymentCollection = $order->getPaymentCollection()) && count($paymentCollection) == 1) { /** @var \Bitrix\Sale\Payment $payment */ if (($payment = $paymentCollection->rewind()) && !$payment->isPaid()) { $payment->setFieldNoDemand('SUM', $order->getPrice()); } } } if ($result->isSuccess()) { $res = $order->save(); if (!$res->isSuccess()) { $result->addErrors($res->getErrors()); } else { if (isset($_POST["BUYER_PROFILE_ID"])) { $profResult = OrderEdit::saveProfileData(intval($_POST["BUYER_PROFILE_ID"]), $order, $_POST, true); if (!$profResult->isSuccess()) { $result->addErrors($profResult->getErrors()); } } if (isset($_POST["save"])) { LocalRedirect("/bitrix/admin/sale_order.php?lang=" . LANGUAGE_ID . GetFilterParams("filter_", false)); } else { LocalRedirect("/bitrix/admin/sale_order_edit.php?lang=" . LANGUAGE_ID . "&ID=" . $order->getId() . GetFilterParams("filter_", false)); } } } } else { $result->addError(new \Bitrix\Main\Entity\EntityError("Can't update order!")); } }
$result->addErrors($payRes->getErrors()); } } if ($isSavingOperation && $result->isSuccess()) { $res = OrderEdit::saveCoupons($order->getUserId(), $_POST); if (!$res) { $result->addError(new \Bitrix\Main\Entity\EntityError("Can't save coupons!")); } $res = $order->save(); if ($res->isSuccess()) { if (isset($_POST["BUYER_PROFILE_ID"])) { $profileId = intval($_POST["BUYER_PROFILE_ID"]); } else { $profileId = 0; } $profResult = OrderEdit::saveProfileData($profileId, $order, $_POST); if (isset($_POST["save"])) { LocalRedirect("/bitrix/admin/sale_order.php?lang=" . LANGUAGE_ID . GetFilterParams("filter_", false)); } else { LocalRedirect("/bitrix/admin/sale_order_edit.php?lang=" . LANGUAGE_ID . "&ID=" . $order->getId() . GetFilterParams("filter_", false)); } } else { $result->addErrors($res->getErrors()); } } } else { $result->addError(new \Bitrix\Main\Entity\EntityError("Can't create order!")); } } elseif ($createWithProducts) { $formData = array("USER_ID" => $_GET["USER_ID"], "SITE_ID" => $_GET["SITE_ID"]); if (isset($_GET["product"]) && is_array($_GET["product"])) {