19declare(strict_types=1);
56 array $visible_column_ids,
60 ?array $additional_parameters
62 $checked_icon = $this->ui_factory->
symbol()->icon()->
custom(
63 'assets/images/standard/icon_checked.svg',
64 $this->presentation->txt(
'yes'),
67 $unchecked_icon = $this->ui_factory->symbol()->icon()->custom(
68 'assets/images/standard/icon_unchecked.svg',
69 $this->presentation->txt(
'yes'),
73 $infos = $this->vocab_manager->infos();
77 $record[
'element'] = $this->presentation->makeSlotPresentable(
$vocab->slot());
78 $record[
'type'] = $this->presentation->makeTypePresentable(
$vocab->type());
79 $record[
'source'] =
$vocab->source();
80 $record[
'preview'] = implode(
82 $this->presentation->makeValuesPresentable(
$vocab, self::MAX_PREVIEW_VALUES)
84 $record[
'active'] =
$vocab->isActive() ? $checked_icon : $unchecked_icon;
85 if ($infos->isCustomInputApplicable(
$vocab)) {
86 $record[
'custom_input'] =
$vocab->allowsCustomInputs() ? $checked_icon : $unchecked_icon;
92 )->withDisabledAction(
94 !$infos->canBeDeleted(
$vocab)
95 )->withDisabledAction(
98 )->withDisabledAction(
101 !$infos->isDeactivatable(
$vocab)
102 )->withDisabledAction(
103 'allow_custom_input',
104 !$infos->isCustomInputApplicable(
$vocab) ||
105 $vocab->allowsCustomInputs()
106 )->withDisabledAction(
107 'disallow_custom_input',
108 !$infos->isCustomInputApplicable(
$vocab) ||
109 !$infos->canDisallowCustomInput(
$vocab) ||
110 !
$vocab->allowsCustomInputs()
117 return count($this->getVocabs());
122 if (isset($this->vocabs)) {
123 $vocabs = $this->vocabs;
125 $vocabs = iterator_to_array($this->vocab_manager->getAllVocabularies(),
false);
132 return $this->vocabs = $vocabs;
Builds a Color from either hex- or rgb values.
Both the subject and the direction need to be specified when expressing an order.
A simple class to express a naive range of whole positive numbers.
buildDataRow(string $id, array $record)