function getExtension() { // Load the data if (empty($this->_extension)) { $query = $this->_db->getQuery(true); $query->select('*')->from('#__extensions')->where('state>=0')->where('enabled=1')->where('type=' . $this->_db->quote('sef_ext'))->where('element=' . $this->_db->quote($this->_id)); $this->_db->setQuery($query); $row = $this->_db->loadObject(); if (is_null($row)) { $row = new stdClass(); } $option = str_replace('ext_joomsef4_', 'com_', $this->_id); // Try to load language file for this extension $langFile = str_replace('com_', 'sef_ext_', $option); $lang = JFactory::getLanguage(); $lang->load($langFile, JPATH_ADMINISTRATOR); $row->id = $this->_id; $row->description = ''; $row->name = ''; $row->version = ''; $row->params =& SEFTools::getExtParams($option); $row->form =& SEFTools::getExtParamsForm($option); $row->option = $option; $xml = SEFTools::getExtXML($option); if ($xml) { $version = (string) $xml['version']; if ($xml->getName() == 'extension' && version_compare($version, '1.6', '>=') && (string) $xml['type'] == 'sef_ext') { $element = $xml->description; $row->description = $element ? trim((string) $element) : ''; $element = $xml->name; $row->name = $element ? trim((string) $element) : ''; $element = $xml->version; $row->version = $element ? trim((string) $element) : ''; } } // Get the component for this extension $model = SEFModel::getInstance('Extensions', 'SEFModel'); $row->component = $model->_getComponent($option); $this->_extension = $row; } return $this->_extension; }