kartik\grid\ExpandRowColumn::getDataCellValue PHP Метод

getDataCellValue() публичный Метод

public getDataCellValue ( $model, $key, $index )
    public function getDataCellValue($model, $key, $index)
    {
        $value = parent::getDataCellValue($model, $key, $index);
        /** @noinspection PhpUnusedLocalVariableInspection */
        $icon = '';
        if ($value === GridView::ROW_EXPANDED) {
            $type = 'collapsed';
            $icon = $this->collapseIcon;
        } elseif ($value === GridView::ROW_COLLAPSED) {
            $type = 'expanded';
            $icon = $this->expandIcon;
        } else {
            return $value;
        }
        $detail = static::parseData($this->detail, $model, $key, $index, $this);
        $detailOptions = static::parseData($this->detailOptions, $model, $key, $index, $this);
        $disabled = static::parseData($this->disabled, $model, $key, $index, $this) ? ' kv-state-disabled' : '';
        if ($this->hiddenFromExport) {
            Html::addCssClass($detailOptions, 'skip-export');
        }
        $detailOptions['data-index'] = $index;
        $detailOptions['data-key'] = !is_string($key) && !is_numeric($key) ? is_array($key) ? Json::encode($key) : (string) $key : $key;
        $id = $this->grid->options['id'];
        Html::addCssClass($detailOptions, ['kv-expanded-row', $id]);
        $content = Html::tag('div', $detail, $detailOptions);
        return <<<HTML
        <div class="kv-expand-row {$id}{$disabled}">
            <div class="kv-expand-icon kv-state-{$type}{$disabled} {$id}">{$icon}</div>
            <div class="kv-expand-detail skip-export {$id}" style="display:none;">
                {$content}
            </div>
        </div>
HTML;
    }