• Модуль: fileman
  • Путь к файлу: ~/bitrix/modules/fileman/classes/general/sticker.php
  • Класс: CSticker
  • Вызов: CSticker::Edit
static function Edit($Params)
{
	if (!CSticker::CanDoOperation('sticker_edit'))
		return;

	global $DB, $USER;
	$arFields = $Params['arFields'];

	if(!CSticker::CheckFields($arFields))
		return false;

	$bNew = !isset($arFields['ID']) || $arFields['ID'] <= 0;

	if (!isset($arFields['~DATE_UPDATE']))
		$arFields['~DATE_UPDATE'] = $DB->CurrentTimeFunction();

	if (!isset($arFields['MODIFIED_BY']))
		$arFields['MODIFIED_BY'] = $USER->GetId();

	if (!isset($arFields['SITE_ID']))
		$arFields['SITE_ID'] = $_REQUEST['site_id'];

	$arFields['PAGE_URL'] = str_replace(' ', '%20', $arFields['PAGE_URL']);

	if ($bNew) // Add
	{
		if (!isset($arFields['CREATED_BY']))
			$arFields['CREATED_BY'] = $arFields['MODIFIED_BY'];

		if (!isset($arFields['~DATE_CREATE']))
			$arFields['~DATE_CREATE'] = $arFields['~DATE_UPDATE'];

		unset($arFields['ID']);

		$ID = $DB->Add("b_sticker", $arFields, Array("CONTENT","MARKER_ADJUST"));
	}
	else // Update
	{
		$ID = $arFields['ID'];
		unset($arFields['ID']);

		$strUpdate = $DB->PrepareUpdate("b_sticker", $arFields);
		$strSql =
			"UPDATE b_sticker SET ".
				$strUpdate.
			" WHERE ID=".intval($ID);

		$DB->QueryBind($strSql, Array("CONTENT" => $arFields["CONTENT"], "MARKER_ADJUST" => $arFields["MARKER_ADJUST"]), false,  "File: ".__FILE__."
Line: ".__LINE__); } CSticker::ClearCache(); return $ID; }