pars.php 2.29 KB
<?php

use yii\helpers\Html;
use yii\grid\GridView;
/* @var $this yii\web\View */

$this->title = Yii::t('relation', 'Relation items for {relation}', ['relation' => $relation['name']]);
$this->params['breadcrumbs'][] = ['label' => Yii::t('relation', 'Relations'), 'url' => ['/relation/manage']];
$this->params['breadcrumbs'][] = $this->title;
?>
<div class="relation-pars">

    <h1><?= Html::encode($this->title) ?></h1>

    <p>
        <?= Html::a(Yii::t('relation', 'Create relation'), ['create?relation='. $relation_key], ['class' => 'btn btn-success']) ?>
    </p>

    <?= GridView::widget([
        'dataProvider' => $dataProvider,
        'columns' => [
            ['class' => 'yii\grid\SerialColumn'],
            'alias',
            'entity1.'. $relation['entity1']['listField'],
            'entity2.'. $relation['entity2']['listField'],
            [
                'class' => 'yii\grid\ActionColumn',
                'template' => '{update} {delete}',
                'buttons' => [
                    'update' => function ($url, $model) {
                        return Html::a('<span class="glyphicon glyphicon-pencil"></span>', $url, [
                            'title' => Yii::t('relation', 'Edit par'),
                        ]);
                    },
                    'delete' => function ($url, $model) {
                        return Html::a('<span class="glyphicon glyphicon-trash"></span>', $url, [
                            'title' => Yii::t('relation', 'Delete par'),
                        ]);
                    },
                ],
                'urlCreator' => function ($action, $model, $key, $index) use ($relation, $relation_key) {
                    if ($action === 'update') {
                        $url ='/admin/relation/manage/update?relation='. $relation_key .'&id='. $model->{$relation['entity1']['linked_key']} .':'. $model->{$relation['entity2']['linked_key']};
                        return $url;
                    }
                    if ($action === 'delete') {
                        $url ='/admin/relation/manage/delete?relation='. $relation_key .'&id='. $model->{$relation['entity1']['linked_key']} .':'. $model->{$relation['entity2']['linked_key']};
                        return $url;
                    }
                }
            ],
        ],
    ]); ?>
</div>