public function selectRestaurant($id = 0) { //If we are not connected as a Restaurateur, send to the login page if (!Session::isConnected() || Session::getUser()->getType() != USER_RESTAURATEUR) { return Redirect::to('/restaurateur/login'); } //If no restaurant is specified, display the list if ($id == 0) { $restaurateur = Restaurateur::getOneBy(array('_id' => new \MongoId(Session::getUser()->getId()))); $restaurants = $restaurateur->getRestaurants(); return View::render("restaurateur/listeSelectRestaurant.php", array('restaurants' => $restaurants)); } $restaurant = Restaurant::getOneBy(array('_id' => new \MongoId($id))); $menus = $restaurant->getMenus(); if (Form::exists('menu_edit_form')) { $name = Form::get('name'); if ($name == "" || is_null($name)) { Session::addFlashMessage("Erreur :", 'error', "Tous les champs ne sont pas remplis."); $error = "Veuillez remplir tous les champs"; return View::render("restaurateur/listeEditeMenu.php", array('error' => $error, 'restaurant' => $restaurant, 'menus' => $menus)); } //We check if the name is not already taken $found = Menu::getBy(array('name' => Form::get('name'), 'restaurant' => $restaurant->getId())); if ($found) { Session::addFlashMessage("Erreur :", 'error', "Le nom déjà pris."); $error = "Ce nom est déjà enregistré dans le menu."; return View::render("restaurateur/listeEditeMenu.php", array('error' => $error, 'restaurant' => $restaurant, 'menus' => $menus)); } //We associate the values $menu = new Menu(); $menu->setName(Form::get('name')); $menu->setRestaurant($restaurant); $menu->save(); $restaurant->addMenu($menu); $restaurant->save(); } $menus = $restaurant->getMenus(); return View::render("restaurateur/listeEditeMenu.php", array('menus' => $menus, 'restaurant' => $restaurant)); }
private function addMenu() { $restaurant = Restaurant::getOneBy(array('name' => 'Ma Queue Mickey')); if (!$restaurant->hasMenu()) { $menu = new Menu(); $menu->setRestaurant($restaurant); $menu->setName("Les suplices de la gueule"); $menu->save(); $item1 = new ItemMenu(); $item1->setName("Burger"); $item1->setDescription("Un petit pas coupé en deux avec un steak entre les deux."); $item1->setPrice(6.95); $item1->setMenu($menu); $item1->save(); $menu->addItem($item1); $menu->save(); $item2 = new ItemMenu(); $item2->setName("Sous-marin 2000"); $item2->setDescription("Sandwich de 2000g avec pâté de volaille, oeufs brouillés, steak de kangourou et pilulles contre la toux."); $item2->setPrice(3.99); $item2->setMenu($menu); $item2->save(); $menu->addItem($item2); $menu->save(); $restaurant->addMenu($menu); $restaurant->save(); } $restaurant = Restaurant::getOneBy(array('name' => 'Kitchen For Chinese')); if (!$restaurant->hasMenu()) { $menu = new Menu(); $menu->setRestaurant($restaurant); $menu->setName("Les plaisirs du palais"); $menu->save(); $item1 = new ItemMenu(); $item1->setName("Poutine cantonaise"); $item1->setDescription("Frites taillées en grain de riz avec du cantonais en grain"); $item1->setPrice(25.45); $item1->setMenu($menu); $item1->save(); $menu->addItem($item1); $menu->save(); $restaurant->addMenu($menu); $restaurant->save(); $item2 = new ItemMenu(); $item2->setName("Pâté chinois"); $item2->setDescription("Inventé en Amérique"); $item2->setPrice(1.95); $item2->setMenu($menu); $item2->save(); $menu->addItem($item2); $menu->save(); $restaurant->addMenu($menu); $restaurant->save(); } }