织梦后台系统用户管理授权栏目BUG修复

织梦CMS官方程序中后台的系统用户管理,在授权栏目选项中,只列出了最高二级栏目,我们来修正一下,让它支持无限级授权栏目

1、打开 /dede/sys_admin_user_add.php 找到,最后一行的

include DedeInclude('templets/sys_admin_user_add.htm');

在它上面加入

function getalltype($reid = 0, $step = '', $typeids = array())
{
    global $dsql, $result;
    $dsql->SetQuery("SELECT reid,id,typename FROM `dede_arctype` WHERE reid='$reid' AND (ispart=0 OR ispart=1) ORDER BY sortrank");
    $dsql->Execute($reid);
    if ($dsql->GetTotalRow($reid) > 0) {
        while ($row = $dsql->GetArray($reid)) {
            $result .= "<option value='{$row['id']}' class='" . (empty($row['reid']) ? 'b' : 's') . "type'>{$step}{$row['typename']}</option>
";
            getalltype($row['id'], $step . "—", $typeids);
        }
    }
    return $result;
}
$typeOptions = getalltype(0, '', $typeids);

 

 

2、打开 /dede/sys_admin_user_edit.php 找到,最后一行的

include DedeInclude('templets/sys_admin_user_edit.htm');

在它上面加入

function getalltype($reid = 0, $step = '', $typeids = array())
{
    global $dsql, $result;
    $dsql->SetQuery("SELECT reid,id,typename FROM `dede_arctype` WHERE reid='$reid' AND (ispart=0 OR ispart=1) ORDER BY sortrank");
    $dsql->Execute($reid);
    if ($dsql->GetTotalRow($reid) > 0) {
        while ($row = $dsql->GetArray($reid)) {
            $result .= "<option value='{$row['id']}' class='" . (empty($row['reid']) ? 'b' : 's') . "type'" . (in_array($row['id'], $typeids) ? ' selected' : '') . ">{$step}{$row['typename']}</option>
";
            getalltype($row['id'], $step . "—", $typeids);
        }
    }
    return $result;
}
$typeOptions = getalltype(0, '', $typeids);

完成。


爱搜源码 » 织梦后台系统用户管理授权栏目BUG修复

发表评论

发表评论