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.
		
		
		
		
		
			
		
			
				
					
					
						
							91 lines
						
					
					
						
							2.7 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							91 lines
						
					
					
						
							2.7 KiB
						
					
					
				
								<?php
							 | 
						|
								
							 | 
						|
								namespace App\Http\Controllers;
							 | 
						|
								
							 | 
						|
								use Illuminate\Http\Request;
							 | 
						|
								use App\Models\Mashe;
							 | 
						|
								use App\Models\Summarie;
							 | 
						|
								
							 | 
						|
								class MasheController extends Controller
							 | 
						|
								{
							 | 
						|
								    public function __construct()
							 | 
						|
								    {
							 | 
						|
								        $this->middleware('auth');
							 | 
						|
								    }
							 | 
						|
								
							 | 
						|
								    public function index()
							 | 
						|
								    {
							 | 
						|
								        $mashes = Mashe::get();
							 | 
						|
								        foreach ($mashes as $mash)
							 | 
						|
								        {
							 | 
						|
								            $beername = Summarie::where('beer_id', $mash->beer_id)->value('name');
							 | 
						|
								            $mash['beer'] = $beername;
							 | 
						|
								        }
							 | 
						|
								        return view('mashes.index')->with('mashes', $mashes);
							 | 
						|
								    }
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								   public function store(Request $request){
							 | 
						|
								        // validation
							 | 
						|
								        $this->validate($request,[
							 | 
						|
								            'beer_id' => 'required',
							 | 
						|
								            'temperature' => 'required',
							 | 
						|
								            'duration' => 'required',
							 | 
						|
								            'stage' => 'required',
							 | 
						|
									          'boil' => 'required',
							 | 
						|
								        ]);
							 | 
						|
								
							 | 
						|
								        // create project
							 | 
						|
								        $mash = new Mashe;
							 | 
						|
								        $lastID = Mashe::orderBy('id','desc')->take(1)->value('id');
							 | 
						|
								        $mash->id = number_format($lastID) + 1;
							 | 
						|
								        $mash->beer_id = $request->input('beer_id');
							 | 
						|
								        $mash->temp = $request->input('temperature');
							 | 
						|
								        $mash->duration = $request->input('duration');
							 | 
						|
								        $mash->stage = $request->input('stage');
							 | 
						|
									      $mash->boil = $request->input('boil');
							 | 
						|
								        $mash->save();
							 | 
						|
								
							 | 
						|
								        return redirect('/mashes')->with('success', 'Mash Step Added!');
							 | 
						|
								    }
							 | 
						|
								    public function edit($id){
							 | 
						|
								        $mash = Mashe::where('id', (int)$id)->first();
							 | 
						|
								        $beers = Summarie::orderBy('name')->get();
							 | 
						|
								        $selected_beer = $mash->beer_id;
							 | 
						|
								        $data = array('mash'=>$mash, 'beers'=>$beers, 'selected_beer'=>$selected_beer);
							 | 
						|
								        return view('mashes.edit')->with($data);
							 | 
						|
								    }
							 | 
						|
								
							 | 
						|
								    public function update(Request $request, $id){
							 | 
						|
								        // validation
							 | 
						|
								        $this->validate($request,[
							 | 
						|
								          'beer_id' => 'required',
							 | 
						|
								          'temperature' => 'required',
							 | 
						|
								          'duration' => 'required',
							 | 
						|
								          'stage' => 'required',
							 | 
						|
								          'boil' => 'required',
							 | 
						|
								        ]);
							 | 
						|
								
							 | 
						|
								        $mash = Mashe::where('id', (int)$id)->first();
							 | 
						|
								        $mash->beer_id = $request->input('beer_id');
							 | 
						|
								        $mash->temp = $request->input('temperature');
							 | 
						|
								        $mash->duration = $request->input('duration');
							 | 
						|
								        $mash->stage = $request->input('stage');
							 | 
						|
									      $mash->boil = $request->input('boil');
							 | 
						|
								        $mash->save();
							 | 
						|
								
							 | 
						|
								        return redirect('/mashes')->with('success', 'Mash Step Updated!');
							 | 
						|
								    }
							 | 
						|
								    public function create()
							 | 
						|
								    {
							 | 
						|
								        $beers = Summarie::orderBy('name')->get();
							 | 
						|
								        return view('mashes.create')->with('beers', $beers);
							 | 
						|
								    }
							 | 
						|
								    public function destroy($id)
							 | 
						|
								    {
							 | 
						|
								        $mash = Mashe::find($id);
							 | 
						|
								        $mash->delete();
							 | 
						|
								
							 | 
						|
								        return redirect('/mashes')->with('success', 'Mash Step Deleted!');
							 | 
						|
								    }
							 | 
						|
								}
							 |