summaryrefslogtreecommitdiffstats
path: root/frontends/php/include/perm.inc.php
diff options
context:
space:
mode:
Diffstat (limited to 'frontends/php/include/perm.inc.php')
-rw-r--r--frontends/php/include/perm.inc.php11
1 files changed, 5 insertions, 6 deletions
diff --git a/frontends/php/include/perm.inc.php b/frontends/php/include/perm.inc.php
index 0a8538dd..17299831 100644
--- a/frontends/php/include/perm.inc.php
+++ b/frontends/php/include/perm.inc.php
@@ -397,13 +397,12 @@ COpt::counter_up('perm');
return $result;
}
-function get_accessible_nodes_by_user(&$user_data,$perm,$perm_res=null){
- global $ZBX_LOCALNODEID;
+function get_accessible_nodes_by_user(&$user_data,$perm,$perm_res=null,$nodeid=null){
+ global $ZBX_LOCALNODEID, $ZBX_NODES_IDS;
- $nodeid = get_current_nodeid(true);
-//SDI($nodeid);
+ if(is_null($nodeid)) $nodeid = $ZBX_NODES_IDS;
if(is_null($perm_res)) $perm_res=PERM_RES_STRING_LINE;
-
+
$userid =& $user_data['userid'];
$user_type =& $user_data['type'];
if(!isset($userid)) fatal_error('Incorrect user data in "get_accessible_nodes_by_user"');
@@ -415,7 +414,7 @@ function get_accessible_nodes_by_user(&$user_data,$perm,$perm_res=null){
//COpt::counter_up('perm');
if(USER_TYPE_SUPER_ADMIN == $user_type){
- $nodes = DBselect('SELECT nodeid FROM nodes');
+ $nodes = DBselect('SELECT nodeid FROM nodes WHERE '.DBcondition('nodeid',$nodeid));
while($node = DBfetch($nodes)){
$node_data[$node['nodeid']] = $node;
$node_data[$node['nodeid']]['permission'] = PERM_READ_WRITE;