/**
  * Url: /post/add
  * @return mixed
  * @throws ForbiddenHttpException
  */
 public function actionPostAdd()
 {
     if (Yii::$app->user->isGuest) {
         throw new ForbiddenHttpException("Вы не можете выполнить это действие.");
     }
     $model = new Post();
     $model->content_category_id = Post::CATEGORY_BLOG;
     $model->tags = [];
     if ($model->load(Yii::$app->request->post()) && $model->validate()) {
         $model->allow_comment = 1;
         $model->is_public = 1;
         $model->content_category_id = Post::CATEGORY_BLOG;
         $model->user_id = Yii::$app->user->id;
         // Set slug
         $model->slug = $model->genSlug($model->title);
         // Save the model to have a record number
         if ($model->save()) {
             // Adding new tags
             if (is_array($model->tags)) {
                 foreach ($model->tags as $id) {
                     $model->addTag($id);
                 }
             }
             $cached_tag_list = [];
             $newTags = $model->getTags();
             foreach ($newTags as $newTag) {
                 $cached_tag_list[] = $newTag->name;
             }
             $model->cached_tag_list = implode(', ', $cached_tag_list);
             // Set image
             $uploadedFile = UploadedFile::getInstance($model, 'image');
             if ($uploadedFile) {
                 // Save origionals
                 $asset = new Asset();
                 $asset->assetable_type = Asset::ASSETABLE_POST;
                 $asset->assetable_id = $model->id;
                 $asset->uploadedFile = $uploadedFile;
                 $asset->saveAsset();
                 // Save thumbnails
                 $imageID = $asset->id;
                 $thumbnails = Asset::getThumbnails(Asset::ASSETABLE_POST);
                 foreach ($thumbnails as $thumbnail) {
                     $asset = new Asset();
                     $asset->parent_id = $imageID;
                     $asset->thumbnail = $thumbnail;
                     $asset->assetable_type = Asset::ASSETABLE_POST;
                     $asset->assetable_id = $model->id;
                     $asset->uploadedFile = $uploadedFile;
                     $asset->saveAsset();
                 }
             }
             $model->save(false);
             return $this->redirect($model->getUrl());
         }
         var_dump($model->getErrors());
         die;
     }
     $title = 'Добавить запись в блог';
     return $this->render('@frontend/views/site/index', ['templateType' => 'col2', 'title' => 'Dynamomania.com | ' . $title, 'columnFirst' => ['blog_form' => ['view' => '@frontend/views/forms/blog_form', 'data' => compact('model', 'tags', 'title')]], 'columnSecond' => ['blog' => SiteBlock::getBlogPosts(), 'banner1' => SiteBlock::getBanner(Banner::REGION_NEWS), 'banner2' => SiteBlock::getBanner(Banner::REGION_NEWS), 'banner3' => SiteBlock::getBanner(Banner::REGION_NEWS), 'banner4' => SiteBlock::getBanner(Banner::REGION_NEWS), 'banner5' => SiteBlock::getBanner(Banner::REGION_NEWS)]]);
 }