/** * @param \Table\RestaurantBundle\Entity\Restaurant $restaurant * * @return void */ public function prePersist($restaurant) { $object = $this->getRoot()->getSubject(); foreach ($object->getRestaurantSchedule() as $restaurantSchedule) { $restaurantSchedule->setRestaurant($object); } // set for photos restaurant foreach ($object->getAdditionalPhotos() as $additionalPhoto) { $additionalPhoto->setRestaurant($object); } // set for photos restaurant foreach ($object->getAdditionalMenuPhotos() as $menuPhoto) { $menuPhoto->setRestaurant($object); } // update latitude/longitude $latitude = $restaurant->calculateLatitude(); $object->setLatitude($latitude); $longitude = $restaurant->calculateLongitude(); $object->setLongitude($longitude); // Add link to admin $container = $this->getConfigurationPool()->getContainer(); $linkInAdminDashboard = $container->getParameter('site_host') . $container->get('router')->generate('table_viewCreateMap', array('restaurantId' => $object->getId())); $object->setLinkInAdminDashboard($linkInAdminDashboard); }