/**
  * Creates a Cart object based on a DB row.
  *
  * @param array $row The DB row containing cart data.
  * @return \VeryGoodTrip\Domain\Cart
  */
 protected function buildDomainObject($row)
 {
     $cart = new Cart();
     $cart->setId($row['cart_id']);
     $cart->setUser($this->userDAO->findById($row['user_id']));
     $cart->setTrip($this->tripDAO->find($row['trip_id']));
     return $cart;
 }
 /**
  * Add an item into the cart of the authenticated used
  *
  * @param $id
  * @param Request $request
  * @param Application $app
  * @return \Symfony\Component\HttpFoundation\RedirectResponse towards the cart page
  */
 public function addCartAction($id, Request $request, Application $app)
 {
     if ($app['security.authorization_checker']->isGranted('IS_AUTHENTICATED_FULLY')) {
         $cart = new Cart();
         $trip = $app['dao.trip']->find($id);
         $user = $app['user'];
         $cart->setTrip($trip);
         $cart->setUser($user);
         $app['dao.cart']->save($cart);
     }
     return $app->redirect('/cart');
 }