diff --git a/app/Http/Controllers/GrainbillController.php b/app/Http/Controllers/GrainbillController.php
index df19774..de84ccd 100644
--- a/app/Http/Controllers/GrainbillController.php
+++ b/app/Http/Controllers/GrainbillController.php
@@ -4,6 +4,8 @@ namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Grainbill;
+use App\Models\Summarie;
+use App\Models\Grain;
class GrainbillController extends Controller
{
@@ -14,8 +16,15 @@ class GrainbillController extends Controller
public function index()
{
- $project = Grainbill::get();
- return view('grainbills')->with('grainbills', $project);
+ $grainbills = Grainbill::get();
+ foreach ($grainbills as $grainbill)
+ {
+ $beername = Summarie::where('beer_id', $grainbill->beer_id)->value('name');
+ $grainname = Grain::where('id', $grainbill->grain_id)->value('name');
+ $grainbill['beer'] = $beername;
+ $grainbill['name'] = $grainname;
+ }
+ return view('grainbills.index')->with('grainbills', $grainbills);
}
@@ -23,15 +32,14 @@ class GrainbillController extends Controller
// validation
$this->validate($request,[
'beer_id' => 'required',
- 'grain_id' => 'required',
- 'amount' => 'required',
- 'grain_bill' => 'required',
+ 'grain_id' => 'required',
+ 'amount' => 'required',
+ 'grain_bill' => 'required',
]);
-
// create project
$grain = new Grainbill;
- $lastID = Grainbill::orderBy('id','desc')->value('id');
+ $lastID = Grainbill::orderBy('id','desc')->take(1)->value('id');
$grain->id = number_format($lastID) + 1;
$grain->beer_id = $request->input('beer_id');
$grain->grain_id = $request->input('grain_id');
@@ -41,6 +49,37 @@ class GrainbillController extends Controller
return redirect('/grainbills')->with('success', 'Grain Bill Added');
}
+ public function edit($id){
+ $grainbill = Grainbill::where('id', (int)$id)->first();
+ return view('grainbills.edit')->with('grainbill', $grainbill);
+ }
+
+ public function update(Request $request, $id){
+ // validation
+ $this->validate($request,[
+ 'name' => 'required',
+ ]);
+
+ $grain = Grainbill::where('id', (int)$id)->first();
+ $grain->name = $request->input('name');
+ $grain->beer_id = $request->input('beer_id');
+ $grain->grain_id = $request->input('grain_id');
+ $grain->amount = $request->input('amount');
+ $grain->grain_bill = $request->input('grain_bill');
+ $grain->save();
+
+ return redirect('/grainbills')->with('success', 'Grain Updated!');
+ }
+ public function create()
+ {
+ return view('grainbills.create');
+ }
+ public function destroy($id)
+ {
+ $grainbill = Grainbill::find($id);
+ $grainbill->delete();
+ return redirect('/grainbills')->with('success', 'Grain deleted!');
+ }
}
diff --git a/resources/views/grainbills.blade.php b/resources/views/grainbills.blade.php
index 2c505f7..9ede88a 100644
--- a/resources/views/grainbills.blade.php
+++ b/resources/views/grainbills.blade.php
@@ -1,64 +1,8 @@
@extends('layouts.app')
@section('content')
-
-
+
+@yield('main')
-
-
-
@endsection
diff --git a/resources/views/grainbills/create.blade.php b/resources/views/grainbills/create.blade.php
index e69de29..46fdac8 100644
--- a/resources/views/grainbills/create.blade.php
+++ b/resources/views/grainbills/create.blade.php
@@ -0,0 +1,40 @@
+@extends('grainbills')
+
+@section('main')
+
+
+
Add a Grain
+
+ @if ($errors->any())
+
+
+ @foreach ($errors->all() as $error)
+ - {{ $error }}
+ @endforeach
+
+
+ @endif
+
+
+
+
+@endsection
diff --git a/resources/views/grainbills/edit.blade.php b/resources/views/grainbills/edit.blade.php
index e69de29..9ee10ff 100644
--- a/resources/views/grainbills/edit.blade.php
+++ b/resources/views/grainbills/edit.blade.php
@@ -0,0 +1,39 @@
+@extends('grainbills')
+@section('main')
+
+
Update Grain Bill
+
+ @if ($errors->any())
+
+
+ @foreach ($errors->all() as $error)
+ - {{ $error }}
+ @endforeach
+
+
+
+ @endif
+
+
+
+@endsection
diff --git a/resources/views/grainbills/index.blade.php b/resources/views/grainbills/index.blade.php
index e69de29..80aeb88 100644
--- a/resources/views/grainbills/index.blade.php
+++ b/resources/views/grainbills/index.blade.php
@@ -0,0 +1,50 @@
+@extends('grainbills')
+
+@section('main)
+
+
+
+
+@include('inc.navbar')
+
+
+
+@if (Auth::user()->isAdmin())
+
Add Grain
+
+@endif
+
+
+ @include('inc.messages')
+
+
+ Grain |
+ Beer |
+ Amount |
+ % of Grain Bill |
+ @if (Auth::user()->isAdmin())Admin | @endif
+
+ @foreach ($grainbills as $grainbill)
+
+ {{$grainbill->name}} |
+ {{$grainbill->beer}} |
+ {{$grainbill->amount}} |
+ {{$grainbill->grain_bill}} |
+ @if (Auth::user()->isAdmin())
+ Edit |
+ |
+ @endif
+
+ @endforeach
+
+
+
+
+
+
+
+@endsection
diff --git a/resources/views/hops/create.blade.php b/resources/views/hops/create.blade.php
index 8fab235..2d50529 100644
--- a/resources/views/hops/create.blade.php
+++ b/resources/views/hops/create.blade.php
@@ -3,7 +3,7 @@
@section('main')
-
Add a Grain
+
Add a Hop
@if ($errors->any())
@@ -64,7 +64,7 @@
-
+
diff --git a/routes/web.php b/routes/web.php
index 3d5c0af..a634703 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -28,9 +28,9 @@ Route::resource('grains', 'App\Http\Controllers\GrainController');
Route::resource('hops', 'App\Http\Controllers\HopController');
Route::resource('yeasts', 'App\Http\Controllers\YeastController');
Route::resource('adjuncts', 'App\Http\Controllers\AdjunctController');
+Route::resource('grainbills', 'App\Http\Controllers\GrainbillController');
Route::get('/home', [App\Http\Controllers\SummarieController::class, 'index'])->name('home');
Route::get('/fermentations', [App\Http\Controllers\FermentationController::class, 'index'])->name('fermentations');
-Route::get('/grainbills', [App\Http\Controllers\GrainbillController::class, 'index'])->name('grainbills');
Route::get('/mashes', [App\Http\Controllers\MasheController::class, 'index'])->name('mashes');
Route::get('/hopadditions', [App\Http\Controllers\HopAdditionController::class, 'index'])->name('hopadditions');
Route::get('/adjunctadditions', [App\Http\Controllers\AdjunctAdditionController::class, 'index'])->name('adjunctadditions');
@@ -40,7 +40,6 @@ Route::get('/grain/{grainID}', [App\Http\Controllers\GraincardController::class,
Route::get('/yeast/{yeastID}', [App\Http\Controllers\YeastcardController::class, 'index'])->name('yeast');
Route::get('/hop/{hopID}', [App\Http\Controllers\HopcardController::class, 'index'])->name('hop');
Route::get('/adjunct/{adjunctID}', [App\Http\Controllers\AdjunctcardController::class, 'index'])->name('adjunct');
-Route::post('/grainbills', [App\Http\Controllers\GrainbillController::class, 'store'])->name('grainbills.store');
Route::post('/mashes', [App\Http\Controllers\MasheController::class, 'store'])->name('mash.store');
Route::post('/hopadditions', [App\Http\Controllers\HopAdditionController::class, 'store'])->name('hopadditions.store');
Route::post('/adjunctadditions', [App\Http\Controllers\AdjunctAdditionController::class, 'store'])->name('adjunctadditions.store');