Ejemplo n.º 1
0
 /**
  * 删除权限组
  *
  * @param int $group_id
  */
 public function action_delete($group_id = 0)
 {
     $orm_group = new ORM_Admin_MemberGroup_Finder();
     if (!$group_id > 0) {
         $this->message('缺少参数', -1);
     }
     $group = $orm_group->get_by_id($group_id);
     if (!$group) {
         $this->message('指定的权限组不存在,可能已被删除', -1);
         $group = new ORM_Admin_MemberGroup_Data();
     }
     if (!$this->session()->member()->perm()->is_own('administrator.delete_group')) {
         $this->message('您不具备删除该权限组的权限', -1);
     }
     if ($group->project != Core::$project && !$this->session()->member()->perm()->is_super_perm()) {
         # 夸项目操作,只有超管才可以执行
         $this->message('您不可通过此URL执行本次操作', -1);
     }
     if ($group->members()->count()) {
         $this->message('此权限组含有成员,无法删除。请先清空该权限组成员后再删除', -1);
     }
     $status = $group->delete();
     if ($status) {
         $this->message('删除成功。', 1);
     } else {
         $this->message('未删除', 0);
     }
 }