/** * Returns an array holding the template directories. * * @since 3 * @return array Contains list of template directory paths. */ private function _getTemplateDirs() { if (!empty(self::$_aTemplateDirs)) { return self::$_aTemplateDirs; } foreach ($this->_getTemplateContainerDirs() as $__sTemplateDirPath) { if (!@file_exists($__sTemplateDirPath)) { continue; } $__aFoundDirs = glob($__sTemplateDirPath . DIRECTORY_SEPARATOR . "*", GLOB_ONLYDIR); if (is_array($__aFoundDirs)) { // glob can return false self::$_aTemplateDirs = array_merge($__aFoundDirs, self::$_aTemplateDirs); } } self::$_aTemplateDirs = array_unique(self::$_aTemplateDirs); self::$_aTemplateDirs = (array) apply_filters('aal_filter_template_directories', self::$_aTemplateDirs); self::$_aTemplateDirs = array_filter(self::$_aTemplateDirs); // drops elements of empty values. self::$_aTemplateDirs = array_unique(self::$_aTemplateDirs); return self::$_aTemplateDirs; }