97fb6489
Yarik
test
|
1
2
3
|
<?php
namespace frontend\controllers;
|
376a557b
Administrator
09.02.16
|
4
|
use common\models\Blog;
|
658d13d4
Administrator
09.02.16
|
5
|
use common\models\Fields;
|
9217ef8e
Administrator
09.02.16
|
6
|
use common\models\Gallery;
|
f7089e23
Administrator
15.02.16
|
7
8
|
use common\models\Portfolio;
use common\models\PortfolioSpecialization;
|
97fb6489
Yarik
test
|
9
|
use Yii;
|
376a557b
Administrator
09.02.16
|
10
11
|
use yii\data\ArrayDataProvider;
use yii\data\Pagination;
|
4f404e20
Administrator
09.02.16
|
12
|
use yii\helpers\ArrayHelper;
|
9217ef8e
Administrator
09.02.16
|
13
|
use yii\web\BadRequestHttpException;
|
97fb6489
Yarik
test
|
14
|
use yii\web\Controller;
|
97fb6489
Yarik
test
|
15
|
use common\models\User;
|
4f404e20
Administrator
09.02.16
|
16
|
|
97fb6489
Yarik
test
|
17
18
19
20
21
22
23
24
|
/**
* Site controller
*/
class PerformerController extends Controller
{
public $layout = 'performer';
|
4f404e20
Administrator
09.02.16
|
25
26
27
28
|
public $user;
|
97fb6489
Yarik
test
|
29
|
|
97fb6489
Yarik
test
|
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
/**
* @inheritdoc
*/
public function actions()
{
return [
'error' => [
'class' => 'yii\web\ErrorAction',
],
'captcha' => [
'class' => 'yii\captcha\CaptchaAction',
'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null,
],
];
}
|
9bb0160d
Administrator
09.02.16
|
46
|
|
bdee266b
Yarik
test
|
47
|
public function actionIndex()
|
97fb6489
Yarik
test
|
48
|
{
|
9bb0160d
Administrator
09.02.16
|
49
|
$this->redirect('site/index');
|
658d13d4
Administrator
09.02.16
|
50
|
|
97fb6489
Yarik
test
|
51
52
|
}
|
9bb0160d
Administrator
09.02.16
|
53
|
public function actionCommon($performer_id)
|
97fb6489
Yarik
test
|
54
|
{
|
9bb0160d
Administrator
09.02.16
|
55
|
|
4f404e20
Administrator
09.02.16
|
56
|
$user = User::findOne($performer_id);
|
9bb0160d
Administrator
09.02.16
|
57
|
|
9217ef8e
Administrator
09.02.16
|
58
59
60
61
|
if(!$user instanceof User){
throw new BadRequestHttpException('Пользователь не найден');
}
|
4f404e20
Administrator
09.02.16
|
62
63
64
65
|
$educations = Fields::getData($user->id,$user->className(),'education');
$phones = Fields::getData($user->id,$user->className(),'phone');
$sites = Fields::getData($user->id,$user->className(),'site');
$soft = implode(', ',ArrayHelper::getColumn(Fields::getData($user->id,$user->className(),'soft'), 'soft'));
|
9bb0160d
Administrator
09.02.16
|
66
67
68
|
return $this->render('common',[
'user' => $user,
|
4f404e20
Administrator
09.02.16
|
69
70
71
72
|
'educations' => $educations,
'phones' => $phones,
'sites' => $sites,
'soft' => $soft
|
9bb0160d
Administrator
09.02.16
|
73
|
]);
|
4f404e20
Administrator
09.02.16
|
74
75
|
|
97fb6489
Yarik
test
|
76
77
|
}
|
4f404e20
Administrator
09.02.16
|
78
|
public function actionPortfolio($performer_id)
|
97fb6489
Yarik
test
|
79
|
{
|
4f404e20
Administrator
09.02.16
|
80
81
|
$user = User::findOne($performer_id);
|
9217ef8e
Administrator
09.02.16
|
82
83
84
|
if(!$user instanceof User){
throw new BadRequestHttpException('Пользователь не найден');
}
|
f7089e23
Administrator
15.02.16
|
85
|
$projects = ArrayHelper::getColumn($user->portfolios,'portfolio_id');
|
9217ef8e
Administrator
09.02.16
|
86
87
|
|
f7089e23
Administrator
15.02.16
|
88
89
90
91
92
93
94
95
96
97
|
$filters = PortfolioSpecialization::find()->select(["specialization_id","COUNT('specialization_id') AS count"])
->where(["portfolio_id"=>$projects ])->groupBy("specialization_id")->all();
$portfolio = new ArrayDataProvider([
'allModels' => $user->portfolios,
'pagination' => [
'pageSize' => 9,
],
]);
|
4f404e20
Administrator
09.02.16
|
98
|
return $this->render('portfolio',[
|
f7089e23
Administrator
15.02.16
|
99
100
101
|
'user' => $user,
'filters' => $filters,
'portfolio' => $portfolio
|
4f404e20
Administrator
09.02.16
|
102
103
|
]);
|
97fb6489
Yarik
test
|
104
105
|
}
|
4f404e20
Administrator
09.02.16
|
106
|
public function actionBlogList($performer_id)
|
97fb6489
Yarik
test
|
107
|
{
|
4f404e20
Administrator
09.02.16
|
108
|
$user = User::findOne($performer_id);
|
376a557b
Administrator
09.02.16
|
109
|
|
9217ef8e
Administrator
09.02.16
|
110
111
112
113
114
|
if(!$user instanceof User){
throw new BadRequestHttpException('Пользователь не найден');
}
|
376a557b
Administrator
09.02.16
|
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
$query = Blog::find(['user_id'=>$performer_id]);
$countQuery = clone $query;
$pagination = new Pagination(['totalCount' => $countQuery->count(),
'pageSize' => 5,
]);
$article = $query->offset($pagination->offset)
->limit($pagination->limit)
->all();
$blog = new ArrayDataProvider([
'allModels' => $article,
]);
|
4f404e20
Administrator
09.02.16
|
132
|
return $this->render('blog-list',[
|
376a557b
Administrator
09.02.16
|
133
134
135
|
'user' => $user,
'blog' => $blog,
'pagination' => $pagination
|
4f404e20
Administrator
09.02.16
|
136
|
]);
|
97fb6489
Yarik
test
|
137
138
|
}
|
376a557b
Administrator
09.02.16
|
139
|
public function actionBlogView($performer_id, $link)
|
97fb6489
Yarik
test
|
140
|
{
|
376a557b
Administrator
09.02.16
|
141
|
$user = User::findOne($performer_id);
|
9217ef8e
Administrator
09.02.16
|
142
143
144
145
146
147
|
if(!$user instanceof User){
throw new BadRequestHttpException('Пользователь не найден');
}
|
376a557b
Administrator
09.02.16
|
148
|
$article = Blog::findOne(['link'=>$link,'user_id'=>$performer_id]);
|
f6ea8941
Administrator
09.02.16
|
149
150
|
$article->view_count ++;
$article->save();
|
376a557b
Administrator
09.02.16
|
151
152
153
154
155
156
157
|
return $this->render('blog-view',[
'user' => $user,
'article' =>$article,
]);
|
97fb6489
Yarik
test
|
158
159
|
}
|
4f404e20
Administrator
09.02.16
|
160
|
public function actionReview($performer_id)
|
fbdb1f1c
Yarik
test
|
161
|
{
|
4f404e20
Administrator
09.02.16
|
162
|
$user = User::findOne($performer_id);
|
9217ef8e
Administrator
09.02.16
|
163
164
165
166
167
168
|
if(!$user instanceof User){
throw new BadRequestHttpException('Пользователь не найден');
}
|
4f404e20
Administrator
09.02.16
|
169
170
171
|
return $this->render('review',[
'user' => $user
]);
|
fbdb1f1c
Yarik
test
|
172
173
|
}
|
4f404e20
Administrator
09.02.16
|
174
|
public function actionWorkplace($performer_id)
|
fbdb1f1c
Yarik
test
|
175
|
{
|
4f404e20
Administrator
09.02.16
|
176
|
$user = User::findOne($performer_id);
|
9217ef8e
Administrator
09.02.16
|
177
178
179
|
if(!$user instanceof User){
throw new BadRequestHttpException('Пользователь не найден');
}
|
f6ea8941
Administrator
09.02.16
|
180
|
|
4f404e20
Administrator
09.02.16
|
181
182
183
|
return $this->render('workplace',[
'user' => $user
]);
|
fbdb1f1c
Yarik
test
|
184
185
|
}
|
4f404e20
Administrator
09.02.16
|
186
|
public function actionGallery($performer_id)
|
fbdb1f1c
Yarik
test
|
187
|
{
|
4f404e20
Administrator
09.02.16
|
188
|
$user = User::findOne($performer_id);
|
9217ef8e
Administrator
09.02.16
|
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
|
if(!$user instanceof User){
throw new BadRequestHttpException('Пользователь не найден');
}
$query = Gallery::find(['user_id'=>$performer_id]);
$countQuery = clone $query;
$pagination = new Pagination(['totalCount' => $countQuery->count(),
'pageSize' => 5,
]);
$gallery = $query->offset($pagination->offset)
->limit($pagination->limit)
->all();
$gallery = new ArrayDataProvider([
'allModels' => $gallery,
]);
|
3d0e6093
Administrator
15.02.16
|
211
212
|
$videos = Fields::getData($user->id,Gallery::className(),'youtube');
|
fbdb1f1c
Yarik
test
|
213
|
$this->layout = 'gallery';
|
9217ef8e
Administrator
09.02.16
|
214
|
|
4f404e20
Administrator
09.02.16
|
215
|
return $this->render('gallery',[
|
9217ef8e
Administrator
09.02.16
|
216
217
|
'user' => $user,
'gallery' =>$gallery,
|
3d0e6093
Administrator
15.02.16
|
218
219
|
'pagination' => $pagination,
'videos' => $videos
|
9217ef8e
Administrator
09.02.16
|
220
|
]);
|
fbdb1f1c
Yarik
test
|
221
|
}
|
97fb6489
Yarik
test
|
222
|
}
|