Completed
Pull Request — develop (#189)
by Serhii
04:07 queued 02:03
created

EmployeeGroupAdmin   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 69
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 6

Importance

Changes 0
Metric Value
wmc 5
lcom 0
cbo 6
dl 0
loc 69
rs 10
c 0
b 0
f 0

5 Methods

Rating   Name   Duplication   Size   Complexity  
A configureShowFields() 0 6 1
A configureFormFields() 0 6 1
A configureListFields() 0 13 1
A configureDatagridFilters() 0 6 1
A configureRoutes() 0 4 1
1
<?php
2
3
namespace App\Admin;
4
5
use App\Entity\EmployeeGroup;
6
use Sonata\AdminBundle\Admin\AbstractAdmin;
7
use Sonata\AdminBundle\Datagrid\ListMapper;
8
use Sonata\AdminBundle\Datagrid\DatagridMapper;
9
use Sonata\AdminBundle\Form\FormMapper;
10
use Sonata\AdminBundle\Route\RouteCollection;
11
use Sonata\AdminBundle\Show\ShowMapper;
12
13
class EmployeeGroupAdmin extends AbstractAdmin
14
{
15
    protected $baseRouteName = EmployeeGroup::class;
16
    protected $baseRoutePattern = 'EmployeeGroup';
17
    protected $datagridValues = [
18
        '_sort_order' => 'ASC',
19
        '_sort_by'    => 'position',
20
    ];
21
22
    /**
23
     * @param \Sonata\AdminBundle\Show\ShowMapper $showMapper
24
     *
25
     * @return void
26
     */
27
    protected function configureShowFields(ShowMapper $showMapper)
28
    {
29
        $showMapper
30
            ->add('title')
31
        ;
32
    }
33
34
    /**
35
     * @param \Sonata\AdminBundle\Form\FormMapper $formMapper
36
     *
37
     * @return void
38
     */
39
    protected function configureFormFields(FormMapper $formMapper)
40
    {
41
        $formMapper
42
            ->add('title')
43
        ;
44
    }
45
46
    /**
47
     * @param \Sonata\AdminBundle\Datagrid\ListMapper $listMapper
48
     *
49
     * @return void
50
     */
51
    protected function configureListFields(ListMapper $listMapper)
52
    {
53
        $listMapper
54
            ->addIdentifier('title')
55
            ->add('_action', null, [
56
                'actions' => [
57
                    'move' => [
58
                        'template' => '@PixSortableBehavior/Default/_sort.html.twig'
59
                    ],
60
                ],
61
            ])
62
        ;
63
    }
64
65
    /**
66
     * @param \Sonata\AdminBundle\Datagrid\DatagridMapper $datagridMapper
67
     *
68
     * @return void
69
     */
70
    protected function configureDatagridFilters(DatagridMapper $datagridMapper)
71
    {
72
        $datagridMapper
73
            ->add('title')
74
        ;
75
    }
76
77
    protected function configureRoutes(RouteCollection $collection)
78
    {
79
        $collection->add('move', $this->getRouterIdParameter().'/move/{position}');
80
    }
81
}
82