[ Index ]

PHP Cross Reference of Joomla 4.2.2 documentation

title

Body

[close]

/modules/mod_banners/src/Helper/ -> BannersHelper.php (source)

   1  <?php
   2  
   3  /**
   4   * @package     Joomla.Site
   5   * @subpackage  mod_banners
   6   *
   7   * @copyright   (C) 2006 Open Source Matters, Inc. <https://www.joomla.org>
   8   * @license     GNU General Public License version 2 or later; see LICENSE.txt
   9   */
  10  
  11  namespace Joomla\Module\Banners\Site\Helper;
  12  
  13  use Joomla\CMS\Application\CMSApplication;
  14  use Joomla\CMS\Component\ComponentHelper;
  15  use Joomla\CMS\Environment\Browser;
  16  use Joomla\Component\Banners\Site\Model\BannersModel;
  17  use Joomla\Registry\Registry;
  18  
  19  // phpcs:disable PSR1.Files.SideEffects
  20  \defined('_JEXEC') or die;
  21  // phpcs:enable PSR1.Files.SideEffects
  22  
  23  /**
  24   * Helper for mod_banners
  25   *
  26   * @since  1.5
  27   */
  28  class BannersHelper
  29  {
  30      /**
  31       * Retrieve list of banners
  32       *
  33       * @param   Registry        $params  The module parameters
  34       * @param   BannersModel    $model   The model
  35       * @param   CMSApplication  $app     The application
  36       *
  37       * @return  mixed
  38       */
  39      public static function getList(Registry $params, BannersModel $model, CMSApplication $app)
  40      {
  41          $keywords = explode(',', $app->getDocument()->getMetaData('keywords'));
  42          $config   = ComponentHelper::getParams('com_banners');
  43  
  44          $model->setState('filter.client_id', (int) $params->get('cid'));
  45          $model->setState('filter.category_id', $params->get('catid', array()));
  46          $model->setState('list.limit', (int) $params->get('count', 1));
  47          $model->setState('list.start', 0);
  48          $model->setState('filter.ordering', $params->get('ordering'));
  49          $model->setState('filter.tag_search', $params->get('tag_search'));
  50          $model->setState('filter.keywords', $keywords);
  51          $model->setState('filter.language', $app->getLanguageFilter());
  52  
  53          $banners = $model->getItems();
  54  
  55          if ($banners) {
  56              if ($config->get('track_robots_impressions', 1) == 1 || !Browser::getInstance()->isRobot()) {
  57                  $model->impress();
  58              }
  59          }
  60  
  61          return $banners;
  62      }
  63  }


Generated: Wed Sep 7 05:41:13 2022 Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer