Пока нашел только такой костыль:
В events.php
$eventListener = new umiEventListener('systemDeleteElement', 'module, 'method');
$eventListener->setIsCritical(true);
В макросе
public function onDelete(iUmiEventPoint $eventPoint)
{
if($eventPoint->getMode() == 'before')
{
throw new baseException('Страницу нельзя удалять'));
}
}
Режим after используется после удаления элемента. Для отмены удаления нужно прослушивать режим before.
Точно, что то я перепутал прошлое/будущее :).
Только вот вот "baseException" не срабатывает, ругается на него. У меня PHP7 и новый формат модулей.
"Cannot instantiate abstract class baseException"
Поставил "publicAdminException", но он не срабатывает.