UserFieldsGridFieldConfig   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 17
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 7

Importance

Changes 0
Metric Value
wmc 1
lcom 0
cbo 7
dl 0
loc 17
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 14 1
1
<?php
2
/**
3
 * UserFieldsGridFieldConfig.php
4
 *
5
 * @author Bram de Leeuw
6
 * Date: 24/05/17
7
 */
8
9
namespace Broarm\EventTickets;
10
11
use ClassInfo;
12
use GridFieldAddNewButton;
13
use GridFieldAddNewInlineButton;
14
use GridFieldAddNewMultiClass;
15
use GridFieldDeleteAction;
16
use GridFieldDetailForm;
17
use GridFieldEditButton;
18
19
/**
20
 * Class UserFieldsGridFieldConfig
21
 */
22
class UserFieldsGridFieldConfig extends UserOptionSetFieldGridFieldConfig
23
{
24
    public function __construct()
25
    {
26
        parent::__construct();
27
        $availableClasses = ClassInfo::subclassesFor('Broarm\\EventTickets\\UserField');
28
        array_shift($availableClasses);
29
30
        $this->removeComponentsByType(new GridFieldAddNewInlineButton());
31
        $this->removeComponentsByType(new GridFieldDeleteAction());
32
        $this->addComponent(new GridFieldDetailForm());
33
        $this->addComponent(new GridFieldEditButton());
34
        $this->addComponent(new GridFieldDeleteAction());
35
        $this->addComponent($multiClassComponent = new GridFieldAddNewMultiClass());
36
        $multiClassComponent->setClasses($availableClasses);
37
    }
38
}