Documentation

MediaManager extends MediaManager
in package

Media Manager widget.

Tags
author

Alexey Bobkov, Samuel Georges

deprecated

Use Backend\Widgets\MediaManager. Remove if year >= 2020.

Table of Contents

FILTER_EVERYTHING  = 'everything'
FOLDER_ROOT  = '/'
SELECTION_MODE_FIXED_RATIO  = 'fixed-ratio'
SELECTION_MODE_FIXED_SIZE  = 'fixed-size'
SELECTION_MODE_NORMAL  = 'normal'
VIEW_MODE_GRID  = 'grid'
VIEW_MODE_LIST  = 'list'
VIEW_MODE_TILES  = 'tiles'
$alias  : string
$assetPath  : string
$bottomToolbar  : bool
$config  : object
$cropAndInsertButton  : bool
$implement  : array<string|int, mixed>
$layout  : string
$readOnly  : bool
$suppressLayout  : bool
$vars  : array<string|int, mixed>
$assets  : array<string|int, mixed>
$brokenImageHash  : string
$configPath  : string
$controller  : Controller
$defaultAlias  : string
$extendableCallbacks  : array<string|int, mixed>
$extendableGuardProperties  : bool
$extendableStaticMethods  : array<string|int, mixed>
$extensionData  : array<string|int, mixed>
$fatalError  : string
$layoutPath  : string
$viewPath  : string|array<string|int, mixed>
__call()  : mixed
__callStatic()  : mixed
__construct()  : mixed
Constructor.
__get()  : mixed
__set()  : mixed
addCss()  : void
Adds StyleSheet asset to the asset list. Call $this->makeAssets() in a view to output corresponding markup.
addDynamicMethod()  : mixed
Programmatically adds a method to the extendable class
addDynamicProperty()  : mixed
Programmatically adds a property to the extendable class
addJs()  : void
Adds JavaScript asset to the asset list. Call $this->makeAssets() in a view to output corresponding markup.
addRss()  : void
Adds an RSS link asset to the asset list. Call $this->makeAssets() in a view to output corresponding markup.
addViewPath()  : void
Prepends a path on the available view path locations.
asExtension()  : mixed
Short hand for `getClassExtension()` method, except takes the short extension name, example:
bindToController()  : void
Binds a widget to the controller for safe use.
clearExtendedClasses()  : void
Clear the list of extended classes so they will be re-extended.
combineAssets()  : string
Run the provided assets through the Asset Combiner
extend()  : mixed
extendableCall()  : mixed
Magic method for `__call()`
extendableCallStatic()  : mixed
Magic method for `__callStatic()`
extendableConstruct()  : mixed
This method should be called as part of the constructor.
extendableExtendCallback()  : void
Helper method for `::extend()` static method
extendableGet()  : string
Magic method for `__get()`
extendableSet()  : string
Magic method for `__set()`
extendClassWith()  : void
Dynamically extend a class with a specified behavior
fireSystemEvent()  : mixed
Fires a combination of local and global events. The first segment is removed from the event name locally and the local object is passed as the first argument to the event globally. Halting is also enabled by default.
fireViewEvent()  : string
Special event function used for extending within view files, allowing HTML to be injected multiple times.
flushAssets()  : void
Disables the use, and subequent broadcast, of assets. This is useful to call during an AJAX request to speed things up. This method works by specifically targeting the hasAssetsDefined method.
getAssetPath()  : string
Locates a file based on it's definition. If the file starts with a forward slash, it will be returned in context of the application public path, otherwise it will be returned in context of the asset path.
getAssetPaths()  : array<string|int, mixed>
Returns an array of all registered asset paths.
getClassExtension()  : mixed
Returns a behavior object from an extendable class, example:
getClassMethods()  : array<string|int, mixed>
Get a list of class methods, extension equivalent of get_class_methods()
getConfig()  : string
Safe accessor for configuration values.
getConfigPath()  : string
Locates a file based on it's definition. If the file starts with the ~ symbol it will be returned in context of the application base path, otherwise it will be returned in context of the config path.
getController()  : mixed
Returns the controller using this widget.
getDynamicProperties()  : array<string|int, mixed>
Returns all dynamic properties and their values
getEventHandler()  : string
Returns a fully qualified event handler name for this widget.
getFatalError()  : string
getId()  : string
Returns a unique ID for this widget. Useful in creating HTML markup.
getViewPath()  : string
Locates a file based on its definition. The file name can be prefixed with a symbol (~|$) to return in context of the application or plugin base path, otherwise it will be returned in context of this object view path.
getViewPaths()  : array<string|int, mixed>
Returns the active view path locations.
guessConfigPath()  : string
Guess the package path for the called class.
guessConfigPathFrom()  : string
Guess the package path from a specified class.
guessViewPath()  : string
Guess the package path for the called class.
guessViewPathFrom()  : string
Guess the package path from a specified class.
handleError()  : mixed
Sets standard page variables in the case of a controller error.
hasAssetsDefined()  : bool
Returns true if assets any have been added.
hasFatalError()  : bool
init()  : void
Initialize the widget, called by the constructor and free from its parameters.
isClassExtendedWith()  : bool
Check if extendable class is extended with a behavior object
makeAssets()  : string
Outputs `<link>` and `<script>` tags to load assets previously added with addJs and addCss method calls
makeConfig()  : array<string|int, mixed>|stdClass
Reads the contents of the supplied file and applies it to this object.
makeConfigFromArray()  : stdClass
Makes a config object from an array, making the first level keys properties of a new object.
makeFileContents()  : string
Includes a file path using output buffering.
makeFormWidget()  : FormWidgetBase
Makes a form widget object with the supplied form field and widget configuration.
makeLayout()  : mixed
Render a layout.
makeLayoutPartial()  : string
Renders a layout partial
makePartial()  : mixed
Render a partial file contents located in the views folder.
makeView()  : string
Loads a view with the name specified. Applies layout if its name is provided by the parent object.
makeViewContent()  : string
Renders supplied contents inside a layout.
makeWidget()  : mixed|WidgetBase
Makes a widget object with the supplied configuration file.
mergeConfig()  : stdClass
Merges two configuration sources, either prepared or not, and returns them as a single configuration object.
methodExists()  : bool
Checks if a method exists, extension equivalent of method_exists()
onApplyName()  : array<string|int, mixed>
Reanem library item AJAX handler
onChangeView()  : array<string|int, mixed>
Set view preference AJAX handler
onCreateFolder()  : array<string|int, mixed>
Create library folder AJAX handler
onCropImage()  : array<string|int, mixed>
Crop image AJAX handler
onDeleteItem()  : array<string|int, mixed>
Delete library item AJAX handler
onEndCroppingSession()  : array<string|int, mixed>
End crop session AJAX handler
onGenerateThumbnails()  : array<string|int, mixed>
Generate thumbnail AJAX handler
onGetSidebarThumbnail()  : array<string|int, mixed>
Get thumbnail AJAX handler
onGoToFolder()  : array<string|int, mixed>
Change view AJAX handler
onLoadImageCropPopup()  : array<string|int, mixed>
Load image for cropping AJAX handler
onLoadMovePopup()  : array<string|int, mixed>
Show move item popup AJAX handler
onLoadPopup()  : array<string|int, mixed>
Start image cropping session AJAX handler
onLoadRenamePopup()  : array<string|int, mixed>
Show rename item popup AJAX handler
onMoveItems()  : array<string|int, mixed>
Move library item AJAX handler
onResizeImage()  : array<string|int, mixed>
Resize image AJAX handler
onSearch()  : array<string|int, mixed>
Perform search AJAX handler
onSetFilter()  : array<string|int, mixed>
Set filter preference AJAX handler
onSetSidebarVisible()  : array<string|int, mixed>
Sidebar visibility AJAX handler
onSetSorting()  : array<string|int, mixed>
Set sorting preference AJAX handler
onUpload()  : void
Process file uploads submitted via AJAX
propertyExists()  : bool
Checks if a property exists, extension equivalent of `property_exists()`
render()  : string
Renders the widget's primary contents.
resetSession()  : void
Resets all session data related to this widget.
abortIfReadOnly()  : void
Abort the request with an access-denied code if readOnly mode is active
addAsset()  : mixed
Adds the provided asset to the internal asset collections
cleanFileName()  : string
Creates a slug form the string. A modified version of Str::slug with the main difference that it accepts @-signs
copyBrokenImage()  : void
Copy broken image to destination
cropImage()  : array<string|int, mixed>
Business logic to crop a media library image
extendableIsAccessible()  : bool
Checks if a property is accessible, property equivalent of `is_callable()`
extensionExtractMethods()  : void
Extracts the available methods from a behavior and adds it to the list of callable methods.
fillFromConfig()  : void
Transfers config values stored inside the $config property directly on to the root object properties. If no properties are defined all config will be transferred if it finds a matching property.
findFiles()  : mixed
Finds files from within the media library based on supplied criteria, returns an array of MediaLibraryItem objects.
generateThumbnail()  : array<string|int, mixed>
Generate thumbnail
getAssetEntryBuildPath()  : string
Internal helper, attaches a build code to an asset path
getAssetScheme()  : string
Internal helper, get asset scheme
getBrokenImageHash()  : string
Returns a CRC32 hash for a broken image
getBrokenImagePath()  : string
Returns the path for the broken image graphic
getCropEditImageUrlAndSize()  : array<string|int, mixed>
Prepares an image for cropping and returns payload containing a URL
getCropSessionDirPath()  : string
Returns the crop session working directory path
getCurrentFolder()  : string
Gets the user current folder from the session state
getFilter()  : string
Gets the user filter from the session state
getLocalPath()  : mixed
getLocalTempFilePath()  : string
Get temporary local file path
getPlaceholderId()  : string
Get placeholder identifier
getSearchTerm()  : string
Gets the user search term from the session state
getSelectionParams()  : array<string|int, mixed>
Gets the user selection parameters from the session state
getSession()  : string
Retrieves a widget related key/value pair from session data.
getSidebarVisible()  : bool
Checks if the sidebar is visible
getSortBy()  : string
Gets the user sort column from the session state
getSortDirection()  : string
Gets the user sort direction from the session state
getTargetDimensions()  : void
Get target dimensions
getThumbnailDirectory()  : string
Get thumbnail directory
getThumbnailImageExtension()  : string
Preferred thumbnail image extension
getThumbnailImagePath()  : string
Generates a thumbnail image path
getThumbnailImageUrl()  : string
Returns the URL to a thumbnail
getThumbnailParams()  : array<string|int, mixed>
Returns thumbnail parameters
getViewMode()  : string
Returns the current view mode stored in the session
handleViewException()  : void
Handle a view exception.
isVector()  : bool
Detect if image is vector graphic (SVG)
itemTypeToIconClass()  : string
Returns an icon for the item type
listFolderItems()  : mixed
Returns a list of folders and files in a Library folder.
loadAssets()  : void
Adds widget specific asset files. Use $this->addJs() and $this->addCss() to register new assets to include on the page.
makeSessionId()  : string
Returns a unique session identifier for this widget and controller action.
prepareVars()  : array<string|int, mixed>
Internal method to prepare view variables.
putSession()  : void
Saves a widget related key/value pair in to session data.
removeCropEditDir()  : void
Cleans up the directory used for cropping based on the session key
removeDuplicates()  : void
Removes duplicate assets from the entire collection.
resizeImage()  : void
Resize an image
setCurrentFolder()  : void
Sets the user current folder from the session state
setFilter()  : void
Sets the user filter from the session state
setSearchTerm()  : void
Sets the user search term from the session state
setSelectionParams()  : void
Stores the user selection parameters in the session state
setSidebarVisible()  : void
Sets the sidebar visible state
setSortBy()  : void
Sets the user sort column from the session state
setSortDirection()  : void
Sets the user sort direction from the session state
setViewMode()  : void
Stores a view mode in the session
splitPathToSegments()  : array<string|int, mixed>
Splits a path in to segments
thumbnailExists()  : bool
Check if a thumbnail exists
thumbnailIsError()  : bool
Check if a thumbnail has caused an error
validateFileName()  : bool
Validate a proposed media item file name.
validateFileType()  : bool
Check for blocked / unsafe file extensions

