비밀댓글의 댓글 열람권한설정
본문
원 댓글의 작성자가 비밀글로 달리는 대댓글 보기설정에 대한 해결글을 참고하여 수정해보았습니다만
그누버전이 g5-5.0b07버전을 기준으로 작성된거라서인지 해봤는데 잘 안되네요..
===> 수정내용
bbs/view_comment.php 의 아래 구문을 (g5-5.0b07버전을 기준으로 44~52행)
$list[$i]['content'] = $list[$i]['content1']= '비밀글 입니다.';
if (!strstr($row['wr_option'], 'secret') ||
$is_admin ||
($write['mb_id']==$member['mb_id'] && $member['mb_id']) ||
($row['mb_id']==$member['mb_id'] && $member['mb_id'])) {
$list[$i]['content1'] = $row['wr_content'];
$list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content');
$list[$i]['content'] = search_font($stx, $list[$i]['content']);
}
아래처럼 수정하라 되어있습니다만....
///답댓글의 비밀글을 원댓글쓴이에게 보이기. 추가 ★★★★★★
$pre_comment_info = substr($row['wr_comment_reply'],0,-1);
$pre_comment = sql_fetch(" select mb_id from {$write_table} where wr_parent = '{$wr_id}' and wr_is_comment = 1 and wr_comment = '{$row['wr_comment']}' and wr_comment_reply = '{$pre_comment_info}' ");
$list[$i]['content'] = $list[$i]['content1']= '비밀글 입니다.';
if (!strstr($row['wr_option'], 'secret') ||
$is_admin ||
($pre_comment['mb_id']==$member['mb_id'] && $member['mb_id']) || ///답댓글의 비밀글을 원댓글쓴이에게 보이기. 추가 ★★★★★★
($write['mb_id']==$member['mb_id'] && $member['mb_id']) ||
($row['mb_id']==$member['mb_id'] && $member['mb_id'])) {
$list[$i]['content1'] = $row['wr_content'];
$list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content');
$list[$i]['content'] = search_font($stx, $list[$i]['content']);
}
현제 사용중인 그누소스는 버전이 틀려서 안되네요..
아래 소스에서는 어떻게 수정해야 하올른지요
$list[$i]['content'] = $list[$i]['content1']= '비밀글 입니다.';
if (!strstr($row['wr_option'], 'secret') ||
$is_admin ||
($write['mb_id']==$member['mb_id'] && $member['mb_id']) ||
($row['mb_id']==$member['mb_id'] && $member['mb_id'])) {
$list[$i]['content1'] = $row['wr_content'];
$list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content');
$list[$i]['content'] = search_font($stx, $list[$i]['content']);
} else {
$ss_name = 'ss_secret_comment_'.$bo_table.'_'.$list[$i]['wr_id'];
if(!get_session($ss_name))
$list[$i]['content'] = '<a href="./password.php?w=sc&bo_table='.$bo_table.'&wr_id='.$list[$i]['wr_id'].$qstr.'" class="s_cmt">댓글내용 확인</a>';
else {
$list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content');
$list[$i]['content'] = search_font($stx, $list[$i]['content']);
}
}
$list[$i]['datetime'] = substr($row['wr_datetime'],2,14);
아래 참조 ==>며칠전 질문에 플라이님께서 주신 설명대로 적용했으나..
$list[$i]['content'] = $list[$i]['content1']= '비밀글 입니다.';
if (!strstr($row['wr_option'], 'secret') ||
$is_admin ||
((($write['mb_id']==$member['mb_id']) || ($row['mb_id']==$member['mb_id'])) && $member['mb_id'])) {
$list[$i]['content1'] = $row['wr_content'];
$list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content');
$list[$i]['content'] = search_font($stx, $list[$i]['content']);
} else {
$ss_name = 'ss_secret_comment_'.$bo_table.'_'.$list[$i]['wr_id'];
if(!get_session($ss_name))
$list[$i]['content'] = '<a href="./password.php?w=sc&bo_table='.$bo_table.'&wr_id='.$list[$i]['wr_id'].$qstr.'" class="s_cmt">댓글내용 확인</a>';
else {
$list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content');
$list[$i]['content'] = search_font($stx, $list[$i]['content']);
}
}
$list[$i]['datetime'] = substr($row['wr_datetime'],2,14);
==> 에러는 잡혔습니다만..
관리자의 특정게시물상 하단에
회원이 비밀댓글을 쓰고 그 댓글에 관리자가 비밀답글을 달았는데..
댓글 원작성자가 관리자의 댓글열람시 다시 비번입력을 요구합니다..
사실 이해하기 어려운게...
비밀댓글기능을 지원한다면
당연히 원댓글작성자가 비밀대댓글또한 열람이 가능해야하지 않나요?
제가 최신버전을 설치 안 해봐서 확실치는 않습니다만..그누자체의 문제인가요?
거래처에서 왜 당연히 되어야야 할게 안되냐고 하는데 할말이 없네요..
고수님들께 부탁드려요
답변 3
감사합니다
그부분의 환경적 문제 조 명확하게 여러가지 환경 조건을 생각하고 그거에 맞게 소스 개발 이필요하다고생각됩니다
간단한거 였는데 댓글이 의뢰쪽으로 유도 하시네요..원..
혼자 해결했네요..
최초 지구인님의 글을 자세히 안본 제 잘못이네요..
///답댓글의 비밀글을 원댓글쓴이에게 보이기. 추가 ★★★★★★
$pre_comment_info = substr($row['wr_comment_reply'],0,-1);
$pre_comment = sql_fetch(" select mb_id from {$write_table} where wr_parent = '{$wr_id}' and wr_is_comment = 1 and wr_comment = '{$row['wr_comment']}' and wr_comment_reply = '{$pre_comment_info}' ");
여기까지는 그대로 복사한다음..
나머지 소스 그대로 두고..
($pre_comment['mb_id']==$member['mb_id'] && $member['mb_id']) || ///답댓글의 비밀글을 원댓글쓴이에게 보이기. 추가 ★★★★★★
이 부분만 제 자리에 넣으니 잘 동작 합니다..
저 같은 초보분들 참고 하시라고 남겨둡니다.