Esempio n. 1
0
 public function update($role_id)
 {
     $role_id = $role_id + 0;
     $model = new \Model\RoleModel();
     if (IS_POST) {
         if ($data = $model->create(I('post.'), 2)) {
             if ($model->save($data) !== false) {
                 $this->success('修改角色成功', U('showlist'), 1);
                 exit;
             }
             $this->error('修改角色失败');
         }
         $this->error($model->getError());
     }
     //获取所有的权限
     $priv_model = new \Model\PrivilegeModel();
     $priv_list = $priv_model->getTree();
     $this->assign('priv_list', $priv_list);
     //获取要修改角色的信息
     $role_info = $model->find($role_id);
     $this->assign('role_info', $role_info);
     $priv_info = M('RolePrivilege')->where("role_id={$role_id}")->select();
     $this->assign('priv_info', $priv_info);
     $this->display();
 }
 public function update($priv_id)
 {
     $priv_id = $priv_id + 0;
     $model = new \Model\PrivilegeModel();
     if (IS_POST) {
         if ($data = $model->create(I('post.'), 2)) {
             //判断提交的上级权限id是否属于自身和其子权限,防止恶意修改订单
             $parent_id = (int) I('post.parent_id');
             $ids = $model->getChild($priv_id);
             $ids[] = $priv_id;
             if (in_array($parent_id, $ids)) {
                 $this->error('不能将自身或者自身子权限当做上级权限');
             }
             if ($model->save($data) !== false) {
                 $this->success('修改权限成功', U('showlist'), 1);
                 exit;
             }
             $this->error('修改权限失败');
         }
         $this->error($model->getError());
     }
     //取出要修改数据的信息
     $info = $model->find($priv_id);
     $this->assign('info', $info);
     //获取格式化过的权限列表
     $priv_list = $model->getTree();
     $this->assign('priv_list', $priv_list);
     //获取自身和子权限的id,在修改页面不显示出来,防止恶意修改
     $ids = $model->getChild($priv_id);
     $ids[] = $priv_id;
     $this->assign('ids', $ids);
     $this->display();
 }