- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/classes/general/checklist.php
- Класс: CCheckListResult
- Вызов: CCheckListResult::Save
static function Save($arFields = array())
{
global $DB;
$arResult = array();
if ($arFields["STATE"] && is_array($arFields["STATE"]))
$arFields["STATE"] = serialize($arFields["STATE"]);
else
$arResult["ERRORS"][] = GetMessage("ERROR_DATA_RECEIVED");
$currentState = false;
if (!isset($arFields["REPORT"]) || $arFields["REPORT"] != true)
{
$arFields["REPORT"] = "N";
$db_result = $DB->Query("SELECT ID FROM b_checklist WHERE REPORT <> 'Y'");
$currentState = $db_result->Fetch();
}
else
$arFields["REPORT"] = "Y";
if (!empty($arResult["ERRORS"]))
return $arResult;
if ($currentState)
{
$strUpdate = $DB->PrepareUpdate("b_checklist", $arFields);
$strSql = "UPDATE b_checklist SET ".$strUpdate." WHERE ID=".$currentState["ID"];
}
else
{
$arInsert = $DB->PrepareInsert("b_checklist", $arFields);
$strSql ="INSERT INTO b_checklist(".$arInsert[0].", DATE_CREATE) ".
"VALUES(".$arInsert[1].", '".ConvertTimeStamp(time(), "FULL")."')";
}
$arBinds = array(
"STATE" => $arFields["STATE"],
);
$arResult = $DB->QueryBind($strSql, $arBinds);
return $arResult;
}