PHPCMS2008 では、各列に異なるロールに異なる権限を割り当てることができます。これは、ロールの一般的な開始点とは異なるため、列の権限継承の機能は実装されていません。しかし、実際に多くのカラムを作成して分散すると、サブカラムは親カラムを継承できず、1つずつ割り当てる必要があるため、分散作業が非常に面倒になります。
これに対して私達も対応策を考えました、つまり、本人に権限があるかどうかを判断しながら、自分に権限がない場合は上司全員を判断し、上司に権限がない場合には権限がありません。一人の上司が権限を持っている場合、それは権限を持っています。
具体的な変更点は以下の通りです:
admin ディレクトリの content.inc.php ファイルは 31 行目くらいです。このコードを見つけてください
$allow_manage = $priv_role->check('catid', $catid, 'manage');
$allow_add = $allow_manage ? true : $priv_role->check('catid', $catid, 'add');
$allow_check = $allow_manage ? true : $priv_role->check('catid', $catid, 'check');
$allow_view = $allow_manage true : $priv_role->check('catid', $catid, 'view');
----------上記は元のコードです------------------------------------- ----------------------------------
if(!$allow_manage){
$pcatid=get_brand_catid($catid);//これは親IDを取得する関数です。独自の再帰を作成できます。
$pcatid=$CATEGORY[$pcatid]['親id'];
$allow_manage = $priv_role->check('catid', $pcatid, 'manage');
$allow_add = $allow_manage ? true : $priv_role->check('catid', $pcatid, 'add');
$allow_check = $allow_manage ? true : $priv_role->check('catid', $pcatid, 'check');
$allow_view = $allow_manage ? true : $priv_role->check('catid', $pcatid, 'view');
}
-----上記は追加されたコードです-------------------------- -----------------------------------
$attachment = 新しい添付ファイル($mod, $catid);