Builder.php
1.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
/**
* Created by PhpStorm.
* User: eduardo
* Date: 04/02/14
* Time: 10:54
*/
namespace Cacic\RelatorioBundle\Menu;
use Knp\Menu\FactoryInterface;
use Symfony\Component\DependencyInjection\ContainerAware;
class Builder extends ContainerAware
{
public function relatorioMenu(FactoryInterface $factory, array $options)
{
$logger = $this->container->get('logger');
// Cria menu
$menu = $factory->createItem('root');
//$menu->addChild('Configurações', array('route' => 'cacic_relatorio_hardware_configuracoes'));
// Carrega lista de classes WMI para coleta
$em = $this->container->get('doctrine')->getEntityManager();
$classes = $em->getRepository('CacicCommonBundle:ComputadorColeta')->menu();
// Adiciona cada uma das classes como slug para um controller
foreach ($classes as $wmiClass) {
$menu->addChild($wmiClass['nmClassName'], array(
'route' => 'cacic_relatorio_hardware_wmi',
'routeParameters' => array(
'classe' => $wmiClass['nmClassName']
)
));
}
return $menu;
}
}