* @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Plugins\Administrator\Controller; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\AdminController; use Joomla\CMS\Response\JsonResponse; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Plugins list controller class. * * @since 1.6 */ class PluginsController extends AdminController { /** * Method to get a model object, loading it if required. * * @param string $name The model name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return object The model. * * @since 1.6 */ public function getModel($name = 'Plugin', $prefix = 'Administrator', $config = array('ignore_request' => true)) { return parent::getModel($name, $prefix, $config); } /** * Method to get the number of activated plugins * * @return void * * @since 4.0.0 */ public function getQuickiconContent() { $model = $this->getModel('Plugins'); $model->setState('filter.enabled', 1); $amount = (int) $model->getTotal(); $result = []; $result['amount'] = $amount; $result['sronly'] = Text::plural('COM_PLUGINS_N_QUICKICON_SRONLY', $amount); $result['name'] = Text::plural('COM_PLUGINS_N_QUICKICON', $amount); echo new JsonResponse($result); } }