Commit 792c8a8865aa8ec2b694abba1a5417ad091dc431

Authored by Mihail
1 parent b1a1ffd5

work with goods one-item view

frontend/controllers/GoodsController.php
@@ -23,6 +23,7 @@ class GoodsController extends Controller { @@ -23,6 +23,7 @@ class GoodsController extends Controller {
23 23
24 $provider = new SqlDataProvider([ 24 $provider = new SqlDataProvider([
25 'sql' => $query, 25 'sql' => $query,
  26 + 'key' => 'article',
26 'pagination' => false, 27 'pagination' => false,
27 'params' => [':article' => '0092S40090', 28 'params' => [':article' => '0092S40090',
28 ':brand' => 'BOSCH', 29 ':brand' => 'BOSCH',
frontend/views/goods/index.php
@@ -118,7 +118,8 @@ $this->params['breadcrumbs'][] = $this->title; @@ -118,7 +118,8 @@ $this->params['breadcrumbs'][] = $this->title;
118 <p class="currency1 opposite1" id="dollars">грн</p> 118 <p class="currency1 opposite1" id="dollars">грн</p>
119 <p class="currency1 active_button_purple11" id="grivna">$</p> 119 <p class="currency1 active_button_purple11" id="grivna">$</p>
120 <table class="tovar_table" cellspacing="0" cellpadding="0" border="0"> 120 <table class="tovar_table" cellspacing="0" cellpadding="0" border="0">
121 - <tbody><tr class="name"> 121 + <tbody>
  122 + <tr class="name">
122 <td class="small_width row_name">Фирма</td> 123 <td class="small_width row_name">Фирма</td>
123 <td class="medium_width row_name">Номер детали</td> 124 <td class="medium_width row_name">Номер детали</td>
124 <td class="large_width row_name">Описание</td> 125 <td class="large_width row_name">Описание</td>
@@ -144,8 +145,7 @@ $this-&gt;params[&#39;breadcrumbs&#39;][] = $this-&gt;title; @@ -144,8 +145,7 @@ $this-&gt;params[&#39;breadcrumbs&#39;][] = $this-&gt;title;
144 <tbody> 145 <tbody>
145 146
146 147
147 - <tr class="one" style="border-bottom: 0;  
148 - border-top: 0;"> 148 + <tr class="one" style="border-bottom: 0;border-top: 0;">
149 <td class="row_select" style="border-bottom: 0; 149 <td class="row_select" style="border-bottom: 0;
150 border-top: 0;"> 150 border-top: 0;">
151 <div class="lend-tovar-cart-left"> 151 <div class="lend-tovar-cart-left">
frontend/views/goods/one_item.php
@@ -2,18 +2,47 @@ @@ -2,18 +2,47 @@
2 use \yii\helpers\Html; 2 use \yii\helpers\Html;
3 3
4 $this->registerCssFile('/css/BC2_catalog_zapchasti.css'); 4 $this->registerCssFile('/css/BC2_catalog_zapchasti.css');
  5 +// если товар один и тот же то выводим только цену и кол-во
  6 +// иначе всю информацию
  7 +$new_good = false;
  8 +//в провайдере в качестве ключей установлен - артикул
  9 +$article_arr = $widget->dataProvider->getKeys();
  10 +if ( empty($article_arr[$index - 1]) || $article_arr[$index - 1] != $key )
  11 + // если предыдущий артикул равен текущему, то это тот же товар
  12 + $new_good = true;
5 ?> 13 ?>
6 14
7 - <tr>  
8 - <td class="small_width"><?= $model['brand']?></td>  
9 - <td class="medium_width"><?= $model['article']?>  
10 - <img src="/images/favourite_notactive.png" class="favourite">  
11 - <img src="/images/favourite.png" class="pose">  
12 - </td>  
13 - <td class="large_width"><?= $model['description']?>  
14 - <a href=""><img src="/images/gear.png"></a>  
15 - <a href="" id="go_photo"><img src="/images/icon_cam.png"></a>  
16 - </td> 15 +<?php $this->beginBlock('item_details');
  16 +// выделим отдельно детали товара в блок, для опционального его вывода
  17 +?>
  18 +<tr>
  19 + <td class="small_width"><?= $model['brand']?></td>
  20 + <td class="medium_width"><?= $model['article']?>
  21 + <img src="/images/favourite_notactive.png" class="favourite">
  22 + <img src="/images/favourite.png" class="pose">
  23 + </td>
  24 + <td class="large_width"><?= $model['description']?>
  25 + <a href=""><img src="/images/gear.png"></a>
  26 + <a href="" id="go_photo"><img src="/images/icon_cam.png"></a>
  27 + </td>
  28 +<?php $this->endBlock(); ?>
  29 +
  30 + <?php $this->beginBlock('empty_details');
  31 + // иначе пустой блок
  32 + ?>
  33 +<tr style="border-bottom: 0;border-top: 0;">
  34 + <td colspan="3"></td>
  35 +
  36 + <?php $this->endBlock(); ?>
  37 +
  38 + <?php
  39 + if($new_good){
  40 + echo $this->blocks['item_details'];
  41 + }else{
  42 + echo $this->blocks['empty_details'];
  43 + }
  44 +
  45 + ?>
17 <td class="right"> 46 <td class="right">
18 <table class="tovar_table right" cellspacing="0" cellpadding="0" border="0" style="border: 0;"> 47 <table class="tovar_table right" cellspacing="0" cellpadding="0" border="0" style="border: 0;">
19 <tbody> 48 <tbody>