포럼
댓글 추천기능에 버그 수정한거 알려드립니다.
2011.01.27 02:22
현재 설치 버전 : 1.4.4.4 이구요...
[ 문제점 ]
1. 본문 말고 댓글을 추천/비추천할때 비추천 실패 메세지가 항상 추천 실패메시지로 나옴
[ 문제 재현 경로 ]
1. 댓글을 추천 혹은 비추천을 한다.
2. 해당 댓글을 다시 추천할 경우 '추천 하실 수 없습니다. ' 라고 나온다.
3. 해당 댓글을 다시 비추천할 경우 동일하게 '추천 하실 수 없습니다. ' 라고 나온다.
정상적으로는 비추천을 누를 경우 '비추천 하실 수 없습니다.' 라고 나와야 한다.
- 아래처럼 수정이후 정상적으로 추천/비추천 메세지가 나옵니다. 검토해보시고 다음 릴리즈시 반영해 주시기 바랍니다.
[ 파일 수정 위치 ]
modules/comment/comment.controller.php 의 updateVotedCount() 함수
function updateVotedCount($comment_srl, $point = 1) {
if($point > 0) $failed_voted = 'failed_voted';
else $failed_voted = 'failed_blamed';
// 세션 정보에 추천 정보가 있으면 중단
//if($_SESSION['voted_comment'][$comment_srl]) return new Object(-1, 'failed_voted'); // 원본
if($_SESSION['voted_comment'][$comment_srl]) return new Object(-1, $failed_voted); // 버그 수정
// 문서 원본을 가져옴
$oCommentModel = &getModel('comment');
$oComment = $oCommentModel->getComment($comment_srl, false, false);
// 글의 작성 ip와 현재 접속자의 ip가 동일하면 패스
if($oComment->get('ipaddress') == $_SERVER['REMOTE_ADDR']) {
$_SESSION['voted_comment'][$comment_srl] = true;
//return new Object(-1, 'failed_voted'); // 원본
return new Object(-1, $failed_voted); // 버그 수정
}
// comment의 작성자가 회원일때 조사
if($oComment->get('member_srl')) {
// member model 객체 생성
$oMemberModel = &getModel('member'+
');
$member_srl = $oMemberModel->getLoggedMemberSrl();
// 글쓴이와 현재 로그인 사용자의 정보가 일치하면 읽었다고 생각하고 세션 등록후 패스
if($member_srl && $member_srl == $oComment->get('member_srl')) {
$_SESSION['voted_comment'][$comment_srl] = true;
//return new Object(-1, 'failed_voted'); // 원본
return new Object(-1, $failed_voted); // 버그 수정
}
}
// 로그인 사용자이면 member_srl, 비회원이면 ipaddress로 판단
if($member_srl) {
$args->member_srl = $member_srl;
} else {
$args->ipaddress = $_SERVER['REMOTE_ADDR'];
}
$args->comment_srl = $comment_srl;
$output = executeQuery('comment.getCommentVotedLogInfo', $args);
// 로그 정보에 추천 로그가 있으면 세션 등록후 패스
if($output->data->count) {
$_SESSION['voted_comment'][$comment_srl] = true;
//return new Object(-1, 'failed_voted'); // 원본
return new Object(-1, $failed_voted); // 버그 수정
}
// 추천수 업데이트
if($point < 0)
{
$args->blamed_count = $oComment->get('blamed_count') + $point;
$output = executeQuery('comment.updateBlamedCount', $args);
}
else
{
$args->voted_count = $oComment->get('voted_count') + $point;
$output = executeQuery('comment.updateVotedCount', $args);
}
// 로그 남기기
$args->point = $point;
$output = executeQuery('comment.insertCommentVotedLog', $args);
// 세션 정보에 남김
$_SESSION['voted_comment'][$comment_srl] = true;
// 결과 리턴
if($point > 0)
return new Object(0, 'success_voted');
else
return new Object(0, 'success_blamed');
}
댓글 0
글쓴이 | 제목 | 최종 글 |
---|---|---|
하늘희 |
멀티미디어 컨텐츠 배포하였습니다.
[20]
![]() | 2019.04.29 by dldidt**** |
JBird |
무료 레이아웃
[4]
![]() | 2019.03.26 by 가츠 |
디스케이션 |
웹 에이전시 디스케이션에서 레이아웃 템플릿 판매 개시했습니다.
[2]
![]() | 2019.03.25 by 디스케이션 |
이온디 | XE 레이아웃 제작 일주일 코스 | |
okiz |
쿡래빗 퀴즈게임 & 가위바위보 모바일
[16]
![]() | 2019.03.12 by 아긔아자 |
우랑탕탕이 | CMS 포럼에서는 | |
이온디 | XE관리자 커스텀 CSS [2] | 2019.01.30 by 일그리고여행 |
treasurej |
자바스크립트 스타트 스터디 모임(용인/수원)입니다.^^
![]() | |
BJ람보 | 영상) XE에 대해서 - XE는 무엇일까요? (영상의 첫시작) [1] | 2018.12.11 by 똑디 |
이온디 | CMS 커뮤니티 | |
엘리시움 |
XE 무료 레이아웃 소개합니다.
![]() | |
김하은 | 혹시 클라우드 플레어 쓰시는분들.. | |
닥터맨 | 비밀번호 찾기 질문/답변- 기능 문제점 [1] | 2018.10.27 by 이온디 |
제이엔지 | 아이디 유지시키려면 XE사이트에 로그인하세요 [7] | 2018.07.16 by 제이엔지 |
제이엔지 | XE3가 아닌 다른 이름으로 | |
헨델8 | XE 만한게 없는거 같은데... 슬프다는... [4] | 2018.04.24 by 헨델8 |
E2ZONE | [ArrowVM] 웹 호스팅 여기 접속이 않되는데.. [4] | 2018.04.21 by Luatic™ |
monolife | XE 자료실 릴리즈 승인 대기중인데... 얼마나 걸리나요? [1] | 2018.04.20 by sejin7940 |
헨델8 | 뜬금없지만 Python으로 만들어진 CMS 솔루션이 어떤게 있을까요?? [2] | 2018.04.19 by 헨델8 |
fivetourist | 저렴하고 안정적인 서버 소개 |