Filter
extends WidgetBase
in package
Filter Widget Renders a container used for filtering things.
Tags
Table of Contents
- $alias : string
- $assetPath : string
- $config : object
- $context : string
- $cssClasses : array<string|int, mixed>
- $implement : array<string|int, mixed>
- $layout : string
- $scopes : array<string|int, mixed>
- $suppressLayout : bool
- $vars : array<string|int, mixed>
- $allScopes : array<string|int, mixed>
- $assets : array<string|int, mixed>
- $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
- $scopeModels : array<string|int, mixed>
- $scopesDefined : bool
- $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.
- addScopes() : mixed
- Programatically add scopes, used internally and for extensibility.
- addViewPath() : void
- Prepends a path on the available view path locations.
- applyAllScopesToQuery() : Builder
- Applies all scopes to a DB query.
- applyScopeToQuery() : Builder
- Applies a filter scope constraints to a DB query.
- 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.
- getContext() : string
- Returns the active context for displaying the filter.
- 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.
- getScope() : mixed
- Get a specified scope object
- getScopeNameFrom() : string
- Returns the display name column for a scope.
- getScopes() : array<string|int, mixed>
- Get all the registered scopes for the instance.
- getScopeValue() : mixed
- Returns a scope value for this widget instance.
- 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()
- onFilterGetOptions() : array<string|int, mixed>
- Returns available options for group scope type.
- onFilterUpdate() : array<string|int, mixed>
- Update a filter scope value.
- prepareVars() : mixed
- Prepares the view data
- propertyExists() : bool
- Checks if a property exists, extension equivalent of `property_exists()`
- removeScope() : mixed
- Programatically remove a scope, used for extensibility.
- render() : string
- Renders the widget.
- renderScopeElement() : mixed
- Renders the HTML element for a scope
- resetSession() : void
- Resets all session data related to this widget.
- setScopeValue() : mixed
- Sets an scope value for this widget instance.
- addAsset() : mixed
- Adds the provided asset to the internal asset collections
- datesFromAjax() : array<string|int, mixed>
- Convert an array from the posted dates
- defineFilterScopes() : mixed
- Creates a flat array of filter scopes from the configuration.
- 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.
- filterActiveOptions() : array<string|int, mixed>
- Removes any already selected options from the available options, returns a newly built array.
- filterOptionsBySearch() : array<string|int, mixed>
- Filters an array of options by a search term.
- getAssetEntryBuildPath() : string
- Internal helper, attaches a build code to an asset path
- getAssetScheme() : string
- Internal helper, get asset scheme
- getAvailableOptions() : array<string|int, mixed>
- Returns the available options a scope can use, either from the model relation or from a supplied array. Optionally apply a search constraint to the options.
- getFilterDateFormat() : string
- getLocalPath() : mixed
- getOptionsFromArray() : array<string|int, mixed>
- Look at the defined set of options for scope items, or the model method.
- getOptionsFromModel() : Collection
- Looks at the model for defined scope items.
- getScopeDepends() : string
- Returns a HTML encoded value containing the other scopes this scope depends on
- getSession() : string
- Retrieves a widget related key/value pair from session data.
- handleViewException() : void
- Handle a view exception.
- loadAssets() : void
- Adds widget specific asset files. Use $this->addJs() and $this->addCss() to register new assets to include on the page.
- makeFilterScope() : mixed
- Creates a filter scope object from name and configuration.
- makeSessionId() : string
- Returns a unique session identifier for this widget and controller action.
- numbersFromAjax() : array<string|int, mixed>
- Convert an array from the posted numbers
- optionsFromAjax() : array<string|int, mixed>
- Convert a named array to a key/pair array
- optionsToAjax() : array<string|int, mixed>
- Convert a key/pair array to a named array {id: 1, name: 'Foobar'}
- putSession() : void
- Saves a widget related key/value pair in to session data.
- removeDuplicates() : void
- Removes duplicate assets from the entire collection.
Properties
$alias
public
string
$alias
Defined alias used for this widget.
$assetPath
public
string
$assetPath
Specifies a path to the asset directory.
$config
public
object
$config
Supplied configuration.
$context
public
string
$context
The context of this filter, scopes that do not belong to this context will not be shown.
$cssClasses
public
array<string|int, mixed>
$cssClasses
= []
List of CSS classes to apply to the filter container element
$implement
public
array<string|int, mixed>
$implement
Extensions implemented by this class.
$layout
public
string
$layout
Layout to use for the view.
$scopes
public
array<string|int, mixed>
$scopes
Scope definition configuration.
$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.
$allScopes
protected
array<string|int, mixed>
$allScopes
= []
Collection of all scopes used in this filter.
$assets
protected
array<string|int, mixed>
$assets
= ['js' => [], 'css' => [], 'rss' => []]
Collection of assets to display in the layout.
$configPath
protected
string
$configPath
Specifies a path to the config directory.
$controller
protected
Controller
$controller
Backend controller object.
$defaultAlias
protected
string
$defaultAlias
= 'filter'
A unique alias to identify this widget.
Tags
$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.
$scopeModels
protected
array<string|int, mixed>
$scopeModels
= []
Collection of all scopes models used in this filter.
$scopesDefined
protected
bool
$scopesDefined
= false
Determines if scope definitions have been created.
$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 —addScopes()
Programatically add scopes, used internally and for extensibility.
public
addScopes(array<string|int, mixed> $scopes) : mixed
Parameters
- $scopes : array<string|int, mixed>
Return values
mixed —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 —applyAllScopesToQuery()
Applies all scopes to a DB query.
public
applyAllScopesToQuery(Builder $query) : Builder
Parameters
- $query : Builder
Return values
Builder —applyScopeToQuery()
Applies a filter scope constraints to a DB query.
public
applyScopeToQuery(string $scope, Builder $query) : Builder
Parameters
- $scope : string
- $query : Builder
Return values
Builder —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.
getContext()
Returns the active context for displaying the filter.
public
getContext() : string
Return values
string —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.
getScope()
Get a specified scope object
public
getScope(string $scope) : mixed
Parameters
- $scope : string
Return values
mixed —getScopeNameFrom()
Returns the display name column for a scope.
public
getScopeNameFrom(string $scope) : string
Parameters
- $scope : string
Return values
string —getScopes()
Get all the registered scopes for the instance.
public
getScopes() : array<string|int, mixed>
Return values
array<string|int, mixed> —getScopeValue()
Returns a scope value for this widget instance.
public
getScopeValue(mixed $scope[, mixed $default = null ]) : mixed
Parameters
- $scope : mixed
- $default : mixed = null
Return values
mixed —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 —onFilterGetOptions()
Returns available options for group scope type.
public
onFilterGetOptions() : array<string|int, mixed>
Return values
array<string|int, mixed> —onFilterUpdate()
Update a filter scope value.
public
onFilterUpdate() : array<string|int, mixed>
Return values
array<string|int, mixed> —prepareVars()
Prepares the view data
public
prepareVars() : mixed
Return values
mixed —propertyExists()
Checks if a property exists, extension equivalent of `property_exists()`
public
propertyExists(string $name) : bool
Parameters
- $name : string
Return values
bool —removeScope()
Programatically remove a scope, used for extensibility.
public
removeScope(string $scopeName) : mixed
Parameters
- $scopeName : string
-
Scope name
Return values
mixed —render()
Renders the widget.
public
render() : string
Return values
string —HTML markup supplied by this widget.
renderScopeElement()
Renders the HTML element for a scope
public
renderScopeElement(mixed $scope) : mixed
Parameters
- $scope : mixed
Return values
mixed —resetSession()
Resets all session data related to this widget.
public
resetSession() : void
Return values
void —setScopeValue()
Sets an scope value for this widget instance.
public
setScopeValue(mixed $scope, mixed $value) : mixed
Parameters
- $scope : mixed
- $value : mixed
Return values
mixed —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 —datesFromAjax()
Convert an array from the posted dates
protected
datesFromAjax(mixed $ajaxDates) : array<string|int, mixed>
Parameters
- $ajaxDates : mixed
Return values
array<string|int, mixed> —defineFilterScopes()
Creates a flat array of filter scopes from the configuration.
protected
defineFilterScopes() : mixed
Return values
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 —filterActiveOptions()
Removes any already selected options from the available options, returns a newly built array.
protected
filterActiveOptions(array<string|int, mixed> $activeKeys, array<string|int, mixed> &$availableOptions) : array<string|int, mixed>
Parameters
- $activeKeys : array<string|int, mixed>
- $availableOptions : array<string|int, mixed>
Return values
array<string|int, mixed> —filterOptionsBySearch()
Filters an array of options by a search term.
protected
filterOptionsBySearch(array<string|int, mixed> $options, string $query) : array<string|int, mixed>
Parameters
- $options : array<string|int, mixed>
- $query : string
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 —getAvailableOptions()
Returns the available options a scope can use, either from the model relation or from a supplied array. Optionally apply a search constraint to the options.
protected
getAvailableOptions(string $scope[, string $searchQuery = null ]) : array<string|int, mixed>
Parameters
- $scope : string
- $searchQuery : string = null
Return values
array<string|int, mixed> —getFilterDateFormat()
protected
getFilterDateFormat(mixed $scope) : string
Parameters
- $scope : mixed
Return values
string —getLocalPath()
protected
getLocalPath(string $relativePath) : mixed
Parameters
- $relativePath : string
Return values
mixed —getOptionsFromArray()
Look at the defined set of options for scope items, or the model method.
protected
getOptionsFromArray(mixed $scope[, mixed $searchQuery = null ]) : array<string|int, mixed>
Parameters
- $scope : mixed
- $searchQuery : mixed = null
Return values
array<string|int, mixed> —getOptionsFromModel()
Looks at the model for defined scope items.
protected
getOptionsFromModel(mixed $scope[, mixed $searchQuery = null ]) : Collection
Parameters
- $scope : mixed
- $searchQuery : mixed = null
Return values
Collection —getScopeDepends()
Returns a HTML encoded value containing the other scopes this scope depends on
protected
getScopeDepends(FilterScope $scope) : string
Parameters
- $scope : FilterScope
Return values
string —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 —handleViewException()
Handle a view exception.
protected
handleViewException(Exception $e, int $obLevel) : void
Parameters
- $e : Exception
- $obLevel : int
Return values
void —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 —makeFilterScope()
Creates a filter scope object from name and configuration.
protected
makeFilterScope(mixed $name, mixed $config) : mixed
Parameters
- $name : mixed
- $config : mixed
Return values
mixed —makeSessionId()
Returns a unique session identifier for this widget and controller action.
protected
makeSessionId() : string
Return values
string —numbersFromAjax()
Convert an array from the posted numbers
protected
numbersFromAjax(mixed $ajaxNumbers) : array<string|int, mixed>
Parameters
- $ajaxNumbers : mixed
Return values
array<string|int, mixed> —optionsFromAjax()
Convert a named array to a key/pair array
protected
optionsFromAjax(array<string|int, mixed> $options) : array<string|int, mixed>
Parameters
- $options : array<string|int, mixed>
Return values
array<string|int, mixed> —optionsToAjax()
Convert a key/pair array to a named array {id: 1, name: 'Foobar'}
protected
optionsToAjax(array<string|int, mixed> $options) : array<string|int, mixed>
Parameters
- $options : 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 —removeDuplicates()
Removes duplicate assets from the entire collection.
protected
removeDuplicates() : void