SiteConfigExtension::updateCMSFields()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 14
Code Lines 11

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 11
c 1
b 0
f 0
dl 0
loc 14
rs 9.9
cc 1
nc 1
nop 1
1
<?php
2
3
namespace ilateral\SilverStripe\Notifier;
4
5
use SilverStripe\Core\ClassInfo;
6
use SilverStripe\Forms\FieldList;
7
use SilverStripe\ORM\DataExtension;
8
use SilverStripe\Forms\GridField\GridField;
9
use ilateral\SilverStripe\Notifier\Model\Notification;
10
use SilverStripe\Forms\GridField\GridFieldAddNewButton;
11
use Symbiote\GridFieldExtensions\GridFieldAddNewMultiClass;
12
use SilverStripe\Forms\GridField\GridFieldConfig_RecordEditor;
13
14
class SiteConfigExtension extends DataExtension
15
{
16
    public function updateCMSFields(FieldList $fields)
17
    {
18
        $config = GridFieldConfig_RecordEditor::create();
19
        $config
20
            ->removeComponentsByType(GridFieldAddNewButton::class)
21
            ->addComponent(new GridFieldAddNewMultiClass());
22
23
        $fields->addFieldToTab(
24
            'Root.Notifications',
25
            GridField::create(
26
                'Notifications',
27
                '',
28
                Notification::get(),
29
                $config
30
            )
31
        );
32
    }
33
}
34