public function load() { if ($this->_loaded) { return; } $this->_name = $this->_xmlloader->getRootDOM()->getAttribute('name'); $this->_version = $this->_xmlloader->getRootDOM()->getAttribute("version"); // Load the database information, if there is any. $dat = \ComponentFactory::_LookupComponentData('theme/' . $this->_name); if (!$dat) { return; } $this->_versionDB = $dat['version']; $this->_enabled = $dat['enabled'] ? true : false; if (DEVELOPMENT_MODE && defined('AUTO_INSTALL_ASSETS') && AUTO_INSTALL_ASSETS && EXEC_MODE == 'WEB' && CDN_TYPE == 'local' && $this->getKeyName() == \ConfigHandler::Get('/theme/selected')) { \Core\Utilities\Logger\write_debug('Auto-installing assets for theme [' . $this->getName() . ']'); $this->_parseAssets(); } $this->_loaded = true; }
/** * Load this component's metadata from the XML file. * * Will setup the name, version, installed version (if available), and enabled flag (if available). * * @return void */ public function load() { if ($this->_loaded) return; if (($mode = $this->_xmlloader->getRootDOM()->getAttribute('execmode'))) { $this->_execMode = strtoupper($mode); } $this->_name = $this->_xmlloader->getRootDOM()->getAttribute('name'); $this->_version = $this->_xmlloader->getRootDOM()->getAttribute("version"); Core\Utilities\Logger\write_debug('Loading metadata for component [' . $this->_name . ']'); // Load the database information, if there is any. $dat = ComponentFactory::_LookupComponentData($this->_name); if (!$dat) return; $this->_versionDB = $dat['version']; $this->_enabled = ($dat['enabled']) ? true : false; $this->_loaded = true; // Set the permissions $this->_permissions = array(); foreach($this->_xmlloader->getElements('/permissions/permission') as $el){ /** @var $el DOMElement */ $this->_permissions[$el->getAttribute('key')] = [ 'description' => $el->getAttribute('description'), 'context' => ($el->getAttribute('context')) ? $el->getAttribute('context') : '', ]; } }