abstract class FacetedCategory implements ItemListInterface, ItemInterface

Traits

Constants

DISPLAY_TYPE_CHECKBOX

DISPLAY_TYPE_TEXT

DISPLAY_TYPE_DATE

DISPLAY_TYPE_TOGGLE

Properties

protected FacetedFilter $faceted
protected I18nTokenHelper $label
protected array $defaultValues
protected bool $hasMoreItems
protected bool $showEmptyItems
protected bool $showInMoreOnly
protected bool $showItemCount
protected Closure|string|null $callback

Methods

__construct()

Constructor

string
__toString()

No description

addDefaultValue(string $defaultValue)

Adds a default value for this category.

addScopeCondition(Collection $collection, array $active)

Extended class has to add the scope condition for its category based on the $active (aka selected) values

void
autoBuildItems(Collection $collection, int $limit, string $query = '')

Extended class has to auto build its FacetedCategoryItems.

int
count()

No description

static ItemListTrait
create(ItemInterface ...$items)

No description

static FacetedCategory
createCategory(FacetedFilter $faceted, I18nTokenHelper $label)

Class to create the category

ItemInterface|null
first()

Get first element

array
getActiveItems()

Returns items of this category, which are active

array
getDefaultValues()

getter

string
getDisplayType()

Extended class has to return one of the display types defined via constant in this class!

bool
getHasMoreItems()

No description

string
getIconClass()

No description

FacetedCategoryItem[]
getItems()

No description

FacetedCategoryItem[]
getIterator()

No description

string
getKey()

No description

getLabel()

No description

array
getOptions()

Returns the options array used mainly by the vue component

bool
getShowInMoreOnly()

Getter for showInMoreOnly

bool
getShowItemCount()

No description

bool
hasCallback()

Does category have a callback?

bool
hasItems()

Are FacetedCategoryItems defined?

void
invokeCallBack(Collection $collection, array $selectedCategoryValues = [])

No description

bool
isRequired()

No description

array
jsonSerialize()

No description

ItemInterface|null
last()

Return the last element

bool
offsetExists($offset)

No description

offsetGet(mixed $offset)

No description

void
offsetSet($offset, $value)

No description

void
offsetUnset($offset)

No description

int
push(ItemInterface $item)

No description

pushItem(FacetedCategoryItem $item)

Adds an item to the ItemList

setActive(array $values)

Sets items to active based on the given $values

setCallback(Closure $callback)

Sets the callback to filter the $collection

setDefaultValues(array $defaultValues)

Set the default value(s) for this category

void
setDefaults()

Use setDefaultValues() to set the default values.

setIconClass(string $iconClass)

No description

void
setItems(array $items)

No description

setKey(string $key)

No description

setRequired(bool $required)

No description

setShowEmptyItems(bool $show = true)

If enabled, the category will also show items with a hit count of 0

setShowInMoreOnly(bool $show = true)

If enabled, the category will only be shown in the "more filters" section

setShowItemCount(bool $showItemCount = true)

No description

void
sortItems()

Sorts the category items by hit count (descending)

array
toArray()

Transforms the option into an array.

int
unshift(ItemInterface $item)

No description

Details

at line 368
protected __construct()

Constructor

at line 372
string __toString()

No description

Return Value

string

at line 197
FacetedCategory addDefaultValue(string $defaultValue)

Adds a default value for this category.

Parameters

string $defaultValue

Return Value

FacetedCategory

at line 64
abstract Collection addScopeCondition(Collection $collection, array $active)

Extended class has to add the scope condition for its category based on the $active (aka selected) values

Parameters

Collection $collection
array $active

The active values

Return Value

Collection

at line 54
abstract void autoBuildItems(Collection $collection, int $limit, string $query = '')

Extended class has to auto build its FacetedCategoryItems.

Parameters

Collection $collection

A cloned model collection scoped by all other active facets

int $limit

The max item limit to display

string $query

Search query that restricts the items

Return Value

void

in ItemListTrait at line 147
int count()

No description

Return Value

int

in ItemListTrait at line 37
static ItemListTrait create(ItemInterface ...$items)

No description

Parameters

ItemInterface ...$items

Return Value

ItemListTrait

at line 37
abstract static FacetedCategory createCategory(FacetedFilter $faceted, I18nTokenHelper $label)

Class to create the category

Parameters

FacetedFilter $faceted
I18nTokenHelper $label

Return Value

FacetedCategory

in ItemListTrait at line 96
ItemInterface|null first()

Get first element