Constants

FILTER_EVERYTHING

public mixed FILTER_EVERYTHING = 'everything'

SELECTION_MODE_FIXED_RATIO

public mixed SELECTION_MODE_FIXED_RATIO = 'fixed-ratio'

SELECTION_MODE_FIXED_SIZE

public mixed SELECTION_MODE_FIXED_SIZE = 'fixed-size'

SELECTION_MODE_NORMAL

public mixed SELECTION_MODE_NORMAL = 'normal'

Properties

$alias

public string $alias

Defined alias used for this widget.

$assetPath

public string $assetPath

Specifies a path to the asset directory.

$bottomToolbar

public bool $bottomToolbar = false

Determines whether the bottom toolbar is visible.

$config

public object $config

Supplied configuration.

$cropAndInsertButton

public bool $cropAndInsertButton = false

Determines whether the Crop & Insert button is visible.

$implement

public array<string|int, mixed> $implement

Extensions implemented by this class.

$layout

public string $layout

Layout to use for the view.

$readOnly

public bool $readOnly = false

Determines whether the widget is in readonly mode or not.

$suppressLayout

public bool $suppressLayout = false

Prevents the use of a layout.

$vars

public array<string|int, mixed> $vars = []

A list of variables to pass to the page.

$assets

protected array<string|int, mixed> $assets = ['js' => [], 'css' => [], 'rss' => []]

