mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-05-02 08:42:15 +09:00
Add option to disable admin content protection
최고관리자의 글을 게시판 관리자가 수정/삭제하지 못하도록 하는 기능은 게시판을 위키 등 협업 용도로 사용하는 경우 불편을 유발할 수 있으므로 옵션으로 켜고 끌 수 있도록 합니다. 기본값은 수정/삭제 금지입니다.
This commit is contained in:
parent
9d6e54f2f6
commit
3925c24487
9 changed files with 95 additions and 36 deletions
|
|
@ -863,10 +863,13 @@ class boardView extends board
|
|||
}
|
||||
}
|
||||
|
||||
$member_info = MemberModel::getMemberInfo($oDocument->get('member_srl'));
|
||||
if($member_info->is_admin == 'Y' && $this->user->is_admin != 'Y')
|
||||
if ($this->module_info->protect_admin_content_update !== 'N')
|
||||
{
|
||||
throw new Rhymix\Framework\Exception('msg_admin_document_no_modify');
|
||||
$member_info = MemberModel::getMemberInfo($oDocument->get('member_srl'));
|
||||
if($member_info->is_admin == 'Y' && $this->user->is_admin != 'Y')
|
||||
{
|
||||
throw new Rhymix\Framework\Exception('msg_admin_document_no_modify');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1003,6 +1006,15 @@ class boardView extends board
|
|||
}
|
||||
}
|
||||
|
||||
if ($this->module_info->protect_admin_content_delete !== 'N')
|
||||
{
|
||||
$member_info = MemberModel::getMemberInfo($oDocument->get('member_srl'));
|
||||
if($member_info->is_admin == 'Y' && $this->user->is_admin != 'Y')
|
||||
{
|
||||
throw new Rhymix\Framework\Exception('document.msg_document_is_admin_not_permitted');
|
||||
}
|
||||
}
|
||||
|
||||
Context::set('oDocument',$oDocument);
|
||||
|
||||
/**
|
||||
|
|
@ -1120,7 +1132,6 @@ class boardView extends board
|
|||
**/
|
||||
function dispBoardModifyComment()
|
||||
{
|
||||
$logged_info = Context::get('logged_info');
|
||||
// check grant
|
||||
if(!$this->grant->write_comment)
|
||||
{
|
||||
|
|
@ -1170,12 +1181,16 @@ class boardView extends board
|
|||
}
|
||||
}
|
||||
|
||||
$member_info = MemberModel::getMemberInfo($oComment->member_srl);
|
||||
if($member_info->is_admin == 'Y' && $logged_info->is_admin != 'Y')
|
||||
$logged_info = Context::get('logged_info');
|
||||
if ($this->module_info->protect_admin_content_update !== 'N' && $logged_info->is_admin !== 'Y' && $logged_info->member_srl !== $oComment->member_srl)
|
||||
{
|
||||
throw new Rhymix\Framework\Exception('msg_admin_comment_no_modify');
|
||||
$member_info = MemberModel::getMemberInfo($oComment->member_srl);
|
||||
if($member_info->is_admin === 'Y')
|
||||
{
|
||||
throw new Rhymix\Framework\Exception('msg_admin_comment_no_modify');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// setup the comment variables on context
|
||||
Context::set('oSourceComment', CommentModel::getComment());
|
||||
Context::set('oComment', $oComment);
|
||||
|
|
@ -1227,6 +1242,16 @@ class boardView extends board
|
|||
}
|
||||
}
|
||||
|
||||
$logged_info = Context::get('logged_info');
|
||||
if ($this->module_info->protect_admin_content_delete !== 'N' && $logged_info->is_admin !== 'Y' && $logged_info->member_srl !== $oComment->member_srl)
|
||||
{
|
||||
$member_info = MemberModel::getMemberInfo($oComment->member_srl);
|
||||
if($member_info->is_admin === 'Y')
|
||||
{
|
||||
throw new Rhymix\Framework\Exception('msg_admin_comment_no_delete');
|
||||
}
|
||||
}
|
||||
|
||||
// if the comment is not existed, then back to the board content page
|
||||
if(!$oComment->isExists() )
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue