• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/smile.php
  • Класс: CSmileSet
  • Вызов: CSmileSet::add
static function add($arFields)
{
	global $DB, $CACHE_MANAGER;

	$arInsert = array();

	$arFields['PARENT_ID'] = intval($arFields['PARENT_ID']);
	$arInsert['PARENT_ID'] = $arFields['PARENT_ID'];

	$arFields['TYPE'] = isset($arFields['TYPE']) && $arFields['TYPE'] == self::TYPE_GALLERY? self::TYPE_GALLERY: self::TYPE_SET;

	if ($arFields['TYPE'] != self::TYPE_GALLERY && !$arFields['PARENT_ID'] )
		return false;

	if (isset($arFields['STRING_ID']))
		$arInsert['STRING_ID'] = $arFields['STRING_ID'];

	if (isset($arFields['SORT']))
		$arInsert['SORT'] = intval($arFields['SORT']);

	$arInsert['TYPE'] = $arFields['TYPE'];

	$setId = intval($DB->Add("b_smile_set", $arInsert));

	if ($setId && isset($arFields['LANG']))
	{
		$arLang = Array();
		if (is_array($arFields['LANG']))
			$arLang = $arFields['LANG'];
		else
			$arLang[LANG] = $arFields['LANG'];

		foreach ($arLang as $lang => $name)
		{
			$arInsert = array(
				'TYPE' => $arFields['TYPE'],
				'SID' => $setId,
				'LID' => htmlspecialcharsbx($lang),
				'NAME' => $name,
			);
			$DB->Add("b_smile_lang", $arInsert);
		}
	}

	self::setLastUpdate();
	$CACHE_MANAGER->CleanDir("b_smile");

	return $setId;
}