Collection of assets to display in the layout.

$brokenImageHash

protected string $brokenImageHash

Hash string for the broken image graphic.

$configPath

protected string $configPath

Specifies a path to the config directory.

$defaultAlias

protected string $defaultAlias = 'widget'

A unique alias to identify this widget.

$extendableCallbacks

protected static array<string|int, mixed> $extendableCallbacks = []

Used to extend the constructor of an extendable class. Eg:

Class::extend(function($obj) { })

$extendableGuardProperties

protected static bool $extendableGuardProperties = true

Indicates if dynamic properties can be created.

$extendableStaticMethods

protected static array<string|int, mixed> $extendableStaticMethods = []

Collection of static methods used by behaviors.

$extensionData

protected array<string|int, mixed> $extensionData = ['extensions' => [], 'methods' => [], 'dynamicMethods' => [], 'dynamicProperties' => []]

Class reflection information, including behaviors.

$fatalError

protected string $fatalError

Object used for storing a fatal error.

$layoutPath

protected string $layoutPath

Specifies a path to the layout directory.

$viewPath

protected string|array<string|int, mixed> $viewPath

Specifies a path to the views directory.

Methods

__call()

public __call(mixed $name, mixed $params) : mixed
Parameters
$name : mixed
$params : mixed
Return values
mixed

__callStatic()

public static __callStatic(mixed $name, mixed $params) : mixed
Parameters
$name : mixed
$params : mixed
Return values
mixed

__construct()

Constructor.

public __construct() : mixed
Return values
mixed

__get()

public __get(mixed $name) : mixed
Parameters
$name : mixed
Return values
mixed

__set()

