[ Index ] |
PHP Cross Reference of Joomla 4.2.2 documentation |
[Summary view] [Print] [Text view]
1 <?php 2 3 /** 4 * Joomla! Content Management System 5 * 6 * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> 7 * @license GNU General Public License version 2 or later; see LICENSE.txt 8 */ 9 10 namespace Joomla\CMS\Form\Field; 11 12 // phpcs:disable PSR1.Files.SideEffects 13 \defined('JPATH_PLATFORM') or die; 14 // phpcs:enable PSR1.Files.SideEffects 15 16 /** 17 * Form Field to load a list of content authors 18 * 19 * @since 3.2 20 */ 21 class AuthorField extends ListField 22 { 23 /** 24 * The form field type. 25 * 26 * @var string 27 * @since 3.2 28 */ 29 public $type = 'Author'; 30 31 /** 32 * Cached array of the category items. 33 * 34 * @var array 35 * @since 3.2 36 */ 37 protected static $options = []; 38 39 /** 40 * Method to get the options to populate list 41 * 42 * @return array The field option objects. 43 * 44 * @since 3.2 45 */ 46 protected function getOptions() 47 { 48 // Accepted modifiers 49 $hash = md5($this->element); 50 51 if (!isset(static::$options[$hash])) { 52 static::$options[$hash] = parent::getOptions(); 53 54 $db = $this->getDatabase(); 55 56 // Construct the query 57 $query = $db->getQuery(true) 58 ->select( 59 [ 60 $db->quoteName('u.id', 'value'), 61 $db->quoteName('u.name', 'text'), 62 ] 63 ) 64 ->from($db->quoteName('#__users', 'u')) 65 ->join('INNER', $db->quoteName('#__content', 'c'), $db->quoteName('c.created_by') . ' = ' . $db->quoteName('u.id')) 66 ->group( 67 [ 68 $db->quoteName('u.id'), 69 $db->quoteName('u.name'), 70 ] 71 ) 72 ->order($db->quoteName('u.name')); 73 74 // Setup the query 75 $db->setQuery($query); 76 77 // Return the result 78 if ($options = $db->loadObjectList()) { 79 static::$options[$hash] = array_merge(static::$options[$hash], $options); 80 } 81 } 82 83 return static::$options[$hash]; 84 } 85 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Wed Sep 7 05:41:13 2022 | Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer |