index.php 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. <?php
  2. use yii\helpers\Html;
  3. use yii\grid\GridView;
  4. use yii\helpers\Url;
  5. use yii\widgets\ActiveForm;
  6. use yii\helpers\ArrayHelper;
  7. use app\models\Auctions;
  8. /* @var $this yii\web\View */
  9. /* @var $searchModel app\models\LotSearch */
  10. /* @var $dataProvider yii\data\ActiveDataProvider */
  11. $this->title = Yii::t('app', 'Аукціони');
  12. $this->params['breadcrumbs'][] = 'Аукціони';//$this->title;
  13. ?>
  14. <div class="lots-index">
  15. <div class="panel panel-primary">
  16. <div class="panel-heading"><span class="glyphicon glyphicon-th"></span><strong> <?= Html::encode($this->title) ?></strong></div>
  17. <div class="panel-body">
  18. <!-- <ul class="nav nav-tabs">
  19. <li role="presentation">
  20. <?= Html::a(\Yii::t('app', 'Template ID'), ['auclots/index'], ['class' => 'presentation active']) ?>
  21. </li>
  22. <li role="presentation" class="active">
  23. <?= Html::a(\Yii::t('app', 'Lots ID'), ['/lots/index'], ['class' => 'presentation active']) ?>
  24. </li>
  25. </ul> -->
  26. <?php // echo $this->render('_search', ['model' => $searchModel]);
  27. /*
  28. if ($model->status==1) {
  29. return Html::a(Yii::t('app', 'Waiting ID'), ['id' => Yii::$app->user->identity->id], ['class' => 'btn btn-xs btn-warning btn-block']);
  30. }
  31. if ($model->status==2) {
  32. return Html::a(Yii::t('app', 'Success ID'), ['id' => Yii::$app->user->identity->id], ['class' => 'btn btn-xs btn-success btn-block']);
  33. }
  34. else {
  35. return Html::a(Yii::t('app', 'Rejected ID'), ['id' => Yii::$app->user->identity->id], ['class' => 'btn btn-xs btn-danger btn-block']);
  36. }*/
  37. ?>
  38. <br>
  39. <p>
  40. <?= Html::a(Yii::t('app', 'CreateAuction ID'), ['create'], ['class' => 'btn btn-success']) ?>
  41. </p>
  42. <?= $this->render('_alert.php') ?>
  43. <style>
  44. .action-button{
  45. display:flex;
  46. }
  47. .action-button .glyphicon{
  48. font-size: 15px !important;
  49. padding: 4px !important;
  50. border: 1px solid;
  51. margin: 1px;
  52. border-radius: 3px;
  53. }
  54. </style>
  55. <?php
  56. if(Yii::$app->user->can('admin') || (Yii::$app->user->can('org')))
  57. {
  58. $actions = '<div class="action-button">{auctions} {clone} {view} {update} {delete}</div>';
  59. }
  60. else
  61. {
  62. $actions = '<div class="action-button">{auctions} {view} {update} {delete}</div>';
  63. }
  64. ?>
  65. <?= GridView::widget([
  66. 'dataProvider' => $dataProvider,
  67. 'filterModel' => $searchModel,
  68. 'columns' => [
  69. // [
  70. // 'class' => 'yii\grid\SerialColumn',
  71. // 'contentOptions' => ['width' => '70px'],
  72. // ],
  73. //'id',
  74. //'user_id',
  75. 'aukname',
  76. //'num',
  77. [
  78. 'header'=>'Номер аукціону',
  79. 'attribute'=>'auction.id',
  80. 'value'=>'auction.id'
  81. ],
  82. [
  83. 'header'=>'Номер лоту',
  84. 'attribute'=>'id',
  85. 'value'=>'id'
  86. ],
  87. [
  88. 'attribute'=>'status',
  89. //'header' => Yii::t('app', 'Status ID'),
  90. 'value' => function($model){
  91. $auction = $model->auction ? $model->auction->status : false;
  92. if($auction){
  93. $status_name = Auctions::statusNames()[$model->auction->status];
  94. if($model->auction->status == 1){
  95. return Html::a($status_name, ['#'], ['class' => 'label label-warning']);
  96. }
  97. if($model->auction->status == 2){
  98. return Html::a($status_name, ['#'], ['class' => 'label label-danger']);
  99. }
  100. if($model->auction->status == 3){
  101. return Html::a($status_name, ['#'], ['class' => 'label label-default']);
  102. }
  103. if($model->auction->status == 4){
  104. return Html::a($status_name, ['#'], ['class' => 'label label-primary']);
  105. }
  106. }
  107. if ($model->status==1)
  108. {
  109. //return Yii::t('app', 'Waiting ID');
  110. return Html::a(Yii::t('app', 'Waiting ID'), ['#'], ['class' => 'label label-warning']);
  111. }
  112. if ($model->status==2)
  113. {
  114. //return Yii::t('app', 'Success ID');
  115. return Html::a(Yii::t('app', 'Success ID'). ($model->auction ? ' | ' . (string)Auctions::statusNames()[$model->auction->status] : ''), ['#'], ['class' => 'label label-success']);
  116. }
  117. if ($model->status==3)
  118. {
  119. //return Yii::t('app', 'Rejected ID');
  120. return Html::a(Yii::t('app', 'Rejected ID'), ['#'], ['class' => 'label label-danger']);
  121. }
  122. if ($model->status==4)
  123. {
  124. //return Yii::t('app', 'Rejected ID');
  125. return Html::a(Yii::t('app', 'Agree by organizer'), ['#'], ['class' => 'label label-info']);
  126. }
  127. },
  128. 'format' => 'raw',
  129. ],
  130. 'date:datetime',
  131. //'description',
  132. 'start_price',
  133. [
  134. 'header' => 'Гарантійний внесок',
  135. 'value' => function($model){
  136. return $model->start_price * 0.015;
  137. },
  138. ],
  139. 'step',
  140. // 'docs_id',
  141. // 'address',
  142. //'delivery_time:datetime',
  143. // 'delivery_term',
  144. // 'requires',
  145. //'payment_term',
  146. // 'payment_order',
  147. // 'category_id',
  148. // 'member_require',
  149. // 'member_docs',
  150. // 'requisites_id',
  151. // 'notes',
  152. // 'dogovor_id',
  153. //'date',
  154. //'auction_date',
  155. /*[
  156. 'attribute'=>'date',
  157. 'format'=>'datetime', // ��������� ������������ - date:datetime:time
  158. 'headerOptions' => ['width' => '120'],
  159. ],*/
  160. ['class' => 'yii\grid\ActionColumn',
  161. 'template' => $actions,
  162. 'buttons' => [
  163. 'auctions' => function ($url, $model, $key) {
  164. if (!$model->auction) {
  165. return null;
  166. }
  167. if ($model->auction->status != 2) {
  168. return null;
  169. }
  170. return Html::a(
  171. '<span class="glyphicon glyphicon-log-in" style="color: #d9534f;"></span>',
  172. ['/auctions/view', 'id' => $model->auction->id],
  173. [
  174. 'title' => 'Перейти'
  175. ]
  176. );
  177. },
  178. 'clone' => function ($url,$model,$key) {
  179. return Html::a('<span class="glyphicon glyphicon-duplicate"></span>', $url,['title' => 'Клонувати']);
  180. },
  181. 'delete' => function($url, $model){
  182. return Html::a('<span class="glyphicon glyphicon-trash"></span>', ['delete', 'id' => $model->id], [
  183. 'data' => [
  184. 'confirm' => $model->auction
  185. ? 'Видаляючи цей лот, ви видалите і опублікований аукціон. Ви впевнені?'
  186. : 'Ви впевнені, що хочете видалити лот',
  187. 'method' => 'post',
  188. ],
  189. ]);
  190. }
  191. ],
  192. ],
  193. ],
  194. ]); ?>
  195. </div>
  196. </div>
  197. </div>