<?php
use app\models\Parameter;
use yii\helpers\Html;
use yii\bootstrap5\ActiveForm;
use yii\grid\GridView;

/** @var yii\web\View $this */

$this->title = 'params list';

?>
<h1>Parameters</h1>

    <?php $searchForm = ActiveForm::begin([
        'action' => '/list/index',
        'method' => 'get',
    ]); ?>

        <?= Html::a('Create new', '/list/edit', [ 'class' => 'btn btn-l btn-success w-100 mb-1' ]) ?>
        <?= Html::submitButton('Run search', [ 'class' => 'btn btn-l btn-success w-100' ]) ?>
        <p class="small">Set your search query in the grid view</p>

    <?php ActiveForm::end(); ?>

<?= GridView::widget([
    'dataProvider' => $provider,
    'filterModel' => $searchModel,
    'columns' => [
        'id', 'title', 'type',
        [
            'label' => 'Icon',
            'value' => function (Parameter $model) {
                if ($model->icon) {
                    $url = '/api/image?sha256=' . $model->getRelatedRecords()['icon']->sha256;
                    return Html::a(Html::img($url, [ 'width' => 150, 'height' => 150 ]), $url, [ 'alt' => 'icon', 'target' => '_blank' ]);
                }
            },
            'format' => 'raw',
        ],
        [
            'label' => 'Delete icon',
            'value' => function (Parameter $model) {
                if ($model->icon) {
                    return Html::a('Delete icon', '/list/delicon?type=normal&id=' . $model->id, [ 'class' => 'btn btn-sx btn-danger' ]);
                }
            },
            'format' => 'raw',
        ],
        [
            'label' => 'Gray Icon',
            'value' => function (Parameter $model) {
                if ($model->iconGray) {
                    $url = '/api/image?sha256=' . $model->getRelatedRecords()['iconGray']->sha256;
                    return Html::a(Html::img($url, [ 'width' => 150, 'height' => 150 ]), $url, [ 'alt' => 'grayscale icon', 'target' => '_blank' ]);
                }
            },
            'format' => 'raw',
        ],
        [
            'label' => 'Delete gray icon',
            'value' => function (Parameter $model) {
                if ($model->iconGray) {
                    return Html::a('Delete gray icon', '/list/delicon?type=gray&id=' . $model->id, [ 'class' => 'btn btn-sx btn-danger' ]);
                }
            },
            'format' => 'raw',
        ],
        [
            'label' => 'Edit',
            'value' => function (Parameter $model) {
                return Html::a('Edit', '/list/edit?id=' . $model->id, [ 'class' => 'btn btn-sx btn-secondary' ]);
            },
            'format' => 'raw',
        ],
    ]
]); ?>