public __set(mixed $name, mixed $value) : mixed
Parameters
$name : mixed
$value : mixed
Return values
mixed

addCss()

Adds StyleSheet asset to the asset list. Call $this->makeAssets() in a view to output corresponding markup.

public addCss(string $name[, array<string|int, mixed> $attributes = [] ]) : void
Parameters
$name : string

Specifies a path (URL) to the script.

$attributes : array<string|int, mixed> = []

Adds extra HTML attributes to the asset link.

Return values
void

addDynamicMethod()

Programmatically adds a method to the extendable class

public addDynamicMethod(string $dynamicName, callable $method[, string $extension = null ]) : mixed
Parameters
$dynamicName : string
$method : callable
$extension : string = null
Return values
mixed

addDynamicProperty()

Programmatically adds a property to the extendable class

public addDynamicProperty(string $dynamicName[, string $value = null ]) : mixed
Parameters
$dynamicName : string
$value : string = null
Return values
mixed

addJs()

Adds JavaScript asset to the asset list. Call $this->makeAssets() in a view to output corresponding markup.

public addJs(string $name[, array<string|int, mixed> $attributes = [] ]) : void
Parameters
$name : string

Specifies a path (URL) to the script.

$attributes : array<string|int, mixed> = []

Adds extra HTML attributes to the asset link.

Return values
void

addRss()

Adds an RSS link asset to the asset list. Call $this->makeAssets() in a view to output corresponding markup.

public addRss(string $name[, array<string|int, mixed> $attributes = [] ]) : void
Parameters
$name : string

Specifies a path (URL) to the RSS channel

$attributes : array<string|int, mixed> = []

Adds extra HTML attributes to the asset link.

Return values
void

addViewPath()

Prepends a path on the available view path locations.

public addViewPath(string|array<string|int, mixed> $path) : void
Parameters
$path : string|array<string|int, mixed>
Return values
void

asExtension()

Short hand for `getClassExtension()` method, except takes the short extension name, example:

public asExtension(string $shortName) : mixed

$this->asExtension('FormController')

Parameters
$shortName : string
Return values
mixed

bindToController()

Binds a widget to the controller for safe use.

public bindToController() : void
Return values
void

clearExtendedClasses()

Clear the list of extended classes so they will be re-extended.

public static clearExtendedClasses() : void
Return values
void

combineAssets()

Run the provided assets through the Asset Combiner

public combineAssets(array<string|int, mixed> $assets[, string $localPath = '' ]) : string
Parameters
$assets : array<string|int, mixed>

Collection of assets

$localPath : string = ''

Prefix all assets with this path (optional)

Return values
string

extend()

public static extend(callable $callback) : mixed
Parameters
$callback : callable
Return values
mixed

extendableCall()

Magic method for `__call()`

public extendableCall(string $name[, array<string|int, mixed> $params = null ]) : mixed
Parameters
$name : string
$params : array<string|int, mixed> = null
Return values
mixed

extendableCallStatic()

Magic method for `__callStatic()`

public static extendableCallStatic(string $name[, array<string|int, mixed> $params = null ]) : mixed
Parameters
$name : string
$params : array<string|int, mixed> = null
Return values
mixed

extendableConstruct()

This method should be called as part of the constructor.

public extendableConstruct() : mixed
Return values
mixed

extendableExtendCallback()

Helper method for `::extend()` static method

public static extendableExtendCallback(callable $callback) : void
Parameters
$callback : callable
Return values
void

extendableGet()

Magic method for `__get()`

public extendableGet(string $name) : string
Parameters
$name : string
Return values
string

extendableSet()

Magic method for `__set()`

public extendableSet(string $name, string $value) : string
Parameters
$name : string
$value : string
Return values
string

extendClassWith()

Dynamically extend a class with a specified behavior

public extendClassWith(string $extensionName) : void
Parameters
$extensionName : string
Return values
void

fireSystemEvent()

Fires a combination of local and global events. The first segment is removed from the event name locally and the local object is passed as the first argument to the event globally. Halting is also enabled by default.

public fireSystemEvent(string $event[, array<string|int, mixed> $params = [] ][, bool $halt = true ]) : mixed

For example:

$this->fireSystemEvent('backend.list.myEvent', ['my value']);

Is equivalent to:

$this->fireEvent('list.myEvent', ['myvalue'], true);

Event::fire('backend.list.myEvent', [$this, 'myvalue'], true);
Parameters
$event : string

Event name

$params : array<string|int, mixed> = []

Event parameters

$halt : bool = true

Halt after first non-null result

Return values
mixed

fireViewEvent()

Special event function used for extending within view files, allowing HTML to be injected multiple times.

public fireViewEvent(string $event[, array<string|int, mixed> $params = [] ]) : string

For example:

fireViewEvent('backend.auth.extendSigninView') ?>
Parameters
$event : string

Event name

$params : array<string|int, mixed> = []

Event parameters

Return values
string

flushAssets()

Disables the use, and subequent broadcast, of assets. This is useful to call during an AJAX request to speed things up. This method works by specifically targeting the hasAssetsDefined method.

public flushAssets() : void
Return values
void

getAssetPath()

