Commit 93a0cd0b2acfd877193bcee95aa0ffb976124297
1 parent
8904e372
Credits
Showing
2 changed files
with
591 additions
and
533 deletions
Show diff stats
models/Order.php
@@ -54,6 +54,8 @@ | @@ -54,6 +54,8 @@ | ||
54 | * @property string $city | 54 | * @property string $city |
55 | * @property string $deliveryString | 55 | * @property string $deliveryString |
56 | * @property boolean $published | 56 | * @property boolean $published |
57 | + * @property float $credit_sum | ||
58 | + * @property int $credit_month | ||
57 | */ | 59 | */ |
58 | class Order extends ActiveRecord | 60 | class Order extends ActiveRecord |
59 | { | 61 | { |
@@ -161,6 +163,22 @@ | @@ -161,6 +163,22 @@ | ||
161 | ], | 163 | ], |
162 | [ | 164 | [ |
163 | [ | 165 | [ |
166 | + 'credit_month', | ||
167 | + ], | ||
168 | + 'integer', | ||
169 | + 'min' => 3, | ||
170 | + 'max' => 36, | ||
171 | + ], | ||
172 | + [ | ||
173 | + [ | ||
174 | + 'credit_sum', | ||
175 | + ], | ||
176 | + 'number', | ||
177 | + 'min' => 300, | ||
178 | + 'max' => 25000, | ||
179 | + ], | ||
180 | + [ | ||
181 | + [ | ||
164 | 'deadline', | 182 | 'deadline', |
165 | 'name', | 183 | 'name', |
166 | 'numbercard', | 184 | 'numbercard', |
@@ -246,6 +264,8 @@ | @@ -246,6 +264,8 @@ | ||
246 | 'shipping_by' => Yii::t('app', 'Отправка за счет'), | 264 | 'shipping_by' => Yii::t('app', 'Отправка за счет'), |
247 | 'city' => Yii::t('app', 'Город'), | 265 | 'city' => Yii::t('app', 'Город'), |
248 | 'numbercard' => Yii::t('app', '№ карточки'), | 266 | 'numbercard' => Yii::t('app', '№ карточки'), |
267 | + 'credit_month' => Yii::t('app', 'Количество месяцев'), | ||
268 | + 'credit_sum' => Yii::t('app', 'Сумма кредита'), | ||
249 | ]; | 269 | ]; |
250 | } | 270 | } |
251 | 271 |
views/order/_form.php
@@ -5,6 +5,7 @@ | @@ -5,6 +5,7 @@ | ||
5 | use artweb\artbox\ecommerce\models\OrderPayment; | 5 | use artweb\artbox\ecommerce\models\OrderPayment; |
6 | use artweb\artbox\ecommerce\models\OrderProduct; | 6 | use artweb\artbox\ecommerce\models\OrderProduct; |
7 | use backend\models\SmsTemplate; | 7 | use backend\models\SmsTemplate; |
8 | + use common\components\CreditHelper; | ||
8 | use common\models\User; | 9 | use common\models\User; |
9 | use kartik\grid\GridView; | 10 | use kartik\grid\GridView; |
10 | use kartik\grid\SerialColumn; | 11 | use kartik\grid\SerialColumn; |
@@ -144,571 +145,608 @@ JS; | @@ -144,571 +145,608 @@ JS; | ||
144 | 145 | ||
145 | <?php $form = ActiveForm::begin( | 146 | <?php $form = ActiveForm::begin( |
146 | [ | 147 | [ |
147 | - 'id' => 'main-form', | ||
148 | -// 'options' => [ 'class' => 'form-inline' ], | 148 | + 'id' => 'main-form', |
149 | + // 'options' => [ 'class' => 'form-inline' ], | ||
149 | ] | 150 | ] |
150 | ); ?> | 151 | ); ?> |
151 | <div class="container"> | 152 | <div class="container"> |
152 | - <div class="form-group"> | ||
153 | - <br> | ||
154 | - <div class="row"> | ||
155 | - <div class="col-sm-6"> | ||
156 | - | ||
157 | - <?= $form->field($model, 'deadline') | ||
158 | - ->widget( | ||
159 | - DatePicker::className(), | ||
160 | - [ | ||
161 | - | ||
162 | - ] | ||
163 | - ) ?> | ||
164 | - | ||
165 | - <?php | ||
166 | - if ($user->isAdmin()) { | ||
167 | - echo $form->field($model, 'pay') | ||
168 | - ->widget( | ||
169 | - SwitchInput::className(), | 153 | + <div class="form-group"> |
154 | + <br> | ||
155 | + <div class="row"> | ||
156 | + <div class="col-sm-6"> | ||
157 | + | ||
158 | + <?= $form->field($model, 'deadline') | ||
159 | + ->widget( | ||
160 | + DatePicker::className(), | ||
161 | + [ | ||
162 | + | ||
163 | + ] | ||
164 | + ) ?> | ||
165 | + | ||
166 | + <?php | ||
167 | + if ($user->isAdmin()) { | ||
168 | + echo $form->field($model, 'pay') | ||
169 | + ->widget( | ||
170 | + SwitchInput::className(), | ||
171 | + [ | ||
172 | + 'name' => 'pay', | ||
173 | + 'pluginOptions' => [ | ||
174 | + 'onText' => \Yii::t('app', 'Оплачено'), | ||
175 | + 'offText' => \Yii::t('app', 'Не оплачено'), | ||
176 | + ], | ||
177 | + ] | ||
178 | + ); | ||
179 | + } | ||
180 | + ?> | ||
181 | + | ||
182 | + <?= $form->field($model, 'reason') | ||
183 | + ->dropDownList( | ||
184 | + Order::REASONS, | ||
185 | + [ 'prompt' => 'Выберите причину' ] | ||
186 | + ) ?> | ||
187 | + | ||
188 | + <?= $form->field($model, 'label') | ||
189 | + ->dropDownList( | ||
190 | + ArrayHelper::map( | ||
191 | + Label::find() | ||
192 | + ->asArray() | ||
193 | + ->all(), | ||
194 | + 'id', | ||
195 | + 'label' | ||
196 | + ), | ||
197 | + [ 'prompt' => 'Выберите метку' ] | ||
198 | + ); ?> | ||
199 | + | ||
200 | + <?= $form->field($model, 'name') ?> | ||
201 | + | ||
202 | + <?= $form->field($model, 'phone') | ||
203 | + ->textInput([ 'readonly' => $user->isAdmin() ? false : true ]) ?> | ||
204 | + | ||
205 | + <?= $form->field($model, 'phone2') ?> | ||
206 | + | ||
207 | + <?= $form->field($model, 'email') | ||
208 | + ->textInput([ 'readonly' => $user->isAdmin() ? false : true ]) ?> | ||
209 | + | ||
210 | + <?= $form->field( | ||
211 | + $model, | ||
212 | + 'numbercard' | ||
213 | + ) | ||
214 | + ->textInput([ 'readonly' => true ]) ?> | ||
215 | + | ||
216 | + <?= $form->field($model, 'comment') | ||
217 | + ->textarea([ 'rows' => '3' ]) ?> | ||
218 | + <?= $form->field($model, 'delivery') | ||
219 | + ->dropDownList( | ||
220 | + ArrayHelper::map( | ||
221 | + Delivery::find() | ||
222 | + ->joinWith('lang') | ||
223 | + ->asArray() | ||
224 | + ->all(), | ||
225 | + 'id', | ||
226 | + 'lang.title' | ||
227 | + ), | ||
228 | + [ 'prompt' => \Yii::t('app', 'Выберите доставку ...') ] | ||
229 | + ) ?> | ||
230 | + | ||
231 | + <?php | ||
232 | + | ||
233 | + if ($user->isAdmin()) { | ||
234 | + echo $form->field($model, 'manager_id') | ||
235 | + ->dropDownList( | ||
236 | + ArrayHelper::map( | ||
237 | + User::find() | ||
238 | + ->asArray() | ||
239 | + ->all(), | ||
240 | + 'id', | ||
241 | + 'username' | ||
242 | + ), | ||
243 | + [ 'prompt' => \Yii::t('app', 'Менеджер') ] | ||
244 | + ); | ||
245 | + } | ||
246 | + ?> | ||
247 | + | ||
248 | + <h2><?php echo \Yii::t('app', 'Отправить смс'); ?></h2> | ||
249 | + <?php | ||
250 | + echo Select2::widget( | ||
251 | + [ | ||
252 | + 'id' => 'sms-template-selector', | ||
253 | + 'name' => 'select-sms-template', | ||
254 | + 'data' => ArrayHelper::map( | ||
255 | + SmsTemplate::find() | ||
256 | + ->asArray() | ||
257 | + ->all(), | ||
258 | + 'text', | ||
259 | + 'title' | ||
260 | + ), | ||
261 | + 'options' => [ 'placeholder' => \Yii::t('app', 'Выберите шаблон') ], | ||
262 | + 'pluginOptions' => [ | ||
263 | + 'allowClear' => true, | ||
264 | + ], | ||
265 | + ] | ||
266 | + ); | ||
267 | + | ||
268 | + ?> | ||
269 | + <br> | ||
270 | + <?php | ||
271 | + echo Html::textarea( | ||
272 | + 'sms-text', | ||
273 | + '', | ||
274 | + [ | ||
275 | + 'rows' => 3, | ||
276 | + 'id' => 'sms-text-area', | ||
277 | + 'class' => 'form-control', | ||
278 | + ] | ||
279 | + ); | ||
280 | + ?> | ||
281 | + <br> | ||
282 | + <div class="row"> | ||
283 | + <div class="col-md-6"> | ||
284 | + <?php | ||
285 | + if ($model->isNewRecord) { | ||
286 | + echo Html::button( | ||
287 | + \Yii::t('app', 'Отправить'), | ||
288 | + [ | ||
289 | + 'class' => 'btn btn-warning disabled', | ||
290 | + ] | ||
291 | + ); | ||
292 | + } else { | ||
293 | + echo Html::button( | ||
294 | + \Yii::t('app', 'Отправить'), | ||
295 | + [ | ||
296 | + 'class' => 'btn btn-warning', | ||
297 | + 'id' => 'send-sms-action', | ||
298 | + ] | ||
299 | + ); | ||
300 | + } | ||
301 | + ?> | ||
302 | + </div> | ||
303 | + <div class="col-md-6"> | ||
304 | + <?php | ||
305 | + echo Html::radioList( | ||
306 | + 'send-phone', | ||
307 | + '1', | ||
170 | [ | 308 | [ |
171 | - 'name' => 'pay', | ||
172 | - 'pluginOptions' => [ | ||
173 | - 'onText' => \Yii::t('app', 'Оплачено'), | ||
174 | - 'offText' => \Yii::t('app', 'Не оплачено'), | ||
175 | - ], | 309 | + '1' => 'Первый номер', |
310 | + '2' => 'Второй номер', | ||
176 | ] | 311 | ] |
177 | ); | 312 | ); |
178 | - } | ||
179 | - ?> | ||
180 | - | ||
181 | - <?= $form->field($model, 'reason') | ||
182 | - ->dropDownList( | ||
183 | - Order::REASONS, | ||
184 | - [ 'prompt' => 'Выберите причину' ] | ||
185 | - ) ?> | ||
186 | - | ||
187 | - <?= $form->field($model, 'label') | ||
188 | - ->dropDownList( | ||
189 | - ArrayHelper::map( | ||
190 | - Label::find() | ||
191 | - ->asArray() | ||
192 | - ->all(), | ||
193 | - 'id', | ||
194 | - 'label' | ||
195 | - ), | ||
196 | - [ 'prompt' => 'Выберите метку' ] | ||
197 | - ); ?> | ||
198 | - | ||
199 | - <?= $form->field($model, 'name') ?> | ||
200 | - | ||
201 | - <?= $form->field($model, 'phone') | ||
202 | - ->textInput([ 'readonly' => $user->isAdmin() ? false : true ]) ?> | ||
203 | - | ||
204 | - <?= $form->field($model, 'phone2') ?> | ||
205 | - | ||
206 | - <?= $form->field($model, 'email') | ||
207 | - ->textInput([ 'readonly' => $user->isAdmin() ? false : true ]) ?> | ||
208 | - | ||
209 | - <?= $form->field( | ||
210 | - $model, | ||
211 | - 'numbercard' | ||
212 | - ) | ||
213 | - ->textInput([ 'readonly' => true ]) ?> | ||
214 | - | ||
215 | - <?= $form->field($model, 'comment') | ||
216 | - ->textarea([ 'rows' => '3' ]) ?> | ||
217 | - <?= $form->field($model, 'delivery') | ||
218 | - ->dropDownList( | ||
219 | - ArrayHelper::map( | ||
220 | - Delivery::find() | ||
221 | - ->joinWith('lang') | ||
222 | - ->asArray() | ||
223 | - ->all(), | ||
224 | - 'id', | ||
225 | - 'lang.title' | ||
226 | - ), | ||
227 | - [ 'prompt' => \Yii::t('app', 'Выберите доставку ...') ] | ||
228 | - ) ?> | ||
229 | - | ||
230 | - <?php | ||
231 | - | ||
232 | - if ($user->isAdmin()) { | ||
233 | - echo $form->field($model, 'manager_id') | ||
234 | - ->dropDownList( | ||
235 | - ArrayHelper::map( | ||
236 | - User::find() | ||
237 | - ->asArray() | ||
238 | - ->all(), | ||
239 | - 'id', | ||
240 | - 'username' | ||
241 | - ), | ||
242 | - [ 'prompt' => \Yii::t('app', 'Менеджер') ] | ||
243 | - ); | ||
244 | - } | ||
245 | - ?> | ||
246 | - | ||
247 | - <h2><?php echo \Yii::t('app', 'Отправить смс'); ?></h2> | ||
248 | - <?php | ||
249 | - echo Select2::widget( | ||
250 | - [ | ||
251 | - 'id' => 'sms-template-selector', | ||
252 | - 'name' => 'select-sms-template', | ||
253 | - 'data' => ArrayHelper::map( | ||
254 | - SmsTemplate::find() | ||
255 | - ->asArray() | ||
256 | - ->all(), | ||
257 | - 'text', | ||
258 | - 'title' | ||
259 | - ), | ||
260 | - 'options' => [ 'placeholder' => \Yii::t('app', 'Выберите шаблон') ], | ||
261 | - 'pluginOptions' => [ | ||
262 | - 'allowClear' => true, | ||
263 | - ], | ||
264 | - ] | ||
265 | - ); | ||
266 | - | ||
267 | - ?> | ||
268 | - <br> | ||
269 | - <?php | ||
270 | - echo Html::textarea( | ||
271 | - 'sms-text', | ||
272 | - '', | ||
273 | - [ | ||
274 | - 'rows' => 3, | ||
275 | - 'id' => 'sms-text-area', | ||
276 | - 'class' => 'form-control', | ||
277 | - ] | ||
278 | - ); | ||
279 | - ?> | ||
280 | - <br> | ||
281 | - <div class="row"> | ||
282 | - <div class="col-md-6"> | ||
283 | - <?php | ||
284 | - if ($model->isNewRecord) { | ||
285 | - echo Html::button( | ||
286 | - \Yii::t('app', 'Отправить'), | ||
287 | - [ | ||
288 | - 'class' => 'btn btn-warning disabled', | ||
289 | - ] | ||
290 | - ); | ||
291 | - } else { | ||
292 | - echo Html::button( | ||
293 | - \Yii::t('app', 'Отправить'), | ||
294 | - [ | ||
295 | - 'class' => 'btn btn-warning', | ||
296 | - 'id' => 'send-sms-action', | ||
297 | - ] | ||
298 | - ); | ||
299 | - } | ||
300 | - ?> | ||
301 | - </div> | ||
302 | - <div class="col-md-6"> | ||
303 | - <?php | ||
304 | - echo Html::radioList( | ||
305 | - 'send-phone', | ||
306 | - '1', | ||
307 | - [ | ||
308 | - '1' => 'Первый номер', | ||
309 | - '2' => 'Второй номер', | ||
310 | - ] | ||
311 | - ); | ||
312 | - ?> | ||
313 | - </div> | 313 | + ?> |
314 | + </div> | ||
315 | + </div> | ||
316 | + | ||
317 | + </div> | ||
318 | + <div class="col-sm-6"> | ||
319 | + | ||
320 | + <?= $form->field($model, 'declaration') ?> | ||
321 | + | ||
322 | + <?= $form->field($model, 'stock') ?> | ||
323 | + | ||
324 | + <?= $form->field($model, 'consignment') ?> | ||
325 | + | ||
326 | + <?= $form->field($model, 'payment') | ||
327 | + ->dropDownList( | ||
328 | + ArrayHelper::map( | ||
329 | + OrderPayment::find() | ||
330 | + ->where([ 'status' => OrderPayment::ACTIVE ]) | ||
331 | + ->asArray() | ||
332 | + ->all(), | ||
333 | + 'id', | ||
334 | + 'short' | ||
335 | + ), | ||
336 | + [ 'prompt' => 'Способ оплаты ...' ] | ||
337 | + ); ?> | ||
338 | + <?php | ||
339 | + if ($model->payment == 10) { | ||
340 | + ?> | ||
341 | + <div> | ||
342 | + <div class="col-xs-6"> | ||
343 | + <?php | ||
344 | + echo $form->field($model, 'credit_sum') | ||
345 | + ->textInput( | ||
346 | + [ | ||
347 | + 'class' => 'form-control credit_input', | ||
348 | + ] | ||
349 | + ); | ||
350 | + ?> | ||
351 | + </div> | ||
352 | + <div class="col-xs-6"> | ||
353 | + <?php | ||
354 | + echo $form->field($model, 'credit_month') | ||
355 | + ->textInput( | ||
356 | + [ | ||
357 | + 'class' => 'form-control credit_input', | ||
358 | + ] | ||
359 | + ); | ||
360 | + ?> | ||
361 | + </div> | ||
362 | + <div class="clearfix"></div> | ||
363 | + <p> | ||
364 | + <span class="credit_value"> | ||
365 | + <?php | ||
366 | + echo CreditHelper::getCredit($model->total); | ||
367 | + ?> | ||
368 | + </span> | ||
369 | + <span>грн/мес</span> | ||
370 | + </p> | ||
371 | + </div> | ||
372 | + <?php | ||
373 | + } | ||
374 | + ?> | ||
375 | + | ||
376 | + <?= $form->field($model, 'insurance') ?> | ||
377 | + | ||
378 | + <?= $form->field($model, 'amount_imposed') ?> | ||
379 | + | ||
380 | + <?= $form->field($model, 'shipping_by') | ||
381 | + ->dropDownList( | ||
382 | + ArrayHelper::getColumn(Order::SHIPPING_BY, 'label'), | ||
383 | + [ 'prompt' => 'Оплата доставки ...' ] | ||
384 | + ); ?> | ||
385 | + | ||
386 | + <?= $form->field($model, 'city') ?> | ||
387 | + | ||
388 | + <?= $form->field($model, 'adress') ?> | ||
389 | + | ||
390 | + <?= $form->field($model, 'body') | ||
391 | + ->textarea([ 'rows' => '3' ]) ?> | ||
392 | + | ||
393 | + <?= $form->field($model, 'check') ?> | ||
394 | + | ||
395 | + <?= $form->field($model, 'sms') ?> | ||
396 | + | ||
397 | + <?= $form->field($model, 'delivery_cost') ?> | ||
398 | + | ||
399 | + </div> | ||
314 | </div> | 400 | </div> |
315 | - | ||
316 | - </div> | ||
317 | - <div class="col-sm-6"> | ||
318 | - | ||
319 | - <?= $form->field($model, 'declaration') ?> | ||
320 | - | ||
321 | - <?= $form->field($model, 'stock') ?> | ||
322 | - | ||
323 | - <?= $form->field($model, 'consignment') ?> | ||
324 | - | ||
325 | - <?= $form->field($model, 'payment') | ||
326 | - ->dropDownList( | ||
327 | - ArrayHelper::map( | ||
328 | - OrderPayment::find() | ||
329 | - ->where([ 'status' => OrderPayment::ACTIVE ]) | ||
330 | - ->asArray() | ||
331 | - ->all(), | ||
332 | - 'id', | ||
333 | - 'short' | ||
334 | - ), | ||
335 | - [ 'prompt' => 'Способ оплаты ...' ] | ||
336 | - ); ?> | ||
337 | - | ||
338 | - <?= $form->field($model, 'insurance') ?> | ||
339 | - | ||
340 | - <?= $form->field($model, 'amount_imposed') ?> | ||
341 | - | ||
342 | - <?= $form->field($model, 'shipping_by') | ||
343 | - ->dropDownList( | ||
344 | - ArrayHelper::getColumn(Order::SHIPPING_BY, 'label'), | ||
345 | - [ 'prompt' => 'Оплата доставки ...' ] | ||
346 | - ); ?> | ||
347 | - | ||
348 | - <?= $form->field($model, 'city') ?> | ||
349 | - | ||
350 | - <?= $form->field($model, 'adress') ?> | ||
351 | - | ||
352 | - <?= $form->field($model, 'body') | ||
353 | - ->textarea([ 'rows' => '3' ]) ?> | ||
354 | - | ||
355 | - <?= $form->field($model, 'check') ?> | ||
356 | - | ||
357 | - <?= $form->field($model, 'sms') ?> | ||
358 | - | ||
359 | - <?= $form->field($model, 'delivery_cost') ?> | ||
360 | - | ||
361 | - </div> | ||
362 | </div> | 401 | </div> |
363 | - </div> | ||
364 | </div> | 402 | </div> |
365 | 403 | ||
366 | <?php ActiveForm::end(); ?> | 404 | <?php ActiveForm::end(); ?> |
367 | <br> | 405 | <br> |
368 | <br> | 406 | <br> |
369 | <div class="container"> | 407 | <div class="container"> |
370 | - <div class="row"> | ||
371 | - <?php | ||
372 | - echo GridView::widget( | ||
373 | - [ | ||
374 | - 'dataProvider' => $dataProvider, | ||
375 | - 'rowOptions' => function($model) { | ||
376 | - if ($model->removed) { | ||
377 | - return [ 'class' => 'danger' ]; | ||
378 | - } else { | ||
379 | - return []; | ||
380 | - } | ||
381 | - }, | ||
382 | - 'layout' => '{items}{pager}', | ||
383 | - 'columns' => [ | ||
384 | - [ | ||
385 | - 'class' => SerialColumn::className(), | ||
386 | - ], | ||
387 | - 'sku', | ||
388 | - [ | ||
389 | - 'attribute' => 'product_name', | ||
390 | - 'content' => function($model) { | ||
391 | - if (!empty($model->product_name)) { | 408 | + <div class="row"> |
409 | + <?php | ||
410 | + echo GridView::widget( | ||
411 | + [ | ||
412 | + 'dataProvider' => $dataProvider, | ||
413 | + 'rowOptions' => function ($model) { | ||
414 | + if ($model->removed) { | ||
415 | + return [ 'class' => 'danger' ]; | ||
416 | + } else { | ||
417 | + return []; | ||
418 | + } | ||
419 | + }, | ||
420 | + 'layout' => '{items}{pager}', | ||
421 | + 'columns' => [ | ||
422 | + [ | ||
423 | + 'class' => SerialColumn::className(), | ||
424 | + ], | ||
425 | + 'sku', | ||
426 | + [ | ||
427 | + 'attribute' => 'product_name', | ||
428 | + 'content' => function ($model) { | ||
429 | + if (!empty( $model->product_name )) { | ||
430 | + | ||
431 | + if (empty( $model->productVariant )) { | ||
432 | + return ''; | ||
433 | + } | ||
434 | + | ||
435 | + return Html::a( | ||
436 | + StringHelper::truncate($model->product_name, 10, '...'), | ||
437 | + '#', | ||
438 | + [ | ||
439 | + 'onclick' => 'event.preventDefault();', | ||
440 | + 'data-toggle' => 'popover', | ||
441 | + 'data-placement' => 'right', | ||
442 | + 'data-html' => 'true', | ||
443 | + 'data-content' => Html::img( | ||
444 | + $model->productVariant->imageUrl, | ||
445 | + [ | ||
446 | + 'class' => 'img-rounded', | ||
447 | + ] | ||
448 | + ) . Html::tag('p', $model->product_name), | ||
449 | + ] | ||
450 | + ); | ||
451 | + } else { | ||
452 | + return ''; | ||
453 | + } | ||
454 | + }, | ||
455 | + ], | ||
456 | + [ | ||
457 | + 'attribute' => 'productVariant.product.brand.lang.title', | ||
458 | + 'label' => 'Брэнд', | ||
459 | + ], | ||
460 | + [ | ||
461 | + 'attribute' => 'productVariant.lang.title', | ||
462 | + 'label' => \Yii::t('app', 'Цвет'), | ||
463 | + 'content' => function ($model) { | ||
392 | 464 | ||
393 | - if (empty($model->productVariant)) { | 465 | + if (empty( $model->productVariant )) { |
394 | return ''; | 466 | return ''; |
395 | - } | ||
396 | - | ||
397 | - return Html::a( | ||
398 | - StringHelper::truncate($model->product_name, 10, '...'), | ||
399 | - '#', | ||
400 | - [ | ||
401 | - 'onclick' => 'event.preventDefault();', | ||
402 | - 'data-toggle' => 'popover', | ||
403 | - 'data-placement' => 'right', | ||
404 | - 'data-html' => 'true', | ||
405 | - 'data-content' => Html::img( | ||
406 | - $model->productVariant->imageUrl, | ||
407 | - [ | ||
408 | - 'class' => 'img-rounded', | ||
409 | - ] | ||
410 | - ) . Html::tag('p', $model->product_name), | ||
411 | - ] | ||
412 | - ); | ||
413 | - } else { | ||
414 | - return ''; | ||
415 | - } | ||
416 | - }, | ||
417 | - ], | ||
418 | - [ | ||
419 | - 'attribute' => 'productVariant.product.brand.lang.title', | ||
420 | - 'label' => 'Брэнд', | ||
421 | - ], | ||
422 | - [ | ||
423 | - 'attribute' => 'productVariant.lang.title', | ||
424 | - 'label' => \Yii::t('app', 'Цвет'), | ||
425 | - 'content' => function($model) { | ||
426 | - | ||
427 | - if (empty($model->productVariant)) { | ||
428 | - return ''; | ||
429 | - } | ||
430 | - | ||
431 | - if (preg_match('@.*\.(png|jpg|gif)@i', $model->productVariant->lang->title)) { | ||
432 | - return ''; | ||
433 | - } else { | ||
434 | - return $model->productVariant->lang->title; | ||
435 | - } | ||
436 | - }, | ||
437 | - ], | ||
438 | - [ | ||
439 | - 'attribute' => 'productVariant.size', | ||
440 | - 'label' => 'Размер', | ||
441 | - ], | ||
442 | - 'price', | ||
443 | - [ | ||
444 | - 'class' => 'kartik\grid\EditableColumn', | ||
445 | - 'attribute' => 'count', | ||
446 | - 'editableOptions' => [ | ||
447 | - 'header' => \Yii::t('app', 'Количество'), | ||
448 | - 'inputType' => kartik\editable\Editable::INPUT_SPIN, | ||
449 | - 'options' => [ | ||
450 | - 'pluginOptions' => [ | ||
451 | - 'min' => 0, | ||
452 | - 'max' => 5000, | ||
453 | - ], | ||
454 | - ], | ||
455 | - 'pluginEvents' => [ | ||
456 | - 'editableSuccess' => 'function(event) { $.pjax.reload({container:"#order-products-grid"}); }', | ||
457 | - ], | ||
458 | - ], | ||
459 | - 'format' => [ | ||
460 | - 'decimal', | ||
461 | - 0, | ||
462 | - ], | ||
463 | - 'pageSummary' => false, | ||
464 | - ], | ||
465 | - 'sum_cost', | ||
466 | - [ | ||
467 | - 'class' => 'kartik\grid\EditableColumn', | ||
468 | - 'attribute' => 'booking', | ||
469 | - 'editableOptions' => [ | ||
470 | - 'header' => \Yii::t('app', 'Бронь'), | ||
471 | - 'inputType' => kartik\editable\Editable::INPUT_TEXT, | ||
472 | - 'options' => [ | ||
473 | - 'class' => 'booking-typeahead', | ||
474 | - 'pluginOptions' => [ | ||
475 | - 'min' => 0, | ||
476 | - 'max' => 20, | ||
477 | - ], | ||
478 | - ], | ||
479 | - 'pluginEvents' => [ | ||
480 | - 'editableSuccess' => 'function(event) { $.pjax.reload({container:"#order-products-grid"}); }', | ||
481 | - ], | ||
482 | - ], | ||
483 | - 'format' => [ | ||
484 | - 'text', | ||
485 | - ], | ||
486 | - 'pageSummary' => false, | ||
487 | - ], | ||
488 | - [ | ||
489 | - 'class' => 'kartik\grid\EditableColumn', | ||
490 | - 'attribute' => 'status', | ||
491 | - 'editableOptions' => [ | ||
492 | - 'header' => \Yii::t('app', 'Статус'), | ||
493 | - 'inputType' => kartik\editable\Editable::INPUT_TEXT, | ||
494 | - 'options' => [ | ||
495 | - 'class' => 'status-typeahead', | ||
496 | - 'pluginOptions' => [ | ||
497 | - 'min' => 0, | ||
498 | - 'max' => 20, | ||
499 | - ], | ||
500 | - ], | ||
501 | - 'pluginEvents' => [ | ||
502 | - 'editableSuccess' => 'function(event) { $.pjax.reload({container:"#order-products-grid"}); }', | ||
503 | - ], | ||
504 | - ], | ||
505 | - 'format' => [ | ||
506 | - 'text', | ||
507 | - ], | ||
508 | - 'pageSummary' => false, | ||
509 | - ], | ||
510 | - [ | ||
511 | - 'class' => 'kartik\grid\EditableColumn', | ||
512 | - 'attribute' => 'return', | ||
513 | - 'editableOptions' => [ | ||
514 | - 'header' => \Yii::t('app', 'Возврат'), | ||
515 | - 'inputType' => kartik\editable\Editable::INPUT_CHECKBOX, | ||
516 | - 'options' => [], | ||
517 | - 'pluginEvents' => [ | ||
518 | - 'editableSuccess' => 'function(event) { $.pjax.reload({container:"#order-products-grid"}); }', | ||
519 | - ], | ||
520 | - ], | ||
521 | - 'format' => [ | ||
522 | - 'boolean', | ||
523 | - ], | ||
524 | - 'pageSummary' => false, | ||
525 | - ], | ||
526 | - [ | ||
527 | - 'content' => function($model) { | ||
528 | - | ||
529 | - if (empty($model->productVariant)) { | ||
530 | - return '<i class="glyphicon glyphicon-remove"></i>'; | ||
531 | - } | ||
532 | - | ||
533 | - $content = '<table class="table"><tbody><tr><th>Склад</th><th>кол.</th></tr>'; | ||
534 | - foreach ($model->productVariant->variantStocks as $stock) { | ||
535 | - $content .= '<tr><td>' . $stock->stock->title . '</td><td>' . $stock->quantity . '</td></tr>'; | ||
536 | - } | ||
537 | - return Html::a( | ||
538 | - '<i class="glyphicon glyphicon-home"></i>', | ||
539 | - '#', | ||
540 | - [ | ||
541 | - 'onclick' => 'event.preventDefault();', | ||
542 | - 'data-toggle' => 'popover', | ||
543 | - 'data-placement' => 'left', | ||
544 | - 'data-html' => 'true', | ||
545 | - 'data-content' => $content . '</tbody></table>', | ||
546 | - ] | ||
547 | - ); | ||
548 | - }, | ||
549 | - ], | ||
550 | - [ | ||
551 | - 'class' => 'yii\grid\ActionColumn', | ||
552 | - 'template' => '{delete}', | ||
553 | - 'buttons' => [ | ||
554 | - 'delete' => function($url, $product) { | ||
555 | - if ($product->removed) { | ||
556 | - return ''; | ||
557 | - } else { | ||
558 | - return Html::a( | ||
559 | - Html::tag('span', '', [ 'class' => 'glyphicon glyphicon-trash' ]), | ||
560 | - [ | ||
561 | - 'delete-product', | ||
562 | - 'id' => $product->id, | ||
563 | - ], | ||
564 | - [ | ||
565 | - 'class' => 'delete-button', | ||
566 | - // 'data' => [ | ||
567 | - // 'confirm' => 'Вы уверены, что хотите удалить этот элемент?', | ||
568 | - // 'method' => 'GET', | ||
569 | - // ], | ||
570 | - ] | ||
571 | - ); | ||
572 | - } | ||
573 | - }, | ||
574 | - ], | ||
575 | - ], | ||
576 | - ], | ||
577 | - 'responsive' => true, | ||
578 | - 'hover' => true, | ||
579 | - 'pjax' => true, | ||
580 | - 'pjaxSettings' => [ | ||
581 | - 'options' => [ | ||
582 | - 'scrollTo' => 'false', | ||
583 | - 'id' => 'order-products-grid', | ||
584 | - ], | ||
585 | - ], | ||
586 | - ] | ||
587 | - ); | ||
588 | - ?> | ||
589 | - </div> | 467 | + } |
468 | + | ||
469 | + if (preg_match('@.*\.(png|jpg|gif)@i', $model->productVariant->lang->title)) { | ||
470 | + return ''; | ||
471 | + } else { | ||
472 | + return $model->productVariant->lang->title; | ||
473 | + } | ||
474 | + }, | ||
475 | + ], | ||
476 | + [ | ||
477 | + 'attribute' => 'productVariant.size', | ||
478 | + 'label' => 'Размер', | ||
479 | + ], | ||
480 | + 'price', | ||
481 | + [ | ||
482 | + 'class' => 'kartik\grid\EditableColumn', | ||
483 | + 'attribute' => 'count', | ||
484 | + 'editableOptions' => [ | ||
485 | + 'header' => \Yii::t('app', 'Количество'), | ||
486 | + 'inputType' => kartik\editable\Editable::INPUT_SPIN, | ||
487 | + 'options' => [ | ||
488 | + 'pluginOptions' => [ | ||
489 | + 'min' => 0, | ||
490 | + 'max' => 5000, | ||
491 | + ], | ||
492 | + ], | ||
493 | + 'pluginEvents' => [ | ||
494 | + 'editableSuccess' => 'function(event) { $.pjax.reload({container:"#order-products-grid"}); }', | ||
495 | + ], | ||
496 | + ], | ||
497 | + 'format' => [ | ||
498 | + 'decimal', | ||
499 | + 0, | ||
500 | + ], | ||
501 | + 'pageSummary' => false, | ||
502 | + ], | ||
503 | + 'sum_cost', | ||
504 | + [ | ||
505 | + 'class' => 'kartik\grid\EditableColumn', | ||
506 | + 'attribute' => 'booking', | ||
507 | + 'editableOptions' => [ | ||
508 | + 'header' => \Yii::t('app', 'Бронь'), | ||
509 | + 'inputType' => kartik\editable\Editable::INPUT_TEXT, | ||
510 | + 'options' => [ | ||
511 | + 'class' => 'booking-typeahead', | ||
512 | + 'pluginOptions' => [ | ||
513 | + 'min' => 0, | ||
514 | + 'max' => 20, | ||
515 | + ], | ||
516 | + ], | ||
517 | + 'pluginEvents' => [ | ||
518 | + 'editableSuccess' => 'function(event) { $.pjax.reload({container:"#order-products-grid"}); }', | ||
519 | + ], | ||
520 | + ], | ||
521 | + 'format' => [ | ||
522 | + 'text', | ||
523 | + ], | ||
524 | + 'pageSummary' => false, | ||
525 | + ], | ||
526 | + [ | ||
527 | + 'class' => 'kartik\grid\EditableColumn', | ||
528 | + 'attribute' => 'status', | ||
529 | + 'editableOptions' => [ | ||
530 | + 'header' => \Yii::t('app', 'Статус'), | ||
531 | + 'inputType' => kartik\editable\Editable::INPUT_TEXT, | ||
532 | + 'options' => [ | ||
533 | + 'class' => 'status-typeahead', | ||
534 | + 'pluginOptions' => [ | ||
535 | + 'min' => 0, | ||
536 | + 'max' => 20, | ||
537 | + ], | ||
538 | + ], | ||
539 | + 'pluginEvents' => [ | ||
540 | + 'editableSuccess' => 'function(event) { $.pjax.reload({container:"#order-products-grid"}); }', | ||
541 | + ], | ||
542 | + ], | ||
543 | + 'format' => [ | ||
544 | + 'text', | ||
545 | + ], | ||
546 | + 'pageSummary' => false, | ||
547 | + ], | ||
548 | + [ | ||
549 | + 'class' => 'kartik\grid\EditableColumn', | ||
550 | + 'attribute' => 'return', | ||
551 | + 'editableOptions' => [ | ||
552 | + 'header' => \Yii::t('app', 'Возврат'), | ||
553 | + 'inputType' => kartik\editable\Editable::INPUT_CHECKBOX, | ||
554 | + 'options' => [], | ||
555 | + 'pluginEvents' => [ | ||
556 | + 'editableSuccess' => 'function(event) { $.pjax.reload({container:"#order-products-grid"}); }', | ||
557 | + ], | ||
558 | + ], | ||
559 | + 'format' => [ | ||
560 | + 'boolean', | ||
561 | + ], | ||
562 | + 'pageSummary' => false, | ||
563 | + ], | ||
564 | + [ | ||
565 | + 'content' => function ($model) { | ||
566 | + | ||
567 | + if (empty( $model->productVariant )) { | ||
568 | + return '<i class="glyphicon glyphicon-remove"></i>'; | ||
569 | + } | ||
570 | + | ||
571 | + $content = '<table class="table"><tbody><tr><th>Склад</th><th>кол.</th></tr>'; | ||
572 | + foreach ($model->productVariant->variantStocks as $stock) { | ||
573 | + $content .= '<tr><td>' . $stock->stock->title . '</td><td>' . $stock->quantity . '</td></tr>'; | ||
574 | + } | ||
575 | + return Html::a( | ||
576 | + '<i class="glyphicon glyphicon-home"></i>', | ||
577 | + '#', | ||
578 | + [ | ||
579 | + 'onclick' => 'event.preventDefault();', | ||
580 | + 'data-toggle' => 'popover', | ||
581 | + 'data-placement' => 'left', | ||
582 | + 'data-html' => 'true', | ||
583 | + 'data-content' => $content . '</tbody></table>', | ||
584 | + ] | ||
585 | + ); | ||
586 | + }, | ||
587 | + ], | ||
588 | + [ | ||
589 | + 'class' => 'yii\grid\ActionColumn', | ||
590 | + 'template' => '{delete}', | ||
591 | + 'buttons' => [ | ||
592 | + 'delete' => function ($url, $product) { | ||
593 | + if ($product->removed) { | ||
594 | + return ''; | ||
595 | + } else { | ||
596 | + return Html::a( | ||
597 | + Html::tag('span', '', [ 'class' => 'glyphicon glyphicon-trash' ]), | ||
598 | + [ | ||
599 | + 'delete-product', | ||
600 | + 'id' => $product->id, | ||
601 | + ], | ||
602 | + [ | ||
603 | + 'class' => 'delete-button', | ||
604 | + // 'data' => [ | ||
605 | + // 'confirm' => 'Вы уверены, что хотите удалить этот элемент?', | ||
606 | + // 'method' => 'GET', | ||
607 | + // ], | ||
608 | + ] | ||
609 | + ); | ||
610 | + } | ||
611 | + }, | ||
612 | + ], | ||
613 | + ], | ||
614 | + ], | ||
615 | + 'responsive' => true, | ||
616 | + 'hover' => true, | ||
617 | + 'pjax' => true, | ||
618 | + 'pjaxSettings' => [ | ||
619 | + 'options' => [ | ||
620 | + 'scrollTo' => 'false', | ||
621 | + 'id' => 'order-products-grid', | ||
622 | + ], | ||
623 | + ], | ||
624 | + ] | ||
625 | + ); | ||
626 | + ?> | ||
627 | + </div> | ||
590 | </div> | 628 | </div> |
591 | <div class="container"> | 629 | <div class="container"> |
592 | <?php Pjax::begin([ 'id' => 'total-cost' ]); ?> | 630 | <?php Pjax::begin([ 'id' => 'total-cost' ]); ?> |
593 | - <h2>Сумма заказа : <span class="label label-success"><?php echo $model->total; ?><?php echo \Yii::t( | ||
594 | - 'app', | ||
595 | - 'грн' | ||
596 | - ) ?></span></h2> | 631 | + <h2>Сумма заказа : <span class="label label-success"><?php echo $model->total; ?><?php echo \Yii::t( |
632 | + 'app', | ||
633 | + 'грн' | ||
634 | + ) ?></span></h2> | ||
597 | <?php Pjax::end(); ?> | 635 | <?php Pjax::end(); ?> |
598 | </div> | 636 | </div> |
599 | <div class="container"> | 637 | <div class="container"> |
600 | - <div class="row"> | ||
601 | - <?php $newProductForm = ActiveForm::begin( | ||
602 | - [ | ||
603 | - 'action' => yii\helpers\Url::to([ 'add' ]), | ||
604 | - 'id' => 'add-product-form', | ||
605 | - ] | ||
606 | - ); | ||
607 | - $newOrderProduct = new OrderProduct(); | ||
608 | - ?> | ||
609 | - <div class="col-md-8"> | ||
610 | - <?php echo $newProductForm->field($newOrderProduct, 'id') | ||
611 | - ->widget( | ||
612 | - Select2::className(), | ||
613 | - [ | ||
614 | - 'options' => [ 'placeholder' => 'Search for a product ...' ], | ||
615 | - 'pluginOptions' => [ | ||
616 | - 'allowClear' => true, | ||
617 | - 'disabled' => $model->isNewRecord ? true : false, | ||
618 | - 'minimumInputLength' => 3, | ||
619 | - 'language' => [ | ||
620 | - 'errorLoading' => new JsExpression( | ||
621 | - "function () { return 'Waiting for results...'; }" | 638 | + <div class="row"> |
639 | + <?php $newProductForm = ActiveForm::begin( | ||
640 | + [ | ||
641 | + 'action' => yii\helpers\Url::to([ 'add' ]), | ||
642 | + 'id' => 'add-product-form', | ||
643 | + ] | ||
644 | + ); | ||
645 | + $newOrderProduct = new OrderProduct(); | ||
646 | + ?> | ||
647 | + <div class="col-md-8"> | ||
648 | + <?php echo $newProductForm->field($newOrderProduct, 'id') | ||
649 | + ->widget( | ||
650 | + Select2::className(), | ||
651 | + [ | ||
652 | + 'options' => [ 'placeholder' => 'Search for a product ...' ], | ||
653 | + 'pluginOptions' => [ | ||
654 | + 'allowClear' => true, | ||
655 | + 'disabled' => $model->isNewRecord ? true : false, | ||
656 | + 'minimumInputLength' => 3, | ||
657 | + 'language' => [ | ||
658 | + 'errorLoading' => new JsExpression( | ||
659 | + "function () { return 'Waiting for results...'; }" | ||
660 | + ), | ||
661 | + ], | ||
662 | + 'ajax' => [ | ||
663 | + 'url' => \yii\helpers\Url::to([ 'find-product' ]), | ||
664 | + 'dataType' => 'json', | ||
665 | + 'data' => new JsExpression( | ||
666 | + 'function(params) { return {q:params.term}; }' | ||
667 | + ), | ||
668 | + ], | ||
669 | + 'escapeMarkup' => new JsExpression( | ||
670 | + 'function (markup) { return markup; }' | ||
622 | ), | 671 | ), |
623 | - ], | ||
624 | - 'ajax' => [ | ||
625 | - 'url' => \yii\helpers\Url::to([ 'find-product' ]), | ||
626 | - 'dataType' => 'json', | ||
627 | - 'data' => new JsExpression( | ||
628 | - 'function(params) { return {q:params.term}; }' | 672 | + 'templateResult' => new JsExpression( |
673 | + 'function(data) { return data.sku; }' | ||
674 | + ), | ||
675 | + 'templateSelection' => new JsExpression( | ||
676 | + 'function (data) { return data.sku; }' | ||
629 | ), | 677 | ), |
630 | ], | 678 | ], |
631 | - 'escapeMarkup' => new JsExpression( | ||
632 | - 'function (markup) { return markup; }' | ||
633 | - ), | ||
634 | - 'templateResult' => new JsExpression( | ||
635 | - 'function(data) { return data.sku; }' | ||
636 | - ), | ||
637 | - 'templateSelection' => new JsExpression( | ||
638 | - 'function (data) { return data.sku; }' | ||
639 | - ), | ||
640 | - ], | ||
641 | - ] | ||
642 | - ) | ||
643 | - ->label('Артикул'); | ||
644 | - | ||
645 | - ?> | ||
646 | - </div> | ||
647 | - <div class="col-md-2"> | ||
648 | - <?php echo $newProductForm->field( | ||
649 | - $newOrderProduct, | ||
650 | - 'count' | ||
651 | - ) | ||
652 | - ->input( | ||
653 | - 'number', | 679 | + ] |
680 | + ) | ||
681 | + ->label('Артикул'); | ||
682 | + | ||
683 | + ?> | ||
684 | + </div> | ||
685 | + <div class="col-md-2"> | ||
686 | + <?php echo $newProductForm->field( | ||
687 | + $newOrderProduct, | ||
688 | + 'count' | ||
689 | + ) | ||
690 | + ->input( | ||
691 | + 'number', | ||
692 | + [ | ||
693 | + 'disabled' => $model->isNewRecord ? true : false, | ||
694 | + ] | ||
695 | + ); ?> | ||
696 | + </div> | ||
697 | + <div class="col-md-2" style="margin-top: 23px"> | ||
698 | + <?php echo Html::submitButton( | ||
699 | + \Yii::t('app', 'Добавить'), | ||
700 | + [ | ||
701 | + 'class' => $model->isNewRecord ? 'btn btn-primary disabled' : 'btn btn-primary', | ||
702 | + ] | ||
703 | + ) ?> | ||
704 | + </div> | ||
705 | + <?php echo $newProductForm->field($newOrderProduct, 'order_id') | ||
706 | + ->hiddenInput( | ||
654 | [ | 707 | [ |
655 | - 'disabled' => $model->isNewRecord ? true : false, | 708 | + 'value' => $model->id, |
656 | ] | 709 | ] |
657 | - ); ?> | 710 | + ) |
711 | + ->label(false) ?> | ||
712 | + <?php ActiveForm::end(); ?> | ||
658 | </div> | 713 | </div> |
659 | - <div class="col-md-2" style="margin-top: 23px"> | ||
660 | - <?php echo Html::submitButton( | ||
661 | - \Yii::t('app', 'Добавить'), | 714 | + |
715 | + <br> | ||
716 | + <div class="row"> | ||
717 | + <?= Html::button( | ||
718 | + $model->isNewRecord ? \Yii::t('app', 'Создать') : \Yii::t('app', 'Сохранить'), | ||
719 | + [ | ||
720 | + 'class' => $model->isNewRecord ? 'btn btn-success btn-lg' : 'btn btn-primary btn-lg', | ||
721 | + 'id' => 'page-submit', | ||
722 | + ] | ||
723 | + ) ?> | ||
724 | + <?= Html::a( | ||
725 | + \Yii::t('app', 'Печать'), | ||
726 | + yii\helpers\Url::to( | ||
727 | + [ | ||
728 | + 'order/print', | ||
729 | + 'order_id' => $model->id, | ||
730 | + ] | ||
731 | + ), | ||
662 | [ | 732 | [ |
663 | - 'class' => $model->isNewRecord ? 'btn btn-primary disabled' : 'btn btn-primary', | 733 | + 'class' => $model->isNewRecord ? 'btn btn-info disabled btn-lg' : 'btn btn-info btn-lg', |
734 | + 'target' => '_blank', | ||
735 | + ] | ||
736 | + ) ?> | ||
737 | + <?= Html::a( | ||
738 | + \Yii::t('app', 'Выйти'), | ||
739 | + yii\helpers\Url::to( | ||
740 | + [ | ||
741 | + 'close-order', | ||
742 | + 'id' => $model->id, | ||
743 | + ] | ||
744 | + ), | ||
745 | + [ | ||
746 | + 'class' => $model->isNewRecord ? 'btn btn-info disabled btn-lg' : 'btn btn-info btn-lg', | ||
664 | ] | 747 | ] |
665 | ) ?> | 748 | ) ?> |
666 | </div> | 749 | </div> |
667 | - <?php echo $newProductForm->field($newOrderProduct, 'order_id') | ||
668 | - ->hiddenInput( | ||
669 | - [ | ||
670 | - 'value' => $model->id, | ||
671 | - ] | ||
672 | - ) | ||
673 | - ->label(false) ?> | ||
674 | - <?php ActiveForm::end(); ?> | ||
675 | - </div> | ||
676 | - | ||
677 | - <br> | ||
678 | - <div class="row"> | ||
679 | - <?= Html::button( | ||
680 | - $model->isNewRecord ? \Yii::t('app', 'Создать') : \Yii::t('app', 'Сохранить'), | ||
681 | - [ | ||
682 | - 'class' => $model->isNewRecord ? 'btn btn-success btn-lg' : 'btn btn-primary btn-lg', | ||
683 | - 'id' => 'page-submit', | ||
684 | - ] | ||
685 | - ) ?> | ||
686 | - <?= Html::a( | ||
687 | - \Yii::t('app', 'Печать'), | ||
688 | - yii\helpers\Url::to( | ||
689 | - [ | ||
690 | - 'order/print', | ||
691 | - 'order_id' => $model->id, | ||
692 | - ] | ||
693 | - ), | ||
694 | - [ | ||
695 | - 'class' => $model->isNewRecord ? 'btn btn-info disabled btn-lg' : 'btn btn-info btn-lg', | ||
696 | - 'target' => '_blank', | ||
697 | - ] | ||
698 | - ) ?> | ||
699 | - <?= Html::a( | ||
700 | - \Yii::t('app', 'Выйти'), | ||
701 | - yii\helpers\Url::to( | ||
702 | - [ | ||
703 | - 'close-order', | ||
704 | - 'id' => $model->id, | ||
705 | - ] | ||
706 | - ), | ||
707 | - [ | ||
708 | - 'class' => $model->isNewRecord ? 'btn btn-info disabled btn-lg' : 'btn btn-info btn-lg', | ||
709 | - ] | ||
710 | - ) ?> | ||
711 | - </div> | ||
712 | 750 | ||
713 | </div> | 751 | </div> |
714 | <br> | 752 | <br> |