- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/classes/general/crm_field_multi.php
- Класс: \CCrmFieldMulti
- Вызов: CCrmFieldMulti::CheckFields
public function CheckFields($arFields, $bCheckStatusId = true)
{
$aMsg = array();
if (!is_set($arFields, 'TYPE_ID') || !is_set($arFields, 'VALUE_TYPE'))
$aMsg[] = array('id'=>'VALUE', 'text'=>GetMessage('CRM_MF_ERR_GET_NAME'));
else
{
$fieldName = self::GetEntityNameByComplex($arFields['TYPE_ID'].'_'.$arFields['VALUE_TYPE']);
if (is_set($arFields, 'VALUE') && trim($arFields['VALUE']) == '')
$aMsg[] = array('id'=>'VALUE', 'text'=>GetMessage('CRM_MF_ERR_VALUE', array('#FIELD_NAME#' => $fieldName)));
if (is_set($arFields, 'VALUE') && mb_strlen($arFields['VALUE']) > 250)
$aMsg[] = array('id'=>'VALUE', 'text'=>GetMessage('CRM_MF_ERR_VALUE_STRLEN', array('#FIELD_NAME#' => $fieldName)));
if (is_set($arFields, 'TYPE_ID') && trim($arFields['TYPE_ID']) == '')
$aMsg[] = array('id'=>'TYPE_ID', 'text'=>GetMessage('CRM_MF_ERR_TYPE_ID', array('#FIELD_NAME#' => $fieldName)));
if (is_set($arFields, 'ENTITY_ID') && trim($arFields['ENTITY_ID']) == '')
$aMsg[] = array('id'=>'ENTITY_ID', 'text'=>GetMessage('CRM_MF_ERR_ENTITY_ID', array('#FIELD_NAME#' => $fieldName)));
if (is_set($arFields, 'ELEMENT_ID') && intval($arFields['ELEMENT_ID']) <= 0)
$aMsg[] = array('id'=>'ELEMENT_ID', 'text'=>GetMessage('CRM_MF_ERR_ELEMENT_ID', array('#FIELD_NAME#' => $fieldName)));
if ($arFields['TYPE_ID'] == 'EMAIL' && !check_email($arFields['VALUE']))
$aMsg[] = array('id'=>'ELEMENT_ID', 'text'=>GetMessage('CRM_MF_ERR_EMAIL_VALUE', array('#FIELD_NAME#' => $fieldName)));
}
if (!empty($aMsg))
{
$e = new CAdminException($aMsg);
$GLOBALS['APPLICATION']->ThrowException($e);
return false;
}
return true;
}