<?phpnamespaceApp\Http\Controllers;
useApp\Book;
useApp\Genre;
useIlluminate\Http\Request;
class HomeController extends Controller
{
publicfunctionindex(Request$request)
{
if ($request->ajax()) {
returnresponse()->json([
'paginate' => Book::paginate(6)
]);
}
$genres = Genre::withCount('books')->get();
$total = count(Book::all());
returnview('user.home', compact('genres', 'total'));
}
publicfunctiongenre($id, Request$request)
{
$books = Genre::findOrFail($id)
->books()
->where('available_quantity', '>', '0')
->orderBy('created_at', 'desc')
->paginate(6);
if ($request->ajax()) {
returnresponse()->json(['paginate' => $books]);
}
}
publicfunctionsearch(Request$request)
{
$keyword = $request->input('value');
if ($request->ajax()) {
$books = Book::where('title', 'LIKE', "%{$keyword}%")
->orWhere('author', 'LIKE', "%{$keyword}%")
->orderBy('created_at', 'desc')
->paginate(6);
returnresponse()->json(['paginate' => $books]);
}
}
publicfunctionshow($id)
{
$book = Book::findOrFail($id);
$genre = $book->genre;
returnview('user.bookDetail', compact('book', 'genre'));
}
publicfunctioncarts()
{
returnview('user.listCart');
}
}
Prettier 2.0.2
PHP Plugin last release
Input:
Output: