Config::userPermissionTableName()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 0
dl 0
loc 3
ccs 2
cts 2
cp 1
crap 1
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
/**
6
 * @author enea dhack <[email protected]>
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
namespace Enea\Authorization\Support;
13
14
use Enea\Authorization\Middleware\PermissionAuthorizerMiddleware;
15
use Enea\Authorization\Middleware\RoleAuthorizerMiddleware;
16
use Enea\Authorization\Models\Permission;
17
use Enea\Authorization\Models\Role;
18
19
class Config
20
{
21 101
    public static function permissionModel(): string
22
    {
23 101
        return self::get('models.permission', Permission::class);
24
    }
25
26 101
    public static function roleModel(): string
27
    {
28 101
        return self::get('models.role', Role::class);
29
    }
30
31 101
    public static function userPermissionTableName(): string
32
    {
33 101
        return self::get('tables.user_permissions', 'user_permissions');
34
    }
35
36 101
    public static function userRoleTableName(): string
37
    {
38 101
        return self::get('tables.user_roles', 'user_roles');
39
    }
40
41 101
    public static function permissionTableName(): string
42
    {
43 101
        return self::get('tables.permission', 'permissions');
44
    }
45
46 101
    public static function roleTableName(): string
47
    {
48 101
        return self::get('tables.role', 'roles');
49
    }
50
51 101
    public static function rolePermissionTableName(): string
52
    {
53 101
        return self::get('tables.role_has_many_permissions', 'role_permissions');
54
    }
55
56 101
    public static function getDriver(): string
57
    {
58 101
        return self::get('driver', Drivers::CACHE);
59
    }
60
61 101
    public static function getPermissionMiddlewareAlias(): string
62
    {
63 101
        return self::get('middleware.permissions.alias', 'authenticated.can');
64
    }
65
66 101
    public static function getPermissionMiddlewareClass(): string
67
    {
68 101
        return self::get('middleware.permissions.class', PermissionAuthorizerMiddleware::class);
69
    }
70
71 101
    public static function getRoleMiddlewareAlias(): string
72
    {
73 101
        return self::get('middleware.roles.alias', 'authenticated.is');
74
    }
75
76 101
    public static function getRoleMiddlewareClass(): string
77
    {
78 101
        return self::get('middleware.roles.class', RoleAuthorizerMiddleware::class);
79
    }
80
81 101
    private static function get(string $key, string $default = ''): string
82
    {
83 101
        return (string) config("authorization.{$key}", $default);
84
    }
85
}
86