dedecms 5.7版本 有管理员权限的bug问题。
即,当你在管理组中,设置好了审核授权文档权限,同时又设置了审核自己发布文档的权限时,前一个设置就无效了。
同时,如果设置了审核全部文档权限,又有效。
当我使用默认频道管理员时,就会发现,别人投稿的内容,看不到,原因就是上面我所说的。
解决办法1:如果你要审核别人投的文档,但仅限自己管理的栏目时,请在管理组中将审核自己发布文档、列出我发布的文档、XXX我发布的文档等等这些涉及自己发布的权限,取消掉。就OK了。
2:修改源代码,使权限符合层次关系,即,从上到下,越来越小,从下向上权限越大。
源文档:管理目录中的 content_list.php
修改前部分中的
//栏目浏览许可
$userCatalogSql = '';
if(TestPurview('a_List'))
{
;
}
else if(TestPurview('a_AccList'))
{
if($cid==0 && $cfg_admin_channel == 'array')
{
$admin_catalog = join(',', $admin_catalogs);
$userCatalogSql = " arc.typeid IN($admin_catalog) ";
}
else
{
CheckCatalog($cid, '你无权浏览非指定栏目的内容!');
}
if(TestPurview('a_MyList')) $mid = $cuserLogin->getUserID();
}
修改成:
//栏目浏览许可
$userCatalogSql = '';
if(TestPurview('a_List'))
{
;
}
else if(TestPurview('a_AccList'))
{
if($cid==0 && $cfg_admin_channel == 'array')
{
$admin_catalog = join(',', $admin_catalogs);
$userCatalogSql = " arc.typeid IN($admin_catalog) ";
}
else
{
CheckCatalog($cid, '你无权浏览非指定栏目的内容!');
}
}else if(TestPurview('a_MyList'))
{
if($cid==0 && $cfg_admin_channel == 'array')
{
$admin_catalog = join(',', $admin_catalogs);
$userCatalogSql = " arc.typeid IN($admin_catalog) ";
}
else
{
CheckCatalog($cid, '你无权浏览非指定栏目的内容!');
}
$mid = $cuserLogin->getUserID();
}
即可解决问题。