-34.6036844,'lng'=>-58.381559100000004,'zoom'=>10); $layerName = "New Layer"; $em = $this->get('doctrine')->getManager(); $layer = $em->getRepository("MapBundle\Entity\Layer")->findOneById($layerId); $layers = array(); if(!is_null($layer)) { $layerName = $layer->getName(); if($layer->getMap()) { $_layers = $layer->getMap()->getLayers(); foreach($_layers as $k => $l) { if($l->getId() == $layerId) continue; $_vectors = $l->getVectors(); foreach($_vectors as $k => $v) {$vectorsPopup[] = $v;} $layers[] = array('name' => $l->getName(),'vectors'=>$_vectors); } $map = $layer->getMap()->jsonExtraData(); } $vectors = $em->getRepository("MapBundle\Entity\Vector")->findByLayer($layer); foreach($vectors as $k => $v) {$vectorsPopup[] = $v;} } $adminPool = $this->get('sonata.admin.pool'); $url_post = "admin_map_vector_create_ajax"; $url_delete = "admin_map_vector_delete_ajax"; return $this->render('LeafletBundle:Leaflet:create_vector.html.twig', array( 'base_template' => $adminPool->getTemplate('layout'), 'admin_pool' => $adminPool, 'admin' => $adminPool->getAdminByClass("MapBundle\Entity\Map"), 'uuid' => time(), 'url_post' => $url_post, 'url_delete' => $url_delete, 'vectors' => $vectors, 'layerId' => $layerId, 'map' => $map, 'layers' => $layers, 'vectorsPopup' => $vectorsPopup, 'layerName' => $layerName )); } public function saveVectorAction(Request $request) { print_r($request->request->all()); die; } public function showMapAction($mapId = null, Request $request) { if(is_null($mapId)) { print_r("error: null mapId"); die; } $layers = array(); $em = $this->get('doctrine')->getManager(); $map = $em->getRepository("MapBundle\Entity\Map")->findOneById($mapId); $objectClasses = $em->getRepository("MapBundle\Entity\ObjectClass")->findAll(); $_layers = $map->getLayers(); foreach($_layers as $k => $l) { $_vectors = $l->getVectors(); $layers[] = array('name' => $l->getName(),'vectors'=>$_vectors); } $map = $map->jsonExtraData(); $adminPool = $this->get('sonata.admin.pool'); return $this->render('LeafletBundle:Leaflet:show_map.html.twig', array( 'base_template' => $adminPool->getTemplate('layout'), 'admin_pool' => $adminPool, 'admin' => $adminPool->getAdminByClass("MapBundle\Entity\Map"), 'map' => $map, 'layers' => $layers, 'objectClasses' => $objectClasses )); } }