...Человеческий поиск в разработке...
- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/webform/entity.php
- Класс: Bitrix\Crm\WebForm\Entity
- Вызов: Entity::getSchemesByInvoice
static function getSchemesByInvoice($selectedSchemeId = null, $allowedEntitySchemes = null) { $result = [ 'HAS_DEAL' => false, 'HAS_DYNAMIC' => false, 'HAS_INVOICE' => false, 'SELECTED_DESCRIPTION' => '', 'BY_INVOICE' => [], 'BY_NON_INVOICE' => [], ]; $schemes = self::getSchemes(); $previousSchemeId = null; foreach ($schemes as $schemeId => $scheme) { if (!$selectedSchemeId) { $selectedSchemeId = $schemeId; } $scheme['ID'] = $schemeId; $scheme['SELECTED'] = false; $scheme['DISABLED'] = (!empty($allowedEntitySchemes) && !in_array($schemeId, $allowedEntitySchemes)); $hasDeal = in_array(\CCrmOwnerType::DealName, $scheme['ENTITIES']); $hasInvoice = in_array(\CCrmOwnerType::InvoiceName, $scheme['ENTITIES']); $searchSchemeId = $hasInvoice ? $previousSchemeId : $schemeId; $section = $hasInvoice ? 'BY_INVOICE' : 'BY_NON_INVOICE'; $result[$section][$searchSchemeId] = $scheme; $previousSchemeId = $schemeId; if ($schemeId == $selectedSchemeId) { $result['SELECTED_ID'] = $selectedSchemeId; $result['HAS_DEAL'] = $hasDeal; $result['HAS_INVOICE'] = $hasInvoice; $result['HAS_DYNAMIC'] = $scheme['DYNAMIC']; $result['BY_NON_INVOICE'][$searchSchemeId]['SELECTED'] = true; $result['SELECTED_DESCRIPTION'] = $scheme['DESCRIPTION']; } } return $result; }