Example #1
0
 /**
  * Retrieve articles by tag.
  *
  * @param $tag
  * @return mixed
  */
 public function tagArticle($tag)
 {
     $article = new Article();
     $articles = $article->preArticleQuery()->join('article_tags', 'articles.id', '=', 'article_tags.article_id')->join('tags', 'tags.id', '=', 'tag_id')->where('tags.tag', 'like', $tag)->where('articles.status', 'published')->orderBy('articles.created_at', 'desc')->paginate(12);
     return $article->preArticleModifier($articles);
 }
Example #2
0
 /**
  * Retrieve stream by contributor.
  *
  * @param $username
  * @return mixed
  */
 public function stream($username)
 {
     $contributor = $this->whereUsername($username)->first();
     $follow = $contributor->following()->select('following')->pluck('following')->toArray();
     $article = new Article();
     $articles = $article->preArticleQuery()->published()->whereIn('contributor_id', $follow)->paginate(10);
     return $article->preArticleModifier($articles);
 }
Example #3
0
 /**
  * Retrieve articles by subcategory.
  *
  * @param $id
  * @return mixed
  */
 public function subcategoryArticle($id)
 {
     $article = new Article();
     $articles = $article->preArticleQuery()->where('articles.status', 'published')->where('subcategory_id', $id)->orderBy('articles.created_at', 'desc')->paginate(12);
     return $article->preArticleModifier($articles);
 }