• Модуль: meeting
  • Путь к файлу: ~/bitrix/modules/meeting/classes/general/meeting_item_instance.php
  • Класс: CAllMeetingInstance
  • Вызов: CAllMeetingInstance::Update
static function Update($ID, $arFields)
{
	global $DB;

	if ($ID <= 0)
		return false;

	$arFields['ID'] = $ID;

	$e = GetModuleEvents('meeting', 'OnBeforeMeetingInstanceUpdate');
	while ($a = $e->Fetch())
	{
		if (false === ExecuteModuleEventEx($a, array(&$arFields)))
		{
			return false;
		}
	}

	if (!self::CheckFields('UPDATE', $arFields))
		return false;

	$strUpdate = $DB->PrepareUpdate('b_meeting_instance', $arFields);
	$bSkipUpdate = $strUpdate == '';

	if (!$bSkipUpdate)
	{
		$query = 'UPDATE b_meeting_instance SET '.$strUpdate.' WHERE ID=''.intval($ID).''';

		$dbRes = $DB->Query($query);
	}

	if ($bSkipUpdate || $dbRes)
	{
		if (isset($arFields['RESPONSIBLE']))
		{
			$arFields['INSTANCE_ID'] = $ID;
			self::SetResponsible($arFields, $arFields['RESPONSIBLE']);
		}

		$e = GetModuleEvents('meeting', 'OnAfterMeetingInstanceUpdate');
		while ($a = $e->Fetch())
			ExecuteModuleEventEx($a, array($ID, $arFields));

		return $ID;
	}

	return false;
}