MediaManager
extends WidgetBase
in package
Uses
UploadableWidget
Media Manager widget.
Tags
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.
- 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'
FOLDER_ROOT
public
mixed
FOLDER_ROOT
= '/'
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'
VIEW_MODE_GRID
public
mixed
VIEW_MODE_GRID
= 'grid'
VIEW_MODE_LIST
public
mixed
VIEW_MODE_LIST
= 'list'
VIEW_MODE_TILES
public
mixed
VIEW_MODE_TILES
= 'tiles'
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.
$controller
protected
Controller
$controller
Backend controller object.
$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 $controller, mixed $alias[, mixed $readOnly = false ]) : mixed
Parameters
- $controller : mixed
- $alias : mixed
- $readOnly : mixed = false
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:
= $this->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
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.
public
render() : string
Return values
string —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