public function getList($catId)
 {
     $cat = ArticleCat::find($catId);
     //dump(ArticleCat::with('articles')->get());
     $articleCat = ArticleCat::find($catId);
     $articles = Article::whereIn('cat_id', $articleCat->allCatIds())->paginate(10);
     return view('admin.articles.list')->with('articles', $articles);
 }
Example #2
0
 public function scopeRated($query, $course_id)
 {
     $course = Course::findBySlugOrId($course_id);
     $tasks = $course->tasks();
     $tasksIds = $tasks->get(['id'])->toArray(['id']);
     $articlesTaskIds = array_flatten(Article::whereIn('task_id', array_flatten($tasksIds))->get(['id'])->toArray());
     $articlesWithSomeRating = Article::whereExists(function ($query) {
         $query->select(DB::raw(1))->from('ratings')->whereRaw('articles.id = ratings.article_id')->where('ratings.text', '<>', '');
     })->whereIn('articles.id', $articlesTaskIds)->get(['articles.id'])->toArray();
     return $query->whereIn('id', array_flatten($articlesWithSomeRating));
 }