You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							87 lines
						
					
					
						
							2.7 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							87 lines
						
					
					
						
							2.7 KiB
						
					
					
				
								<?php
							 | 
						|
								
							 | 
						|
								namespace App\Http\Controllers;
							 | 
						|
								
							 | 
						|
								use Illuminate\Http\Request;
							 | 
						|
								use App\Models\Hopaddition;
							 | 
						|
								use App\Models\Hop;
							 | 
						|
								use App\Models\Summarie;
							 | 
						|
								class HopAdditionController extends Controller
							 | 
						|
								{
							 | 
						|
								    public function __construct()
							 | 
						|
								    {
							 | 
						|
								        $this->middleware('auth');
							 | 
						|
								    }
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								    public function index()
							 | 
						|
								    {
							 | 
						|
								        $hopadditions = Hopaddition::orderBy('id')->get();
							 | 
						|
								        foreach ($hopadditions as $hopaddition)
							 | 
						|
								        {
							 | 
						|
								            $beername = Summarie::where('beer_id', $hopaddition->beer_id)->value('name');
							 | 
						|
								            $hopname = Hop::where('id', $hopaddition->hop_id)->value('name');
							 | 
						|
								            $hopaddition['beer'] = $beername;
							 | 
						|
								            $hopaddition['hop'] = $hopname;
							 | 
						|
								        }
							 | 
						|
								        return view('hopadditions.index')->with('hopadditions', $hopadditions);
							 | 
						|
								    }
							 | 
						|
								
							 | 
						|
								   public function store(Request $request){
							 | 
						|
								        // validation
							 | 
						|
								        $this->validate($request,[
							 | 
						|
								            'beer_id' => 'required',
							 | 
						|
								            'hop_id' => 'required',
							 | 
						|
								            'amount' => 'required',
							 | 
						|
								            'timing' => 'required',
							 | 
						|
								        ]);
							 | 
						|
								        // create project
							 | 
						|
								        $hop = new Hopaddition;
							 | 
						|
								        $lastID = Hopaddition::orderBy('id','desc')->take(1)->value('id');
							 | 
						|
								        $hop->id = number_format($lastID) + 1;
							 | 
						|
								        $hop->beer_id = $request->input('beer_id');
							 | 
						|
								        $hop->hop_id = $request->input('hop_id');
							 | 
						|
								        $hop->amount = $request->input('amount');
							 | 
						|
								        $hop->timing = $request->input('timing');
							 | 
						|
								        $hop->save();
							 | 
						|
								
							 | 
						|
								        return redirect('/hopadditions')->with('success', 'Hop Addition Added');
							 | 
						|
								    }
							 | 
						|
								    public function edit($id){
							 | 
						|
								        $hopaddition = Hopaddition::where('id', (int)$id)->first();
							 | 
						|
								        return view('hopadditions.edit')->with('hopaddition', $hopaddition);
							 | 
						|
								    }
							 | 
						|
								
							 | 
						|
								    public function update(Request $request, $id){
							 | 
						|
								        // validation
							 | 
						|
								        $this->validate($request,[
							 | 
						|
								          'beer_id' => 'required',
							 | 
						|
								          'hop_id' => 'required',
							 | 
						|
								          'amount' => 'required',
							 | 
						|
								          'timing' => 'required',
							 | 
						|
								        ]);
							 | 
						|
								
							 | 
						|
								        $hop = Hopaddition::where('id', (int)$id)->first();
							 | 
						|
								        $hop->beer_id = $request->input('beer_id');
							 | 
						|
								        $hop->hop_id = $request->input('hop_id');
							 | 
						|
								        $hop->amount = $request->input('amount');
							 | 
						|
								        $hop->timing = $request->input('timing');
							 | 
						|
								        $hop->save();
							 | 
						|
								
							 | 
						|
								        return redirect('/hopadditions')->with('success', 'Hop Addition Updated!');
							 | 
						|
								    }
							 | 
						|
								    public function create()
							 | 
						|
								    {
							 | 
						|
								        $beers = Summarie::orderBy('name')->get();
							 | 
						|
								        $hops = Hop::orderBy('name')->get();
							 | 
						|
								        $data = array('beers'=>$beers, 'hops'=>$hops);
							 | 
						|
								        return view('hopadditions.create')->with($data);
							 | 
						|
								    }
							 | 
						|
								    public function destroy($id)
							 | 
						|
								    {
							 | 
						|
								        $hopaddition = Hopaddition::find($id);
							 | 
						|
								        $hopaddition->delete();
							 | 
						|
								
							 | 
						|
								        return redirect('/hopadditions')->with('success', 'Hop Addition deleted!');
							 | 
						|
								    }
							 | 
						|
								}
							 |