acf
This commit is contained in:
		
							
								
								
									
										67
									
								
								components/com_highlights/src/Field/CreatedbyField.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								components/com_highlights/src/Field/CreatedbyField.php
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,67 @@ | ||||
| <?php | ||||
| /** | ||||
|  * @version    CVS: 1.0.0 | ||||
|  * @package    Com_Highlights | ||||
|  * @author     Eddy Prosperi <eddy.prosperi@protocollicreativi.it> | ||||
|  * @copyright  2024 Eddy Prosperi | ||||
|  * @license    GNU General Public License versione 2 o successiva; vedi LICENSE.txt | ||||
|  */ | ||||
|  | ||||
| namespace Pcrt\Component\Highlights\Site\Field; | ||||
|  | ||||
| defined('JPATH_BASE') or die; | ||||
|  | ||||
| use \Joomla\CMS\Factory; | ||||
| use \Joomla\CMS\Form\FormField; | ||||
| use \Joomla\CMS\User\UserFactoryInterface; | ||||
|  | ||||
| /** | ||||
|  * Supports an HTML select list of categories | ||||
|  * | ||||
|  * @since  1.0.0 | ||||
|  */ | ||||
| class CreatedbyField extends FormField | ||||
| { | ||||
| 	/** | ||||
| 	 * The form field type. | ||||
| 	 * | ||||
| 	 * @var        string | ||||
| 	 * @since  1.0.0 | ||||
| 	 */ | ||||
| 	protected $type = 'createdby'; | ||||
|  | ||||
| 	/** | ||||
| 	 * Method to get the field input markup. | ||||
| 	 * | ||||
| 	 * @return  string  The field input markup. | ||||
| 	 * | ||||
| 	 * @since   1.0.0 | ||||
| 	 */ | ||||
| 	protected function getInput() | ||||
| 	{ | ||||
| 		// Initialize variables. | ||||
| 		$html = array(); | ||||
|  | ||||
| 		// Load user | ||||
| 		$user_id = $this->value; | ||||
|  | ||||
| 		if ($user_id) | ||||
| 		{ | ||||
| 			$container = \Joomla\CMS\Factory::getContainer(); | ||||
|             $userFactory = $container->get(UserFactoryInterface::class); | ||||
|             $user = $userFactory->loadUserById($user_id); | ||||
| 		} | ||||
| 		else | ||||
| 		{ | ||||
| 			$user   = Factory::getApplication()->getIdentity(); | ||||
| 			$html[] = '<input type="hidden" name="' . $this->name . '" value="' . $user->id . '" />'; | ||||
| 		} | ||||
|  | ||||
| 		if (!$this->hidden) | ||||
| 		{ | ||||
| 			$html[] = "<div>" . $user->name . " (" . $user->username . ")</div>"; | ||||
| 		} | ||||
|  | ||||
| 		return implode($html); | ||||
| 	} | ||||
| } | ||||
		Reference in New Issue
	
	Block a user