$this->initHtmlPurifier($prepend);
$this->_registered = TRUE;
- $packages_path = implode(DIRECTORY_SEPARATOR, [$civicrm_base_path, 'packages']);
+ // The ClassLoader runs before the classes are available. Approximate Civi::paths()->get('[civicrm.packages]').
+ if (isset($GLOBALS['civicrm_paths']['civicrm.packages']['path'])) {
+ $packages_path = rtrim($GLOBALS['civicrm_paths']['civicrm.packages']['path'], DIRECTORY_SEPARATOR);
+ }
+ else {
+ $packages_path = implode(DIRECTORY_SEPARATOR, [$civicrm_base_path, 'packages']);
+ }
$include_paths = [
'.',
$civicrm_base_path,
// we do this to prevent a autoloader errors with joomla / 3rd party packages
// Use absolute path, since we don't know the content of include_path yet.
// CRM-11304
- $file = dirname(__FILE__) . '/../../packages/IDS/vendors/htmlpurifier/HTMLPurifier/Bootstrap.php';
+ if (isset($GLOBALS['civicrm_paths']['civicrm.packages']['path'])) {
+ $file = rtrim($GLOBALS['civicrm_paths']['civicrm.packages']['path'], DIRECTORY_SEPARATOR) . '/IDS/vendors/htmlpurifier/HTMLPurifier/Bootstrap.php';
+ }
+ else {
+ $file = dirname(__FILE__) . '/../../packages/IDS/vendors/htmlpurifier/HTMLPurifier/Bootstrap.php';
+ }
if (file_exists($file)) {
return $file;
}