Commit 0ac5c50cda8935db7acc48cb2c5ddb463afb8c02

Authored by Karnovsky A
2 parents 38828295 d0b123ec

Merge remote-tracking branch 'origin/master'

common/models/OrdersProducts.php
... ... @@ -2,6 +2,8 @@
2 2  
3 3 namespace common\models;
4 4  
  5 +use common\modules\product\models\ProductVariant;
  6 +
5 7 class OrdersProducts extends \yii\db\ActiveRecord
6 8 {
7 9 public static function tableName()
... ... @@ -31,8 +33,8 @@ class OrdersProducts extends \yii\db\ActiveRecord
31 33 ];
32 34 }
33 35  
34   - public function getMod()
  36 + public function getProductVariant()
35 37 {
36   - return $this->hasOne(Mod::className(), ['id' => 'mod_id']);
  38 + return $this->hasOne(ProductVariant::className(), ['product_variant_id' => 'mod_id']);
37 39 }
38 40 }
39 41 \ No newline at end of file
... ...
frontend/controllers/IamController.php
... ... @@ -9,7 +9,7 @@ use yii\filters\VerbFilter;
9 9 use yii\data\ActiveDataProvider;
10 10 use yii\data\Pagination;
11 11 use common\models\User;
12   -use common\models\Order;
  12 +use common\models\Orders;
