* @link https://www.tassos.gr * @copyright Copyright © 2024 Tassos All Rights Reserved * @license GNU GPLv3 or later */ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Form\Field\ListField; use Joomla\CMS\Language\Text; class JFormFieldComparator extends ListField { private $defaults = [ 'includes' => 'NR_IS', 'not_includes' => 'NR_IS_NOT' ]; /** * Method to get the field input markup for a generic list. * Use the multiple attribute to enable multiselect. * * @return string The field input markup. */ protected function getInput() { $this->required = true; $this->class .= ' comparator'; return parent::getInput(); } /** * Return the label. * * @return string */ protected function getLabel() { if (!isset($this->element['label'])) { return Text::_('NR_MATCH'); } return parent::getLabel(); } /** * Return the options. * * @return string */ protected function getOptions() { if (!$options = parent::getOptions()) { $options = $this->defaults; foreach ($options as $key => &$value) { $value = Text::_($value); } } return $options; } }