...Человеческий поиск в разработке...
- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/controller/activity/configurable.php
- Класс: Bitrix\Crm\Controller\Activity\Configurable
- Вызов: Configurable::validateFields
private function validateFields(?array $fields): Result { $result = new Result(); $allowedBooleanValues = array_merge( self::VALID_TRUE_VALUES, self::VALID_FALSE_VALUES ); if (isset($fields['completed']) && !in_array($fields['completed'], $allowedBooleanValues, true)) { $this->addWrongFieldValueError('completed', $result); } if (isset($fields['isIncomingChannel']) && !in_array($fields['isIncomingChannel'], $allowedBooleanValues, true)) { $this->addWrongFieldValueError('isIncomingChannel', $result); } if (isset($fields['isIncomingChannel']) && isset($fields['deadline']) && !empty($fields['deadline']) && $this->castToBool($fields['isIncomingChannel'])) { $result->addError(new Error( (string)Loc::getMessage('CRM_CONFIGURABLE_REST_APP_INCOMING_NO_DEADLINE'), 'INCOMING_ACTIVITY_CAN_NOT_BE_WITH_DEADLINE' )); } if (isset($fields['pingOffsets'])) { if (!is_array($fields['pingOffsets'])) { $this->addWrongFieldValueError('pingOffsets', $result); } else { foreach ($fields['pingOffsets'] as $index => $pingOffsetValue) { if (!is_scalar($pingOffsetValue) || (int)$pingOffsetValue < 0) { $this->addWrongFieldValueError("pingOffsets[$index]", $result); } } } } if (isset($fields['responsibleId']) && (int)$fields['responsibleId'] <= 0) { $this->addWrongFieldValueError('responsibleId', $result); } if ( isset($fields['badgeCode']) && $fields['badgeCode'] !== '' && !\Bitrix\Crm\Badge\Model\CustomBadgeTable::query() ->setSelect(['ID']) ->where('CODE', (string)$fields['badgeCode']) ->setLimit(1) ->fetch() ) { $this->addWrongFieldValueError('badgeCode', $result); } return $result; }