__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
<?php
/**
* @package DPCalendar
* @copyright Copyright (C) 2017 Digital Peak GmbH. <https://www.digital-peak.com>
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU/GPL
*/
namespace DigitalPeak\Component\DPCalendar\Administrator\Field;
defined('_JEXEC') or die();
use DigitalPeak\Component\DPCalendar\Administrator\Helper\DPCalendarHelper;
use Joomla\CMS\Factory;
use Joomla\CMS\Form\Field\ListField;
use Joomla\CMS\Form\Form;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\Component\Fields\Administrator\Helper\FieldsHelper;
class DpcfieldsField extends ListField
{
public $element;
public $type = 'DPCFields';
protected function getOptions(): array
{
$options = [];
Factory::getApplication()->getLanguage()->load('com_dpcalendar', JPATH_ADMINISTRATOR . '/components/com_dpcalendar');
Form::addFormPath(JPATH_ADMINISTRATOR . '/components/com_dpcalendar/forms');
$hide = explode(',', $this->element['hide'] ?: '');
// @phpstan-ignore-next-line
$form = Form::getInstance('com_dpcalendar.' . $this->element['section'], $this->element['section'], ['control' => 'jform']);
foreach ($form->getFieldset() as $field) {
$fieldName = $field->fieldname;
// When no filter form use the compiled field name
if (!str_contains((string)$this->element['section'], 'filter')) {
$fieldName = DPCalendarHelper::getFieldName($field);
}
$isHidden = false;
foreach ($hide as $toHide) {
if (!fnmatch($toHide, $fieldName) && $field->type != 'Spacer') {
continue;
}
$isHidden = true;
break;
}
if ($isHidden) {
continue;
}
$options[] = HTMLHelper::_('select.option', $fieldName, Text::_($field->getTitle()));
}
$fields = FieldsHelper::getFields('com_dpcalendar.' . $this->element['section']);
foreach ($fields as $field) {
$options[] = HTMLHelper::_('select.option', $field->name, Text::_($field->label));
}
// Merge any additional options in the XML definition.
return array_merge(parent::getOptions(), $options);
}
}
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| DatetimechooserField.php | File | 3.17 KB | 0664 |
|
| DpauthorField.php | File | 1006 B | 0664 |
|
| DpcalendarField.php | File | 1.75 KB | 0664 |
|
| DpcalendareditField.php | File | 3.15 KB | 0664 |
|
| DpcfieldsField.php | File | 1.99 KB | 0664 |
|
| DpcountriesField.php | File | 1.07 KB | 0664 |
|
| DpcroomsField.php | File | 1.16 KB | 0664 |
|
| DpmenuitemsField.php | File | 2.62 KB | 0664 |
|
| DppaymentproviderField.php | File | 1.02 KB | 0664 |
|
| DpradioField.php | File | 2.7 KB | 0664 |
|
| DptokenField.php | File | 1.17 KB | 0664 |
|
| EventField.php | File | 9.04 KB | 0664 |
|
| ExtcalendarField.php | File | 1.36 KB | 0664 |
|
| GeocompleteField.php | File | 1.08 KB | 0664 |
|
| LocationField.php | File | 1006 B | 0664 |
|