SiteConfigPagePermissions   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 47
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 4
c 1
b 0
f 0
lcom 0
cbo 1
dl 0
loc 47
rs 10

4 Methods

Rating   Name   Duplication   Size   Complexity  
A canEdit() 0 4 1
A canView() 0 4 1
A canDelete() 0 5 1
A canCreate() 0 4 1
1
<?php
2
3
namespace SilverStripe\SiteConfig;
4
5
use SilverStripe\Security\Member;
6
use SilverStripe\Security\DefaultPermissionChecker;
7
8
/**
9
 * Root permission provider for pages in the SiteTree root
10
 */
11
class SiteConfigPagePermissions implements DefaultPermissionChecker
12
{
13
    /**
14
     * Can root be edited?
15
     *
16
     * @param Member $member
17
     * @return bool
18
     */
19
    public function canEdit(Member $member = null)
20
    {
21
        return SiteConfig::current_site_config()->canEditPages($member);
22
    }
23
24
    /**
25
     * Can root be viewed?
26
     *
27
     * @param Member $member
28
     * @return bool
29
     */
30
    public function canView(Member $member = null)
31
    {
32
        return SiteConfig::current_site_config()->canViewPages($member);
33
    }
34
35
    /**
36
     * Can root be deleted?
37
     *
38
     * @param Member $member
39
     * @return bool
40
     */
41
    public function canDelete(Member $member = null)
42
    {
43
        // Same as canEdit
44
        return $this->canEdit($member);
45
    }
46
47
    /**
48
     * Can root objects be created?
49
     *
50
     * @param Member $member
51
     * @return bool
52
     */
53
    public function canCreate(Member $member = null)
54
    {
55
        return SiteConfig::current_site_config()->canCreateTopLevel();
56
    }
57
}
58