Finished blade designs and methods and added sortable lists
This commit is contained in:
@@ -4,18 +4,25 @@ namespace App\Http\Controllers;
|
||||
|
||||
use App\Models\Beer;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Facades\Redirect;
|
||||
|
||||
class BeerController extends Controller
|
||||
{
|
||||
public function show()
|
||||
public function __construct()
|
||||
{
|
||||
$this->middleware('auth');
|
||||
}
|
||||
|
||||
public function show(Beer $beer)
|
||||
{
|
||||
return view('beer.show', compact('beer'));
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('beer.create');
|
||||
$countries = DB::table('countries')->get();
|
||||
return view('beer.create', compact('countries'));
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
@@ -39,4 +46,42 @@ class BeerController extends Controller
|
||||
|
||||
return back()->with('success', 'Beer added!');
|
||||
}
|
||||
|
||||
public function edit(Beer $beer)
|
||||
{
|
||||
$countries = DB::table('countries')->get();
|
||||
return view('beer.edit', compact('beer', 'countries'));
|
||||
}
|
||||
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$this->validate($request, [
|
||||
'beer' => 'required',
|
||||
'rating' => 'required',
|
||||
'country' => 'required',
|
||||
'type' => 'required',
|
||||
]);
|
||||
|
||||
$beer = Beer::findOrFail($id);
|
||||
$beer->beer = $request->beer;
|
||||
$beer->rating = $request->rating;
|
||||
$beer->country = $request->country;
|
||||
$beer->type = $request->type;
|
||||
$beer->review = $request->review;
|
||||
|
||||
$beer->save();
|
||||
|
||||
return back()->with('success', 'Beer updated!');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
$beer = Beer::findOrFail($id);
|
||||
|
||||
$beer->list()->detach();
|
||||
|
||||
$beer->delete();
|
||||
|
||||
return view('profile')->with('success', 'Beer deleted');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,14 +6,22 @@ use App\Models\Beer;
|
||||
use App\Models\BeerList;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
class BeerListController extends Controller
|
||||
{
|
||||
public function __construct()
|
||||
{
|
||||
$this->middleware('auth')->except('show');
|
||||
}
|
||||
|
||||
public function show(BeerList $list)
|
||||
{
|
||||
$beers = Beer::all();
|
||||
|
||||
return view('list.show', compact('list', 'beers'));
|
||||
$listBeers = $list->beer()->sortable()->paginate(5);
|
||||
|
||||
return view('list.show', compact('list', 'beers', 'listBeers'));
|
||||
}
|
||||
|
||||
public function create()
|
||||
@@ -43,6 +51,16 @@ class BeerListController extends Controller
|
||||
|
||||
$list->beer()->attach($beerId);
|
||||
|
||||
return redirect("/list/" . $list->id);
|
||||
return back()->with('success', 'Beer added');
|
||||
}
|
||||
|
||||
public function removeItem(Request $request, $id)
|
||||
{
|
||||
$beerId = $request->beer;
|
||||
$list = BeerList::findOrFail($id);
|
||||
|
||||
$list->beer()->detach($beerId);
|
||||
|
||||
return back()->with('success', 'Beer deleted');
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user