/**
  * @Post("/create")
  * @Middleware("user")
  *
  * User creates his order for a specific day
  * 
  */
 public function createOrder()
 {
     $userId = \Input::get('user_id');
     $menuFoodId = \Input::get('menu_food_id');
     $user = User::findOrFail($userId);
     $menuFood = MenuFood::findOrFail($menuFoodId);
     $user->eatenFood()->attach($menuFood);
     return $user->eatenFoodForWeek($menuFood->menu->week);
 }
示例#2
0
 public static function createMenusForWeek($week)
 {
     $now = Carbon::now('Europe/Belgrade')->toDateTimeString();
     $weekMon = Carbon::createFromTimeStamp((int) $week);
     $weekDays = ['mon' => $weekMon, 'tue' => $weekMon->copy()->addDays(1), 'wed' => $weekMon->copy()->addDays(2), 'thu' => $weekMon->copy()->addDays(3), 'fri' => $weekMon->copy()->addDays(4)];
     $defaultFoods = Food::where('default', true)->get();
     $newMenus = [];
     foreach ($weekDays as $dayAbbr => $day) {
         $newMenu = Menu::create(['date' => $day, 'week' => $week, 'published' => false, 'created_at' => $now, 'updated_at' => $now]);
         foreach ($defaultFoods as $defaultFood) {
             MenuFood::create(['food_id' => $defaultFood->id, 'menu_id' => $newMenu->id]);
         }
         $newMenus[] = $newMenu->id;
     }
     return self::with(['menuFoods', 'menuFoods.menu', 'menuFoods.food'])->find($newMenus);
 }
示例#3
0
 /**
  * @Delete("/food/{id}")
  * @Middleware("admin")
  *
  * Admin removes menuFood from the menu.
  *
  * @param  $id - id of the MenuFood to remove
  */
 public function removeMenuFood($id)
 {
     $menuFood = MenuFood::findOrFail($id);
     $week = $menuFood->menu->week;
     $menuFood->delete();
     $menus = Menu::with(['menuFoods', 'menuFoods.menu', 'menuFoods.food'])->where('week', $week)->get();
     return $menus;
 }