diff --git a/modules/board/skins/default/comment.html b/modules/board/skins/default/comment.html index 5f9bd81ff..e5f34e5c4 100644 --- a/modules/board/skins/default/comment.html +++ b/modules/board/skins/default/comment.html @@ -34,9 +34,11 @@ - [{$lang->cmd_modify}] [{$lang->cmd_reply}] + + [{$lang->cmd_modify}] [{$lang->cmd_delete}] + diff --git a/modules/board/skins/default/view_document.html b/modules/board/skins/default/view_document.html index 606be6336..74783663b 100644 --- a/modules/board/skins/default/view_document.html +++ b/modules/board/skins/default/view_document.html @@ -91,8 +91,10 @@
[{$lang->cmd_list}] [{$lang->cmd_vote}] + [{$lang->cmd_modify}] [{$lang->cmd_delete}] +
diff --git a/modules/comment/comment.controller.php b/modules/comment/comment.controller.php index 9f80d7aa2..7d79c6ae4 100644 --- a/modules/comment/comment.controller.php +++ b/modules/comment/comment.controller.php @@ -90,7 +90,7 @@ $source_obj = $oCommentModel->getComment($obj->comment_srl); // 권한이 있는지 확인 - if(!$oCommentModel->isGranted($obj->comment_srl)) return new Object(-1, 'msg_not_permitted'); + if(!$source_obj->is_granted) return new Object(-1, 'msg_not_permitted'); $oDB = &DB::getInstance(); diff --git a/modules/comment/comment.model.php b/modules/comment/comment.model.php index 9a2602bbb..85d978529 100644 --- a/modules/comment/comment.model.php +++ b/modules/comment/comment.model.php @@ -36,11 +36,17 @@ * @brief 댓글 가져오기 **/ function getComment($comment_srl, $is_admin = false) { + // DB에서 가져옴 $oDB = &DB::getInstance(); $args->comment_srl = $comment_srl; $output = $oDB->executeQuery('comment.getComment', $args); - if($is_admin || $this->isGranted($comment_srl)) $output->data->is_granted = true; - return $output->data; + $comment = $output->data; + + // 로그인 사용자의 경우 로그인 정보를 일단 구해 놓음 + $logged_info = Context::get('logged_info'); + + if($is_admin || $this->isGranted($comment_srl) || $comment->member_srl == $logged_info->member_srl) $comment->is_granted = true; + return $comment; } /** @@ -86,11 +92,17 @@ $root = NULL; $list = NULL; + // 로그인 사용자의 경우 로그인 정보를 일단 구해 놓음 + $logged_info = Context::get('logged_info'); + for($i=$comment_count-1;$i>=0;$i--) { $comment_srl = $source_list[$i]->comment_srl; $parent_srl = $source_list[$i]->parent_srl; + $member_srl = $source_list[$i]->member_srl; if(!$comment_srl) continue; + if($is_admin || $this->isGranted($comment_srl) || $member_srl == $logged_info->member_srl) $source_list[$i]->is_granted = true; + $list[$comment_srl] = $source_list[$i]; if($parent_srl) { diff --git a/modules/document/document.model.php b/modules/document/document.model.php index b98e7b39c..db0122195 100644 --- a/modules/document/document.model.php +++ b/modules/document/document.model.php @@ -34,7 +34,7 @@ if($this->isGranted($document->document_srl) || $is_admin) { $document->is_granted = true; } elseif($document->member_srl) { - $oMemberModel = &getMemberModel('member'); + $oMemberModel = &getModel('member'); $member_srl = $oMemberModel->getLoggedMemberSrl(); if($member_srl && $member_srl ==$document->member_srl) $document->is_granted = true; }