• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/helpers/admin/orderedit.php
  • Класс: BitrixSaleHelpersAdminOrderEdit
  • Вызов: OrderEdit::getLockingMessage
static function getLockingMessage($orderId)
{
	$intLockUserID = 0;
	$strLockTime = '';

	$registry = SaleRegistry::getInstance(SaleRegistry::REGISTRY_TYPE_ORDER);
	/** @var SaleOrder $orderClass */
	$orderClass = $registry->getOrderClassName();

	$r = $orderClass::getLockedStatus($orderId);

	if ($r->isSuccess())
	{
		$lockResult = $r->getData();

		if (array_key_exists('LOCKED_BY', $lockResult) && intval($lockResult['LOCKED_BY']) > 0)
			$intLockUserID = intval($lockResult['LOCKED_BY']);

		if (array_key_exists('DATE_LOCK', $lockResult) && $lockResult['DATE_LOCK'] instanceof BitrixMainTypeDateTime)
			$strLockTime = $lockResult['DATE_LOCK']->toString();
	}

	$strLockUserInfo = $intLockUserID;

	$userIterator = BitrixMainUserTable::getList(array(
			'select' => array('ID', 'LOGIN', 'NAME', 'LAST_NAME', 'SECOND_NAME', 'EMAIL'),
			'filter' => array('=ID' => $intLockUserID)
	));

	if ($arOneUser = $userIterator->fetch())
	{
		$strNameFormat = CSite::GetNameFormat(true);
		$strLockUser = CUser::FormatName($strNameFormat, $arOneUser);
		$strLockUserInfo = ''.$strLockUser.'';
	}

	return Loc::getMessage(
		'SALE_ORDEREDIT_LOCKED',
		array(
			'#ID#' => $strLockUserInfo,
			'#DATE#' => $strLockTime,
		)
	);
}