CoolCMS API

Paginator extends BaseComponent
in package

Table of Contents

Properties

$container  : Container
$routerDispatcher  : RouterDispatcher
$translator  : ITranslator
$appContext  : AppContext
$componentParameters  : array<string, mixed>
$currencyContext  : CurrencyContext|null
$deviceDetector  : DeviceDetector|null
$languageContext  : LanguageContext|null
$localizationContext  : LocalizationContext|null
$settingContext  : SettingContext
$themeContext  : ThemeContext|null
$translatorDomain  : string|null
$defaultUrlParams  : array<string, mixed>
$itemCount  : int|null
$itemsPerPage  : int|null
$paginator  : Paginator|null
$useAjax  : bool

Methods

__call()  : mixed
Dispatches `renderXyz()` to `render('Xyz', ...$args)`.
__construct()  : mixed
createComponent()  : IComponent|null
getAppContext()  : AppContext
getComponentParameter()  : mixed
Returns a component parameter, or null when it is not set.
getContainer()  : Container
getCurrencyContext()  : CurrencyContext|null
getItemCount()  : int
getLanguageContext()  : LanguageContext|null
getLimit()  : int
Returns the `LIMIT` for the SQL query.
getLocalizationContext()  : LocalizationContext|null
getOffset()  : int
Returns the `OFFSET` for the SQL query.
getPaginator()  : Paginator
getRouterDispatcher()  : RouterDispatcher
getSettingContext()  : SettingContext
getSettings()  : array<int, array<string, mixed>>
getThemeContext()  : ThemeContext|null
hasServiceByType()  : bool
Returns whether the container has a service of the given type.
initializeAllContexts()  : void
injectDeviceDetector()  : void
loadState()  : void
Loads the component state from URL parameters.
onCreate()  : void
render()  : void
Renders the paginator.
setAppContext()  : $this
setComponentParameter()  : void
Sets a component parameter.
setCurrencyContext()  : $this
setDefaultUrlParameters()  : self
Sets the default URL parameters.
setItemCount()  : self
Sets the total item count. null = the manager did not count the total, which gives 0 items (`getTotalCount()` is `?int`).
setItemsPerPage()  : self
Sets the number of items per page.
setLanguageContext()  : $this
setLocalizationContext()  : $this
setPage()  : self
Sets the current page.
setSettingContext()  : $this
setThemeContext()  : $this
setUnlimitedCount()  : self
Sets a preliminary high item count (for the SQL query).
setup()  : void
setupAppContext()  : void
typedComponent()  : T
Returns a subcomponent with a verified type.
useAjax()  : self
Enables or disables the AJAX mode.
frontPresenter()  : BasePresenter|null
Returns the front presenter the component is attached to (null outside the front end or when detached).
getTranslator()  : ITranslator
setTemplateFile()  : void
setTranslator()  : self
buildSteps()  : array<int, int>
Builds the array of steps for the pagination display.
createMultiplierComponent()  : Multiplier<string|int, IComponent>
Creates a multiplier for the component.
createNewComponentInstance()  : IComponent|null
Creates a new component instance without adding it to the presenter; used by the multiplier.
createStandardComponent()  : IComponent|null
Creates a standard component (not a multiplier).
prepareUrlParams()  : array<string, mixed>
Prepares the URL parameters.

Properties

$componentParameters

protected array<string, mixed> $componentParameters = []

component parameters set by setComponentParameter()

$translatorDomain

protected string|null $translatorDomain = 'front.system.components.paginator'

$defaultUrlParams

private array<string, mixed> $defaultUrlParams = []

$itemCount

private int|null $itemCount = null

$itemsPerPage

private int|null $itemsPerPage = null

$paginator

private Paginator|null $paginator = null

Methods

__call()

Dispatches `renderXyz()` to `render('Xyz', ...$args)`.

public __call(string $name, array<string|int, mixed> $args) : mixed

Called only when the component has no renderXyz() method of its own.

Parameters
$name : string
$args : array<string|int, mixed>

createComponent()

public createComponent(string $name) : IComponent|null
Parameters
$name : string
Return values
IComponent|null

getComponentParameter()

