Плагин запрещающий удалять определенные ресурсы

Вот этот хороший не знаю чей плагин запрещает удалять ресурсы переданные списком через параметр ids.
<?php
$e = &$modx->Event;

$ids= explode(',', $ids);

switch($e->name) {

        case 'OnBeforeDocFormDelete':
                if (isset($_REQUEST['id']) && in_array(intval($_REQUEST['id']), $ids)) {
                        echo '<div style="padding: 50px 100px; font: bold 12px Arial, sans-serif;">Удаление данного раздела невозможно</div>';
                        exit;
                }
        break;

        case 'OnDocFormDelete':
                if (isset($_REQUEST['id']) && in_array(intval($_REQUEST['id']), $ids)) {
                        exit;
                }
        break;

        default:
                return;
        break;

}
Он исправно работает кроме той его части, которая отвечает за вывод информационного сообщения _Удаление данного раздела невозможно_

Вместо него перед удалением выводится стандартное _Вы уверены..._

Подскажите как допилить… Pls
anatol
25 ноября 2015, 09:23
modx.pro
2
1 333
0

Комментарии: 5

    Сергей Шлоков
    25 ноября 2015, 16:36
    0
    При удалении это не работает. Только при создании и редактировании.
    Судя по коду плагина писал его человек не глубоко разбирающийся в MODX Revo. Писать echo в плагине да еще и с HTML разметкой… Кроме того в плагине есть уже определенная переменная $id, поэтому $_REQUEST['id'] явно лишний.
    Мое мнение, штатными средствами вывести сообщение не получится. Хотя я могу и ошибаться.
Максим Кузнецов
25 ноября 2015, 17:00
1
+3
Если для бэкэнда, то алерт нужно ~составлять так (в плагине):

$response = array(
			'success' => false,
			'message' => 'Ресурс с данным Id удалять запрещено!',
			'data' => array(),
	);
	echo $modx->toJSON($response);
	exit;
    anatol
    26 ноября 2015, 07:46
    0
    Ага, работает. Спасибо большое.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    5