diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index 817c25aa4..7b87d5a74 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -140,12 +140,30 @@ class memberController extends member } // 모듈 권한 확인 - $grant = $oModuleModel->getGrant($oModuleModel->getModuleInfoByModuleSrl($oDocument->get('module_srl')), $logged_info); + $module_info = $oModuleModel->getModuleInfoByModuleSrl($oDocument->get('module_srl')); + $grant = $oModuleModel->getGrant($module_info, $logged_info); + if(!$grant->access) { return new Object(-1, 'msg_not_permitted'); } + // 게시판 모듈에서 글 목록 보기 권한이 없으면 스크랩 제한 + if($module_info->module === 'board' && isset($grant->list) && !$grant->list) + { + return new Object(-1, 'msg_not_permitted'); + } + + // 게시판 모듈에서 상담 기능 사용 시 권한이 없는 게시물(타인의 게시물) 스크랩 제한 + if($module_info->module === 'board' && + $module_info->consultation === 'Y' && + isset($grant->consultation_read) && + !$grant->consultation_read && !$oDocument->isGranted() + ) + { + return new Object(-1, 'msg_not_permitted'); + } + // Variables $args = new stdClass(); $args->document_srl = $document_srl;