Commit 4ff3ca88bfd39408db85647e2b196ade9d05be25

Authored by Yarik
1 parent fa284ab0

test

common/models/Blog.php
@@ -2,6 +2,7 @@ @@ -2,6 +2,7 @@
2 2
3 namespace common\models; 3 namespace common\models;
4 4
  5 + use common\modules\comment\models\Comment;
5 use Yii; 6 use Yii;
6 use yii\behaviors\BlameableBehavior; 7 use yii\behaviors\BlameableBehavior;
7 use yii\behaviors\TimestampBehavior; 8 use yii\behaviors\TimestampBehavior;
@@ -30,7 +31,6 @@ @@ -30,7 +31,6 @@
30 return 'blog'; 31 return 'blog';
31 } 32 }
32 33
33 -  
34 /** 34 /**
35 * @inheritdoc 35 * @inheritdoc
36 */ 36 */
@@ -49,11 +49,11 @@ @@ -49,11 +49,11 @@
49 'value' => new Expression('NOW()'), 49 'value' => new Expression('NOW()'),
50 ], 50 ],
51 'slug' => [ 51 'slug' => [
52 - 'class' => 'common\behaviors\Slug',  
53 - 'in_attribute' => 'name', 52 + 'class' => 'common\behaviors\Slug',
  53 + 'in_attribute' => 'name',
54 'out_attribute' => 'link', 54 'out_attribute' => 'link',
55 - 'translit' => true  
56 - ] 55 + 'translit' => true,
  56 + ],
