示例#1
0
 public function postAdd(Request $request)
 {
     $this->validate($request, ['title' => 'required', 'url' => 'required|url', 'ingredients' => 'required']);
     $recipe = new \App\Recipe();
     $recipe->url = $request->url;
     $recipe->title = $request->title;
     $recipe->user_id = \Auth::id();
     $recipe->save();
     $ingSave = new \App\Ingredient();
     $ingSave->ingredientsFromString($request->ingredients, $recipe);
     \Session::flash('flash_message', 'Recipe added!');
     return redirect('/edit/' . $recipe->id);
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     $recipes = [['name' => 'Lemon Chicken', 'cooking_time' => 30, 'image' => '/images/recipes/lemon_chicken.png', 'ingredients' => [[4, 'Chicken Breasts'], ['1 tsp', 'Thyme'], [1, 'Lemon']]], ['name' => 'Beef Stroganoff', 'cooking_time' => 30, 'image' => '/images/recipes/beef_stroganoff.png', 'ingredients' => [[1, 'Beef'], [1, 'Mustard'], [1, 'Mushroom']]], ['name' => 'Chicken Caesar Salad', 'cooking_time' => 25, 'image' => '/images/recipes/caesar_salad.png', 'ingredients' => [[1, 'Lettuce'], [2, 'Chicken'], [1, 'Parmesan']]]];
     foreach ($recipes as $recipe) {
         $model = App\Recipe::create(['name' => $recipe['name'], 'cooking_time' => $recipe['cooking_time'], 'image' => $recipe['image']]);
         foreach ($recipe['ingredients'] as $ingredient) {
             $model->ingredients()->create(['quantity' => $ingredient[0], 'name' => $ingredient[1]]);
         }
     }
 }
示例#3
0
 /**
  * Responds to requests to POST /recipes/create
  */
 public function postCreate(Request $request)
 {
     $this->validate($request, ['recipe_name' => 'required|min:5', 'image_url' => 'required|url']);
     # Enter recipe into the database
     $recipe = new \App\Recipe();
     $recipe->recipe_name = $request->recipe_name;
     $recipe->menu_id = $request->menu;
     $recipe->user_id = \Auth::id();
     # <--- NEW LINE
     $recipe->image_url = $request->image_url;
     $recipe->save();
     # Add the specifics
     if ($request->specifics) {
         $specifics = $request->specifics;
     } else {
         $specifics = [];
     }
     $recipe->specifics()->sync($specifics);
     # Done
     \Session::flash('flash_message', 'Your recipe was added!');
     return redirect('/recipes');
 }