Locates a file based on it's definition. If the file starts with a forward slash, it will be returned in context of the application public path, otherwise it will be returned in context of the asset path.

public getAssetPath(string $fileName[, string $assetPath = null ]) : string
Parameters
$fileName : string

File to load.

$assetPath : string = null

Explicitly define an asset path.

Return values
string

Relative path to the asset file.

getAssetPaths()

Returns an array of all registered asset paths.

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

getClassExtension()

Returns a behavior object from an extendable class, example:

public getClassExtension(string $name) : mixed

$this->getClassExtension('Backend.Behaviors.FormController')

Parameters
$name : string

Fully qualified behavior name

Return values
mixed

getClassMethods()

Get a list of class methods, extension equivalent of get_class_methods()

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

getConfig()

Safe accessor for configuration values.

public getConfig(string $name[, string $default = null ]) : string
Parameters
$name : string

Config name, supports array names like "field[key]"

$default : string = null

Default value if nothing is found

Return values
string

getConfigPath()

Locates a file based on it's definition. If the file starts with the ~ symbol it will be returned in context of the application base path, otherwise it will be returned in context of the config path.

public getConfigPath(string $fileName[, mixed $configPath = null ]) : string
Parameters
$fileName : string

File to load.

$configPath : mixed = null

Explicitly define a config path.

Return values
string

Full path to the config file.

getController()

Returns the controller using this widget.

public getController() : mixed
Return values
mixed

getDynamicProperties()

Returns all dynamic properties and their values

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

['property' => 'value']

getEventHandler()

Returns a fully qualified event handler name for this widget.

public getEventHandler(string $name) : string
Parameters
$name : string

The ajax event handler name.

Return values
string

getFatalError()

public getFatalError() : string
Return values
string

The fatal error message

getId()

Returns a unique ID for this widget. Useful in creating HTML markup.

public getId([string $suffix = null ]) : string
Parameters
$suffix : string = null

An extra string to append to the ID.

Return values
string

A unique identifier.

getViewPath()

Locates a file based on its definition. The file name can be prefixed with a symbol (~|$) to return in context of the application or plugin base path, otherwise it will be returned in context of this object view path.

public getViewPath(string $fileName[, mixed $viewPath = null ]) : string
Parameters
$fileName : string

File to load.

$viewPath : mixed = null

Explicitly define a view path.

Return values
string

Full path to the view file.

getViewPaths()

Returns the active view path locations.

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

guessConfigPath()

Guess the package path for the called class.

public guessConfigPath([string $suffix = '' ]) : string
Parameters
$suffix : string = ''

An extra path to attach to the end

Return values
string

guessConfigPathFrom()

Guess the package path from a specified class.

public guessConfigPathFrom(string $class[, string $suffix = '' ]) : string
Parameters
$class : string

Class to guess path from.

$suffix : string = ''

An extra path to attach to the end

Return values
string

guessViewPath()

Guess the package path for the called class.

public guessViewPath([string $suffix = '' ][, bool $isPublic = false ]) : string
Parameters
$suffix : string = ''

An extra path to attach to the end

$isPublic : bool = false

Returns public path instead of an absolute one

Return values
string

guessViewPathFrom()

Guess the package path from a specified class.

public guessViewPathFrom(string $class[, string $suffix = '' ][, bool $isPublic = false ]) : string
Parameters
$class : string

Class to guess path from.

$suffix : string = ''

An extra path to attach to the end

$isPublic : bool = false

Returns public path instead of an absolute one

Return values
string

handleError()

Sets standard page variables in the case of a controller error.

public handleError(mixed $exception) : mixed
Parameters
$exception : mixed
Return values
mixed

hasAssetsDefined()

Returns true if assets any have been added.

public hasAssetsDefined() : bool
Return values
bool

hasFatalError()

public hasFatalError() : bool
Return values
bool

Whether a fatal error has been set or not.

init()

Initialize the widget, called by the constructor and free from its parameters.

public init() : void
Return values
void

isClassExtendedWith()

Check if extendable class is extended with a behavior object

public isClassExtendedWith(string $name) : bool
Parameters
$name : string

Fully qualified behavior name

Return values
bool

makeAssets()

Outputs `<link>` and `<script>` tags to load assets previously added with addJs and addCss method calls

public makeAssets([string $type = null ]) : string
Parameters
$type : string = null

Return an asset collection of a given type (css, rss, js) or null for all.

Return values
string

makeConfig()

Reads the contents of the supplied file and applies it to this object.

public makeConfig([array<string|int, mixed> $configFile = [] ][, array<string|int, mixed> $requiredConfig = [] ]) : array<string|int, mixed>|stdClass
Parameters
$configFile : array<string|int, mixed> = []
$requiredConfig : array<string|int, mixed> = []
Return values
array<string|int, mixed>|stdClass

makeConfigFromArray()

Makes a config object from an array, making the first level keys properties of a new object.

public makeConfigFromArray([array<string|int, mixed> $configArray = [] ]) : stdClass
Parameters
$configArray : array<string|int, mixed> = []

Config array.

Return values
stdClass

The config object

makeFileContents()

Includes a file path using output buffering.

public makeFileContents(string $filePath[, array<string|int, mixed> $extraParams = [] ]) : string

