Commit 197460598e89cfcac46ecee01b6f52800ae83d31

Authored by Mihail
2 parents 8f02e664 8477bae2

merge with server

.htaccess 100755 → 100644
... ... @@ -12,7 +12,10 @@ AddDefaultCharset utf-8
12 12  
13 13 RewriteBase /
14 14 # deal with admin first
15   - RewriteRule ^storage/(.*)?$ /storage/$1 [L,PT]
  15 +
  16 +
  17 +
  18 + RewriteRule ^storage/(.*)?$ /storage/$1 [L,PT]
16 19  
17 20 RewriteCond %{REQUEST_URI} ^/(admin)
18 21  
... ... @@ -61,7 +64,7 @@ AddDefaultCharset utf-8
61 64  
62 65 RewriteCond %{REQUEST_FILENAME} !-d
63 66  
64   - RewriteRule ^.*$ frontend/web/index.php
  67 + RewriteRule ^.*$ frontend/web/index.php [L]
65 68  
66 69 </IfModule>
67 70  
... ...
frontend/controllers/GoodsController.php
... ... @@ -27,6 +27,7 @@ class GoodsController extends Controller
27 27 $brand = $arr_name[0];
28 28 $article = $arr_name[1];
29 29  
  30 +
30 31 $params = Yii::$app->request->getQueryParams();
31 32  
32 33 // получим параметры сортировки из гет запроса
... ... @@ -37,6 +38,15 @@ class GoodsController extends Controller
37 38 'brand' => $brand];
38 39 $arr = ['GoodsViewSearch' => $arr_values];
39 40  
  41 + if(empty( Yii::$app->user->identity )){
  42 + $margin_id = 1;
  43 + }else{
  44 + $margin_id = Yii::$app->user->identity->margin_id;
  45 + }
  46 +
  47 +// $arr = ['GoodsViewSearch' => ['name' => '0092S40090',
  48 +// 'brand' => 'BOSCH']];
  49 +
