Commit aefe93aacb9ee0cb4358f78314b1b2cfeb8c8dd6

Authored by Administrator
1 parent b2d7dc98

big commti

backend/views/category/_form.php
... ... @@ -30,7 +30,7 @@ use kartik\select2\Select2;
30 30 ]
31 31 ])->label(Yii::t('product', 'Parent category')) ?>
32 32  
33   - <?= $form->field($model, 'categories')->widget(Select2::className(), [
  33 + <?= $form->field($model, 'taxGroup')->widget(Select2::className(), [
34 34 'data' => \yii\helpers\ArrayHelper::map(\common\modules\rubrication\models\TaxGroup::find()->all(), 'tax_group_id', 'name'),
35 35 'language' => 'ru',
36 36 'options' => [
... ...
common/models/Customer.php
... ... @@ -7,7 +7,7 @@ use yii\base\NotSupportedException;
7 7 use yii\behaviors\TimestampBehavior;
8 8 use yii\db\ActiveRecord;
9 9  
10   -class Customer extends \yii\db\ActiveRecord implements \yii\web\IdentityInterface
  10 +class Customer extends User implements \yii\web\IdentityInterface
11 11 {
12 12 public $password_repeat;
13 13 public $role;
... ...
common/modules/product/models/Category.php
... ... @@ -39,7 +39,6 @@ use common\behaviors\Slug;
39 39 class Category extends \yii\db\ActiveRecord
40 40 {
41 41 public $imageUpload;
42   - public $categories;
43 42  
44 43 public function behaviors()
45 44 {
... ... @@ -80,7 +79,7 @@ class Category extends \yii\db\ActiveRecord
80 79 [['meta_robots'], 'string', 'max' => 50],
81 80 [['alias', 'name'], 'string', 'max' => 250],
82 81 [['populary'], 'boolean'],
83   - [['imageUpload','categories'], 'safe'],
  82 + [['imageUpload','taxGroup'], 'safe'],
84 83 [['imageUpload'], 'file', 'extensions' => 'jpg, gif, png'],
85 84 ];
86 85 }
... ... @@ -268,6 +267,12 @@ class Category extends \yii\db\ActiveRecord
268 267  
269 268 }
270 269  
  270 +
  271 + public function setTaxGroup($value)
  272 + {
  273 + return $this->tax_group = $value;
  274 + }
  275 +
271 276 public function getTaxGroup()
272 277 {
273 278 return $this->hasMany(TaxGroup::className(), ['tax_group_id' => 'tax_group_id'])
... ...
common/modules/product/models/Export.php
... ... @@ -18,7 +18,7 @@ class Export extends Model {
18 18 $handle = fopen($dirName .'/'. $filename, "w");
19 19 ///$products = Product::find()->joinWith(['variants'])->where(['!=', ProductVariant::tableName() .'.stock', 0])->select('product.product_id')->all();
20 20 $products = Product::find()
21   - ->with(['variantsWithFilters','brand','categoriesWithName'])->all();
  21 + ->with(['variantsWithFilters','brand','categories'])->all();
22 22  
23 23 $i = 0;
24 24 foreach ($products as $product)
... ... @@ -55,9 +55,9 @@ class Export extends Model {
55 55  
56 56 // $filters = $product->properties;
57 57 $categories = [];
58   - foreach($product->categoriesWithName as $value){
59   - $categorName = ArrayHelper::getColumn($value->categoryNames,'value');
60   - $categories[] = $categorName[0];
  58 + foreach($product->categories as $value){
  59 +
  60 + $categories[] = $value->name;
61 61  
62 62 }
63 63  
... ... @@ -65,6 +65,7 @@ class Export extends Model {
65 65 $categories = implode(',',$categories);
66 66  
67 67 $list = [
  68 +
68 69 $categories,
69 70 $product->brand->name,
70 71 $product->name,
... ... @@ -75,8 +76,8 @@ class Export extends Model {
75 76 (!empty($product->variant)) ? $product->variant->price : '',
76 77 intval($product->akciya),
77 78 '',
78   - intval($product->new),
79   - intval($product->top),
  79 + intval($product->is_new),
  80 + intval($product->is_top),
80 81 $product->video,
81 82 implode (',', $fotos),
82 83 ];
... ...
common/modules/product/models/Import.php
... ... @@ -265,7 +265,7 @@ class Import extends Model {
265 265 // 5 Описание Рус
266 266 $product_body_ru = $data[4];
267 267  
268   - // 6 Фильтр (['pol'='мужской']*['god' = '2013']*['volume'='25 л']*['size'='49 x 30 x 20см']*['composition'='600D полиэстер'])
  268 + // 6 Фильтр
269 269 $filters = explode ('*', $data[5]);
270 270  
271 271 // 11 Цена акция
... ...
common/modules/rubrication/models/TaxOption.php
... ... @@ -19,6 +19,7 @@ use yii\db\ActiveRecord;
19 19 * @property string $alias
20 20 * @property integer $sort
21 21 * @property integer $default_value
  22 + * @property integer $name
22 23 *
23 24 * @property TaxEntityRelation[] $taxEntityRelations
24 25 * @property TaxGroup $taxGroup
... ... @@ -160,52 +161,26 @@ class TaxOption extends \yii\db\ActiveRecord
160 161 return $this->hasOne(TaxValueString::className(), ['tax_option_id' => 'tax_option_id']);
161 162 }
162 163  
163   - public function getName(){
164   - return (!empty($this->taxValueString)) ? $this->taxValueString->value : '' ;
165   - }
166   -
167   -
168   -
169   - public function setName($values){
170   - $this->name = $values;
171   - }
172 164  
173 165 /**
174 166 */
175 167 public function getValue()
176 168 {
177   - $valueClass = $this->getValueModelName();
178   - if ($valueClass) {
179   - return $this->hasOne($valueClass, ['tax_value_id' => 'default_value', 'tax_option_id' => 'tax_option_id'])->inverseOf('taxOption');
180   - }
  169 + return $this->name;
181 170 }
182 171  
183 172 /**
184 173 */
185 174 public function getValueRenderFlash()
186 175 {
187   - $valueClass = $this->getValueModelName();
188   - $value = $this->value;
189   - if ($valueClass && method_exists($valueClass, 'getValueRenderFlash')) {
190   - return $valueClass::getValueRenderFlash($value);
191   - } elseif(!empty($value)) {
192   - return $value->value;
193   - } else {
194   - return null;
195   - }
  176 + return $this->name;
196 177 }
197 178  
198 179 /**
199 180 */
200 181 public function getValueRenderHTML()
201 182 {
202   - $valueClass = $this->getValueModelName();
203   - $value = $this->value;
204   - if ($valueClass && method_exists($valueClass, 'getValueRenderHTML')) {
205   - return $valueClass::getValueRenderHTML($value);
206   - } else {
207   - return $value->value;
208   - }
  183 + return $this->name;
209 184 }
210 185  
211 186 /**
... ...
frontend/assets/AppAsset.php
... ... @@ -19,6 +19,7 @@ class AppAsset extends AssetBundle
19 19 public $baseUrl = '@web';
20 20 public $css = [
21 21 'css/css_header.css',
  22 + 'css/comments.css',
22 23 'http://fonts.googleapis.com/css?family=Roboto:400,300,700&subset=latin,cyrillic-ext',
23 24 ];
24 25 public $js = [
... ...
frontend/models/SignupForm.php 100755 → 100644
1 1 <?php
2 2 namespace frontend\models;
3 3  
4   -use common\models\Customers;
  4 +use common\models\Customer;
5 5 use yii\base\Model;
6 6 use Yii;
7 7  
... ... @@ -93,7 +93,7 @@ class SignupForm extends Model
93 93 return null;
94 94 }
95 95  
96   - $user = new Customers();
  96 + $user = new Customer();
97 97 $user->username = $this->username;
98 98 $user->surname = $this->surname;
99 99 $user->email = $this->email;
... ...
frontend/views/catalog/product.php
... ... @@ -3,6 +3,7 @@
3 3 use common\components\artboximage\ArtboxImageHelper;
4 4 use frontend\assets\FotoramaAsset;
5 5 use frontend\widgets\Seo;
  6 +use common\modules\comment\widgets\CommentWidget;
6 7 FotoramaAsset::register($this);
7 8 $this->params[ 'seo' ][ 'key' ] = $category->name;
8 9 $this->params[ 'seo' ][ 'fields' ][ 'name' ] = $product->fullname;
... ... @@ -514,76 +515,13 @@ $this-&gt;params[ &#39;breadcrumbs&#39; ][] = $product-&gt;fullname . &#39; #&#39; . $product-&gt;enabled
514 515 </h2>
515 516  
516 517  
517   -
518   - <div class="comments comments_block">
519   -
520   -
521   - <div class="comment_add_form">
522   - <form action="" id="comment_add_form">
523   - <input type="hidden" name="product_id" value="">
524   - <input type="hidden" name="product_review_id" value="">
525   - <input type="hidden" name="product_name" value="">
526   - <input type="hidden" name="review_sk" value="">
527   - <div class="show_hide_form">
528   - <div class="title">Добавьте свой отзыв</div>
529   - <table class="comment_form_table">
530   - <tbody><tr>
531   - <td style="width: 150px; text-align: right;">Ваше имя:</td>
532   - <td>
533   - <div class="inpt"><input type="text" name="user_name" value=""></div>
534   - <span class="error_text"></span>
535   - </td>
536   - </tr>
537   - <tr>
538   - <td style="width: 150px; text-align: right;">Оцените этот товар:</td>
539   - <td>
540   - <ul class="ul"><li></li><li></li><li></li><li></li><li></li></ul>
541   - <span class="rating_description"></span>
542   - <input type="hidden" name="rating" value="0">
543   - <div class="clr"></div>
544   - </td>
545   - </tr>
546   - </tbody></table>
547   -
548   - <div class="field_block">
549   - <div class="field_name">Достоинства: <span class="error_text"></span></div>
550   - <div class="field_input">
551   - <div class="inpt txtarea" style="position: relative; z-index: 1;">
552   - <textarea name="dignity" class="" data-toggle="popover" data-trigger="focus" title="Dismissible popover" data-content="В этом поле укажите все, что вам понравилось в этом товаре. Удобство в использовании, качественное выполнение основных функций... даже цвет и запах могут быть достоинствами!<br>Это позволит быстро сориентироваться другим покупателям, что же это за товар и чем он хорош."></textarea>
553   - </div>
554   - </div>
555   - </div>
556   -
557   - <div class="field_block">
558   - <div class="field_name">Недостатки: <span class="error_text"></span></div>
559   - <div class="field_input">
560   - <div class="inpt txtarea" style="position: relative; z-index: 1;"><textarea name="lack" class=""></textarea></div>
561   - </div>
562   - </div>
563   -
564   - <div class="field_block">
565   - <div class="field_name">Комментарий: <span class="error_text"></span></div>
566   - <div class="field_input">
567   - <div class="inpt txtarea" style="position: relative; z-index: 1;"><textarea name="comment_text" class=""></textarea></div>
568   - </div>
569   - </div>
570   -
571   - </div>
572   - <div class="error_message"></div>
573   - <div class="submit">
574   - <input type="submit" name="submit" value="Добавить отзыв" class="btn btn-large">
575   - <div class="get_answers" style="top: 0;">
576   - <label>
577   - <input type="checkbox" name="get_answers_by_email" class="get_answers_by_email" value="1">
578   - Получать ответы на E-mail</label>
579   - </div>
580   - <div class="email_4_answers" style="/*display: none;*/">
581   - <div class="inpt"><input type="email" name="email_4_answers" value=""></div>
582   - </div>
583   - </div>
584   - </form>
585   - </div>
586   -
  518 + <div class="comment-wrapper comments comments_block" style="padding-bottom:25px">
  519 + <?php
  520 + echo CommentWidget::widget([
  521 + 'model' => $product,
  522 + ]);
  523 + ?>
  524 + <div class="both"></div>
587 525 </div>
588 526  
589 527 </div>
... ...
frontend/views/order/success.php
1   -<h1>Go home</h1>
2 1 \ No newline at end of file
  2 +<div class="block-100">
  3 +
  4 + <div class="container">
  5 +
  6 + <div class="block-25">
  7 + <div class="catalogueLeft orderLeftPanel">
  8 +
  9 +
  10 + <div class="columnLeftInfo">
  11 + <!-- del_columnLeftInfo -->
  12 +
  13 +
  14 +
  15 +
  16 +
  17 + <table border="0" cellspacing="0" cellpadding="0" class="boxGen articleBox">
  18 + <tbody><tr class="bxhead">
  19 + <th class="bxhl"></th>
  20 + <th class="bxhc"><div class="h3">
  21 + <a href="view-articles/">Статьи</a>
  22 + </div></th>
  23 +
  24 + <th class="bxhr"></th>
  25 + </tr>
  26 +
  27 + <tr class="bxdelim">
  28 + <td></td>
  29 + <td></td>
  30 + <td></td>
  31 + </tr>
  32 + <tr class="bxmiddle">
  33 + <td class="bxl"></td>
  34 + <td class="bxc"> <div width="100%" class="articlesBox"><!-- cats_table-->
  35 + <div width="100%">
  36 + <div class="articleItem">
  37 + <span class="image">
  38 + </span>
  39 + <span align="left" class="title">
  40 + <a href="liniya-sveta-predstavila-trendovye-modeli-na-interior-mebel-85.htm">
  41 + Линия света представила трендовые модели на Interior Mebel
  42 + </a>
  43 + </span>
  44 +
  45 + <div align="left" class="desc">
  46 + <p>В Киеве прошла выставка Interior Mebel, которая уже традиционно собирает лучшие образцы дизайна интерьера. На...
  47 + <a href="liniya-sveta-predstavila-trendovye-modeli-na-interior-mebel-85.htm">
  48 + подробнее
  49 + </a>
  50 + </p></div>
  51 +
  52 + </div>
  53 +
  54 +
  55 + <div class="articleItem">
  56 + <span class="image">
  57 + </span>
  58 + <span align="left" class="title">
  59 + <a href="svetodiodnoe-osveschenie-light-topps-svetodiodnye-lampochki-lampy-colon-kupit-dlya-doma-ceny-v-ukraine-84.htm">
  60 + Светодиодное освещение Light Topps | Светодиодные...
  61 + </a>
  62 + </span>
  63 +
  64 + <div align="left" class="desc">
  65 + О светодиодных лампах и светильниках, в которых используются светодиодные модули, написано немало и наверняка уже...
  66 + <a href="svetodiodnoe-osveschenie-light-topps-svetodiodnye-lampochki-lampy-colon-kupit-dlya-doma-ceny-v-ukraine-84.htm">
  67 + подробнее
  68 + </a>
  69 + </div>
  70 +
  71 + </div>
  72 +
  73 +
  74 + <div class="articleItem">
  75 + <span class="image">
  76 + </span>
  77 + <span align="left" class="title">
  78 + <a href="lyustry-potolochnye-novye-vozmojnosti-upravleniya-svetom-82.htm">
  79 + Люстры потолочные. Новые возможности управления светом
  80 + </a>
  81 + </span>
  82 +
  83 + <div align="left" class="desc">
  84 + Люстры потолочные оснащенные пультом дистанционного управления, позволяют включать/выключать, а также регулировать...
  85 + <a href="lyustry-potolochnye-novye-vozmojnosti-upravleniya-svetom-82.htm">
  86 + подробнее
  87 + </a>
  88 + </div>
  89 +
  90 + </div>
  91 +
  92 +
  93 +
  94 +
  95 +
  96 +
  97 +
  98 +
  99 +
  100 +
  101 + <div style="clear: left;"></div>
  102 +
  103 +
  104 + </div>
  105 +
  106 +
  107 + </div></td>
  108 + <td class="bxr"></td>
  109 + </tr>
  110 + <tr class="bxbottom">
  111 + <td class="bxbl"></td>
  112 + <td class="bxbc"></td>
  113 + <td class="bxbr"></td>
  114 + </tr>
  115 + </tbody></table>
  116 +
  117 + <div class="clearfix"></div>
  118 +
  119 +
  120 + <!-- del_columnLeftInfo_end -->
  121 + </div>
  122 +
  123 +
  124 + </div>
  125 + </div>
  126 +
  127 + <div class="block-75">
  128 +
  129 + <div class="ordering_tbl">
  130 + <form action="ordering.htm?step4" method="post" name="orderForm" id="orderForm" enctype="multipart/form-data">
  131 +
  132 +
  133 +
  134 +
  135 +
  136 +
  137 + <div class="orderBox">
  138 +
  139 +
  140 + <table width="725px" border="0" cellspacing="0" cellpadding="5" style="margin:auto;">
  141 + <tbody><tr valign="middle">
  142 + <td height="10" nowrap=""></td>
  143 + </tr>
  144 + <tr valign="top">
  145 + <td>
  146 + Заказ успешно осуществлён! Во время обработки вашего заказа менеджер свяжется с Вами.
  147 + <br><br>
  148 + <div align="center">
  149 + <b>Уникальный номер заказа</b>: 1332
  150 + </div>
  151 + <br><br><div align="center"><font size="+1">Спасибо за заказ!!</font><br><br>
  152 + <a href="?p=start" style="display:inline">« На главную</a> </div>
  153 + <!-- Google ECommerce Code -->
  154 + <script>
  155 +
  156 + ga('require', 'ecommerce');
  157 +
  158 + ga('ecommerce:addItem', {
  159 + 'id': '80b44fd0967bebcc4d3f5ba9ceb4d06f',
  160 + 'name': 'подвесной светильник Massive',
  161 + 'price': '366',
  162 + 'category': 'люстры',
  163 + 'quantity': '1'
  164 + });
  165 +
  166 + ga('ecommerce:addTransaction', {
  167 + 'id': '80b44fd0967bebcc4d3f5ba9ceb4d06f',
  168 + 'affiliation': 'www.linija-svitla.ua',
  169 + 'revenue': '366',
  170 + 'tax': '73.2'
  171 + });
  172 +
  173 + ga('ecommerce:send');
  174 + </script>
  175 +
  176 +
  177 +
  178 +
  179 + </td>
  180 + </tr>
  181 + </tbody></table>
  182 +
  183 + <br>
  184 +
  185 +
  186 + </div>
  187 +
  188 +
  189 +
  190 +
  191 +
  192 +
  193 + </form>
  194 + </div>
  195 +
  196 + </div>
  197 + </div>
  198 +</div>
3 199 \ No newline at end of file
... ...
frontend/web/css/comments.css 0 → 100755
  1 +@import "https://fonts.googleapis.com/css?family=Roboto:400,700,500&subset=cyrillic-ext,latin,cyrillic,latin-ext";.input_bl,.area_bl,.form-comm-wr,.user_name,.user_txt,.comment-panel,.answer-form,.comments-start input,.comments-start textarea,.submit_btn button,.input_bl label{box-sizing:border-box}.comments-border{width:100%;margin-top:25px;margin-bottom:27px;height:1px;background:#d2d2d2}.comments-start{width:730px;margin:0 auto;font-family:'Roboto',sans-serif;font-weight:400;color:#333}.form-comm-wr{width:100%;background:#f5f5f5;padding:20px;float:left}.input_bl{margin-top:15px;float:left}.area_bl,.input_bl{position:relative}.input_bl input,.input_bl textarea,.answer-form textarea{width:258px;height:30px;border:1px solid #d2d2d2;background:#fff;outline:none!important;border-radius:4px;padding-left:10px}.area_bl textarea,.answer-form textarea{resize:none!important;height:140px;width:585px;padding-top:7px}.input_bl input:focus,.input_bl textarea:focus,.answer-form textarea:focus{box-shadow:1px 2px 2px 0 rgba(215,215,215,0.75) inset;transition:.1s}.input_bl label{font-size:12px;color:#7d7d7d;font-weight:400;text-transform:uppercase;position:relative;width:105px;float:left;text-align:right;padding-right:10px;margin-top:9px}.input_bl:nth-child(2) label{width:69px}.submit_btn{float:right;margin-top:27px}.submit_btn button,.answer-form button{padding:0 17px;height:32px;font-weight:500;font-size:15px;color:#fff;border-top:0;border-left:0;border-right:0;border-bottom:2px solid #799920;background:#95ba2f;border-radius:4px;cursor:pointer;outline:none!important}.submit_btn button:hover,.answer-form button:hover{border-bottom:2px solid #95ba2f}.submit_btn button:active,.answer-form button:active{border-bottom:2px solid #799920;background:#799920}.answer-form button{float:right;margin-top:27px}.comments-wr,.comment-answer{min-height:64px;position:relative;float:left;width:100%}.answer-form{float:left;width:100%}.user-ico{width:80px;height:80px;float:left;overflow:hidden;border-radius:50%;position:absolute;top:0;left:0}.user-ico img{width:100%;height:100%}.user_data{margin-top:-2px;font-size:12px;color:#636363}.user_name{margin-top:6px;font-weight:700;font-size:15px}.user_name,.user_txt,.comment-panel,.answer-form,.user_data{width:100%;float:left;padding-left:100px}.user_txt{margin-top:8px;font-size:13px;line-height:18px}.comment-panel{width:100%;float:left;margin-top:11px}.comment-panel a:first-child{margin-left:0}.btn-comm-answer,.btn-comm-delete{font-size:13px;color:#799920;border-bottom:1px dotted #799920}.btn-comm-answer,.btn-comm-delete,.btn-comm-like,.btn-comm-dislike{float:left;margin-left:10px;text-decoration:none}.btn-comm-answer,.btn-comm-delete{height:16px;line-height:16px}.btn-comm-answer:hover,.btn-comm-delete:hover{text-decoration:none;border-bottom:0}.btn-comm-like,.btn-comm-dislike{width:14px;height:16px;background-image:url(../images/like_dislike.png);background-repeat:no-repeat}.btn-comm-like{background-position:0 0}.btn-comm-like:hover{background-position:0 -16px}.btn-comm-dislike:hover{background-position:-14px -16px}.btn-comm-dislike{background-position:-14px 0}.btn-comm-like:active,.btn-comm-dislike:active{opacity:.7}.comment-answer{margin-top:40px}.comment-answer .user-ico{left:100px}.comment-answer .user_name,.comment-answer .user_txt,.comment-answer .comment-panel,.comment-answer .answer-form,.comment-answer .user_data{padding-left:200px}.comments-wr{margin-top:40px}.answer-form{margin-top:20px}.answer-form textarea{width:100%;height:90px}.input_bl.has-error input,.input_bl.has-error textarea,.answer-form .has-error textarea{box-shadow:1px 2px 2px 0 rgba(212,0,0,0.2) inset}.required label{color:#d40000}.input_bl .help-block,.answer-form .help-block{display:none}.required label:before{display:block;content:"*";color:#d40000;position:absolute;top:0;right:-7px}.comments-start ul.pagination{list-style:none;text-align:center;margin-top:40px;width:100%;float:left}.comments-start ul.pagination li{display:inline}.comments-start ul.pagination li.prev.disabled span{display:none}.comments-start ul.pagination li a{padding:3px;color:#82a02f;font-size:15px;margin:0;text-decoration:none}.comments-start ul.pagination li.active a{color:#333}
0 2 \ No newline at end of file
... ...