• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/group.php
  • Класс: CAllGroup
  • Вызов: CAllGroup::Delete
static function Delete($ID)
{
	/** @global CMain $APPLICATION */
	global $APPLICATION, $DB, $CACHE_MANAGER;

	$ID = intval($ID);
	if($ID<=2)
		return false;

	@set_time_limit(600);

	foreach(GetModuleEvents("main", "OnBeforeGroupDelete", true) as $arEvent)
	{
		if(ExecuteModuleEventEx($arEvent, array($ID))===false)
		{
			$err = GetMessage("MAIN_BEFORE_DEL_ERR1").' '.$arEvent['TO_NAME'];
			if($ex = $APPLICATION->GetException())
				$err .= ': '.$ex->GetString();
			$APPLICATION->throwException($err);
			return false;
		}
	}

	foreach(GetModuleEvents("main", "OnGroupDelete", true) as $arEvent)
		ExecuteModuleEventEx($arEvent, array($ID));

	CMain::DelGroupRight("",array($ID));

	if(!$DB->Query("DELETE FROM b_user_group WHERE GROUP_ID=".$ID." AND GROUP_ID>2", true))
		return false;
	CUser::clearUserGroupCache();

	$res = $DB->Query("DELETE FROM b_group WHERE ID=".$ID." AND ID>2", true);

	if (defined("CACHED_b_group") && CACHED_b_group !== false)
		$CACHE_MANAGER->CleanDir("b_group");

	return $res;
}