Returns a component parameter, or null when it is not set.

public getComponentParameter(string $name) : mixed
Parameters
$name : string

getContainer()

public getContainer() : Container
Return values
Container

getItemCount()

public getItemCount() : int
Return values
int

getLimit()

Returns the `LIMIT` for the SQL query.

public getLimit() : int
Return values
int

getOffset()

Returns the `OFFSET` for the SQL query.

public getOffset() : int
Return values
int

getPaginator()

public getPaginator() : Paginator
Return values
Paginator

getSettings()

public getSettings() : array<int, array<string, mixed>>
Return values
array<int, array<string, mixed>>

hasServiceByType()

Returns whether the container has a service of the given type.

public hasServiceByType(string $className) : bool

The name is composed dynamically (module plus component), so class_exists() runs first, and a true result guarantees a valid type.

Parameters
$className : string
Tags
phpstan-assert-if-true

class-string $className

Return values
bool

loadState()

Loads the component state from URL parameters.

public loadState(array<string|int, mixed> $params) : void
Parameters
$params : array<string|int, mixed>

render()

Renders the paginator.

public render([string|null $class = null ]) : void
Parameters
$class : string|null = null

setComponentParameter()

Sets a component parameter.

public setComponentParameter(string $name, mixed $value) : void
Parameters
$name : string
$value : mixed

setDefaultUrlParameters()

Sets the default URL parameters.

public setDefaultUrlParameters(array<string, mixed> $urlParams) : self
Parameters
$urlParams : array<string, mixed>
Return values
self

setItemCount()

Sets the total item count. null = the manager did not count the total, which gives 0 items (`getTotalCount()` is `?int`).

public setItemCount(int|null $count) : self
Parameters
$count : int|null
Return values
self

setItemsPerPage()

Sets the number of items per page.

public setItemsPerPage(int $count) : self
Parameters
$count : int
Return values
self

setPage()

Sets the current page.

public setPage(int $page) : self
Parameters
$page : int
Return values
self

setUnlimitedCount()

Sets a preliminary high item count (for the SQL query).

public setUnlimitedCount() : self

Used when the exact count is not known yet.

Return values
self

typedComponent()

Returns a subcomponent with a verified type.

public typedComponent(string $name, T> $type) : T

Use it instead of an inline @var above $this['x'] (which does not narrow the type) and instead of the generic IComponent that $this['x'] returns. See Form::typedComponent().

Parameters
$name : string
$type : T>
Tags
template
Return values
T

useAjax()

Enables or disables the AJAX mode.

public useAjax([bool $useAjax = true ]) : self
Parameters
$useAjax : bool = true
Return values
self

frontPresenter()

Returns the front presenter the component is attached to (null outside the front end or when detached).

protected frontPresenter() : BasePresenter|null
Return values
BasePresenter|null

getTranslator()

protected getTranslator() : ITranslator
Return values
ITranslator

setTemplateFile()

protected setTemplateFile(string $dir, string $filename) : void
Parameters
$dir : string
$filename : string

setTranslator()

protected setTranslator(ITranslator $translator) : self
Parameters
$translator : ITranslator
Return values
self

buildSteps()

Builds the array of steps for the pagination display.

private buildSteps(Paginator $paginator) : array<int, int>
Parameters
$paginator : Paginator
Return values
array<int, int>

createMultiplierComponent()

Creates a multiplier for the component.

private createMultiplierComponent(string $name) : Multiplier<string|int, IComponent>
Parameters
$name : string
Return values
Multiplier<string|int, IComponent>

createNewComponentInstance()

Creates a new component instance without adding it to the presenter; used by the multiplier.

private createNewComponentInstance(string $baseName[, int|string|null $uniqueKey = null ]) : IComponent|null
Parameters
$baseName : string
$uniqueKey : int|string|null = null
Return values
IComponent|null

createStandardComponent()

Creates a standard component (not a multiplier).

private createStandardComponent(string $name) : IComponent|null
Parameters
$name : string
Return values
IComponent|null

prepareUrlParams()

Prepares the URL parameters.

private prepareUrlParams() : array<string, mixed>
Return values
array<string, mixed>
On this page

Search results