蝉知企业内容管理系统的单页列表页面无权限问题

2016-03-04 16:41:00
hainuo
原创 1219
摘要:蝉知 单页列表没有权限问题
1.不显示 只需要 修改一处即可`/system/module/page/control.php 的index方法`将`$pages = $this->loadModel('article')->getList('page', 0, $orderBy = null);`改为`$pages = $this->loadModel('article')->getList('page', 0, $orderBy = 'editedDate'); ` 即可 不显示是因为sql错误,orderby为空2. 权限问题出在这里`/system/module/common/model. php`的` if(!commonModel::hasPriv($module, $method)) $this->deny($module, $method);`进入`hasPriv()`方法 发现是这一句在搞怪 `if(!commonModel::isAvailable($module)) return false;`进入`isAvailable()`方法后发现问题出来依赖模块上代码如下```/* Check whether dependence modules is available. */if(!empty($config->dependence->$module) ){var_dump($config->dependence->$module); // $module is page dump is contributionforeach($config->dependence->$module as $dependModule){var_dump($config->site->modules);//dump is article,product,message,search,statif(!sset($config->site->modules) or strpos($config->site->modules, $dependModule) === false) return false;}}```这里的判断`strpos($config->site->modules, $dependModule) === false ` 在`module` 为`page`时 恒为`true` 所以 返回错误 就到值`deny()`方法被执行了。我的处理方法噶、这里我稍微变动了下 将` if(!sset($config->site->modules) or strpos($config->site->modules, $dependModule) === false) return false` 改为`if(!sset($config->site->modules) and strpos($config->site->modules, $dependModule) === false) return false; `改动为 `or` >>>` and`这个时候page页面正常显示 (url: http://blog.hainuo.info/page/ )贴出来希望 蝉知的开发人员看看是否会出现其他问题本修改基于蝉知 5.1 官方 zip包,未做任何改动
发表评论
陆 乘 伍 =
评论通过审核后显示。