Документация для разработчиков
Темная тема

OnBeforeLanguageDelete

Описание и параметры

bool
функция-обработчик(
	string language_id
);
Событие "OnBeforeLanguageDelete" вызывается перед удалением языка. Как правило задачи обработчика данного события - разрешить или запретить удаление языка.

Параметры

ПараметрОписание
language_id ID удаляемого языка.

Возвращаемое значение

Для отмены удаления языка и прекращении выполнения метода CLanguage::Delete необходимо в функции-обработчике создать исключение методом $APPLICATION->ThrowException() и вернуть false.

Смотрите также

Примеры

Пример функции-обработчика:

<?
// файл /bitrix/modules/my_module_id/include.php
class MyClass
{
	// создаем обработчик события "OnBeforeLanguageDelete"
	public static function OnBeforeLanguageDeleteHandler($language_id)
	{
		// проверим есть ли связанные с удаляемым языком записи
		$strSql = "SELECT * FROM my_table WHERE LANGUAGE_ID=".$DB->ForSql($language_id);
		$rs = $DB->Query($strSql, false, "FILE: ".__FILE__."<br>LINE: ".__LINE__);

		// если связанные записи есть то
		if ($ar = $rs->Fetch()) 
		{
			// запретим удаление языка
			global $APPLICATION;
			$APPLICATION->throwException("В моей таблице есть связанные записи.");
			return false;
		}
	}
}
?>

Пример регистрации функции-обработчика:

<?
// регистрируем обработчик события "OnBeforeLanguageDelete"
RegisterModuleDependences("main", "OnBeforeLanguageDelete", 
	"my_module_id", "MyClass", "OnBeforeLanguageDeleteHandler");
?>


© «Битрикс», 2001-2024, «1С-Битрикс», 2024