示例#4
0
 public function postEdit(Request $request)
 {
     //dump($request);
     $beer = \App\Beer::find($request->id);
     $beer->beer_name = $request->beer_name;
     $beer->personal = $request->personal;
     $beer->directions = $request->directions;
     $beer->user_id = Auth::id();
     $beer->save();
     // Grain 1
     $recipe = \App\Recipe::find($request->grainID1);
     $recipe->type = 1;
     $recipe->order = "grain1";
     $recipe->amt = $request->grainAmt1;
     $recipe->measure = $request->grainMeasure1;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->grain1;
     $recipe->save();
     // Grain 2
     $recipe = new \App\Recipe();
     $recipe->beer()->associate($beer);
     $recipe->type = 1;
     $recipe->order = "grain2";
     $recipe->amt = $request->grainAmt2;
     $recipe->measure = $request->grainMeasure2;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->grain2;
     $recipe->save();
     // Grain 3
     $recipe = \App\Recipe::find($request->grainID3);
     $recipe->type = 1;
     $recipe->order = "grain3";
     $recipe->amt = $request->grainAmt3;
     $recipe->measure = $request->grainMeasure3;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->grain3;
     $recipe->save();
     // Grain 4
     $recipe = \App\Recipe::find($request->grainID4);
     $recipe->type = 1;
     $recipe->order = "grain4";
     $recipe->amt = $request->grainAmt4;
     $recipe->measure = $request->grainMeasure4;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->grain4;
     $recipe->save();
     // Grain 5
     $recipe = \App\Recipe::find($request->grainID5);
     $recipe->type = 1;
     $recipe->order = "grain5";
     $recipe->amt = $request->grainAmt5;
     $recipe->measure = $request->grainMeasure5;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->grain5;
     $recipe->save();
     // Hops 1
     $recipe = \App\Recipe::find($request->hopsID1);
     $recipe->type = 2;
     $recipe->order = "hops1";
     $recipe->amt = $request->hopsAmt1;
     $recipe->measure = $request->hopsMeasure1;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->hops1;
     $recipe->save();
     // Hops 2
     $recipe = \App\Recipe::find($request->hopsID2);
     $recipe->type = 2;
     $recipe->order = "hops2";
     $recipe->amt = $request->hopsAmt2;
     $recipe->measure = $request->hopsMeasure2;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->hops2;
     $recipe->save();
     // Hops 3
     $recipe = \App\Recipe::find($request->hopsID3);
     $recipe->type = 2;
     $recipe->order = "hops3";
     $recipe->amt = $request->hopsAmt3;
     $recipe->measure = $request->hopsMeasure3;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->hops3;
     $recipe->save();
     // Hops 4
     $recipe = \App\Recipe::find($request->hopsID4);
     $recipe->type = 2;
     $recipe->order = "hops4";
     $recipe->amt = $request->hopsAmt4;
     $recipe->measure = $request->hopsMeasure4;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->hops4;
     $recipe->save();
     // Hops 5
     $recipe = \App\Recipe::find($request->hopsID5);
     $recipe->type = 2;
     $recipe->order = "hops5";
     $recipe->amt = $request->hopsAmt5;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->hops5;
     $recipe->measure = $request->hopsMeasure5;
     $recipe->save();
     // Yeast
     $recipe = \App\Recipe::find($request->yeastID);
     $recipe->type = 3;
     $recipe->order = "yeast";
     $recipe->amt = $request->yeastAmt;
     $recipe->measure = $request->yeastMeasure;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->yeast;
     $recipe->save();
     // Sugar 1
     $recipe = \App\Recipe::find($request->sugarID1);
     $recipe->type = 4;
     $recipe->order = "sugar1";
     $recipe->amt = $request->sugarAmt1;
     $recipe->measure = $request->sugarMeasure1;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->sugar1;
     $recipe->save();
     // Sugar 2
     $recipe = \App\Recipe::find($request->sugarID2);
     $recipe->type = 4;
     $recipe->order = "sugar2";
     $recipe->amt = $request->sugarAmt2;
     $recipe->measure = $request->sugarMeasure2;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->sugar2;
     $recipe->save();
     // Sugar 3
     $recipe = \App\Recipe::find($request->sugarID3);
     $recipe->type = 4;
     $recipe->order = "sugar3";
     $recipe->amt = $request->sugarAmt3;
     $recipe->measure = $request->sugarMeasure3;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->sugar3;
     $recipe->save();
     // Sugar 4
     $recipe = \App\Recipe::find($request->sugarID4);
     $recipe->type = 4;
     $recipe->order = "sugar4";
     $recipe->amt = $request->sugarAmt4;
     $recipe->measure = $request->sugarMeasure4;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->sugar4;
     $recipe->save();
     // Sugar 5
     $recipe = \App\Recipe::find($request->sugarID5);
     $recipe->type = 4;
     $recipe->order = "sugar5";
     $recipe->amt = $request->sugarAmt5;
     $recipe->measure = $request->sugarMeasure5;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->sugar5;
     $recipe->save();
     // Additive 1
     $recipe = \App\Recipe::find($request->additiveID1);
     $recipe->type = 5;
     $recipe->order = "additive1";
     $recipe->amt = $request->additiveAmt1;
     $recipe->measure = $request->additiveMeasure1;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->additive1;
     $recipe->save();
     // Additive 2
     $recipe = \App\Recipe::find($request->additiveID2);
     $recipe->type = 5;
     $recipe->order = "additive2";
     $recipe->amt = $request->additiveAmt2;
     $recipe->measure = $request->additiveMeasure2;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->additive2;
     $recipe->save();
     // Additive 3
     $recipe = \App\Recipe::find($request->additiveID3);
     $recipe->type = 5;
     $recipe->order = "additive3";
     $recipe->amt = $request->additiveAmt3;
     $recipe->measure = $request->additiveMeasure3;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->additive3;
     $recipe->save();
     // Additive 4
     $recipe = \App\Recipe::find($request->additiveID4);
     $recipe->type = 5;
     $recipe->order = "additive4";
     $recipe->amt = $request->additiveAmt4;
     $recipe->measure = $request->additiveMeasure4;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->additive4;
     $recipe->save();
     // Additive 5
     $recipe = \App\Recipe::find($request->additiveID5);
     $recipe->type = 5;
     $recipe->order = "additive5";
     $recipe->amt = $request->additiveAmt5;
     $recipe->measure = $request->additiveMeasure5;
     $recipe->beer_id = $request->id;
     $recipe->ingredient_id = $request->additive5;
     $recipe->save();
     return redirect('/beer');
 }
示例#5
0
/*
|--------------------------------------------------------------------------
| Application Routes
|--------------------------------------------------------------------------
|
| Here is where you can register all of the routes for an application.
| It's a breeze. Simply tell Laravel the URIs it should respond to
| and give it the controller to call when that URI is requested.
|
*/
Route::group(['prefix' => 'api'], function () {
    Route::get('recipes', function () {
        return App\Recipe::with('ingredients')->get();
    });
    Route::get('recipes/{slug}', function ($slug) {
        return App\Recipe::where('slug', $slug)->with('ingredients')->firstOrFail();
    });
    Route::get('me/starred', function () {
        return App\User::findOrFail(1)->starred()->with('ingredients')->get();
    });
    Route::post('me/starred/{id}', function ($id) {
        App\User::findOrFail(1)->starred()->attach($id);
        return [(int) $id];
    });
    Route::delete('me/starred/{id}', function ($id) {
        App\User::findOrFail(1)->starred()->detach($id);
        return [];
    });
});
Route::get('{catchall}', function () {
    return view('app');