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.
		
		
		
		
		
			
		
			
				
					
					
						
							131 lines
						
					
					
						
							3.7 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							131 lines
						
					
					
						
							3.7 KiB
						
					
					
				| <?php | |
| 
 | |
| namespace App\Http\Controllers; | |
| 
 | |
| use Illuminate\Http\Request; | |
| use App\Models\Summarie; | |
| use Illuminate\Support\Facades\DB; | |
| 
 | |
| class SummarieController extends Controller | |
| { | |
|     public function __construct() | |
|     { | |
|         $this->middleware('auth'); | |
|     } | |
| 
 | |
| 
 | |
|     public function index() | |
|     { | |
|         $beers = Summarie::orderBy('name')->get(); | |
| 	      foreach ($beers as $beer) | |
| 	      { | |
| 		        $brewery = DB::table('breweries')->where('id', $beer->brewery_id)->value('name'); | |
| 		        $beer['brewery'] = $brewery; | |
| 	      } | |
|         return view('beers.index')->with('beers', $beers); | |
|     } | |
| 
 | |
|     public function store(Request $request){ | |
|         // validation | |
|         $this->validate($request,[ | |
|             'name' => 'required', | |
| 	          'type' => 'required', | |
| 	          'abv' => 'required', | |
| 	          'fg' => 'required', | |
| 	          'keywords' => 'required', | |
| 	          'og' => 'required', | |
| 	          'source' => 'required', | |
| 	          'batch' => 'required', | |
|             'beer_id' => 'required', | |
|             'brewery_id' => 'required' | |
|         ]); | |
| 
 | |
| 
 | |
|         // create project | |
|         $beer = new Summarie; | |
|         $beer->beer_id = $request->input('beer_id'); | |
|         $beer->name = $request->input('name'); | |
| 	      $beer->type = $request->input('type'); | |
|         $beer->abv = $request->input('abv'); | |
|         $beer->fg = $request->input('fg'); | |
| 	      $beer->keywords = '{'.$request->input('keywords').'}'; | |
|         if ($request->mine) | |
| 	      { | |
| 		        $beer->mine = true; | |
| 	      } else { | |
| 		        $beer->mine = false; | |
| 	      } | |
|         $beer->og = $request->input('og'); | |
|         $beer->source = $request->input('source'); | |
|         $beer->batch = $request->input('batch'); | |
|         $beer->brewery_id = $request->input('brewery_id'); | |
|         if ($request->input('notes')) | |
|         { | |
|                $beer->notes = $request->input('notes'); | |
|         } | |
|         $beer->save(); | |
| 
 | |
|         return redirect('/beers')->with('success', 'Beer Added'); | |
|     } | |
| 
 | |
|     public function edit($id){ | |
|         $beer = Summarie::where('beer_id', (int)$id)->first(); | |
|         return view('beers.edit')->with('beer', $beer); | |
|     } | |
| 
 | |
|     public function update(Request $request, $id) | |
|     { | |
|         $request->validate([ | |
|           'name' => 'required', | |
|           'type' => 'required', | |
|           'abv' => 'required', | |
|           'fg' => 'required', | |
|           'keywords' => 'required', | |
|           'og' => 'required', | |
|           'source' => 'required', | |
|           'batch' => 'required', | |
|           'brewery_id' => 'required' | |
|         ]); | |
| 
 | |
|         $beer = Summarie::where('beer_id', (int)$id)->first(); | |
|         $beer->name = $request->input('name'); | |
|         $beer->type = $request->input('type'); | |
|         $beer->abv = $request->input('abv'); | |
|         $beer->fg = $request->input('fg'); | |
|         $beer->keywords = '{'.$request->input('keywords').'}'; | |
|         if ($request->mine) | |
|         { | |
|             $beer->mine = true; | |
|         } else { | |
|             $beer->mine = false; | |
|         } | |
|         $beer->og = $request->input('og'); | |
|         $beer->source = $request->input('source'); | |
|         $beer->batch = $request->input('batch'); | |
|         $beer->brewery_id = $request->input('brewery_id'); | |
|         if ($request->input('notes')) | |
|         { | |
|                $beer->notes = $request->input('notes'); | |
|         } | |
|         $beer->save(); | |
| 
 | |
|         return redirect('/beers')->with('success', 'Beer updated!'); | |
|     } | |
|     public function create() | |
|     { | |
|         $lastID = Summarie::orderBy('beer_id','desc')->take(1)->value('beer_id'); | |
|         $beer_id = number_format($lastID) + 1; | |
|         return view('beers.create')->with('beer_id', $beer_id); | |
| 
 | |
|     } | |
|     public function destroy($id) | |
|     { | |
|         $beer = Summarie::find($id); | |
|         $beer->delete(); | |
| 
 | |
|         return redirect('/beers')->with('success', 'Beer deleted!'); | |
|     } | |
| 
 | |
| 
 | |
| 
 | |
| }
 |