그룹관리자 다중 권한 문제로 궁금한것이 있습니다.
본문
안녕하세요.
그누보드5를 이용하고 있으며, '그룹관리자에만' 다중으로 등록하고 싶습니다.
우선 그누보드5에 팁게시판을 모두 확인하였을때,
2가지 방향이 있는 것을 확인하였고, 소스를 적용해보았습니다.
(모두 extand 폴더에 새 php 파일을 만들어서 작업하였습니다.)
1. 권한을 하드코딩으로 주는 방법
아래 코드를 이용할 경우, 그룹관리자 다중등록은 됩니다.
하지만, 아래 코드는 관리자id1, 관리자id2에게 모두 최고관리자 권한을 부여하는데다가..
관리자 수정 시 일일히 코드에서 수정을 해야하는 번거로움으로 선택하고 싶지않은 방법입니다.
<?
if (!defined('_GNUBOARD_')) exit;
// 최고관리자
if ($member[mb_id] == '관리자id1') $is_admin = 'super';
if ($member[mb_id] == '관리자id2') $is_admin = 'super';
// 그룹관리자
if ($gr_id == '그룹id')
{
if ($member[mb_id] == '관리자id1') $is_admin = 'group';
if ($member[mb_id] == '관리자id2') $is_admin = 'group';
}
// 게시판관리자
if ($bo_table == '게시판id')
{
if ($member[mb_id] == '관리자id1') $is_admin = 'board';
if ($member[mb_id] == '관리자id2') $is_admin = 'board';
if ($is_admin == 'board') $board[bo_admin] = $member[mb_id];
}
?>
2. 소스 생성 후, 관리자 홈페이지 > 게시판 > 게시판그룹관리에서 관리자id를 콤마로 등록하는 방법(관리자id1,관리자id2)
제가 사용하고 싶은 소스와 일치합니다.
하지만, 아래소스를 이용한 경우에는 관리권한이 부여되지않습니다.
조건은 권한을 부여하고싶은 관리자id에게 관리권한을 통해 게시판그룹관리(쓰기,수정,삭제)권한을 부여해줬으며,
아래 소스 생성 후 관리자에서 2개 이상의 관리자 id를 입력해줬습니다.
<?
if($is_member && $group['gr_admin']){
$tmpArr= explode(',', $group['gr_admin']);
if( in_array( $member[mb_id], $tmpArr)){ $group['gr_admin']=$member[mb_id]; $is_admin = 'group'; }
}
?>
2번으로사용할 경우 잘못들어간 소스가 있는지
또는 잘못 설정된 조건이 있는지 궁금합니다.
알려주시면 감사하겠습니다.
답변 1
//그룹 관리자 여러명으로 정하기
if($is_member && $group['gr_admin']){
$tmpArr= explode(',', $group['gr_admin']);
if( in_array( $member['mb_id'], $tmpArr)){ $group['gr_admin']=$member['mb_id']; $is_admin = 'group'; }
}
설정하는 소스입니다.
그리고 한가지 더
저 소스만으로는 관리자 페이지에서 여러명 등록이 안됩니다. 왜냐면 글자수 제한이 걸려 있기 때문입니다. 그래서 관리자페이지의 그룹관리자 등록 input 태그의 글자수를 해제하셔야 할겁니다.
혹시 만약 위 방법으로도 안되신다면
g5_group_member에도 추가해주시면 될겁니다.
해결 잘 되시길 바랍니다.
!-->