- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/classes/general/task.php
- Класс: CAllTask
- Вызов: CAllTask::CheckFields
static function CheckFields(&$arFields, $ID = false)
{
/** @global CMain $APPLICATION */
global $DB, $APPLICATION;
if($ID>0)
unset($arFields["ID"]);
$arMsg = array();
if(($ID===false || is_set($arFields, "NAME")) && $arFields["NAME"] == '')
$arMsg[] = array("id"=>"NAME", "text"=> GetMessage('MAIN_ERROR_STRING_ID_EMPTY'));
$sql_str = "SELECT T.ID
FROM b_task T
WHERE T.NAME='".$DB->ForSQL($arFields['NAME'])."'";
if ($ID !== false)
$sql_str .= " AND T.ID <> ".intval($ID);
$z = $DB->Query($sql_str, false, "FILE: ".__FILE__."
LINE: ".__LINE__);
if ($r = $z->Fetch())
$arMsg[] = array("id"=>"NAME", "text"=> GetMessage('MAIN_ERROR_STRING_ID_DOUBLE'));
if (isset($arFields['LETTER']))
{
if (preg_match("/[^A-Z]/i", $arFields['LETTER']) || strlen($arFields['LETTER']) > 1)
$arMsg[] = array("id"=>"LETTER", "text"=> GetMessage('MAIN_TASK_WRONG_LETTER'));
$arFields['LETTER'] = strtoupper($arFields['LETTER']);
}
else
{
$arFields['LETTER'] = '';
}
if(!empty($arMsg))
{
$e = new CAdminException($arMsg);
$APPLICATION->ThrowException($e);
return false;
}
if (!isset($arFields['SYS']) || $arFields['SYS'] != "Y")
$arFields['SYS'] = "N";
if (!isset($arFields['BINDING']))
$arFields['BINDING'] = 'module';
return true;
}