Библиотека для создания плагинов на PHP к продуктам ISP
Представленная библиотека классов предназначена для упрощения и оптимизации процесса создания плагинов на языке PHP для панелей от ISPsystem, таких как ISP manager, BILL manager и т.д.
Функциональность классов библиотеки:
- Получение плагином параметров, переданных панелью в обработчик, в обоих форматах: CGI и XML.
- Возможности отладки:
- Получение параметров из агрументов коммандной строки,
- Эмуляция получения параметров в коде,
- Ведение лога с опциональным отладочным режимом автоматизированного перехвата всех ошибок и исключений, возникающих во время работы плагина.
- Включение режима отладки может быть проинициировано как в коде, так и при помощи файла имя_плагина.debug.
- Вызов функции панели из плагина.
Версия: 1.0
Скачать: usings.ru/isp_plugins/libphp.tar.gz
Документация онлайн: открыть
Документация (chm): скачать
Приятного использования!
2 ответов Оставить комментарий
Обнаружил ошибку в mgr.php в функции Query() .
При передаче параметров в виде массива функция превращает их в строку методом http_build_query(). Этот метод кодирует строку для передачи в url, а плагин передает параметры напрямую mgrctl . В результате часть символов искажается. Нужно дополнить строку функцией urldecocde()(строка 56):
$q = ‘»‘ . urldecocde(http_build_query($params, », ‘» «‘)) . ‘»‘;
Функция urldecode поверх http_build_query тут не подойдет, поскольку она вернет все нехорошие символы в текст команды. Например: «, \n, \r и т.д.
Я подумаю, что можно сделать. Вам же советую передавать функции Query сразу готовую строку вместо массива.