index.php 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. use yii\helpers\Html;
  3. use yii\grid\GridView;
  4. use app\models\Files;
  5. use app\models\FilesSearch;
  6. use kartik\daterange\DateRangePicker;
  7. use yii\helpers\ArrayHelper;
  8. use app\models\User;
  9. /* @var $this yii\web\View */
  10. /* @var $searchModel app\models\FilesSearch */
  11. /* @var $dataProvider yii\data\ActiveDataProvider */
  12. $this->title = Yii::t('app', 'Files');
  13. $this->params['breadcrumbs'][] = $this->title;
  14. ?>
  15. <div class="files-index">
  16. <!-- --><?php /*echo $this->render('_search', ['model' => $searchModel]); */?>
  17. <?= GridView::widget([
  18. 'dataProvider' => $dataProvider,
  19. 'filterModel' => $searchModel,
  20. 'columns' => [
  21. //['class' => 'yii\grid\SerialColumn'],
  22. // 'id',
  23. // 'path',
  24. ['attribute' =>'name',
  25. 'header' => Yii::t('app', 'FileName ID'),
  26. ],
  27. [
  28. // delete from files where user_id not in (select id from user) // in SQL
  29. // 'attribute' => 'user_id.username', for debug
  30. 'attribute' => 'user_id',
  31. 'header' => Yii::t('app','UserName ID'),
  32. 'filter' => ArrayHelper::map(User::find()->all(), 'id', 'username'),
  33. 'value'=> function(Files $e)
  34. {
  35. return $e->user->username;
  36. }
  37. ],
  38. [
  39. 'attribute' => 'date',
  40. 'header' => Yii::t('app', 'Date'),
  41. 'filter' => DateRangePicker::widget([
  42. 'name'=>'date_range_2',
  43. 'presetDropdown'=>true,
  44. 'hideInput'=>true
  45. ])
  46. ],
  47. [
  48. 'class' => 'yii\grid\ActionColumn',
  49. 'template' => '{view} {delete} {maintenance} ',
  50. 'buttons' => [
  51. 'maintenance' => function ($url, $model, $key)
  52. {
  53. return Html::a('<span class="glyphicon glyphicon-download"></span>', ['/files/download', 'id' => $model->id], [
  54. 'title' => 'download files',
  55. 'data-pjax' => '0',
  56. ]);
  57. }
  58. ]
  59. ],
  60. //'user_id',
  61. // 'auction_id',
  62. // 'lot_id',
  63. // ['class' => 'yii\grid\ActionColumn'],
  64. ],
  65. ]); ?>
  66. </div>