我正在创建一个用于管理潜在客户的组件[从前端提交潜在客户或客户潜在客户],在这个组件中我想实现这样的 ACL。
我的客户要求...
SuperAdmin
|— Manager
|—|— Administrator
考虑Administrator
下Manager
。请不要与joomla默认ACL比较。
所有线索都显示给超级管理员。超级管理员会将线索分配给其他用户。
如果登录的用户是一个Manager
,他可以看到所有的用户都领导着那些在Manager
组和Administrator
组下的人。
如果登录用户是a Administrator
,他没有权限查看其他线索,因为管理员没有任何子组,它是最后一个组。
我正在使用以下查询
$query->select( 'c.id as groupid,c.title AS group_name');
$query->from('#__usergroups AS c');
$query->join('LEFT', '#__usergroups AS s ON (s.lft <= c.lft AND s.rgt >= c.rgt) OR (s.lft > c.lft AND s.rgt < c.rgt)' );
$query->where('s.id = "'.$UG.'"');
$query->order('c.lft');
$db->setquery($query);
$gids = $db->loadResultArray();
$gids = implode(",",$gids);
$UG
=> 登录用户 groupid。
如果登录用户是Manager
,$UG
是6
输出
groupid group_name
1 Public
6 Manager
7 Administrator
如果登录用户是Administrator
,$UG
是。7
它也返回相同的答案....我希望输出为
如果已Manager
登录
输出将是
groupid group_name
6 Manager
7 Administrator
如果已Administrator
登录
输出将是
groupid group_name
7 Administrator
或为空
任何人请帮助我....