Ensures that vars are available.

Parameters
$filePath : string

Absolute path to the view file.

$extraParams : array<string|int, mixed> = []

Parameters that should be available to the view.

Return values
string

makeFormWidget()

Makes a form widget object with the supplied form field and widget configuration.

public makeFormWidget(string $class[, mixed $fieldConfig = [] ][, array<string|int, mixed> $widgetConfig = [] ]) : FormWidgetBase
Parameters
$class : string

Widget class name

$fieldConfig : mixed = []

A field name, an array of config or a FormField object.

$widgetConfig : array<string|int, mixed> = []

An array of config.

Return values
FormWidgetBase

The widget object

makeLayout()

Render a layout.

public makeLayout([string $name = null ][, array<string|int, mixed> $params = [] ][, bool $throwException = true ]) : mixed
Parameters
$name : string = null

Specifies the layout name. If this parameter is omitted, the $layout property will be used.

$params : array<string|int, mixed> = []

Parameter variables to pass to the view.

$throwException : bool = true

Throw an exception if the layout is not found

Return values
mixed

The layout contents, or false.

makeLayoutPartial()

Renders a layout partial

public makeLayoutPartial(string $partial[, array<string|int, mixed> $params = [] ]) : string
Parameters
$partial : string

The view to load.

$params : array<string|int, mixed> = []

Parameter variables to pass to the view.

Return values
string

The layout partial contents

makePartial()

Render a partial file contents located in the views folder.

public makePartial(string $partial[, array<string|int, mixed> $params = [] ][, bool $throwException = true ]) : mixed
Parameters
$partial : string

The view to load.

$params : array<string|int, mixed> = []

Parameter variables to pass to the view.

$throwException : bool = true

Throw an exception if the partial is not found.

Return values
mixed

Partial contents or false if not throwing an exception.

makeView()

Loads a view with the name specified. Applies layout if its name is provided by the parent object.

public makeView(string $view) : string

The view file must be situated in the views directory, and has the extension "htm".

Parameters
$view : string

Specifies the view name, without extension. Eg: "index".

Return values
string

makeViewContent()

Renders supplied contents inside a layout.

public makeViewContent(string $contents[, string $layout = null ]) : string
Parameters
$contents : string

The inner contents as a string.

$layout : string = null

Specifies the layout name.

Return values
string

makeWidget()

Makes a widget object with the supplied configuration file.

public makeWidget(string $class[, array<string|int, mixed> $widgetConfig = [] ]) : mixed|WidgetBase
Parameters
$class : string

Widget class name

$widgetConfig : array<string|int, mixed> = []

An array of config.

Return values
mixed|WidgetBase

The widget object

mergeConfig()

Merges two configuration sources, either prepared or not, and returns them as a single configuration object.

public mergeConfig(mixed $configA, mixed $configB) : stdClass
Parameters
$configA : mixed
$configB : mixed
Return values
stdClass

The config object

methodExists()

Checks if a method exists, extension equivalent of method_exists()

public methodExists(string $name) : bool
Parameters
$name : string
Return values
bool

onApplyName()

Reanem library item AJAX handler

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

onChangeView()

Set view preference AJAX handler

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

onCreateFolder()

Create library folder AJAX handler

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

onCropImage()

Crop image AJAX handler

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

onDeleteItem()

Delete library item AJAX handler

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

onEndCroppingSession()

End crop session AJAX handler

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

onGenerateThumbnails()

Generate thumbnail AJAX handler

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

onGetSidebarThumbnail()

Get thumbnail AJAX handler

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

onGoToFolder()

Change view AJAX handler

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

onLoadImageCropPopup()

Load image for cropping AJAX handler

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

onLoadMovePopup()

Show move item popup AJAX handler

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

onLoadPopup()

Start image cropping session AJAX handler

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

onLoadRenamePopup()

Show rename item popup AJAX handler

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

onMoveItems()

Move library item AJAX handler

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

onResizeImage()

Resize image AJAX handler

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

onSearch()

Perform search AJAX handler

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

onSetFilter()

Set filter preference AJAX handler

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

onSetSidebarVisible()

Sidebar visibility AJAX handler

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

onSetSorting()

Set sorting preference AJAX handler

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

onUpload()

Process file uploads submitted via AJAX

public onUpload() : void
Tags
throws
ApplicationException

If the file "file_data" wasn't detected in the request or if the file failed to pass validation / security checks

Return values
void

propertyExists()

Checks if a property exists, extension equivalent of `property_exists()`

public propertyExists(string $name) : bool
Parameters
$name : string
Return values
bool

render()

Renders the widget's primary contents.

public render() : string
Return values
string

HTML markup supplied by this widget.

resetSession()

Resets all session data related to this widget.

public resetSession() : void
Return values
void

abortIfReadOnly()

Abort the request with an access-denied code if readOnly mode is active

protected abortIfReadOnly() : void
Return values
void

addAsset()

Adds the provided asset to the internal asset collections

protected addAsset(string $type, string $path, array<string|int, mixed> $attributes) : mixed
Parameters
$type : string

The type of the asset: 'js' || 'css' || 'rss'

$path : string

