- Модуль: vote
- Путь к файлу: ~/bitrix/modules/vote/classes/general/answer.php
- Класс: CAllVoteAnswer
- Вызов: CAllVoteAnswer::Add
static function Add($arFields)
{
global $DB;
if (!CVoteAnswer::CheckFields("ADD", $arFields))
return false;
/***************** Event onBeforeVoteAnswerAdd *********************/
foreach (GetModuleEvents("vote", "onBeforeVoteAnswerAdd", true) as $arEvent)
if (ExecuteModuleEventEx($arEvent, array(&$arFields)) === false)
return false;
/***************** /Event ******************************************/
if (empty($arFields))
return false;
if (
array_key_exists("IMAGE_ID", $arFields) &&
is_array($arFields["IMAGE_ID"])
)
{
$arFields["IMAGE_ID"]["MODULE_ID"] = "vote";
CFile::SaveForDB($arFields, "IMAGE_ID", "vote");
}
if ($DB->type == "ORACLE")
$arFields["ID"] = $DB->NextID("SQ_B_VOTE_ANSWER");
$arInsert = $DB->PrepareInsert("b_vote_answer", $arFields);
$DB->QueryBind("INSERT INTO b_vote_answer (".$arInsert[0].", TIMESTAMP_X) VALUES(".$arInsert[1].", ".$DB->GetNowFunction().")", array("MESSAGE" => $arFields["MESSAGE"]), false);
$ID = intval($DB->type == "ORACLE" ? $arFields["ID"] : $DB->LastID());
/***************** Event onAfterVoteAnswerAdd **********************/
foreach (GetModuleEvents("vote", "onAfterVoteAnswerAdd", true) as $arEvent)
ExecuteModuleEventEx($arEvent, array($ID, $arFields));
/***************** /Event ******************************************/
return $ID;
}