BlogSidebar.php 1.21 KB
<?php
    
    namespace frontend\widgets;
    
    use artbox\weblog\models\Category;
    use artbox\weblog\models\Tag;
    use yii\base\Widget;
    
    /**
     * Class BlogSidebar
     *
     * @property Category[] $categories
     * @property Tag[]      $tags
     * @package frontend\widgets
     */
    class BlogSidebar extends Widget
    {
        public $categories = [];
        
        public $tags = [];
        
        public $viewParams = [];
        
        public function init()
        {
            parent::init();
            
            $this->categories = Category::find()
                                        ->with('lang.alias')
                ->where(['status' => true])
                                        ->all();
            
            $this->tags = Tag::find()
                             ->with('lang.alias')
                             ->all();
        }
        
        public function run()
        {
            return $this->render(
                '_sidebar',
                [
                    'categories' => $this->categories,
                    'tags'       => $this->tags,
                    'params'     => $this->viewParams,
                ]
            );
        }
    }