index.php 2.54 KB
<?php
    
    use artbox\catalog\models\Brand;
    use artbox\core\helpers\ImageHelper;
    use yii\helpers\Html;
    use yiister\gentelella\widgets\grid\GridView;
    use yiister\gentelella\widgets\Panel;
    
    /* @var $this yii\web\View */
    /* @var $searchModel artbox\catalog\models\BrandSearch */
    /* @var $dataProvider yii\data\ActiveDataProvider */
    
    $this->title = Yii::t('catalog', 'Brands');
    $this->params[ 'breadcrumbs' ][] = $this->title;
?>
<div class="brand-index">
    
    <?php
        $xPanel = Panel::begin(
            [
                'header' => Html::encode($this->title),
            ]
        );
    ?>
    <?php // echo $this->render('_search', ['model' => $searchModel]); ?>
    
    <p>
        <?= Html::a(Yii::t('catalog', 'Create Brand'), [ 'create' ], [ 'class' => 'btn btn-success' ]) ?>
    </p>
    <?= GridView::widget(
        [
            'dataProvider' => $dataProvider,
            'filterModel'  => $searchModel,
            'columns'      => [
                [ 'class' => 'yii\grid\SerialColumn' ],
                'id',
                [
                    'attribute' => 'title',
                    'value'     => 'lang.title',
                ],
                [
                    'attribute'     => 'image_id',
                    'filter'        => false,
                    'enableSorting' => false,
                    'label'         => \Yii::t('catalog', 'Image'),
                    'value'         => function ($model, $key, $index, $column) {
                        /**
                         * @var Brand $model
                         */
                        if (!empty( $model->image_id )) {
                            return ImageHelper::set($model->image->getPath())
                                              ->setWidth(100)
                                              ->render();
                        } else {
                            return null;
                        }
                    },
                    'format'        => 'image',
                ],
                'created_at:datetime',
                [
                    'attribute' => 'status',
                    'format'    => 'boolean',
                    'filter'    => [
                        0 => \Yii::$app->formatter->asBoolean(0),
                        1 => \Yii::$app->formatter->asBoolean(1),
                    ],
                ],
                'sort',
                [ 'class' => 'yii\grid\ActionColumn' ],
            ],
        ]
    ); ?>
    
    <?php
        $xPanel::end();
    ?>
</div>