[ Index ]

PHP Cross Reference of Joomla 4.2.2 documentation

title

Body

[close]

/libraries/src/User/ -> CurrentUserTrait.php (source)

   1  <?php
   2  
   3  /**
   4   * Joomla! Content Management System
   5   *
   6   * @copyright  (C) 2022 Open Source Matters, Inc. <https://www.joomla.org>
   7   * @license    GNU General Public License version 2 or later; see LICENSE
   8   */
   9  
  10  namespace Joomla\CMS\User;
  11  
  12  use Joomla\CMS\Factory;
  13  
  14  // phpcs:disable PSR1.Files.SideEffects
  15  \defined('JPATH_PLATFORM') or die;
  16  // phpcs:enable PSR1.Files.SideEffects
  17  
  18  /**
  19   * Trait for classes which require a user to work with.
  20   *
  21   * @since  4.2.0
  22   */
  23  trait CurrentUserTrait
  24  {
  25      /**
  26       * The current user object.
  27       *
  28       * @var    User
  29       * @since  4.2.0
  30       */
  31      private $currentUser;
  32  
  33      /**
  34       * Returns the current user, if none is set the identity of the global app
  35       * is returned. This will change in 5.0 and an empty user will be returned.
  36       *
  37       * @return  User
  38       *
  39       * @since   4.2.0
  40       */
  41      protected function getCurrentUser(): User
  42      {
  43          if (!$this->currentUser) {
  44              @trigger_error(
  45                  sprintf('User must be set in %s. This will not be caught anymore in 5.0', __METHOD__),
  46                  E_USER_DEPRECATED
  47              );
  48              $this->currentUser = Factory::getApplication()->getIdentity() ?: Factory::getUser();
  49          }
  50  
  51          return $this->currentUser;
  52      }
  53  
  54      /**
  55       * Sets the current user.
  56       *
  57       * @param   User  $currentUser  The current user object
  58       *
  59       * @return  void
  60       *
  61       * @since   4.2.0
  62       */
  63      public function setCurrentUser(User $currentUser): void
  64      {
  65          $this->currentUser = $currentUser;
  66      }
  67  }


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