The path to the asset

$attributes : array<string|int, mixed>

The attributes for the asset

Return values
mixed

cleanFileName()

Creates a slug form the string. A modified version of Str::slug with the main difference that it accepts @-signs

protected cleanFileName(string $name) : string
Parameters
$name : string
Return values
string

copyBrokenImage()

Copy broken image to destination

protected copyBrokenImage(string $path) : void
Parameters
$path : string
Return values
void

cropImage()

Business logic to crop a media library image

protected cropImage(string $imageSrcPath, string $selectionData, string $cropSessionKey, string $path) : array<string|int, mixed>
Parameters
$imageSrcPath : string
$selectionData : string
$cropSessionKey : string
$path : string
Return values
array<string|int, mixed>

extendableIsAccessible()

Checks if a property is accessible, property equivalent of `is_callable()`

protected extendableIsAccessible(mixed $class, string $propertyName) : bool
Parameters
$class : mixed
$propertyName : string
Return values
bool

extensionExtractMethods()

Extracts the available methods from a behavior and adds it to the list of callable methods.

protected extensionExtractMethods(string $extensionName, object $extensionObject) : void
Parameters
$extensionName : string
$extensionObject : object
Return values
void

fillFromConfig()

Transfers config values stored inside the $config property directly on to the root object properties. If no properties are defined all config will be transferred if it finds a matching property.

protected fillFromConfig([array<string|int, mixed> $properties = null ]) : void
Parameters
$properties : array<string|int, mixed> = null
Return values
void

findFiles()

Finds files from within the media library based on supplied criteria, returns an array of MediaLibraryItem objects.

protected findFiles(string $searchTerm, string $filter, string $sortBy) : mixed
Parameters
$searchTerm : string
$filter : string
$sortBy : string
Return values
mixed

generateThumbnail()

Generate thumbnail

protected generateThumbnail(array<string|int, mixed> $thumbnailInfo[, array<string|int, mixed>|null $thumbnailParams = null ]) : array<string|int, mixed>
Parameters
$thumbnailInfo : array<string|int, mixed>
$thumbnailParams : array<string|int, mixed>|null = null
Return values
array<string|int, mixed>

getAssetEntryBuildPath()

Internal helper, attaches a build code to an asset path

protected getAssetEntryBuildPath(array<string|int, mixed> $asset) : string
Parameters
$asset : array<string|int, mixed>

Stored asset array

Return values
string

getAssetScheme()

Internal helper, get asset scheme

protected getAssetScheme(string $asset) : string
Parameters
$asset : string

Specifies a path (URL) to the asset.

Return values
string

getBrokenImageHash()

Returns a CRC32 hash for a broken image

protected getBrokenImageHash() : string
Return values
string

getBrokenImagePath()

Returns the path for the broken image graphic

protected getBrokenImagePath() : string
Return values
string

getCropEditImageUrlAndSize()

Prepares an image for cropping and returns payload containing a URL

protected getCropEditImageUrlAndSize(string $path, string $cropSessionKey[, array<string|int, mixed> $params = null ]) : array<string|int, mixed>
Parameters
$path : string
$cropSessionKey : string
$params : array<string|int, mixed> = null
Return values
array<string|int, mixed>

getCropSessionDirPath()

Returns the crop session working directory path

protected getCropSessionDirPath(string $cropSessionKey) : string
Parameters
$cropSessionKey : string
Return values
string

getCurrentFolder()

Gets the user current folder from the session state

protected getCurrentFolder() : string
Return values
string

getFilter()

Gets the user filter from the session state

protected getFilter() : string
Return values
string

getLocalPath()

protected getLocalPath(string $relativePath) : mixed
Parameters
$relativePath : string
Return values
mixed

getLocalTempFilePath()

Get temporary local file path

protected getLocalTempFilePath(string $fileName) : string
Parameters
$fileName : string
Return values
string

getPlaceholderId()

Get placeholder identifier

protected getPlaceholderId(MediaLibraryItem $item) : string
Parameters
$item : MediaLibraryItem
Return values
string

getSearchTerm()

Gets the user search term from the session state

protected getSearchTerm() : string
Return values
string

getSelectionParams()

Gets the user selection parameters from the session state

protected getSelectionParams() : array<string|int, mixed>
Return values
array<string|int, mixed>

getSession()

Retrieves a widget related key/value pair from session data.

protected getSession([string $key = null ][, string $default = null ]) : string
Parameters
$key : string = null

Unique key for the data store.

$default : string = null

A default value to use when value is not found.

Return values
string

getSidebarVisible()

Checks if the sidebar is visible

protected getSidebarVisible() : bool
Return values
bool

getSortBy()

Gets the user sort column from the session state

protected getSortBy() : string
Return values
string

getSortDirection()

Gets the user sort direction from the session state

protected getSortDirection() : string
Return values
string

getTargetDimensions()

Get target dimensions

protected getTargetDimensions(int $width, int $height, string $originalImagePath) : void
Parameters
$width : int
$height : int
$originalImagePath : string
Return values
void

getThumbnailDirectory()

Get thumbnail directory

protected getThumbnailDirectory() : string
Return values
string

getThumbnailImageExtension()

