Esempio n. 1
0
 public function editPermissionAction()
 {
     $id = $this->getg('id', 0);
     if (empty($id)) {
         exit;
     }
     $rbac = new Rbac_Core();
     if ($this->getRequest()->isPost()) {
         $rp = $this->getp("rp");
         $rbac->assign($id, $rp, time());
         Tools_help::setSession('Message', '修改成功!');
         $this->redirect(Tools_help::url('/backend/roles/editPermission', array('id' => $id)));
         exit;
     }
     $rp = $rbac->getRolePermissions($id);
     $rpArr = array();
     foreach ($rp as $value) {
         $rpArr[$value['pid']] = $value['pid'];
     }
     unset($rp);
     $permissions = $rbac->getPermissions();
     $permissionArr = array();
     if ($permissions) {
         foreach ($permissions as $item) {
             if ($item['ismenu'] == -1) {
                 $permissionArr[$item['id']] = $item;
             } else {
                 $permissionArr[$item['fid']]['sub'][] = $item;
             }
         }
     }
     $this->_view->assign('result', $permissionArr);
     $this->_view->assign('rpArr', $rpArr);
     $this->_view->assign('id', $id);
     $this->_view->assign("pageTitle", '赋权限');
 }