summaryrefslogtreecommitdiffstats
path: root/modules-available/permissionmanager/inc/permissionutil.inc.php
diff options
context:
space:
mode:
Diffstat (limited to 'modules-available/permissionmanager/inc/permissionutil.inc.php')
-rw-r--r--modules-available/permissionmanager/inc/permissionutil.inc.php10
1 files changed, 5 insertions, 5 deletions
diff --git a/modules-available/permissionmanager/inc/permissionutil.inc.php b/modules-available/permissionmanager/inc/permissionutil.inc.php
index 5c3eef58..17257eec 100644
--- a/modules-available/permissionmanager/inc/permissionutil.inc.php
+++ b/modules-available/permissionmanager/inc/permissionutil.inc.php
@@ -11,7 +11,7 @@ class PermissionUtil
}
$res = Database::simpleQuery("SELECT role_x_permission.permissionid as 'permissionid',
- role_x_location.locid as 'locationid'
+ role_x_location.locationid as 'locationid'
FROM user_x_role
INNER JOIN role_x_permission ON user_x_role.roleid = role_x_permission.roleid
LEFT JOIN role_x_location ON role_x_permission.roleid = role_x_location.roleid
@@ -29,11 +29,11 @@ class PermissionUtil
public static function getAllowedLocations($userid, $permissionid) {
- $res = Database::simpleQuery("SELECT role_x_permission.permissionid as 'permissionid',
- role_x_location.locid as 'locationid'
+ $res = Database::simpleQuery("SELECT role_x_permission.permissionid, rxl.locationid
FROM user_x_role
INNER JOIN role_x_permission ON user_x_role.roleid = role_x_permission.roleid
- LEFT JOIN role_x_location ON role_x_permission.roleid = role_x_location.roleid
+ LEFT JOIN (SELECT roleid, COALESCE(locationid, 0) AS locationid FROM role_x_location) rxl
+ ON role_x_permission.roleid = rxl.roleid
WHERE user_x_role.userid = :userid", array("userid" => $userid));
$allowedLocations = array();
@@ -53,7 +53,7 @@ class PermissionUtil
return $allowedLocations;
}
- private static function getSublocations($tree, $locations) {
+ public static function getSublocations($tree, $locations) {
$result = array_flip($locations);
foreach ($tree as $location) {
if (array_key_exists("children", $location)) {