HumHub Documentation (unofficial)

DropDownGridColumn extends DataColumn
in package

DropDown Grid Column

Tags
author

luke

Table of Contents

Properties

$ajaxOptions  : array<string|int, mixed>
$attribute  : string
$content  : callable
$contentOptions  : array<string|int, mixed>|Closure
$dropDownOptions  : array<string|int, mixed>
$enableSorting  : bool
$encodeLabel  : bool
$filter  : string|array<string|int, mixed>|null|false
$filterAttribute  : string|null
$filterInputOptions  : array<string|int, mixed>
$filterOptions  : array<string|int, mixed>
$footer  : string
$footerOptions  : array<string|int, mixed>
$format  : string|array<string|int, mixed>|Closure
$grid  : GridView
$header  : string|null
$headerOptions  : array<string|int, mixed>
$htmlOptions  : array<string|int, mixed>
$label  : string|null
$options  : array<string|int, mixed>
$readonly  : mixed
$sortLinkOptions  : array<string|int, mixed>
$submitAttributes  : array<string|int, mixed>
$value  : string|Closure|null
$visible  : bool

Methods

__call()  : mixed
Calls the named method which is not a class method.
__construct()  : mixed
Constructor.
__get()  : mixed
Returns the value of an object property.
__isset()  : bool
Checks if a property is set, i.e. defined and not null.
__set()  : mixed
Sets value of an object property.
__unset()  : mixed
Sets an object property to null.
canGetProperty()  : bool
Returns a value indicating whether a property can be read.
canSetProperty()  : bool
Returns a value indicating whether a property can be set.
className()  : string
Returns the fully qualified name of this class.
getDataCellValue()  : string
Returns the data cell value.
hasMethod()  : bool
Returns a value indicating whether a method is defined.
hasProperty()  : bool
Returns a value indicating whether a property is defined.
init()  : mixed
Initializes the object.
renderDataCell()  : string
Renders a data cell.
renderFilterCell()  : mixed
Renders the filter cell.
renderFooterCell()  : mixed
Renders the footer cell.
renderHeaderCell()  : mixed
Renders the header cell.
getHeaderCellLabel()  : string
Returns header cell label.
renderDataCellContent()  : string
Renders the data cell content.
renderFilterCellContent()  : string
Renders the filter cell content.
renderFooterCellContent()  : string
Renders the footer cell content.
renderHeaderCellContent()  : string
Renders the header cell content.

Properties

$attribute

public string $attribute

the attribute name associated with this column. When neither [[content]] nor [[value]] is specified, the value of the specified attribute will be retrieved from each data model and displayed.

Also, if [[label]] is not specified, the label associated with the attribute will be displayed.

$content

public callable $content

This is a callable that will be used to generate the content of each cell. The signature of the function should be the following: function ($model, $key, $index, $column). Where $model, $key, and $index refer to the model, key and index of the row currently being rendered and $column is a reference to the [[Column]] object.

$contentOptions

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

the HTML attributes for the data cell tag. This can either be an array of attributes or an anonymous function ([[Closure]]) that returns such an array. The signature of the function should be the following: function ($model, $key, $index, $column). Where $model, $key, and $index refer to the model, key and index of the row currently being rendered and $column is a reference to the [[Column]] object. A function may be used to assign different attributes to different rows based on the data in that row.

Tags
see
Html::renderTagAttributes()

for details on how attributes are being rendered.

$dropDownOptions

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

dropdown options

$enableSorting

public bool $enableSorting = true

whether to allow sorting by this column. If true and [[attribute]] is found in the sort definition of [[GridView::dataProvider]], then the header cell of this column will contain a link that may trigger the sorting when being clicked.

$encodeLabel

public bool $encodeLabel = true

whether the header label should be HTML-encoded.

Tags
see
label
since
2.0.1

$filter

public string|array<string|int, mixed>|null|false $filter

the HTML code representing a filter input (e.g. a text field, a dropdown list) that is used for this data column. This property is effective only when [[GridView::filterModel]] is set.

  • If this property is not set, a text field will be generated as the filter input with attributes defined with [[filterInputOptions]]. See [[\yii\helpers\BaseHtml::activeInput]] for details on how an active input tag is generated.
  • If this property is an array, a dropdown list will be generated that uses this property value as the list options.
  • If you don't want a filter for this data column, set this value to be false.

$filterAttribute

public string|null $filterAttribute

the attribute name of the [[GridView::filterModel]] associated with this column. If not set, will have the same value as [[attribute]].

Tags
since
2.0.41

$filterInputOptions

public array<string|int, mixed> $filterInputOptions = ['class' => 'form-control', 'id' => null]

