Проверить установлен ли pdoTools
Всем привет!
Собственно вопрос, можно ли в своём сниппете проверить установлен ли pdoTools и если установлен, то использовать, иначе нет.
Я использую следующий вариант:
Собственно все работает, кроме ошибок в лог при проверке.
Если же pdoTools установлен, то ошибок конечно же нет. Но не у всех же используется этот пакет.
Спасибо за внимание.
Собственно вопрос, можно ли в своём сниппете проверить установлен ли pdoTools и если установлен, то использовать, иначе нет.
Я использую следующий вариант:
$fqn = $modx->getOption('pdoFetch.class', null, 'pdotools.pdofetch', true);
if ($pdoClass = $modx->loadClass($fqn, '', false, true)) {
$pdoTools = $modx->getService('pdoTools');
}
elseif ($pdoClass = $modx->loadClass($fqn, MODX_CORE_PATH . 'components/pdotools/model/', false, true)) {
$pdoTools = $modx->getService('pdoTools');
}
Но в любом случае в лог сыплются ошибки (ERROR @ /index.php) Could not load class: pdoTools from pdotools.
(ERROR @ /index.php) Problem getting service pdoTools, instance of class pdoTools, from path
При простом подключении, без проверок, ошибки те же.$pdoTools = $modx->getService('pdoTools');
Как бы не критично, но со временем лог будет забит, а мне хотелось бы чтобы сниппет работал и без этого расширения.Собственно все работает, кроме ошибок в лог при проверке.
Если же pdoTools установлен, то ошибок конечно же нет. Но не у всех же используется этот пакет.
Спасибо за внимание.
Комментарии: 2
Думаю, вот так:
if (file_exists(MODX_CORE_PATH . 'components/pdotools')) {
// твой код
}
блин, спасибо большое!
надо ложиться спать раньше
надо ложиться спать раньше
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.