index.php 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. <?php
  2. /**
  3. * Author: lf
  4. * Blog: https://blog.feehi.com
  5. * Email: job@feehi.com
  6. * Created at: 2017-12-05 13:00
  7. */
  8. /**
  9. * @var $this yii\web\View
  10. * @var $dataProvider \yii\data\ActiveDataProvider
  11. * @var $searchModel \backend\models\search\OptionsSearch
  12. */
  13. use backend\grid\DateColumn;
  14. use backend\grid\GridView;
  15. use backend\grid\SortColumn;
  16. use backend\grid\StatusColumn;
  17. use common\libs\Constants;
  18. use backend\widgets\Bar;
  19. use backend\grid\CheckboxColumn;
  20. use backend\grid\ActionColumn;
  21. $this->title = 'Ad';
  22. $this->params['breadcrumbs'][] = Yii::t('app', 'Ad');
  23. ?>
  24. <div class="row">
  25. <div class="col-sm-12">
  26. <div class="ibox">
  27. <?= $this->render('/widgets/_ibox-title') ?>
  28. <div class="ibox-content">
  29. <?= Bar::widget()?>
  30. <?= GridView::widget([
  31. 'dataProvider' => $dataProvider,
  32. 'filterModel' => $searchModel,
  33. 'columns' => [
  34. [
  35. 'class' => CheckboxColumn::className(),
  36. ],
  37. [
  38. 'attribute' => 'name',
  39. ],
  40. [
  41. 'attribute' => 'input_type',
  42. 'value' => function($model){
  43. return Constants::getAdTypeItems($model->input_type);
  44. },
  45. 'filter' => Constants::getAdTypeItems(),
  46. ],
  47. [
  48. 'attribute' => 'ad',
  49. 'format' => 'raw',
  50. 'value' => function($model){
  51. switch ($model->input_type){
  52. case Constants::AD_IMG:
  53. return "<img class='img-responsive' src='{$model->ad}'>";
  54. case Constants::AD_VIDEO:
  55. return "<video class='img-responsive' src='{$model->ad}' controls='controls'></video>";
  56. case Constants::AD_TEXT:
  57. return $model->ad;
  58. }
  59. }
  60. ],
  61. [
  62. 'attribute' => 'link',
  63. ],
  64. [
  65. 'attribute' => 'desc',
  66. ],
  67. [
  68. 'attribute' => 'autoload',
  69. 'class' => StatusColumn::className(),
  70. 'filter' => Constants::getYesNoItems(),
  71. ],
  72. [
  73. 'attribute' => 'sort',
  74. 'class' => SortColumn::className(),
  75. ],
  76. [
  77. 'class' => DateColumn::className(),
  78. 'attribute' => 'created_at',
  79. 'filter' => false,
  80. ],
  81. [
  82. 'class' => DateColumn::className(),
  83. 'attribute' => 'updated_at',
  84. 'filter' => false,
  85. ],
  86. [
  87. 'class' => ActionColumn::className(),
  88. 'width' => '190px'
  89. ],
  90. ]
  91. ]); ?>
  92. </div>
  93. </div>
  94. </div>
  95. </div>