Completed
Push — master ( c18c1e...ad6735 )
by ARCANEDEV
12s
created

DashboardPolicy   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 40
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 2
dl 0
loc 40
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A getPolicies() 0 6 1
A statsPolicy() 0 4 1
1
<?php namespace Arcanesoft\Auth\Policies;
2
3
use Arcanesoft\Contracts\Auth\Models\User;
4
5
/**
6
 * Class     DashboardPolicy
7
 *
8
 * @package  Arcanesoft\Auth\Policies
9
 * @author   ARCANEDEV <[email protected]>
10
 */
11
class DashboardPolicy extends Policy
12
{
13
    /* ------------------------------------------------------------------------------------------------
14
     |  Constants
15
     | ------------------------------------------------------------------------------------------------
16
     */
17
    const PERMISSION_STATS = 'auth.dashboard.stats';
18
19
    /* ------------------------------------------------------------------------------------------------
20
     |  Getters and Setters
21
     | ------------------------------------------------------------------------------------------------
22
     */
23
    /**
24
     * Get the policies.
25
     *
26
     * @return array
27
     */
28
    public static function getPolicies()
29
    {
30
        return [
31
            'statsPolicy' => static::PERMISSION_STATS,
32
        ];
33
    }
34
35
    /* ------------------------------------------------------------------------------------------------
36
     |  Policies Functions
37
     | ------------------------------------------------------------------------------------------------
38
     */
39
    /**
40
     * Allow to access all the auth stats.
41
     *
42
     * @param  \Arcanesoft\Contracts\Auth\Models\User  $user
43
     *
44
     * @return bool
45
     */
46
    public function statsPolicy(User $user)
47
    {
48
        return $user->may(static::PERMISSION_STATS);
49
    }
50
}
51