add('oltDeviceId') ->add('deviceServer') ->add('tenancyId') ->add('ponSerialNumber') ->add('ponPort') ->add('status') ; } /** * @param ListMapper $listMapper */ protected function configureListFields(ListMapper $listMapper) { $em = $this->get("doctrine.orm.entity_manager"); $servers = $em->getRepository("StatsBundle:DeviceServer")->findAll(); $olts_server = $urls_server = array(); foreach($servers as $deviceServer) { $urls = $this->get('webservice')->getData($deviceServer->getUrl()); $urls_server[$deviceServer->getId()] = $urls; $olts = $em->getRepository("StatsBundle:device")->findBy(array('deviceServer'=>$deviceServer, 'deviceType' => 'FTTHBundle\Entity\OLT')); $olts_server[$deviceServer->getId()] = array(); foreach($olts as $olt) { $data = $olt->jsonExtraData(); $name = null; if(isset($data['name'])) $name = $data['name']; $olts_server[$deviceServer->getId()][$olt->getDeviceId()] = $name; } } //print_r($urls_server);die; $this->parameters = array('urls_server' => $urls_server, 'olts_server' => $olts_server); $listMapper ->add('deviceServer') ->add('oltDeviceId', 'string', array('template' => 'StatsBundle:Onu:base_list_field_olt.html.twig')) ->add('tenancyId') ->addIdentifier('ponSerialNumber') ->add('ponPort') ->add('status') ->add('txPower', 'string', array('template' => 'StatsBundle:Onu:base_list_field_tx.html.twig')) ->add('rxPower', 'string', array('template' => 'StatsBundle:Onu:base_list_field_rx.html.twig')) ->add('voltage', 'string', array('template' => 'StatsBundle:Onu:base_list_field_voltage.html.twig')) ->add('temperature', 'string', array('template' => 'StatsBundle:Onu:base_list_field_temperature.html.twig')) ->add('uptime', 'string', array('template' => 'StatsBundle:Onu:base_list_field_uptime.html.twig')) ->add('updated') /* ->add('_action', null, array( 'actions' => array('show' => array()) )) */ ; } /** * @param FormMapper $formMapper */ protected function configureFormFields(FormMapper $formMapper) { } /** * @param ShowMapper $showMapper */ protected function configureShowFields(ShowMapper $showMapper) { $showMapper ->add('oltDeviceId') ->add('ponSerialNumber') ->add('ponPort') ->add('status') ->add('txPower', 'string', array('template' => 'StatsBundle:Onu:base_show_field_tx.html.twig')) ->add('rxPower', 'string', array('template' => 'StatsBundle:Onu:base_show_field_rx.html.twig')) ->add('voltage', 'string', array('template' => 'StatsBundle:Onu:base_show_field_voltage.html.twig')) ->add('temperature', 'string', array('template' => 'StatsBundle:Onu:base_show_field_temperature.html.twig')) ->add('updated', 'string', array('template' => 'StatsBundle:Onu:base_show_field_uptime.html.twig')) ; } /** * @param string $action * @param Object $object * * @return array */ public function configureActionButtons($action, $object = null) { $actions = parent::configureActionButtons($action, $object); $actions['show_in_map'] = array( 'template' => 'StatsBundle:Onu:map_button.html.twig', ); return $actions; } protected function configureRoutes(RouteCollection $collection) { $collection->remove('delete'); $collection->remove('create'); $collection->remove('edit'); } }