특정 회원용 게시판을 따로 만들어주어서 그곳에서 그회원만 글을 사용하게 만들고싶습니다.
쓰기조건중에서 그룹형태가아닌 특정회원만 가능하게 하려면 어떻게 해야할까요?
특정게시판의 mid값이랑 회원의 id의 값이 같을때만 쓰기버튼이 보이게 하는방법(?)으로 생각은 해두었는데 이방법도 가능할까요?
게시판스킨은 스케치북 스킨을 사용중입니다.
mospia
Lv. 4
특정 회원용 게시판을 따로 만들어주어서 그곳에서 그회원만 글을 사용하게 만들고싶습니다.
쓰기조건중에서 그룹형태가아닌 특정회원만 가능하게 하려면 어떻게 해야할까요?
특정게시판의 mid값이랑 회원의 id의 값이 같을때만 쓰기버튼이 보이게 하는방법(?)으로 생각은 해두었는데 이방법도 가능할까요?
게시판스킨은 스케치북 스킨을 사용중입니다.
댓글 35
https://xe1.xpressengine.com/index.php?mid=download&package_id=22753314
관리자는 글 수정 삭제가 마음대로 가능한데 어차피 자기만 쓰는 게시판이니 그 게시판에만 관리자 권한을 주어도 문제 없어보입니다.
스킨게시판의 list.html파일중에
{@
$logged_info = Context::get('logged_info');
}
<block cond="$grant->manager || $logged_info->user_id='test'">
<a cond="!$mi->write_btm_btn || ($mi->write_btm_btn!='N' && $grant->write_document)" class="btn_img" href="{getUrl('act','dispBoardWrite','document_srl','')}"><i class="ico_16px write"></i> {$lang->cmd_write}</a>
</block>
로 변경하여서 test계정과 manager 권한자에게만 사용가능하게 변경은 하였습니다.
게시판 mid값에 따라 변경하는것만 찾으면 되는데 으...ㅋ;;
웹쪽에 조금만 아는 사람이 재미삼아 글쓰기 url를 일부러 공개하고 다니면 버튼을 누르지 않고 직접 글쓰기 주소를 주소창에 넣고 글을 쓰고 하는 사람이 생겨날거에요.
글쓰기 가능하게 해줄 사람을 그냥 게시판 관리자로 지정하는게 좋아보입니다.
그냥 관리자로 지정하라는 의견을 따르시는게 제일 좋아보이는데요.
권한자체를 한그룹에 부여하고 그 회원만 쓰기버튼만 보이게하면 될거라생각해서 ..
게시판관리자로 지정하면 따로 그룹에게 권한을 주지 않아도 됩니다.
게시판 설정에 관리자 지정하는 곳에 해당 회원 아이디(이메일)을 입력하면 그 게시판 관리자가 됩니다.
그러면 해당 회원만 그 게시판에 글쓰기가 가능하고 나머지는 글을 못쓰게 되는거죠.
이부분을 최고관리자만 봐이게 만들면될거같기도하네요
그룹을 너무 많이 만들게 되니 그룹으로 권한을 부여하는 것 보다 회원 개개인을 개인 게시판의 관리자로 지정하는게 좋다는 의견 이십니다.
좀 과장되게 표현해서 게시판 마다 권한을 부여하는데 그룹이 몇백개가 나열되면 곤란한건 사실이니까요.
게시판 관리권한을 준 사람이 더 숫자가 적을테니 게시판관리 버튼 같은 것만 말씀하신대로 처리하는게 더 좋은 방법일 것 입니다.
뭐 솔직히 게시판 관리 들어가서 뭘 해도 자기 게시판 망가지는 일 밖에 없으니 다른 사람에게 피해는 못주죠.
게시판 설정 진입 막으려면 board모듈 tpl에서 board_setup_basic에 <block cond="$logged_info->is_admin">로 전부 감싸면 들어가도 백지로 뜹니다.
게시판 스킨에서도 설정버튼에 cond="$logged_info->is_admin" 하시면 됩니다.
<block cond="$logged_info->is_admin">
둘다 넣어도 게시판관리권한자에게는 뜨는이유가멀까요 ㅜ...
= -> ==
대입하면...큰나요...
<block cond="$logged_info->is_admin">로 설정하면 권한자였던 사람들은 다보이게되네요
<block cond="$logged_info->is_admin === 'Y'">
$logged_info->is_admin=='Y'
이게 안되나요??
$logged_info->is_admin == 'Y'; // 관리자 권한이 'Y'값인지를 확인한다.
$looged_info->is_admin === 'Y'; // 관리자권한이 'Y'값인지를 더 정확하게 확인한다. (이때는 ''사이에 있는 내용이 string이거나 integer 값등등 모든 타입마져도 === 좌우에 있는 값들이 동일해야합니다.)
index.php에서
맨 위에
$allow_users = array( "uid"=>4, "mid"=>"board");
if($_POST["mid"] && $_POST["user_id"] && $_POST["act"])
{
if($allow_users["uid"] != $_POST["user_id"] || $allow_users["mid"] != $_POST["mid"])
{
header("location:/");
exit();
}
}
하고 숨기면 되는데 음 글쎄요 딱히 추천하고 싶진 않네요
권한 주실거면 그냥 쓰기버튼에 cond="$grant->write" 하시면 됨
대신 게시판별로 권한을 유저마다 하나하나 부여하셔야 함 ㅎ..