makeGridViewContentOptionsCallback() : ComparisonHelper::contentOptionsProxyFunc();
?>
= GridView::widget([
'hover' => true,
'headerContainer' => ['class' => 'thead-light'],
'tableOptions' => [
'class' => 'table-sm mb-0',
'id' => 'preferences_table',
],
'striped' => false,
'summary' => false,
'pager' => [
'firstPageLabel' => '<<',
'prevPageLabel' => '<',
'nextPageLabel' => '>',
'lastPageLabel' => '>>',
],
'dataProvider' => $dataProvider,
'condensed' => true,
'layout' => '{items}{pager}',
'rowOptions' => function ($model, $index, $widget, $grid) {
return ['data-model-id' => $model->id];
},
'floatHeader' => true,
'beforeHeader' => [
[
'columns' => [
[
'content' => Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Название группы льгот в таблице блока льгот на странице льгот: `Льгота`'
),
'options' => [
'colspan' => 2,
'class' => 'text-center'
]
],
[
'content' => Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Название группы подтверждающих документов в таблице блока льгот на странице льгот: `Подтверждающий документ`'
),
'options' => [
'colspan' => 7,
'class' => 'text-center'
]
],
],
'options' => ['class' => 'skip-export']
]
],
'resizableColumns' => false,
'responsiveWrap' => false,
'responsive' => true,
'floatOverflowContainer' => true,
'columns' => [
[
'attribute' => 'benefitDescription',
'label' => Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Название колонки "benefitDescription" в таблице блока льгот на странице льгот: `Тип льготы`'
),
'contentOptions' => $preferencesCellCallback(),
],
[
'attribute' => 'benefitSign',
'label' => Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Название колонки "benefitSign" в таблице блока льгот на странице льгот: `Отличительный признак`'
),
'contentOptions' => $preferencesCellCallback(),
],
[
'attribute' => 'documentTypeDescription',
'label' => Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Название колонки "documentTypeDescription" в таблице блока льгот на странице льгот: `Тип документа`'
),
'contentOptions' => $preferencesCellCallback(),
],
[
'attribute' => 'document_series',
'label' => Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Название колонки "document_series" в таблице блока льгот на странице льгот: `Серия`'
),
'contentOptions' => $preferencesCellCallback(),
],
[
'attribute' => 'document_number',
'label' => Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Название колонки "document_number" в таблице блока льгот на странице льгот: `Номер`'
),
'contentOptions' => $preferencesCellCallback(),
],
[
'attribute' => 'document_date',
'label' => Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Название колонки "document_date" в таблице блока льгот на странице льгот: `Дата выдачи`'
),
'contentOptions' => $preferencesCellCallback(),
],
[
'attribute' => 'contractor_id',
'value' => function ($model) {
return $model->contractor->name ?? '';
},
'label' => Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Название колонки "contractor_id" в таблице блока льгот на странице льгот: `Кем выдано`'
),
'contentOptions' => $preferencesCellCallback(),
],
[
'attribute' => 'documentCheckStatus',
'label' => (new BachelorPreferences())->getAttributeLabel('documentCheckStatus'),
],
[
'attribute' => 'id',
'label' => Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Название колонки "id" в таблице блока льгот на странице льгот: `Действия`'
),
'format' => 'raw',
'value' => function (BachelorPreferences $model, $key) use ($canEdit, $benefitsService) {
$links = '';
if ($benefitsService->canDownloadBenefits($model->id)) {
$url = Url::toRoute([
'site/download-benefits',
'id' => $model->id
]);
$btnLabel = Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Подпись кнопки скачивания в таблице блока льгот на странице льгот: `Скачать`'
);
$links .= Html::a(
" {$btnLabel}",
$url,
[
'class' => 'btn btn-link',
'download' => true
]
);
}
$links .= ' ';
$hasEnlistedBachelorSpecialities = $model->hasEnlistedBachelorSpecialities();
$btnLabel = Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Подпись кнопки просмотра в таблице блока льгот на странице льгот: `Просмотреть`'
);
$icon = '';
if ($canEdit && !$hasEnlistedBachelorSpecialities) {
$btnLabel = Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Подпись кнопки редактирования в таблице блока льгот на странице льгот: `Редактировать`'
);
$icon = '';
}
$links .= Html::button(
"{$icon} {$btnLabel}",
[
'class' => 'btn btn-link',
'data-toggle' => 'modal',
'data-target' => "#edit_modal_windows_{$key}"
]
);
if ($canEdit && !$hasEnlistedBachelorSpecialities) {
if (!$model['from1c'] && !$model->read_only) {
$url = Url::toRoute([
'site/delete-benefits',
'id' => $model->id
]);
$btnLabel = Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Подпись кнопки удаления в таблице блока льгот на странице льгот: `Удалить`'
);
$links .= Html::a(
" {$btnLabel}",
$url,
[
'class' => 'btn btn-link',
'data-confirm' => Yii::t(
'abiturient/bachelor/accounting-benefits/block-benefits',
'Подтверждение удаления льготы: `Вы уверены, что хотите удалить эту льготу?`'
),
]
);
}
} elseif ($hasEnlistedBachelorSpecialities) {
$tooltip = TooltipWidget::widget([
'message' => Yii::$app->configurationManager->getText('tooltip_for_benefits_related_with_bachelor_speciality_marked_as_enlisted'),
'params' => 'style="margin-left: 4px;" data-container="body"'
]);
$links .= " {$tooltip}";
}
return Html::tag('div', $links, ['class' => 'd-flex flex-column']);
}
]
]
]); ?>
$provider) {
$modalId = "edit_modal_windows_{$key}";
Modal::begin([
'title' => Html::tag('h4', $title),
'options' => ['tabindex' => false],
'size' => 'modal-lg',
'id' => $modalId,
]);
echo $this->render(
'@common/components/AccountingBenefits/_form',
[
'application' => $application,
'id' => $id,
'model' => $provider,
'items' => $items,
'canEdit' => $canEdit,
'number' => $key,
'modalId' => $modalId,
'action' => ['site/edit-benefits'],
'itemsDoc' => $itemsDoc,
'buttonName' => Yii::t(
'abiturient/bachelor/accounting-benefits/modal-benefits',
'Подпись кнопки для сохранения формы; модального окна льгот на странице льгот: `Сохранить`'
)
]
);
Modal::end();
}
if ($canEdit) {
$modalId = 'create_modal_window';
Modal::begin([
'title' => Html::tag(
'h4',
Yii::t(
'abiturient/bachelor/accounting-benefits/modal-benefits',
'Заголовок модального окна льгот на странице льгот: `Создать`'
)
),
'options' => ['tabindex' => false],
'size' => 'modal-lg',
'id' => $modalId,
]);
echo $this->render(
'@common/components/AccountingBenefits/_form',
[
'application' => $application,
'id' => $id,
'model' => $model,
'items' => $items,
'canEdit' => $canEdit,
'modalId' => $modalId,
'action' => $action,
'itemsDoc' => $itemsDoc
]
);
Modal::end();
}