public static function getEdit(Order $order, \CUser $user, $showCancel, $showSaveButton) { $data = self::prepareData($order); if ($showCancel) { $bUserCanCancelOrder = \CSaleOrder::CanUserCancelOrder($order->getId(), $user->GetUserGroupArray(), $user->GetID()); } else { $bUserCanCancelOrder = false; } $result = ' <table border="0" cellspacing="0" cellpadding="0" width="100%" class="adm-detail-content-table edit-table"> <tbody> <tr> <td class="adm-detail-content-cell-l" width="40%">' . Loc::getMessage("SALE_ORDER_STATUS_CREATED") . ':</td> <td class="adm-detail-content-cell-r"> <div>' . $data["DATE_INSERT"] . ' <a href="/bitrix/admin/user_edit.php?lang=' . LANGUAGE_ID . '&ID=' . $data["CREATOR_USER_ID"] . '">' . htmlspecialcharsbx($data["CREATOR_USER_NAME"]) . '</a> </div> </td> </tr> <tr> <td class="adm-detail-content-cell-l">' . Loc::getMessage("SALE_ORDER_STATUS_LAST_MODIF") . ':</td> <td class="adm-detail-content-cell-r"><div>' . $data["DATE_UPDATE"] . '</div></td> </tr> <tr> <td class="adm-detail-content-cell-l">' . Loc::getMessage("SALE_ORDER_STATUS_SITE") . ':</td> <td class="adm-detail-content-cell-r"><div>' . htmlspecialcharsbx(\Bitrix\Sale\Helpers\Admin\OrderEdit::getSiteName($order->getSiteId())) . '</div></td> </tr>'; if (strlen($data['SOURCE_NAME']) > 0) { $result .= '<tr>' . '<td class="adm-detail-content-cell-l">' . Loc::getMessage("SALE_ORDER_STATUS_SOURCE") . ':</td>' . '<td class="adm-detail-content-cell-r">' . $data['SOURCE_NAME'] . '</td>' . '</tr>'; } $result .= '<tr> <td class="adm-detail-content-cell-l">' . Loc::getMessage("SALE_ORDER_STATUS") . ':</td> <td class="adm-detail-content-cell-r">' . \Bitrix\Sale\Helpers\Admin\OrderEdit::makeSelectHtml("STATUS_ID", self::getStatusesList($user->GetID(), $data["STATUS_ID"]), $data["STATUS_ID"], false, array("class" => "adm-bus-select", "id" => "STATUS_ID")); if ($showSaveButton) { $result .= ' <span id="save_status_button" class="adm-btn" onclick="BX.Sale.Admin.OrderEditPage.onSaveStatusButton(\'' . $order->getId() . '\',\'STATUS_ID\');"> ' . Loc::getMessage("SALE_ORDER_STATUS_SAVE") . ' </span>'; } $result .= '</td> </tr>'; if ($showCancel && $bUserCanCancelOrder) { $result .= self::getCancelBlockHtml($order, $data); } $result .= '</tbody> </table> '; return $result; }
Loc::loadMessages(__FILE__); $ID = isset($_REQUEST["ID"]) ? intval($_REQUEST["ID"]) : 0; $isSavingOperation = $_SERVER["REQUEST_METHOD"] == "POST" && (isset($_POST["apply"]) || isset($_POST["save"])) && check_bitrix_sessid(); $needFieldsRestore = $_SERVER["REQUEST_METHOD"] == "POST" && !$isSavingOperation; $isCopyingOrderOperation = $ID > 0; $createWithProducts = isset($_GET["USER_ID"]) && isset($_GET["SITE_ID"]) && isset($_GET["product"]); $arUserGroups = $USER->GetUserGroupArray(); $saleModulePermissions = $APPLICATION->GetGroupRight("sale"); if ($saleModulePermissions == "D" || $isSavingOperation && $saleModulePermissions < "U") { $APPLICATION->AuthForm(Loc::getMessage("SALE_OK_ACCESS_DENIED")); } $moduleId = "sale"; Bitrix\Main\Loader::includeModule('sale'); require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/sale/lib/helpers/admin/orderedit.php"; $siteId = isset($_REQUEST["SITE_ID"]) ? htmlspecialcharsbx($_REQUEST["SITE_ID"]) : ""; $siteName = OrderEdit::getSiteName($siteId); $order = null; $result = new \Bitrix\Sale\Result(); DiscountCouponsManager::init(DiscountCouponsManager::MODE_MANAGER, array('userId' => isset($_POST["USER_ID"]) ? $_POST["USER_ID"] : 0)); // try to create order from form data & save it if ($isSavingOperation || $needFieldsRestore) { $order = OrderEdit::createOrderFromForm($_POST, $USER->GetID(), true, $_FILES, $result); if ($order) { if (isset($_POST["SHIPMENT"]) && $_POST["SHIPMENT"]) { $dlvRes = Blocks\OrderShipment::updateData($order, $_POST['SHIPMENT']); if (!$dlvRes->isSuccess()) { $result->addErrors($dlvRes->getErrors()); } } if (isset($_POST["PAYMENT"]) && $_POST["PAYMENT"]) { $payRes = Blocks\OrderPayment::updateData($order, $_POST['PAYMENT'], !$result->isSuccess());