实现思想:将已有的模块和权限列表中对比实现,其实有更优的方案,根据具体的需求而定吧,成功案例请见http://liezy.com
1.控制器部分
/*如果验证模式为2即时验证,通过rbac去即时获得用户的权限列表*/
//import('@.ORG.RBACFRONT');
//$accessList = RBAC::getAccessList($_SESSION[C('MEMBER_AUTH_KEY')]);
/*验证模式为1使用,登录验证模式,登录后保存的权限访问列表*/
$accessList = $_SESSION['_ACCESS_LIST'];
//已有的模块
$module=array('BeginNego','Room','AgreeTpl','Agreement','Contact','EnterInfo','RoleFront','WebHelp');
foreach($module as $v){
if(isset($accessList[strtoupper($v)][INDEX])) {
$this->assign($v,$v);
}
//免验证管理员直接输出所有的模块
if(isset($_SESSION['administrator'])){
$this->assign($v,$v);
}
}
2.模板展示部分
<if condition="!empty($WebHelp)">
<ul>帮助文档</ul>
</if>
<div>
<notempty name="WebHelp">
<a class="l-link" href="javascript:f_addTab('listpage8','网站使用说明','{:U('Home-WebHelp/index')}')">网站使用说明</a>
</notempty>
</div>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。