diff --git a/common/behaviors/ShowImage.php b/common/behaviors/ShowImage.php new file mode 100644 index 0000000..6bac900 --- /dev/null +++ b/common/behaviors/ShowImage.php @@ -0,0 +1,26 @@ + false, 'value' => new Expression('NOW()'), ], + [ + 'class' => 'common\behaviors\ShowImage', + ], ]; } diff --git a/frontend/controllers/AccountsController.php b/frontend/controllers/AccountsController.php index 4431d69..7006ae8 100755 --- a/frontend/controllers/AccountsController.php +++ b/frontend/controllers/AccountsController.php @@ -249,13 +249,33 @@ ]); } + public function actionGalleryVideo() + { + + $user = \Yii::$app->user->identity; + + $video = Fields::getData($user->id,Gallery::className(),'youtube'); + + + + if(!empty(Yii::$app->request->post('Fields'))) { + Fields::saveFieldData(Yii::$app->request->post('Fields'), $user->id, Gallery::className(), 'ru'); + } + + return $this->render('gallery-video', [ + 'video' => $video, + 'user' => $user, + ]); + } + + public function actionGalleryCreate() { $gallery = new Gallery(); $user = \Yii::$app->user->identity; $post = \Yii::$app->request->post(); if($gallery->load($post) && $gallery->save()) { - Fields::saveFieldData(Yii::$app->request->post('Fields'), $gallery->gallery_id, Gallery::className(), 'ru'); + return $this->redirect([ 'gallery-update', 'id' => $gallery->gallery_id, diff --git a/frontend/controllers/PerformerController.php b/frontend/controllers/PerformerController.php index 62ca255..8f57b80 100755 --- a/frontend/controllers/PerformerController.php +++ b/frontend/controllers/PerformerController.php @@ -3,10 +3,12 @@ namespace frontend\controllers; use common\models\Blog; use common\models\Fields; +use common\models\Gallery; use Yii; use yii\data\ArrayDataProvider; use yii\data\Pagination; use yii\helpers\ArrayHelper; +use yii\web\BadRequestHttpException; use yii\web\Controller; use common\models\User; @@ -51,6 +53,10 @@ class PerformerController extends Controller $user = User::findOne($performer_id); + if(!$user instanceof User){ + throw new BadRequestHttpException('Пользователь не найден'); + } + $educations = Fields::getData($user->id,$user->className(),'education'); $phones = Fields::getData($user->id,$user->className(),'phone'); $sites = Fields::getData($user->id,$user->className(),'site'); @@ -71,6 +77,11 @@ class PerformerController extends Controller { $user = User::findOne($performer_id); + if(!$user instanceof User){ + throw new BadRequestHttpException('Пользователь не найден'); + } + + return $this->render('portfolio',[ 'user' => $user ]); @@ -81,6 +92,11 @@ class PerformerController extends Controller { $user = User::findOne($performer_id); + if(!$user instanceof User){ + throw new BadRequestHttpException('Пользователь не найден'); + } + + $query = Blog::find(['user_id'=>$performer_id]); $countQuery = clone $query; @@ -108,6 +124,12 @@ class PerformerController extends Controller public function actionBlogView($performer_id, $link) { $user = User::findOne($performer_id); + + if(!$user instanceof User){ + throw new BadRequestHttpException('Пользователь не найден'); + } + + $article = Blog::findOne(['link'=>$link,'user_id'=>$performer_id]); $article->view_count ++; $article->save(); @@ -123,6 +145,12 @@ class PerformerController extends Controller public function actionReview($performer_id) { $user = User::findOne($performer_id); + + if(!$user instanceof User){ + throw new BadRequestHttpException('Пользователь не найден'); + } + + return $this->render('review',[ 'user' => $user ]); @@ -131,6 +159,9 @@ class PerformerController extends Controller public function actionWorkplace($performer_id) { $user = User::findOne($performer_id); + if(!$user instanceof User){ + throw new BadRequestHttpException('Пользователь не найден'); + } return $this->render('workplace',[ 'user' => $user @@ -140,9 +171,34 @@ class PerformerController extends Controller public function actionGallery($performer_id) { $user = User::findOne($performer_id); + + 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, + ]); + $this->layout = 'gallery'; + return $this->render('gallery',[ - 'user' => $user - ]); + 'user' => $user, + 'gallery' =>$gallery, + 'pagination' => $pagination + ]); } } diff --git a/frontend/views/accounts/_gallery_form.php b/frontend/views/accounts/_gallery_form.php index 228a621..9e0a6e8 100644 --- a/frontend/views/accounts/_gallery_form.php +++ b/frontend/views/accounts/_gallery_form.php @@ -5,9 +5,7 @@ */ use common\models\Gallery; use common\models\User; - use common\widgets\FieldEditor; use common\widgets\ImageUploader; - use mihaildev\ckeditor\CKEditor; use yii\helpers\Html; use yii\widgets\ActiveForm; @@ -28,34 +26,24 @@ $gallery, 'field' => 'cover', - 'width' => 100, - 'height' => 100, + 'width' => 210, + 'height' => 150, 'multi' => false, 'gallery' => $gallery->cover, 'name' => 'Загрузить главное фото', ]); ?> -field($gallery, 'type') - ->radioList([ - 1 => 'Фото', - 2 => 'Видео', - ]) ?> - $gallery, 'field' => 'photo', - 'width' => 100, - 'height' => 100, + 'width' => 148, + 'height' => 104, 'multi' => true, 'gallery' => $gallery->photo, 'name' => 'Загрузить фото галереи', ]); ?> - 'youtube', 'item_id' => $gallery->gallery_id, 'model' => 'common\models\Gallery', 'language' => 'ru', - ] -); ?> + diff --git a/frontend/views/accounts/gallery-video.php b/frontend/views/accounts/gallery-video.php new file mode 100644 index 0000000..61af547 --- /dev/null +++ b/frontend/views/accounts/gallery-video.php @@ -0,0 +1,32 @@ +title = 'Мой профиль'; +$this->params[ 'breadcrumbs' ][] = $this->title; +?> +

title ?>

+ + + + 'youtube', 'item_id' => $user->id, 'model' => 'common\models\Gallery', 'language' => 'ru', + ] +); ?> + + + +end(); +?> + diff --git a/frontend/views/performer/_gallery_list_view.php b/frontend/views/performer/_gallery_list_view.php new file mode 100644 index 0000000..268f015 --- /dev/null +++ b/frontend/views/performer/_gallery_list_view.php @@ -0,0 +1,19 @@ + + \ No newline at end of file diff --git a/frontend/views/performer/gallery.php b/frontend/views/performer/gallery.php index 3a12a30..a65d015 100755 --- a/frontend/views/performer/gallery.php +++ b/frontend/views/performer/gallery.php @@ -1,6 +1,8 @@ params['user'] = $user; @@ -47,114 +49,21 @@ $this->title = 'My Yii Application'; \ No newline at end of file -- libgit2 0.21.4