CoolCMS API

Gallery extends BaseComponent
in package
uses InitTrait

Table of Contents

Constants

STYLE_CAROUSEL  : string = 'Carousel'
STYLE_FEATURED  : string = 'Featured'
STYLE_FILMSTRIP  : string = 'Filmstrip'
STYLE_GRID  : string = 'Grid'
STYLE_MASONRY  : string = 'Masonry'
STYLE_MOSAIC  : string = 'Mosaic'
STYLE_PREVIEW  : string = 'Preview'
STYLE_SLIDESHOW  : string = 'Slideshow'

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

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
getLanguageContext()  : LanguageContext|null
getLocalizationContext()  : LocalizationContext|null
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.
imagesToGalleryArray()  : array<int, Asset, src: string, thumb: string, poster: string|null, caption: string|null, alt: string, isVideo: bool, mime: string, placeholder: string, isPlaceholder: bool, sources: array}>
Converts Asset entities to the array format expected by Gallery templates.
initializeAllContexts()  : void
injectDeviceDetector()  : void
onCreate()  : void
render()  : void
setAppContext()  : $this
setComponentParameter()  : void
Sets a component parameter.
setCurrencyContext()  : $this
setLanguageContext()  : $this
setLocalizationContext()  : $this
setSettingContext()  : $this
setThemeContext()  : $this
setup()  : void
setupAppContext()  : void
typedComponent()  : T
Returns a subcomponent with a verified type.
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
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).

Constants

public string STYLE_CAROUSEL = 'Carousel'
public string STYLE_FEATURED = 'Featured'

STYLE_FILMSTRIP

public string STYLE_FILMSTRIP = 'Filmstrip'

STYLE_GRID

public string STYLE_GRID = 'Grid'

STYLE_MASONRY

public string STYLE_MASONRY = 'Masonry'

STYLE_MOSAIC

public string STYLE_MOSAIC = 'Mosaic'

STYLE_PREVIEW

public string STYLE_PREVIEW = 'Preview'

STYLE_SLIDESHOW

public string STYLE_SLIDESHOW = 'Slideshow'

Properties

$componentParameters

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

component parameters set by setComponentParameter()

$translatorDomain

protected string|null $translatorDomain = 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

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

imagesToGalleryArray()

Converts Asset entities to the array format expected by Gallery templates.

public imagesToGalleryArray(array<string|int, Asset|null> $assets) : array<int, Asset, src: string, thumb: string, poster: string|null, caption: string|null, alt: string, isVideo: bool, mime: string, placeholder: string, isPlaceholder: bool, sources: array}>

Variants are sorted ascending by maxWidth so the smallest is thumb, the largest is src. Sources array contains all variants for use. Falls back to getFullPath() only when no variants exist (data integrity issue).

For video src is the mp4/mov in the base path; thumb/poster come from the image variant (only if one exists after ffmpeg).

A missing file (typically an asset from the shared database whose file exists only on the dev server) is replaced by a placeholder image, see AssetPlaceholderHelper. Templates put placeholder into data-asset-fallback so that the client asset-fallback.js also catches what the server cannot detect (404, file outside the web).

Parameters
$assets : array<string|int, Asset|null>

empty slots (deleted image) are skipped

Return values
array<int, Asset, src: string, thumb: string, poster: string|null, caption: string|null, alt: string, isVideo: bool, mime: string, placeholder: string, isPlaceholder: bool, sources: array}>

render()

public render([string $style = 'Grid' ][, array<string|int, Asset> $assets = [] ][, int $moreCount = 0 ][, array<string|int, Asset> $moreAssets = [] ]) : void
Parameters
$style : string = 'Grid'
$assets : array<string|int, Asset> = []
$moreCount : int = 0
$moreAssets : array<string|int, Asset> = []

assets not rendered in the grid that the lightbox must still know (see Mosaic.latte)

setComponentParameter()

Sets a component parameter.

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

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

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

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
On this page

Search results