the HTML attributes for the filter input fields. This property is used in combination with the [[filter]] property. When [[filter]] is not set or is an array, this property will be used to render the HTML attributes for the generated filter input fields.

Empty id in the default value ensures that id would not be obtained from the model attribute thus providing better performance.

Tags
see
Html::renderTagAttributes()

for details on how attributes are being rendered.

$filterOptions

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

the HTML attributes for the filter cell tag.

Tags
see
Html::renderTagAttributes()

for details on how attributes are being rendered.

public string $footer

the footer cell content. Note that it will not be HTML-encoded.

$footerOptions

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

the HTML attributes for the footer cell tag.

Tags
see
Html::renderTagAttributes()

for details on how attributes are being rendered.

$format

public string|array<string|int, mixed>|Closure $format = 'text'

in which format should the value of each data model be displayed as (e.g. "raw", "text", "html", ['date', 'php:Y-m-d']). Supported formats are determined by the [[GridView::formatter|formatter]] used by the [[GridView]]. Default format is "text" which will format the value as an HTML-encoded plain text when [[\yii\i18n\Formatter]] is used as the [[GridView::$formatter|formatter]] of the GridView.

Tags
see
Formatter::format()

$header

public string|null $header

the header cell content. Note that it will not be HTML-encoded.

$headerOptions

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

the HTML attributes for the header cell tag.

Tags
see
Html::renderTagAttributes()

for details on how attributes are being rendered.

$label

public string|null $label

label to be displayed in the [[header|header cell]] and also to be used as the sorting link label when sorting is enabled for this column. If it is not set and the models provided by the GridViews data provider are instances of [[\yii\db\ActiveRecord]], the label will be determined using [[\yii\db\ActiveRecord::getAttributeLabel()]]. Otherwise [[\yii\helpers\Inflector::camel2words()]] will be used to get a label.

$options

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

the HTML attributes for the column group tag.

Tags
see
Html::renderTagAttributes()

for details on how attributes are being rendered.

$sortLinkOptions

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

the HTML attributes for the link tag in the header cell generated by [[\yii\data\Sort::link]] when sorting is enabled for this column.

Tags
see
Html::renderTagAttributes()

for details on how attributes are being rendered.

$submitAttributes

public array<string|int, mixed> $submitAttributes = ['id']

list of attributes which should be aditionally submitted (e.g. id)

$value

public string|Closure|null $value

an anonymous function or a string that is used to determine the value to display in the current column.

If this is an anonymous function, it will be called for each row and the return value will be used as the value to display for every data model. The signature of this function should be: function ($model, $key, $index, $column). Where $model, $key, and $index refer to the model, key and index of the row currently being rendered and $column is a reference to the [[DataColumn]] object.

You may also set this property to a string representing the attribute name to be displayed in this column. This can be used when the attribute to be displayed is different from the [[attribute]] that is used for sorting and filtering.

If this is not set, $model[$attribute] will be used to obtain the value, where $attribute is the value of [[attribute]].

$visible

public bool $visible = true

whether this column is visible. Defaults to true.

Methods

__call()

Calls the named method which is not a class method.

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

Do not call this method directly as it is a PHP magic method that will be implicitly called when an unknown method is being invoked.

Parameters
$name : string

the method name

$params : array<string|int, mixed>

method parameters

Tags
throws
UnknownMethodException

when calling unknown method

Return values
mixed

the method return value

__construct()

Constructor.

public __construct([array<string|int, mixed> $config = [] ]) : mixed

The default implementation does two things:

  • Initializes the object with the given configuration $config.
  • Call [[init()]].

If this method is overridden in a child class, it is recommended that

  • the last parameter of the constructor is a configuration array, like $config here.
  • call the parent implementation at the end of the constructor.
Parameters
$config : array<string|int, mixed> = []

name-value pairs that will be used to initialize the object properties

__get()

Returns the value of an object property.

public __get(string $name) : mixed

Do not call this method directly as it is a PHP magic method that will be implicitly called when executing $value = $object->property;.

Parameters
$name : string

the property name

Tags
throws
UnknownPropertyException

if the property is not defined

throws
InvalidCallException

if the property is write-only

see
__set()
Return values
mixed

the property value

__isset()

Checks if a property is set, i.e. defined and not null.

public __isset(string $name) : bool

Do not call this method directly as it is a PHP magic method that will be implicitly called when executing isset($object->property).

Note that if the property is not defined, false will be returned.

Parameters
$name : string

the property name or the event name

Tags
see
https://www.php.net/manual/en/function.isset.php
Return values
bool