57 ]; 57 ];
58 } 58 }
59 59
@@ -64,7 +64,10 @@ @@ -64,7 +64,10 @@
64 { 64 {
65 return [ 65 return [
66 [ 66 [
67 - [ 'name', 'description' ], 67 + [
  68 + 'name',
  69 + 'description',
  70 + ],
68 'required', 71 'required',
69 ], 72 ],
70 [ 73 [
@@ -83,8 +86,9 @@ @@ -83,8 +86,9 @@
83 ]; 86 ];
84 } 87 }
85 88
86 - public function getDateCreate(){  
87 - return date('Y-m-d',strtotime($this->date_add)); 89 + public function getDateCreate()
  90 + {
  91 + return date('Y-m-d', strtotime($this->date_add));
88 } 92 }
89 93
90 /** 94 /**
@@ -104,4 +108,10 @@ @@ -104,4 +108,10 @@
104 'cover' => Yii::t('app', 'Фото главное'), 108 'cover' => Yii::t('app', 'Фото главное'),
105 ]; 109 ];
106 } 110 }
  111 +
  112 + public function getComments()
  113 + {
  114 + return $this->hasMany(Comment::className(), [ 'model_id' => 'blog_id' ])
  115 + ->where([ 'model' => $this->className() ]);
  116 + }
107 } 117 }
common/modules/comment/widgets/CommentWidget.php
@@ -197,12 +197,16 @@ @@ -197,12 +197,16 @@
197 if(empty( $view )) { 197 if(empty( $view )) {
198 throw new \yii\base\InvalidConfigException("form_options[view] must be set"); 198 throw new \yii\base\InvalidConfigException("form_options[view] must be set");
199 } 199 }
200 - return $this->render($view, [  
201 - 'model' => $this->comment_class,  
202 - 'rating' => $this->rating_class,  
203 - 'user' => \Yii::$app->user->identity,  
204 - 'dataProvider' => $this->dataProvider,  
205 - ]); 200 + if($this->comment_class->guestComment || !empty(\Yii::$app->user->identity)) {
  201 + return $this->render($view, [
  202 + 'model' => $this->comment_class,
  203 + 'rating' => $this->rating_class,
  204 + 'user' => \Yii::$app->user->identity,
  205 + 'dataProvider' => $this->dataProvider,
  206 + ]);
  207 + } else {
  208 + return '';
  209 + }
206 } 210 }
207 211
208 public function renderWidget() 212 public function renderWidget()
common/modules/comment/widgets/views/form-project-comment.php
@@ -22,7 +22,7 @@ @@ -22,7 +22,7 @@
22 <div class="form-value-wr style"> 22 <div class="form-value-wr style">
23 <div class="form-ico-ded-wr"> 23 <div class="form-ico-ded-wr">
24 <div class="header-cabinet-foto"> 24 <div class="header-cabinet-foto">
25 - <?= Html::img($user->userInfo->image) ?> 25 + <?= Html::img(($user->userInfo->image)?:'') ?>
26 </div> 26 </div>
27 <div class="form-value-ded-name"> 27 <div class="form-value-ded-name">
28 <?= $user->name ?> 28 <?= $user->name ?>
frontend/controllers/CompanyController.php
@@ -211,6 +211,7 @@ @@ -211,6 +211,7 @@
211 211
212 $article = $query->offset($pagination->offset) 212 $article = $query->offset($pagination->offset)
213 ->limit($pagination->limit) 213 ->limit($pagination->limit)
  214 + ->with('comments')
214 ->all(); 215 ->all();
215 216
216 $blog = new ArrayDataProvider([ 217 $blog = new ArrayDataProvider([
@@ -232,12 +233,14 @@ @@ -232,12 +233,14 @@
232 throw new BadRequestHttpException('Пользователь не найден'); 233 throw new BadRequestHttpException('Пользователь не найден');
233 } 234 }
234 235
235 - $article = Blog::findOne([  
236 - 'link' => $link,  
237 - 'user_id' => $company_id,  
238 - ]);  
239 - $article->view_count++;  
240 - $article->save(); 236 + $article = Blog::find()
  237 + ->where([
  238 + 'link' => $link,
  239 + 'user_id' => $company_id,
  240 + ])
  241 + ->with('comments')
  242 + ->one();
  243 + $article->updateCounters([ 'view_count' => 1 ]);
241 244
242 return $this->render('blog-view', [ 245 return $this->render('blog-view', [
243 'company' => $company, 246 'company' => $company,
frontend/controllers/PerformerController.php
@@ -97,7 +97,9 @@ @@ -97,7 +97,9 @@
97 ->all(); 97 ->all();
98 98
99 $portfolio = new ArrayDataProvider([ 99 $portfolio = new ArrayDataProvider([
100 - 'allModels' => $user->getPortfolios()->orderBy('portfolio_id')->all(), 100 + 'allModels' => $user->getPortfolios()
  101 + ->orderBy('portfolio_id')
  102 + ->all(),
101 'pagination' => [ 103 'pagination' => [
102 'pageSize' => 9, 104 'pageSize' => 9,
103 ], 105 ],
@@ -187,6 +189,7 @@ @@ -187,6 +189,7 @@
187 189
188 $article = $query->offset($pagination->offset) 190 $article = $query->offset($pagination->offset)
189 ->limit($pagination->limit) 191 ->limit($pagination->limit)
  192 + ->with('comments')
190 ->all(); 193 ->all();
191 194
192 $blog = new ArrayDataProvider([ 195 $blog = new ArrayDataProvider([
@@ -208,16 +211,17 @@ @@ -208,16 +211,17 @@
208 throw new BadRequestHttpException('Пользователь не найден'); 211 throw new BadRequestHttpException('Пользователь не найден');
209 } 212 }
210 213
211 - $article = Blog::findOne([  
212 - 'link' => $link,  
213 - 'user_id' => $performer_id,  
214 - ]); 214 + $article = Blog::find()
  215 + ->where([
  216 + 'link' => $link,
  217 + 'user_id' => $performer_id,
  218 + ])
  219 + ->with('comments')->one();
215 $article->updateCounters([ 'view_count' => 1 ]); 220 $article->updateCounters([ 'view_count' => 1 ]);
216 221
217 return $this->render('blog-view', [ 222 return $this->render('blog-view', [
218 'user' => $user, 223 'user' => $user,
219 'article' => $article, 224 'article' => $article,
220 -  
221 ]); 225 ]);
222 } 226 }
223 227
@@ -254,7 +258,8 @@ @@ -254,7 +258,8 @@
254 throw new BadRequestHttpException('Пользователь не найден'); 258 throw new BadRequestHttpException('Пользователь не найден');
255 } 259 }
256 260
257 - $query = Gallery::find()->where([ 'user_id' => $performer_id ]); 261 + $query = Gallery::find()
  262 + ->where([ 'user_id' => $performer_id ]);
258 263
259 $countQuery = clone $query; 264 $countQuery = clone $query;
260 265
frontend/views/company/_blog_list_view.php
@@ -3,7 +3,6 @@ @@ -3,7 +3,6 @@
3 * @var Blog $model 3 * @var Blog $model
4 */ 4 */
5 use common\models\Blog; 5 use common\models\Blog;
6 - use common\modules\comment\models\Comment;  
7 use frontend\helpers\TextHelper; 6 use frontend\helpers\TextHelper;
8 use yii\helpers\Html; 7 use yii\helpers\Html;
9 use yii\helpers\Url; 8 use yii\helpers\Url;
@@ -28,12 +27,7 @@ @@ -28,12 +27,7 @@
28 </div> 27 </div>
29 <div class="blog-post-comm-num"> 28 <div class="blog-post-comm-num">
30 <span></span> 29 <span></span>
31 - <p><?= Comment::find()  
32 - ->where([  
33 - 'model' => $model->className(),  
34 - 'model_id' => $model->getPrimaryKey(),  
35 - ])  
36 - ->count() ?></p> 30 + <p><?= count($model->comments) ?></p>
37 </div> 31 </div>
38 </div> 32 </div>
39 <div class="blog-post-content style"> 33 <div class="blog-post-content style">
frontend/views/company/blog-view.php
1 <?php 1 <?php
2 -use \yii\helpers\Html; 2 + /**
  3 + * @var View $this
  4 + * @var Blog $article
  5 + * @var User $company
  6 + */
  7 + use common\models\Blog;
  8 + use common\models\User;
  9 + use yii\web\View;
3 10
4 -/* @var $this yii\web\View */  
5 -$this->params['company'] = $company;  
6 -  
7 -$this->title = $article->name ; 11 + $this->params[ 'company' ] = $company;
  12 + $this->title = $article->name;
8 ?> 13 ?>
9 <div class="performer-vacancy-vacant-title-reclam-wr style"> 14 <div class="performer-vacancy-vacant-title-reclam-wr style">
10 <div class="blog-post-wr"> 15 <div class="blog-post-wr">
@@ -12,15 +17,15 @@ $this-&gt;title = $article-&gt;name ; @@ -12,15 +17,15 @@ $this-&gt;title = $article-&gt;name ;
12 <div class="blog-post-icons-wr style"> 17 <div class="blog-post-icons-wr style">
13 <div class="blog-post-date"> 18 <div class="blog-post-date">
14 <span></span> 19 <span></span>
15 - <p><?= $article->dateCreate?></p> 20 + <p><?= \Yii::$app->formatter->asDate($article->dateCreate, 'php:d.m.Y') ?></p>
16 </div> 21 </div>
17 <div class="blog-post-views"> 22 <div class="blog-post-views">
18 <span></span> 23 <span></span>
19 - <p><?= $article->view_count?></p> 24 + <p><?= $article->view_count ?></p>
20 </div> 25 </div>
21 <div class="blog-post-comm-num"> 26 <div class="blog-post-comm-num">
22 <span></span> 27 <span></span>
23 - <p><?= $article->view_count?></p> 28 + <p><?= count($article->comments) ?></p>
24 </div> 29 </div>
25 </div> 30 </div>
26 <div class="blog-post-content style"> 31 <div class="blog-post-content style">
@@ -28,3 +33,29 @@ $this-&gt;title = $article-&gt;name ; @@ -28,3 +33,29 @@ $this-&gt;title = $article-&gt;name ;
28 </div> 33 </div>
29 </div> 34 </div>
30 </div> 35 </div>
  36 +<?php
  37 + echo \common\modules\comment\widgets\CommentWidget::widget([
  38 + 'context' => $this,
  39 + 'model' => $article::className(),
  40 + 'model_id' => $article->blog_id,
  41 + 'comment_class' => \common\modules\comment\models\Comment::className(),
  42 + 'rating_class' => \common\modules\comment\models\Rating::className(),
  43 + 'class_options' => [
  44 + 'scenario' => is_int(\Yii::$app->user->getId()) ? \common\modules\comment\models\Comment::SCENARIO_USER : \common\modules\comment\models\Comment::SCENARIO_GUEST,
  45 + 'user_id' => \Yii::$app->user->getId(),
  46 + 'guestComment' => true,
  47 + 'status' => \common\modules\comment\models\Comment::STATUS_ACTIVE,
  48 + ],
  49 + 'list_options' => [
  50 + 'view' => 'list-comment',
  51 + ],
  52 + 'form_options' => [
  53 + 'view' => 'form-comment',
  54 + 'tag' => 'div',
  55 + 'class' => 'artbox_comment_form',
  56 + ],
  57 + 'options' => [
  58 + 'class' => 'new-portf-comments-wr style',
  59 + ],
  60 + ]);
  61 +?>
frontend/views/company/vacancy-view.php
@@ -78,7 +78,7 @@ @@ -78,7 +78,7 @@
78 'link' => $similar_vacancy->link, 78 'link' => $similar_vacancy->link,
79 ]), [ 'class' => 'performer-vacant-reclam-bl-title' ]) ?> 79 ]), [ 'class' => 'performer-vacant-reclam-bl-title' ]) ?>
80 80
81 - <div class="performer-vacant-reclam-bl-title-two"><?= $similar_vacancy->city ?>. <?= \Yii::$app->formatter->asDatetime($similar_vacancy->date_add, 'Y-MM-dd') ?>. 81 + <div class="performer-vacant-reclam-bl-title-two"><?= $similar_vacancy->city ?>. <?= \Yii::$app->formatter->asDatetime($similar_vacancy->date_add, 'dd.MM.Y') ?>.
82 <?php 82 <?php
83 if(!empty( $similar_vacancy->salary )) { 83 if(!empty( $similar_vacancy->salary )) {
84 ?> 84 ?>
frontend/views/performer/_blog_list_view.php
@@ -28,12 +28,7 @@ @@ -28,12 +28,7 @@
28 </div> 28 </div>
29 <div class="blog-post-comm-num"> 29 <div class="blog-post-comm-num">
30 <span></span> 30 <span></span>
31 - <p><?= Comment::find()  
32 - ->where([  
33 - 'model' => $model->className(),  
34 - 'model_id' => $model->getPrimaryKey(),  
35 - ])  
36 - ->count() ?></p> 31 + <p><?= count($model->comments) ?></p>
37 </div> 32 </div>
38 </div> 33 </div>
39 <div class="blog-post-content style"> 34 <div class="blog-post-content style">
frontend/views/performer/blog-list.php
1 <?php 1 <?php
  2 + /**
  3 + * @var ArrayDataProvider $blog
  4 + * @var Pagination $pagination
  5 + * @var yii\web\View $this
  6 + */
  7 + use yii\data\ArrayDataProvider;
  8 + use yii\data\Pagination;
  9 + use yii\widgets\LinkPager;
  10 + use yii\widgets\ListView;
2 11
3 -use \yii\helpers\Html;  
4 -use yii\widgets\LinkPager;  
5 -use yii\widgets\ListView;  
6 -  
7 -/* @var $this yii\web\View */  
8 -$this->params['user'] = $user;  
9 -$this->title = 'My Yii Application'; 12 + $this->params[ 'user' ] = $user;
  13 + $this->title = 'My Yii Application';
10 ?> 14 ?>
11 <div class="performer-vacancy-vacant-title-reclam-wr style"> 15 <div class="performer-vacancy-vacant-title-reclam-wr style">
12 16
13 - <?=  
14 - ListView::widget( [ 17 + <?= ListView::widget([
15 'dataProvider' => $blog, 18 'dataProvider' => $blog,
16 - 'itemView'=>'_blog_list_view',  
17 - 'summary'=>'',  
18 - ] );  
19 - ?> 19 + 'itemView' => '_blog_list_view',
  20 + 'summary' => '',
  21 + ]); ?>
20 </div> 22 </div>
21 <div class="navi-buttons-wr style"> 23 <div class="navi-buttons-wr style">
22 - <?=  
23 - LinkPager::widget([ 24 + <?= LinkPager::widget([
24 'pagination' => $pagination, 25 'pagination' => $pagination,
25 - ]);  
26 - ?> 26 + ]); ?>
27 </div> 27 </div>
28 28
frontend/views/performer/blog-view.php
1 <?php 1 <?php
2 - use \yii\helpers\Html; 2 + /**
  3 + * @var yii\web\View $this
  4 + * @var Blog $article
  5 + */
  6 + use common\models\Blog;
3 7
4 - /* @var $this yii\web\View */  
5 - $this->params['user'] = $user; 8 + $this->params[ 'user' ] = $user;
6 9
7 - $this->title = $article->name ; 10 + $this->title = $article->name;
8 ?> 11 ?>
9 <div class="performer-vacancy-vacant-title-reclam-wr style"> 12 <div class="performer-vacancy-vacant-title-reclam-wr style">
10 <div class="blog-post-wr"> 13 <div class="blog-post-wr">
@@ -12,15 +15,15 @@ @@ -12,15 +15,15 @@
12 <div class="blog-post-icons-wr style"> 15 <div class="blog-post-icons-wr style">
13 <div class="blog-post-date"> 16 <div class="blog-post-date">
14 <span></span> 17 <span></span>
15 - <p><?= $article->dateCreate?></p> 18 + <p><?= \Yii::$app->formatter->asDate($article->date_add, 'php:d.m.Y') ?></p>
16 </div> 19 </div>
17 <div class="blog-post-views"> 20 <div class="blog-post-views">
18 <span></span> 21 <span></span>
19 - <p><?= $article->view_count?></p> 22 + <p><?= $article->view_count ?></p>
20 </div> 23 </div>
21 <div class="blog-post-comm-num"> 24 <div class="blog-post-comm-num">
22 <span></span> 25 <span></span>
23 - <p><?= $article->view_count?></p> 26 + <p><?= count($article->comments) ?></p>
24 </div> 27 </div>
25 </div> 28 </div>
26 <div class="blog-post-content style"> 29 <div class="blog-post-content style">
@@ -28,3 +31,29 @@ @@ -28,3 +31,29 @@
28 </div> 31 </div>
29 </div> 32 </div>
30 </div> 33 </div>
  34 +<?php
  35 + echo \common\modules\comment\widgets\CommentWidget::widget([
  36 + 'context' => $this,
  37 + 'model' => $article::className(),
  38 + 'model_id' => $article->blog_id,
  39 + 'comment_class' => \common\modules\comment\models\Comment::className(),
  40 + 'rating_class' => \common\modules\comment\models\Rating::className(),
  41 + 'class_options' => [
  42 + 'scenario' => is_int(\Yii::$app->user->getId()) ? \common\modules\comment\models\Comment::SCENARIO_USER : \common\modules\comment\models\Comment::SCENARIO_GUEST,
  43 + 'user_id' => \Yii::$app->user->getId(),
  44 + 'guestComment' => true,
  45 + 'status' => \common\modules\comment\models\Comment::STATUS_ACTIVE,
  46 + ],
  47 + 'list_options' => [
  48 + 'view' => 'list-comment',
  49 + ],
  50 + 'form_options' => [
  51 + 'view' => 'form-comment',
  52 + 'tag' => 'div',
  53 + 'class' => 'artbox_comment_form',
  54 + ],
  55 + 'options' => [
  56 + 'class' => 'new-portf-comments-wr style',
  57 + ],
  58 + ]);
  59 +?>
frontend/views/tender/view.php
@@ -47,7 +47,7 @@ $this-&gt;title = &#39;My Yii Application&#39;; @@ -47,7 +47,7 @@ $this-&gt;title = &#39;My Yii Application&#39;;
47 <div class="section-box"> 47 <div class="section-box">
48 <div class="cabinet-message-read-autor-wr style"> 48 <div class="cabinet-message-read-autor-wr style">
49 <div class="cabinet-message-read-foto-wr"> 49 <div class="cabinet-message-read-foto-wr">
50 - <div class="cabinet-message-read-foto"><img src="<?= $model->user->userInfo->image ?>" alt=""/></div> 50 + <div class="cabinet-message-read-foto"><img src="<?= ($model->user->userInfo->image)?:'' ?>" alt=""/></div>
51 </div> 51 </div>
52 <div class="cab-mes-read-cont"> 52 <div class="cab-mes-read-cont">
53 <div class="cab-mes-read-cont-title"><?= $model->user->owner->name ?></div> 53 <div class="cab-mes-read-cont-title"><?= $model->user->owner->name ?></div>