[ Index ]

PHP Cross Reference of Joomla 4.2.2 documentation

title

Body

[close]

/administrator/components/com_users/src/View/Groups/ -> HtmlView.php (source)

   1  <?php
   2  
   3  /**
   4   * @package     Joomla.Administrator
   5   * @subpackage  com_users
   6   *
   7   * @copyright   (C) 2009 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\Component\Users\Administrator\View\Groups;
  12  
  13  use Joomla\CMS\Helper\ContentHelper;
  14  use Joomla\CMS\Language\Text;
  15  use Joomla\CMS\MVC\View\GenericDataException;
  16  use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView;
  17  use Joomla\CMS\Object\CMSObject;
  18  use Joomla\CMS\Toolbar\ToolbarHelper;
  19  
  20  // phpcs:disable PSR1.Files.SideEffects
  21  \defined('_JEXEC') or die;
  22  // phpcs:enable PSR1.Files.SideEffects
  23  
  24  /**
  25   * View class for a list of user groups.
  26   *
  27   * @since  1.6
  28   */
  29  class HtmlView extends BaseHtmlView
  30  {
  31      /**
  32       * The item data.
  33       *
  34       * @var   object
  35       * @since 1.6
  36       */
  37      protected $items;
  38  
  39      /**
  40       * The pagination object.
  41       *
  42       * @var   \Joomla\CMS\Pagination\Pagination
  43       * @since 1.6
  44       */
  45      protected $pagination;
  46  
  47      /**
  48       * The model state.
  49       *
  50       * @var   CMSObject
  51       * @since 1.6
  52       */
  53      protected $state;
  54  
  55      /**
  56       * Form object for search filters
  57       *
  58       * @var    \Joomla\CMS\Form\Form
  59       *
  60       * @since  4.0.0
  61       */
  62      public $filterForm;
  63  
  64      /**
  65       * The active search filters
  66       *
  67       * @var    array
  68       * @since  4.0.0
  69       */
  70      public $activeFilters;
  71  
  72      /**
  73       * Display the view
  74       *
  75       * @param   string  $tpl  The name of the template file to parse; automatically searches through the template paths.
  76       *
  77       * @return  void
  78       */
  79      public function display($tpl = null)
  80      {
  81          $this->items         = $this->get('Items');
  82          $this->pagination    = $this->get('Pagination');
  83          $this->state         = $this->get('State');
  84          $this->filterForm    = $this->get('FilterForm');
  85          $this->activeFilters = $this->get('ActiveFilters');
  86  
  87          // Check for errors.
  88          if (count($errors = $this->get('Errors'))) {
  89              throw new GenericDataException(implode("\n", $errors), 500);
  90          }
  91  
  92          $this->addToolbar();
  93          parent::display($tpl);
  94      }
  95  
  96      /**
  97       * Add the page title and toolbar.
  98       *
  99       * @return  void
 100       *
 101       * @since   1.6
 102       */
 103      protected function addToolbar()
 104      {
 105          $canDo = ContentHelper::getActions('com_users');
 106  
 107          ToolbarHelper::title(Text::_('COM_USERS_VIEW_GROUPS_TITLE'), 'users-cog groups');
 108  
 109          if ($canDo->get('core.create')) {
 110              ToolbarHelper::addNew('group.add');
 111          }
 112  
 113          if ($canDo->get('core.delete')) {
 114              ToolbarHelper::deleteList('JGLOBAL_CONFIRM_DELETE', 'groups.delete', 'JTOOLBAR_DELETE');
 115              ToolbarHelper::divider();
 116          }
 117  
 118          if ($canDo->get('core.admin') || $canDo->get('core.options')) {
 119              ToolbarHelper::preferences('com_users');
 120              ToolbarHelper::divider();
 121          }
 122  
 123          ToolbarHelper::help('Users:_Groups');
 124      }
 125  }


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