40 50 if (empty(Yii::$app->user->identity)) {
41 51 $margin_id = 1;
42 52 } else {
... ...
frontend/views/goods/index.php
... ... @@ -21,6 +21,7 @@ $this-&gt;params[&#39;breadcrumbs&#39;][] = $this-&gt;title;
21 21 \yii\widgets\Pjax::begin();
22 22 ?>
23 23  
  24 +
24 25 <div class='vin table '>
25 26 <a href="" class='navigation'>Италавто</a>
26 27 <img src="/images/arrow_dots.png">
... ...
frontend/views/goods/one_item.php
1 1 <?php
2 2 use \yii\helpers\Html;
3   -
  3 +$this->registerCssFile('/css/BC2_catalog_zapchasti.css');
4 4 // если товар один и тот же то выводим только цену и кол-во
5 5 // иначе всю информацию
6 6 $new_good = false;
... ...
frontend/views/goods/one_item1.php 0 → 100644
  1 +<?php
  2 +use \yii\helpers\Html;
  3 +
  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;
  13 +?>
  14 +
  15 +<?php $this->beginBlock('item_details');
  16 +// выделим отдельно детали товара в блок, для опционального его вывода
  17 +?>
  18 + <tr style="border-bottom: 0">
  19 + <td style="border-bottom: 0" class="small_width"><?= $model->brand?></td>
  20 + <td style="border-bottom: 0" 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 style="border-bottom: 0" class="large_width"><?= $model->description?>
  25 + <a class="tecdoc_id_info" data-toggle="modal" data-target="#details_content_block" data-id="<?= $model->tecdoc_id ?>" 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 style="border-bottom: 0;border-top: 0;"></td>
  35 + <td style="border-bottom: 0;border-top: 0;"></td>
  36 + <td style="border-bottom: 0;border-top: 0;"></td>
  37 +
  38 + <?php $this->endBlock(); ?>
  39 +
  40 + <?php
  41 + if($new_good){
  42 + echo $this->blocks['item_details'];
  43 + }else{
  44 + echo $this->blocks['empty_details'];
  45 + }
  46 +
  47 + ?>
  48 + <td class="right">
  49 + <table class="tovar_table right" cellspacing="0" cellpadding="0" border="0" style="border: 0;">
  50 + <tbody>
  51 + <tr class="one" style="border-bottom: 0;
  52 + border-top: 0;">
  53 + <td class="row_select" style="border-bottom: 0;
  54 + border-top: 0;">
  55 + <div class="lend-tovar-cart-left">
  56 + <input type="text" class="lend-tovar-cart-number" value="1">
  57 + <div class="arrow-cart-lend-wr">
  58 + <img class="arrow-cart-lend-1" src="/images/arrow-cart-up.png" width="9" height="6" alt="">
  59 + <img class="arrow-cart-lend-2" src="/images/arrow-cart-down1.png" width="9" height="6" alt="">
  60 + </div>
  61 + </div>
  62 + <button class="purple">В корзину</button>
  63 + </td>
  64 +
  65 + </tr>
  66 + </tbody></table>
  67 +
  68 + </td>
  69 + <td class="right_large">
  70 + <table class="inner" border='0' style='border-top:0; border-left:0'>
  71 + <tr border='0' style='border-top:0; border-left:0'><td border='0' style='border-top:0; border-left:0'><?= $model->box ?></td></tr>
  72 +
  73 + </table>
  74 + </td>
  75 + <td class="right_small"><table class="inner" border='0' style='border-top:0; border-left:0'>
  76 + <tr border='0' style='border-top:0; border-left:0'><td border='0' style='border-top:0; border-left:0'><?= $model->delivery?> дн.</td></tr>
  77 +
  78 + </table></td>
  79 + <td class="right_medium"><table class="inner" border='0' style='border-top:0; border-left:0'>
  80 + <tr border='0' style='border-top:0; border-left:0'><td border='0' style='border-top:0; border-left:0'><?= $model->outputPrice?></td></tr>
  81 +
  82 + </table></td>
  83 + </tr>
  84 +
  85 +
  86 + <div id="modal_form_photo">
  87 + <span id="modal_close"><img src="/images/close_form.png"></span>
  88 + <img src="<?= $model->image ?>">
  89 + </div>
0 90 \ No newline at end of file
... ...
frontend/web/css/general_styles.css
... ... @@ -1324,22 +1324,7 @@ table a{
1324 1324 /*Modal window*/
1325 1325  
1326 1326 /* Окно */
1327   -#modal_form_photo {
1328   - width: 561px;
1329   - height: 391px; /* Размеры должны быть фиксированы */
1330   - /*border-radius: 5px;*/
1331   - /*border: 3px #000 solid;*/
1332   - background: #fff;
1333   - position: fixed; /* чтобы окно было в видимой зоне в любом месте */
1334   - top: 45%; /* отступаем сверху 45%, остальные 5% подвинет скрипт */
1335   - left: 31%; /* половина экрана слева */
1336   - margin-top: -150px;
1337   - /* тут вся магия центровки css, отступаем влево и вверх минус половину ширины и высоты соответственно =) */
1338   - display: none; /* в обычном состоянии окна не должно быть */
1339   - opacity: 0; /* полностью прозрачно для анимирования */
1340   - z-index: 15; /* окно должно быть наиболее большем слое */
1341   -
1342   -}
  1327 +
1343 1328 /* Кнопка закрыть для тех кто в танке) */
1344 1329 #modal_form_photo #modal_close {
1345 1330 width: 21px;
... ... @@ -2751,15 +2736,12 @@ margin-left: 0!important
2751 2736 }
2752 2737  
2753 2738 #modal_form_photo {
2754   - width: 561px;
2755   - height: 391px; /* Размеры должны быть фиксированы */
2756   - /*border-radius: 5px;*/
2757   - /*border: 3px #000 solid;*/
  2739 + width: auto;
  2740 + height: auto;
2758 2741 background: #fff;
2759   - position: fixed; /* чтобы окно было в видимой зоне в любом месте */
  2742 + position: absolute; /* чтобы окно было в видимой зоне в любом месте */
2760 2743 top: 45%; /* отступаем сверху 45%, остальные 5% подвинет скрипт */
2761   - left: 31%; /* половина экрана слева */
2762   - margin-top: -150px;
  2744 + left: 50%; /* половина экрана слева */
2763 2745 /* тут вся магия центровки css, отступаем влево и вверх минус половину ширины и высоты соответственно =) */
2764 2746 display: none; /* в обычном состоянии окна не должно быть */
2765 2747 opacity: 0; /* полностью прозрачно для анимирования */
... ...
frontend/web/css/main.css
... ... @@ -575,4 +575,54 @@ div.required:after { content: &quot; *&quot;;
575 575  
576 576 .arrow_downA{
577 577 background: url("/images/icon2r.png") no-repeat 93%!important;
  578 +}
  579 +
  580 +.table_details{
  581 + width: auto;
  582 +}
  583 +
  584 +.details_content{
  585 + width: auto;
  586 + margin: 31px auto;
  587 +}
  588 +
  589 +.details-list{
  590 + margin: 20px auto;
  591 + border: 1px solid #dedede;
  592 + width: auto!important;
  593 +}
  594 +
  595 +.details-list tr{
  596 + border: 1px solid #dedede;
  597 +
  598 +}
  599 +
  600 +.details-list td{
  601 + border: 1px solid #dedede;
  602 + padding: 10px;
  603 +}
  604 +
  605 +.details-list tr td:first-child{
  606 + font-weight: 500;
  607 + font-style: italic;
  608 +}
  609 +
  610 +.details-list th{
  611 + padding: 10px;
  612 + border: 1px solid #dedede;
  613 +}
  614 +
  615 +
  616 +.tovar_table img {
  617 + float: right;
  618 + margin-right: 28px!important;
  619 +}
  620 +
  621 +.large_width a:nth-child(1) img {
  622 + position: absolute;
  623 + right: -20px!important;
  624 +}
  625 +
  626 +.large_width{
  627 + padding-left:13px!important;
578 628 }
579 629 \ No newline at end of file
... ...
frontend/web/js/script.js
... ... @@ -344,30 +344,58 @@ $(&#39;.phone_control, .phone_placeholder&#39;).click(
344 344 }
345 345 );
346 346 });
347   - $('a#go_photo').click( function(event){ // ловим клик по ссылки с id="go"
348   - event.preventDefault(); // выключаем стандартную роль элемента
349   - // console.log($(this).data('image'));
350   - // $('#modal_form_photo img').src($(this).data('image'))
351   - $('#overlay').fadeIn(400, // сначала плавно показываем темную подложку
352   - function(){ // после выполнения предъидущей анимации
353   - $('#modal_form_photo')
354   - .css('display', 'block') // убираем у модального окна display: none;
355   - .animate({opacity: 1, top: '50%'}, 200); // плавно прибавляем прозрачность одновременно со съезжанием вниз
356   - });
357   - });
358   - $('.close_span').click(function(){
359   - $('.collapse').removeClass('in');
360   - });
361   - /* Закрытие модального окна, тут делаем то же самое но в обратном порядке */
362   - $('#modal_close, #overlay').click( function(){ // ловим клик по крестику или подложке
363   - $('#modal_form_photo')
364   - .animate({opacity: 0, top: '45%'}, 200, // плавно меняем прозрачность на 0 и одновременно двигаем окно вверх
365   - function(){ // после анимации
366   - $(this).css('display', 'none'); // делаем ему display: none;
367   - $('#overlay').fadeOut(400); // скрываем подложку
368   - }
369   - );
370   - });
  347 + //$('a#go_photo').click( function(event){ // ловим клик по ссылки с id="go"
  348 + // event.preventDefault(); // выключаем стандартную роль элемента
  349 + // // console.log($(this).data('image'));
  350 + // // $('#modal_form_photo img').src($(this).data('image'))
  351 + // $('#overlay').fadeIn(400, // сначала плавно показываем темную подложку
  352 + // function(){ // после выполнения предъидущей анимации
  353 + // $('#modal_form_photo')
  354 + // .css('display', 'block') // убираем у модального окна display: none;
  355 + // .animate({opacity: 1, top: '50%'}, 200); // плавно прибавляем прозрачность одновременно со съезжанием вниз
  356 + // });
  357 + //});
  358 + //$('.close_span').click(function(){
  359 + // $('.collapse').removeClass('in');
  360 + //});
  361 + ///* Закрытие модального окна, тут делаем то же самое но в обратном порядке */
  362 + //$('#modal_close, #overlay').click( function(){ // ловим клик по крестику или подложке
  363 + // $('#modal_form_photo')
  364 + // .animate({opacity: 0, top: '45%'}, 200, // плавно меняем прозрачность на 0 и одновременно двигаем окно вверх
  365 + // function(){ // после анимации
  366 + // $(this).css('display', 'none'); // делаем ему display: none;
  367 + // $('#overlay').fadeOut(400); // скрываем подложку
  368 + // }
  369 + // );
  370 + //});
  371 + $('a#go_photo').click( function(event){ // ловим клик по ссылки с id="go"
  372 + event.preventDefault(); // выключаем стандартную роль элемента
  373 + var scrollTop = window.pageYOffset ? window.pageYOffset : (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
  374 + viewportHeight = $(window).height();
  375 + var modalWidth=$('#modal_form_photo').width()/2;
  376 + var modalHeight=$('#modal_form_photo').outerHeight()/2;
  377 + $('#overlay').fadeIn(400, // сначала плавно показываем темную подложку
  378 + function(){ // после выполнения предъидущей анимации
  379 + $('#modal_form_photo')
  380 + .css({'display':'block',opacity: 1, marginTop: -modalHeight, marginLeft: -modalWidth}) // убираем у модального окна display: none;
  381 + .animate({opacity: 1, top: scrollTop+(viewportHeight/2)}, 200); // плавно прибавляем прозрачность одновременно со съезжанием вниз
  382 +
  383 +
  384 + });
  385 +
  386 + });
  387 + /* Закрытие модального окна, тут делаем то же самое но в обратном порядке */
  388 + $('#modal_close, #overlay').click( function(){ // ловим клик по крестику или подложке
  389 + $('#modal_form_photo')
  390 + .animate({opacity: 0, top: '45%'}, 200, // плавно меняем прозрачность на 0 и одновременно двигаем окно вверх
  391 + function(){ // после анимации
  392 + $(this).css('display', 'none'); // делаем ему display: none;
  393 + $('#overlay').fadeOut(400); // скрываем подложку
  394 + }
  395 + );
  396 + });
  397 +
  398 +
371 399  
372 400 $('a#go_project').click( function(event){ // ловим клик по ссылки с id="go"
373 401 event.preventDefault(); // выключаем стандартную роль элемента
... ...