Return Value

ItemInterface|null

at line 308
array getActiveItems()

Returns items of this category, which are active

Return Value

array

at line 218
array getDefaultValues()

getter

Return Value

array

at line 43
abstract string getDisplayType()

Extended class has to return one of the display types defined via constant in this class!

Return Value

string

at line 115
bool getHasMoreItems()

No description

Return Value

bool

at line 122
string getIconClass()

No description

Return Value

string

at line 20
FacetedCategoryItem[] getItems()

No description

Return Value

FacetedCategoryItem[]

at line 20
FacetedCategoryItem[] getIterator()

No description

Return Value

FacetedCategoryItem[]

at line 361
string getKey()

No description

Return Value

string

at line 103
I18nTokenHelper getLabel()

No description

Return Value

I18nTokenHelper

at line 226
array getOptions()

Returns the options array used mainly by the vue component

Return Value

array $options

at line 187
bool getShowInMoreOnly()

Getter for showInMoreOnly

Return Value

bool

at line 418
bool getShowItemCount()

No description

Return Value

bool

at line 398
bool hasCallback()

Does category have a callback?

Return Value

bool

at line 111
bool hasItems()

Are FacetedCategoryItems defined?

Return Value

bool

at line 408
void invokeCallBack(Collection $collection, array $selectedCategoryValues = [])

No description

Parameters

Collection $collection
array $selectedCategoryValues

Return Value

void

at line 142
bool isRequired()

No description

Return Value

bool

in ItemListTrait at line 154
array jsonSerialize()

No description

Return Value

array

in ItemListTrait at line 88
ItemInterface|null last()

Return the last element

Return Value

ItemInterface|null

in ItemListTrait at line 116
bool offsetExists($offset)

No description

Parameters

$offset

Return Value

bool

at line 20
FacetedCategoryItem offsetGet(mixed $offset)

No description

Parameters

mixed $offset

Return Value

FacetedCategoryItem

in ItemListTrait at line 133
void offsetSet($offset, $value)

No description

Parameters

$offset
$value

Return Value

void

in ItemListTrait at line 140
void offsetUnset($offset)

No description

Parameters

$offset

Return Value

void

at line 337
int push(ItemInterface $item)

No description

Parameters

ItemInterface $item

Return Value

int

Returns the new number of items in the list.

at line 325
FacetedCategory pushItem(FacetedCategoryItem $item)

Adds an item to the ItemList

Parameters

FacetedCategoryItem $item

Return Value

FacetedCategory

at line 240
FacetedCategory setActive(array $values)

Sets items to active based on the given $values

Parameters

array $values

Return Value

FacetedCategory

at line 389
FacetedCategory setCallback(Closure $callback)

Sets the callback to filter the $collection

Parameters

Closure $callback

Return Value

FacetedCategory

at line 209
FacetedCategory setDefaultValues(array $defaultValues)

Set the default value(s) for this category

Parameters

array $defaultValues

Return Value

FacetedCategory

at line 262
void setDefaults()

Use setDefaultValues() to set the default values.

Calls the setDefault() and setActive() methods for items that are default values. (if the category has no active item)

Return Value

void

at line 132
FacetedCategory setIconClass(string $iconClass)

No description

Parameters

string $iconClass

Return Value

FacetedCategory

in ItemListTrait at line 66
void setItems(array $items)

No description

Parameters

array $items

Return Value

void

at line 350
FacetedCategory setKey(string $key)

No description

Parameters

string $key

Return Value

FacetedCategory

Exceptions

Exception

at line 152
FacetedCategory setRequired(bool $required)

No description

Parameters

bool $required

Return Value

FacetedCategory

at line 166
FacetedCategory setShowEmptyItems(bool $show = true)

If enabled, the category will also show items with a hit count of 0

Parameters

bool $show

Return Value

FacetedCategory

at line 178
FacetedCategory setShowInMoreOnly(bool $show = true)

If enabled, the category will only be shown in the "more filters" section

Parameters

bool $show

Return Value

FacetedCategory

at line 422
FacetedCategory setShowItemCount(bool $showItemCount = true)

No description

Parameters

bool $showItemCount

Return Value

FacetedCategory

at line 295
protected void sortItems()

Sorts the category items by hit count (descending)

Return Value

void

in ItemListTrait at line 74
array toArray()

Transforms the option into an array.

Return Value

array

in ItemListTrait at line 49
int unshift(ItemInterface $item)

No description

Parameters

ItemInterface $item

Return Value

int