public function __construct($config = array()) { if (version_compare(JVERSION, '3.0', 'lt')) { $this->option = JRequest::getCmd('option'); } else { $app = Factory::getApplication(); $this->option = $app->input->get('option'); } $info = ExtensionHelper::getExtensionInfoFromElement($this->option); $this->extension = Factory::getExtension($info['namespace'], $info['type']); }
/** * Return an array of Alledia extensions * * @todo Move this method for the class Alledia\Framework\Joomla\Extension\Helper, but keep as deprecated * * @param string $license * @return array */ public static function getAllediaExtensions($license = '') { // Get the extensions ids $db = \JFactory::getDbo(); $query = $db->getQuery(true)->select($db->quoteName('extension_id'))->select($db->quoteName('type'))->select($db->quoteName('element'))->select($db->quoteName('folder'))->from('#__extensions')->where($db->quoteName('custom_data') . " LIKE '%\"author\":\"Alledia\"%'")->group($db->quoteName('extension_id')); $db->setQuery($query); $rows = $db->loadObjectList(); $extensions = array(); foreach ($rows as $row) { $extensionInfo = ExtensionHelper::getExtensionInfoFromElement($row->element); $extension = new Joomla\Extension\Licensed($extensionInfo['namespace'], $row->type, $row->folder); if (!empty($license)) { if ($license === 'pro' && !$extension->isPro()) { continue; } elseif ($license === 'free' && $extension->isPro()) { continue; } } $extensions[$row->extension_id] = $extension; } return $extensions; }