whether the named property is set (not null).

__set()

Sets value of an object property.

public __set(string $name, mixed $value) : mixed

Do not call this method directly as it is a PHP magic method that will be implicitly called when executing $object->property = $value;.

Parameters
$name : string

the property name or the event name

$value : mixed

the property value

Tags
throws
UnknownPropertyException

if the property is not defined

throws
InvalidCallException

if the property is read-only

see
__get()

__unset()

Sets an object property to null.

public __unset(string $name) : mixed

Do not call this method directly as it is a PHP magic method that will be implicitly called when executing unset($object->property).

Note that if the property is not defined, this method will do nothing. If the property is read-only, it will throw an exception.

Parameters
$name : string

the property name

Tags
throws
InvalidCallException

if the property is read only.

see
https://www.php.net/manual/en/function.unset.php

canGetProperty()

Returns a value indicating whether a property can be read.

public canGetProperty(string $name[, bool $checkVars = true ]) : bool

A property is readable if:

  • the class has a getter method associated with the specified name (in this case, property name is case-insensitive);
  • the class has a member variable with the specified name (when $checkVars is true);
Parameters
$name : string

the property name

$checkVars : bool = true

whether to treat member variables as properties

Tags
see
canSetProperty()
Return values
bool

whether the property can be read

canSetProperty()

Returns a value indicating whether a property can be set.

public canSetProperty(string $name[, bool $checkVars = true ]) : bool

A property is writable if:

  • the class has a setter method associated with the specified name (in this case, property name is case-insensitive);
  • the class has a member variable with the specified name (when $checkVars is true);
Parameters
$name : string

the property name

$checkVars : bool = true

whether to treat member variables as properties

Tags
see
canGetProperty()
Return values
bool

whether the property can be written

className()

Returns the fully qualified name of this class.

public static className() : string
Tags
deprecated

since 2.0.14. On PHP >=5.5, use ::class instead.

Return values
string

the fully qualified name of this class.

getDataCellValue()

Returns the data cell value.

public getDataCellValue(mixed $model, mixed $key, int $index) : string
Parameters
$model : mixed

the data model

$key : mixed

the key associated with the data model

$index : int

the zero-based index of the data model among the models array returned by [[GridView::dataProvider]].

Return values
string

the data cell value

hasMethod()

Returns a value indicating whether a method is defined.

public hasMethod(string $name) : bool

The default implementation is a call to php function method_exists(). You may override this method when you implemented the php magic method __call().

Parameters
$name : string

the method name

Return values
bool

whether the method is defined

hasProperty()

Returns a value indicating whether a property is defined.

public hasProperty(string $name[, bool $checkVars = true ]) : bool

A property is defined if:

  • the class has a getter or setter method associated with the specified name (in this case, property name is case-insensitive);
  • the class has a member variable with the specified name (when $checkVars is true);
Parameters
$name : string

the property name

$checkVars : bool = true

whether to treat member variables as properties

Tags
see
canGetProperty()
see
canSetProperty()
Return values
bool

whether the property is defined

renderDataCell()

Renders a data cell.

public renderDataCell(mixed $model, mixed $key, int $index) : string
Parameters
$model : mixed

the data model being rendered

$key : mixed

the key associated with the data model

$index : int

the zero-based index of the data item among the item array returned by [[GridView::dataProvider]].

Return values
string

the rendering result

renderFilterCell()

Renders the filter cell.

public renderFilterCell() : mixed

renderFooterCell()

Renders the footer cell.

public renderFooterCell() : mixed

renderHeaderCell()

Renders the header cell.

public renderHeaderCell() : mixed

getHeaderCellLabel()

Returns header cell label.

protected getHeaderCellLabel() : string
Tags
since
2.0.8
Return values
string

label

renderDataCellContent()

Renders the data cell content.

protected renderDataCellContent(mixed $model, mixed $key, mixed $index) : string
Parameters
$model : mixed

the data model

$key : mixed

the key associated with the data model

$index : mixed

the zero-based index of the data model among the models array returned by [[GridView::dataProvider]].

Tags
inheritdoc
Return values
string

the rendering result

renderFilterCellContent()

Renders the filter cell content.

protected renderFilterCellContent() : string
Return values
string

the rendering result

renderFooterCellContent()

Renders the footer cell content.

protected renderFooterCellContent() : string

The default implementation simply renders [[footer]]. This method may be overridden to customize the rendering of the footer cell.

Return values
string

the rendering result

renderHeaderCellContent()

Renders the header cell content.

protected renderHeaderCellContent() : string
Return values
string

the rendering result


        
On this page

Search results