/var/www/hkosl.com/demo_google/application/vendor/owasp/phprbac/PhpRbac/src/PhpRbac/Rbac.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
namespace PhpRbac;

use \
Jf;

/**
 * @file
 * Provides NIST Level 2 Standard Role Based Access Control functionality
 *
 * @defgroup phprbac Rbac Functionality
 * @{
 * Documentation for all PhpRbac related functionality.
 */
class Rbac
{
    public function 
__construct($unit_test ''$databaseConfig = array())
    {
        if ((string)
$unit_test === 'unit_test') {
            require_once 
dirname(dirname(__DIR__)) . '/tests/database/database.config';
        } elseif (!empty(
$databaseConfig)) {
            
extract($databaseConfig);
        } else {
            require_once 
dirname(dirname(__DIR__)) . '/database/database.config';
        }

        require_once 
'core/lib/Jf.php';

        
$this->Permissions Jf::$Rbac->Permissions;
        
$this->Roles Jf::$Rbac->Roles;
        
$this->Users Jf::$Rbac->Users;
    }

    public function 
assign($role$permission)
    {
        return 
Jf::$Rbac->assign($role$permission);
    }

    public function 
check($permission$user_id)
    {
        return 
Jf::$Rbac->check($permission$user_id);
    }

    public function 
enforce($permission$user_id)
    {
        return 
Jf::$Rbac->enforce($permission$user_id);
    }

    public function 
reset($ensure false)
    {
        return 
Jf::$Rbac->reset($ensure);
    }

    public function 
tablePrefix()
    {
        return 
Jf::$Rbac->tablePrefix();
    }
}

/** @} */ // End group phprbac */