Exemple #1
0
 /**
  * Query get book that is recently published.
  * @param  [Illuminate\Database\Eloquent\Builder] $query
  * @return [Illuminate\Support\Collection]
  */
 public function scopeBookWithLanguageAndCategory($query, $languageId, $categoryId)
 {
     $query->where('books.is_published', Book::PUBLISH);
     if ($languageId != "all") {
         $query->join('languages', function ($join) use($languageId) {
             $join->on('languages.id', '=', 'books.language_id')->where('languages.id', '=', $languageId);
         });
     }
     if ($categoryId != "all") {
         $query->join('book_category', function ($join) use($categoryId) {
             $join->on('book_category.book_id', '=', 'books.id')->where('book_category.category_id', '=', $categoryId);
         });
     }
     return $query;
 }