public static function PermissionMatrix::createFromFile in Little helpers 7
File
- src/
c2c/ PermissionMatrix.php, line 30
Class
Namespace
Drupal\little_helpers\c2cCode
public static function createFromFile($file) {
$roles = array();
$matrix = array();
// This redefines $roles and $matrix.
include $file;
$sys_roles = array();
$roles_perms = array();
foreach (user_roles() as $rid => $role) {
$sys_roles[$role] = $rid;
$roles_perms[$rid] = array();
}
$index_to_rid = array();
foreach ($roles as $role) {
$index_to_rid[] = isset($sys_roles[$role]) ? $sys_roles[$role] : FALSE;
}
foreach ($matrix as $module => $perms) {
foreach ($perms as $perm => $vals) {
foreach ($vals as $col => $val) {
if (isset($val) && $index_to_rid[$col]) {
$roles_perms[$index_to_rid[$col]][$module][$perm] = $val;
}
}
}
}
return self::create(user_roles(), $roles_perms);
}