kartik\grid\GridView::initToggleData PHP Méthode

initToggleData() protected méthode

Initialize toggle data button options.
protected initToggleData ( )
    protected function initToggleData()
    {
        if (!$this->toggleData) {
            return;
        }
        $defaultOptions = ['maxCount' => 10000, 'minCount' => 500, 'confirmMsg' => Yii::t('kvgrid', 'There are {totalCount} records. Are you sure you want to display them all?', ['totalCount' => number_format($this->dataProvider->getTotalCount())]), 'all' => ['icon' => 'resize-full', 'label' => Yii::t('kvgrid', 'All'), 'class' => 'btn btn-default', 'title' => Yii::t('kvgrid', 'Show all data')], 'page' => ['icon' => 'resize-small', 'label' => Yii::t('kvgrid', 'Page'), 'class' => 'btn btn-default', 'title' => Yii::t('kvgrid', 'Show first page data')]];
        $this->toggleDataOptions = array_replace_recursive($defaultOptions, $this->toggleDataOptions);
        $tag = $this->_isShowAll ? 'page' : 'all';
        $options = $this->toggleDataOptions[$tag];
        $this->toggleDataOptions[$tag]['id'] = $this->_toggleButtonId;
        $icon = ArrayHelper::remove($this->toggleDataOptions[$tag], 'icon', '');
        $label = !isset($options['label']) ? $defaultOptions[$tag]['label'] : $options['label'];
        if (!empty($icon)) {
            $label = "<i class='glyphicon glyphicon-{$icon}'></i> " . $label;
        }
        $this->toggleDataOptions[$tag]['label'] = $label;
        if (!isset($this->toggleDataOptions[$tag]['title'])) {
            $this->toggleDataOptions[$tag]['title'] = $defaultOptions[$tag]['title'];
        }
        $this->toggleDataOptions[$tag]['data-pjax'] = $this->pjax ? "true" : false;
    }