13 13 use common\models\OrdersProducts;
14 14 use common\models\Share;
15 15 use common\models\Price;
... ... @@ -72,7 +72,7 @@ class IamController extends Controller
72 72 public function actionMyorders(){
73 73  
74 74  
75   - $model = Order::find()->where(['user_id'=>Yii::$app->user->id])->orderBy('id DESC')->all();
  75 + $model = Orders::find()->where(['user_id'=>Yii::$app->user->id])->orderBy('id DESC')->all();
76 76  
77 77 return $this->render('myorders',['model'=>$model]);
78 78  
... ... @@ -80,7 +80,7 @@ class IamController extends Controller
80 80  
81 81 public function actionShow_order()
82 82 {
83   - $model = Order::findOne($_GET['id']);
  83 + $model = Orders::findOne($_GET['id']);
84 84  
85 85  
86 86  
... ...
frontend/controllers/RegController.php
... ... @@ -58,7 +58,7 @@ class RegController extends Controller
58 58 $modelLogin->username = $model->username;
59 59 $modelLogin->password = $model->password;
60 60 $modelLogin->login();
61   - Mailer::widget(['type' => 'registration', 'subject'=> 'Спасибо за регистрацию', 'email' => $model->username ]);
  61 + //Mailer::widget(['type' => 'registration', 'subject'=> 'Спасибо за регистрацию', 'email' => $model->username ]);
62 62 $this->redirect(['/iam']);
63 63 }
64 64  
... ...
frontend/views/catalog/product.php
... ... @@ -123,7 +123,7 @@ $this->registerJs ("
123 123 <a href="#" rel='product' class="link_buy fl">В Корзину</a>
124 124 <div class="both"></div>
125 125 </div>
126   -
  126 + <?php /*
127 127 <div class="product_service">
128 128 <ul>
129 129 <li class="item1"><a href="<?= Url::to (['iam/share', 'id' => $product->product_id]) ?>">Добавить в закладки</a>
... ... @@ -133,7 +133,7 @@ $this-&gt;registerJs (&quot;
133 133 <li class="item3"><a href="<?= Url::to (['products/compare', 'id' => $product->product_id]) ?>">Добавить в
134 134 сравнение</a></li>
135 135 </ul>
136   - </div>
  136 + </div>*/?>
137 137 </div>
138 138  
139 139 <div class="productRightBar">
... ...
frontend/views/catalog/products.php
... ... @@ -73,7 +73,7 @@ $this-&gt;registerJsFile (Yii::getAlias(&#39;@web/js/ion.rangeSlider.js&#39;));
73 73 */?>
74 74 <div class="filters">
75 75 <ul>
76   - <li>
  76 + <li class="new">
77 77 <?php
78 78 $checked = !empty($filter['special']) && in_array('new', $filter['special']);
79 79 $option_url = Url::to(['catalog/category', 'category' => $category, 'filter' => ProductHelper::getFilterForOption($filter, 'special', 'new', $checked)]);
... ... @@ -81,7 +81,7 @@ $this-&gt;registerJsFile (Yii::getAlias(&#39;@web/js/ion.rangeSlider.js&#39;));
81 81 <input type="checkbox" class="special-option" <?= $checked ? ' checked' : ''?> onchange="document.location='<?= $option_url?>'" />
82 82 <a href="<?= $option_url?>"><?= Yii::t('product', 'New products')?></a>
83 83 </li>
84   - <li>
  84 + <li class="top">
85 85 <?php
86 86 $checked = !empty($filter['special']) && in_array('top', $filter['special']);
87 87 $option_url = Url::to(['catalog/category', 'category' => $category, 'filter' => ProductHelper::getFilterForOption($filter, 'special', 'top', $checked)]);
... ... @@ -89,7 +89,7 @@ $this-&gt;registerJsFile (Yii::getAlias(&#39;@web/js/ion.rangeSlider.js&#39;));
89 89 <input type="checkbox" class="special-option" <?= $checked ? ' checked' : ''?> onchange="document.location='<?= $option_url?>'" />
90 90 <a href="<?= $option_url?>"><?= Yii::t('product', 'Top products')?></a>
91 91 </li>
92   - <li>
  92 + <li class="promo">
93 93 <?php
94 94 $checked = !empty($filter['special']) && in_array('promo', $filter['special']);
95 95 $option_url = Url::to(['catalog/category', 'category' => $category, 'filter' => ProductHelper::getFilterForOption($filter, 'special', 'promo', $checked)]);
... ...
frontend/views/iam/1person.php
... ... @@ -26,7 +26,7 @@ $this-&gt;title = &#39;Профиль&#39;;
26 26 <ul>
27 27 <li>Личные данные</li>
28 28 <li><a href="<?=Url::to(['iam/myorders'])?>">Мои заказы</a></li>
29   - <li><a href="<?=Url::to(['iam/share'])?>">Закладки</a></li>
  29 + <!--<li><a href="<?=Url::to(['iam/share'])?>">Закладки</a></li>-->
30 30 <li><a href="<?=Url::to(['iam/price'])?>">Пожелания</a></li>
31 31 </ul>
32 32 </div>
... ...
frontend/views/iam/edit_person.php
... ... @@ -34,7 +34,7 @@ $(&#39;#user-phone&#39;).mask(&#39;(000) 000-0000&#39;);
34 34 <ul>
35 35 <li><a href="<?=Url::to(['iam/index'])?>">Личные данные</a></li>
36 36 <li><a href="<?=Url::to(['iam/myorders'])?>">Мои заказы</a></li>
37   - <li><a href="<?=Url::to(['iam/share'])?>">Закладки</a></li>
  37 + <!--<li><a href="<?=Url::to(['iam/share'])?>">Закладки</a></li>-->
38 38 <!--li><a href="<?=Url::to(['iam/price'])?>">Пожелания</a></li-->
39 39 </ul>
40 40 </div>
... ...
frontend/views/iam/myorders.php
... ... @@ -35,7 +35,7 @@ $this-&gt;registerJs(&quot;
35 35 <ul>
36 36 <li><a href="<?=Url::to(['iam/index'])?>">Личные данные</a></li>
37 37 <li><a href="<?=Url::to(['iam/myorders'])?>" class="active">Мои заказы</a></li>
38   - <li><a href="<?=Url::to(['iam/share'])?>">Закладки</a></li>
  38 + <!--<li><a href="<?=Url::to(['iam/share'])?>">Закладки</a></li>-->
39 39 <!--li><a href="<?=Url::to(['iam/price'])?>">Пожелания</a></li-->
40 40 </ul>
41 41 </div>
... ... @@ -46,7 +46,7 @@ $this-&gt;registerJs(&quot;
46 46  
47 47 <div class="favorites">
48 48 <div style="margin-top:-5px;">
49   - <?foreach($model as $item):?>
  49 + <?php foreach($model as $item):?>
50 50 <div class="fav_point">
51 51 <div class="left"><a href="#" class="link">№ <?=$item->id?></a></div>
52 52 <div class="left"><?=$item->date_time?></div>
... ... @@ -55,19 +55,27 @@ $this-&gt;registerJs(&quot;
55 55 <div class="both"></div>
56 56  
57 57 <div class="orders_view">
58   - <?foreach($item->products as $item_p):if(!empty($item_p->cost)):?>
  58 + <?php foreach($item->products as $item_p):
  59 + ?>
  60 +
  61 + <?php if(!empty($item_p->price)):?>
59 62 <div class="order">
60   - <div class="pixbox"><?if(!empty($item_p->mod->imageAvator)):?><img width="120" src="<?=Yii::$app->request->baseUrl.'/upload/mod/big/'.$item_p->mod->imageAvator?>"><?endif;?></div>
  63 + <div class="pixbox">
  64 + <?= \common\components\artboximage\ArtboxImageHelper::getImage($item_p->productVariant->image->imageUrl, 'product_trumb2')?>
  65 +
  66 + </div>
61 67 <div class="order_title"><?=$item_p->product_name?></div>
62 68 <div class="order_count">Кол-во: <?=$item_p->count?></div>
63   - <div class="order_price"><span><?=$item_p->cost?></span> грн.</div>
  69 + <div class="order_price"><span><?=$item_p->price?></span> грн.</div>
64 70 <p class="note"></p>
65 71 </div>
66   - <?endif;endforeach;?>
  72 + <?php endif;?>
  73 +
  74 + <?php endforeach;?>
67 75 <div class="both"></div>
68 76 </div>
69 77 </div>
70   - <?endforeach;?>
  78 + <?php endforeach;?>
71 79  
72 80 </div>
73 81  
... ...
frontend/views/iam/person.php
... ... @@ -25,7 +25,7 @@ $this-&gt;title = &#39;Профиль&#39;;
25 25 <ul>
26 26 <li><a href="<?=Url::to(['iam/index'])?>" class="active">Личные данные</a></li>
27 27 <li><a href="<?=Url::to(['iam/myorders'])?>">Мои заказы</a></li>
28   - <li><a href="<?=Url::to(['iam/share'])?>">Закладки</a></li>
  28 + <!--<li><a href="<?=Url::to(['iam/share'])?>">Закладки</a></li>-->
29 29 <!--li><a href="<?=Url::to(['iam/price'])?>">Пожелания</a></li-->
30 30 </ul>
31 31 </div>
... ...
frontend/views/iam/share.php
... ... @@ -34,7 +34,7 @@ $this-&gt;registerJs(&quot;
34 34 <ul>
35 35 <li><a href="<?=Url::to(['iam/index'])?>">Личные данные</a></li>
36 36 <li><a href="<?=Url::to(['iam/myorders'])?>">Мои заказы</a></li>
37   - <li><a href="<?=Url::to(['iam/share'])?>" class="active">Закладки</a></li>
  37 + <!--<li><a href="<?=Url::to(['iam/share'])?>">Закладки</a></li>-->
38 38 <!--li><a href="<?=Url::to(['iam/price'])?>">Пожелания</a></li-->
39 39 </ul>
40 40 </div>
... ...
frontend/views/layouts/main.php
... ... @@ -58,7 +58,7 @@
58 58 $this->registerJs("
59 59 $('.jcarousel').jcarousel({
60 60 vertical: true,
61   - scroll: 2
  61 + scroll: 1
62 62 });
63 63 ", View::POS_READY);
64 64  
... ... @@ -129,7 +129,7 @@
129 129 (050) 382-03-00
130 130 </div>
131 131 </div>
132   - <a href="#" id='call'>Обратный звонок</a>
  132 +<!-- <a href="#" id='call'>Обратный звонок</a>-->
133 133 </div>
134 134 <div class="basket">
135 135 <div id="basket" class="info">Корзина <span>0</span></div>
... ...
frontend/views/site/index.php
... ... @@ -17,17 +17,17 @@ $this-&gt;registerJsFile (
17 17  
18 18 <?php
19 19  
20   -echo SliderWidget::widget(["title"=>"HOME_SLIDER"]);
  20 +echo '<div class="home_banner_up">';
  21 + echo SliderWidget::widget(["title"=>"HOME_SLIDER"]);
  22 + echo BannerWidget::widget(['title' => 'HOME_RIGHT']);
21 23  
22   -echo BannerWidget::widget(['title' => 'HOME_RIGHT']);
  24 + echo '<div id="HOME_UNDER_SLIDER">';
  25 + echo BannerWidget::widget(['title' => 'HOME_UNDER_SLIDER_1']);
  26 + echo BannerWidget::widget(['title' => 'HOME_UNDER_SLIDER_2']);
  27 + echo BannerWidget::widget(['title' => 'HOME_UNDER_SLIDER_3']);
  28 + echo '</div>';
23 29  
24   -echo '<div id="HOME_UNDER_SLIDER">';
25   -
26   -echo BannerWidget::widget(['title' => 'HOME_UNDER_SLIDER_1']);
27   -echo BannerWidget::widget(['title' => 'HOME_UNDER_SLIDER_2']);
28   -echo BannerWidget::widget(['title' => 'HOME_UNDER_SLIDER_3']);
29   -
30   -echo '</div>';
  30 +echo '</div>'
31 31 ?>
32 32  
33 33 <?= \frontend\widgets\Rubrics::widget(['wrapper' => 'rubrics', 'includes' => [117,118,119,120,121]])?>
... ... @@ -37,31 +37,32 @@ echo &#39;&lt;/div&gt;&#39;;
37 37 <?= \common\modules\product\widgets\specialProducts::widget(['type' => 'top'])?>
38 38 <?= \common\modules\product\widgets\lastProducts::widget()?>
39 39  
  40 +<div class="why_me_">
  41 + <h2 class="why"><span>Почему</span></h2>
  42 + <ul class="why_list">
  43 + <li class="item1">
  44 + <div><span>Только брендовые товары.</span> Мы не торгуем подделками — только проверенное качество.</div>
  45 + </li>
  46 + <li class="item2">
  47 + <div><span>Скидки постоянным клиентам.</span> Постоянные клиенты получают гарантированную скидку на неакционные товары.</div>
  48 + </li>
  49 + <li class="item3">
  50 + <div><span>Удобная оплата</span>: наличными курьеру или же банковский перевод.</div>
  51 + </li>
  52 + <li class="item4">
  53 + <div><span>Квалифицированные менеджеры</span> всегда рады помочь с выбором и консультацией.</div>
  54 + </li>
  55 + <li class="item5">
  56 + <div><span>100% гарантия возврата.</span> Если товар не подойдет, мы вернем деньги.</div>
  57 + </li>
  58 + <li class="item6">
  59 + <div><span>Отслеживание статуса заказа и доставки.</span></div>
  60 + </li>
  61 + </ul>
  62 + <div class="both"></div>
  63 +</div>
  64 +
40 65  
41   -<h2 class="why"><span>Почему</span></h2>
42   -<ul class="why_list">
43   - <li class="item1">
44   - <span>Только брендовые товары.</span> Мы не торгуем подделками — только проверенное качество.
45   - </li>
46   - <li class="item2">
47   - <span>Скидки постоянным клиентам.</span> Постоянные клиенты получают гарантированную скидку
48   - на неакционные товары.
49   - </li>
50   - <li class="item3">
51   - <span>Удобная оплата</span>: наличными курьеру или же банковский перевод.
52   - </li>
53   - <li class="item4">
54   - <span>Квалифицированные менеджеры</span> всегда рады помочь с выбором и консультацией.
55   - </li>
56   - <li class="item5">
57   - <span>100% гарантия возврата.</span> Если товар не подойдет,
58   - мы вернем деньги.
59   - </li>
60   - <li class="item6">
61   - <span>Отслеживание статуса заказа и доставки.</span>
62   - </li>
63   -</ul>
64   -<div class="both"></div>
65 66  
66 67 <?=BannerWidget::widget(['title' => 'HOME_CENTER']);?>
67 68  
... ...
frontend/web/css/style.css
... ... @@ -108,7 +108,7 @@ a.myorders{color:#f75d50}
108 108 }
109 109 .products ul{list-style:none;margin:0px;padding:0px;}
110 110 .products ul li.item{float:left;width:160px;margin:0px 35px 15px;text-align:center;position:relative;}
111   -.products ul li a.name{display:block;color:#494949;text-decoration:none;margin:15px 0px;height:30px;text-transform: uppercase;}
  111 +.products ul li a.name{display:block;color:#494949;text-decoration:none;margin:15px 0px;height:30px;text-transform: uppercase;overflow: hidden;}
112 112 .products ul li .info{text-align: left;}
113 113 .pn{border:none;}
114 114  
... ... @@ -116,9 +116,19 @@ a.myorders{color:#f75d50}
116 116 .cost span.valute{font-size:16px;}
117 117 strike{font-size:18px;}
118 118  
119   -a.link_buy{display:block;margin:10px auto;width:122px;height:38px;line-height:38px;background:url('../img/buy.png') no-repeat;text-transform: uppercase;color:#ffffff;text-decoration:none;font-weight:bold;text-align:center;}
120   -
121   -.mycarousel{position:absolute;right:-34px;top:-20px;}
  119 +a.link_buy{font-size: 15px; display:block;margin:10px auto;width:122px;height:38px;line-height:38px;text-transform: uppercase;color:#ffffff;text-decoration:none;font-weight:600;text-align:center;
  120 + background: #95ba2f;
  121 + border-radius: 4px;
  122 + border-bottom: 3px solid #799920;
  123 +}
  124 +a.link_buy:hover {
  125 + border-bottom: 3px solid #95ba2f;;
  126 +}
  127 +a.link_buy:active {
  128 + background: #799920;
  129 + border-bottom: 3px solid #799920;
  130 +}
  131 +.mycarousel{position:absolute;right:-15px;top:-20px;}
122 132 ul.mycarousel{list-style:none;margin:0px;padding:0px;}
123 133 ul.mycarousel li{margin:0px;padding:0px;}
124 134 .mycarousel img{border:1px solid #d2d2d2;}
... ... @@ -128,7 +138,12 @@ h2.why{width:213px;height:49px;background:url(&#39;../img/logo-why.png&#39;) no-repeat;m
128 138 h2.why span{display:none;}
129 139  
130 140 ul.why_list{list-style:none;margin:0px;padding:0px;}
131   -ul.why_list li{float:left;margin-left:58px; width: 288px; height:96px;box-sizing: border-box;padding-left: 110px;}
  141 +ul.why_list li{float:left;margin-left:58px; width: 288px; height:96px;box-sizing: border-box;padding-left: 110px; margin-top: 20px;}
  142 +ul.why_list li div {
  143 + display: table-cell;
  144 + height: 96px;
  145 + vertical-align: middle;
  146 +}
132 147 ul.why_list li span{font-weight:bold;color:#799920;}
133 148 ul.why_list li.item1{background:url('../img/why_item1.png') left no-repeat;}
134 149 ul.why_list li.item2{background:url('../img/why_item2.png') left no-repeat;}
... ... @@ -382,7 +397,7 @@ ul.social {margin-top: 20px;}
382 397 .view_products2 li{margin:10px 0px;}
383 398  
384 399  
385   -.pixbox{width:134px;height:200px;overflow: hidden;text-align: center;}
  400 +.pixbox{width:100%;height:200px;overflow: hidden;text-align: center;}
386 401  
387 402  
388 403 .form-order{background:#f5f5f5;padding:10px;border:1px solid #d2d2d2;}
... ... @@ -394,7 +409,7 @@ ul.social {margin-top: 20px;}
394 409 .jcarousel-next-disabled, .jcarousel-prev-disabled {display: none !important;}
395 410 .content2 br {display: none;}
396 411 .pixbox a {
397   - width: 134px;
  412 + width: 160px;
398 413 height: 200px;
399 414 display: table-cell;
400 415 vertical-align: middle;
... ... @@ -873,5 +888,101 @@ a.active{font-weight:bold;text-decoration: underline;}
873 888 .special-products .item {
874 889 margin-bottom: 0 !important;
875 890 }
876   -.why_me_ {padding-top: 30px; overflow: hidden;}
877   -.why_me_ .why_list {width: 1038px; margin-left: -58px}
878 891 \ No newline at end of file
  892 +.why_me_ {padding-top: 30px; overflow: hidden; margin-bottom: 60px;}
  893 +.why_me_ .why_list {width: 1038px; margin-left: -58px}
  894 +.seo_text {
  895 +
  896 +}
  897 +.seo_text p {
  898 + margin: 12px 0 0 0;
  899 + font-size: 13px !important;
  900 + color: #333 !important;
  901 + font-family: Roboto !important;
  902 +}
  903 +.seo_text p:first-child {margin-top: 0}
  904 +.product-special {position: absolute}
  905 +.jcarousel-skin-tango .jcarousel-item {
  906 + width: 38px;
  907 + height: 38px;
  908 + border: 1px solid #d2d2d2;
  909 + text-align: center;
  910 + background: #fff;
  911 +}
  912 +.jcarousel-skin-tango .jcarousel-item a {
  913 + display: table-cell;
  914 + width: 38px;
  915 + height: 38px;
  916 + vertical-align: middle;
  917 +}
  918 +.mycarousel img {
  919 + max-width: 38px;
  920 + max-height: 38px;
  921 + border: 0;
  922 + vertical-align: middle;
  923 +}
  924 +.jcarousel-skin-tango .jcarousel-clip-vertical, .jcarousel-skin-tango .jcarousel-container-vertical {
  925 + height: 175px;
  926 +}
  927 +.jcarousel-skin-tango .jcarousel-container-vertical {
  928 + padding: 0;
  929 +}
  930 +.jcarousel-skin-tango .jcarousel-prev-vertical {
  931 + top:-13px;
  932 +}
  933 +.jcarousel-skin-tango .jcarousel-next-vertical {
  934 + bottom: -13px;
  935 +}
  936 +ul.product-special {
  937 + position: absolute;
  938 + top: 0;
  939 + left: 0;
  940 +}
  941 +ul.product-special li {
  942 + color: #333;
  943 + font-size: 10px;
  944 + text-transform: uppercase;
  945 + font-weight: 700;
  946 + height: 22px;
  947 + line-height: 24px;
  948 + padding: 0 9px;
  949 + position: relative;
  950 + border-top-left-radius: 4px;
  951 + border-bottom-left-radius: 4px;
  952 +}
  953 +ul.product-special li.top {
  954 + background: #fbc665;
  955 +}
  956 +ul.product-special li.top:after {
  957 + content: '';
  958 + position: absolute;
  959 + left: 52px;
  960 + top: 3px;
  961 + border: 11px solid transparent;
  962 + border-top: 5px solid #fbc665;
  963 + transform: rotate(-90deg);
  964 +}
  965 +ul.product-special li.new {
  966 + background: #42b9f6;
  967 +}
  968 +
  969 +ul.product-special li.new:after {
  970 + content: '';
  971 + position: absolute;
  972 + left: 52px;
  973 + top: 3px;
  974 + border: 11px solid transparent;
  975 + border-top: 5px solid #42b9f6;
  976 + transform: rotate(-90deg);
  977 +}
  978 +ul.product-special li.promo {
  979 + background: #f75d50;
  980 +}
  981 +ul.product-special li.promo:after {
  982 + content: '';
  983 + position: absolute;
  984 + left: 52px;
  985 + top: 3px;
  986 + border: 11px solid transparent;
  987 + border-top: 5px solid #f75d50;
  988 + transform: rotate(-90deg);
  989 +}
879 990 \ No newline at end of file
... ...