Preferred thumbnail image extension

protected getThumbnailImageExtension(string $itemPath) : string
Parameters
$itemPath : string
Return values
string

getThumbnailImagePath()

Generates a thumbnail image path

protected getThumbnailImagePath(array<string|int, mixed>|null $thumbnailParams, string $itemPath, int $lastModified) : string
Parameters
$thumbnailParams : array<string|int, mixed>|null
$itemPath : string
$lastModified : int
Return values
string

getThumbnailImageUrl()

Returns the URL to a thumbnail

protected getThumbnailImageUrl(string $imagePath) : string
Parameters
$imagePath : string
Return values
string

getThumbnailParams()

Returns thumbnail parameters

protected getThumbnailParams([string $viewMode = null ]) : array<string|int, mixed>
Parameters
$viewMode : string = null
Return values
array<string|int, mixed>

getViewMode()

Returns the current view mode stored in the session

protected getViewMode() : string
Return values
string

handleViewException()

Handle a view exception.

protected handleViewException(Exception $e, int $obLevel) : void
Parameters
$e : Exception
$obLevel : int
Return values
void

isVector()

Detect if image is vector graphic (SVG)

protected isVector(string $path) : bool
Parameters
$path : string
Return values
bool

itemTypeToIconClass()

Returns an icon for the item type

protected itemTypeToIconClass(MediaLibraryItem $item, string $itemType) : string
Parameters
$item : MediaLibraryItem
$itemType : string
Return values
string

listFolderItems()

Returns a list of folders and files in a Library folder.

protected listFolderItems(mixed $folder, string $filter, string $sortBy) : mixed
Parameters
$folder : mixed
$filter : string
$sortBy : string
Return values
mixed

loadAssets()

Adds widget specific asset files. Use $this->addJs() and $this->addCss() to register new assets to include on the page.

protected loadAssets() : void
Return values
void

makeSessionId()

Returns a unique session identifier for this widget and controller action.

protected makeSessionId() : string
Return values
string

prepareVars()

Internal method to prepare view variables.

protected prepareVars() : array<string|int, mixed>
Return values
array<string|int, mixed>

putSession()

Saves a widget related key/value pair in to session data.

protected putSession(string $key, string $value) : void
Parameters
$key : string

Unique key for the data store.

$value : string

The value to store.

Return values
void

removeCropEditDir()

Cleans up the directory used for cropping based on the session key

protected removeCropEditDir(string $cropSessionKey) : void
Parameters
$cropSessionKey : string
Return values
void

removeDuplicates()

Removes duplicate assets from the entire collection.

protected removeDuplicates() : void
Return values
void

resizeImage()

Resize an image

protected resizeImage(string $fullThumbnailPath, array<string|int, mixed> $thumbnailParams, string $tempFilePath) : void
Parameters
$fullThumbnailPath : string
$thumbnailParams : array<string|int, mixed>
$tempFilePath : string
Return values
void

setCurrentFolder()

Sets the user current folder from the session state

protected setCurrentFolder(string $path) : void
Parameters
$path : string
Return values
void

setFilter()

Sets the user filter from the session state

protected setFilter(string $filter) : void
Parameters
$filter : string
Return values
void

setSearchTerm()

Sets the user search term from the session state

protected setSearchTerm(string $searchTerm) : void
Parameters
$searchTerm : string
Return values
void

setSelectionParams()

Stores the user selection parameters in the session state

protected setSelectionParams(string $selectionMode, int $selectionWidth, int $selectionHeight) : void
Parameters
$selectionMode : string
$selectionWidth : int
$selectionHeight : int
Return values
void

setSidebarVisible()

Sets the sidebar visible state

protected setSidebarVisible(bool $visible) : void
Parameters
$visible : bool
Return values
void

setSortBy()

Sets the user sort column from the session state

protected setSortBy(string $sortBy) : void
Parameters
$sortBy : string
Return values
void

setSortDirection()

Sets the user sort direction from the session state

protected setSortDirection(string $sortDirection) : void
Parameters
$sortDirection : string
Return values
void

setViewMode()

Stores a view mode in the session

protected setViewMode(string $viewMode) : void
Parameters
$viewMode : string
Return values
void

splitPathToSegments()

Splits a path in to segments

protected splitPathToSegments(string $path) : array<string|int, mixed>
Parameters
$path : string
Return values
array<string|int, mixed>

thumbnailExists()

Check if a thumbnail exists

protected thumbnailExists(array<string|int, mixed>|null $thumbnailParams, string $itemPath, int $lastModified) : bool
Parameters
$thumbnailParams : array<string|int, mixed>|null
$itemPath : string
$lastModified : int
Return values
bool

thumbnailIsError()

Check if a thumbnail has caused an error

protected thumbnailIsError(string $thumbnailPath) : bool
Parameters
$thumbnailPath : string
Return values
bool

validateFileName()

Validate a proposed media item file name.

protected validateFileName(mixed $name) : bool
Parameters
$name : mixed
Return values
bool

validateFileType()

Check for blocked / unsafe file extensions

protected validateFileType(mixed $name) : bool
Parameters
$name : mixed
Return values
bool

Search results