public function run() { if (User::hasPermission('viewMedia')) { $recent = MediaModel::find()->orderBy(['id' => SORT_DESC])->limit($this->recentLimit)->all(); return $this->render('media', ['height' => $this->height, 'width' => $this->width, 'position' => $this->position, 'recent' => $recent]); } }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params = []) { $query = Media::find()->joinWith('translations'); $dataProvider = new ActiveDataProvider(['query' => $query, 'sort' => ['defaultOrder' => ['id' => SORT_DESC]]]); $this->load($params); if (!$this->validate()) { return $dataProvider; } $query->andFilterWhere(['album_id' => $this->album_id, 'created_by' => $this->created_by, 'updated_by' => $this->updated_by, 'updated_at' => $this->updated_at]); $query->andFilterWhere(['like', 'title', $this->title])->andFilterWhere(['>=', 'created_at', strtotime($this->created_at)])->andFilterWhere(['<=', 'created_at', strtotime($this->created_at . ' 23:59:59')]); return $dataProvider; }