21'C 흐림
서울 강남구
APMS의 like / follow 기능을 사용해보니 한번 like 혹은 follow를 하면 취소가 안되더군요.
그래서 조금 수정해보았습니다.(기존 소스에서 +를 -로 바꾸고, insert를 delete로 바꾸어서 추가)
/bbs/like.php 파일을 여시고, 39번 라인을 보시면 아래와 같은 부분이 있습니다.
---- 여기부터 ----
$status = ($row['flag'] == 'like') ? '좋아요' : '팔로잉';
$error = "이미 $status 하셨습니다.";
print_result($error, $success, $count);
---- 여기까지 ----
위 부분을 주석처리 하시고 하단의 소스를 붙이시면 취소 처리가 가능합니다.
---- 여기부터 ----
if($act == 'like') {
// 내 카운트 감소
sql_query(" update {$g5['member_table']} set as_like = as_like - 1 where mb_id = '{$member['mb_id']}' ");
// 상대편 카운트 감소
sql_query(" update {$g5['member_table']} set as_liked = as_liked - 1 where mb_id = '{$id}' ");
$status = '좋아요';
$count = (int)$to['as_liked'] - 1;
} else {
// 내 카운트 감소
sql_query(" update {$g5['member_table']} set as_follow = as_follow - 1 where mb_id = '{$member['mb_id']}' ");
// 상대편 카운트 감소
sql_query(" update {$g5['member_table']} set as_followed = as_followed - 1 where mb_id = '{$id}' ");
$status = '팔로잉';
$count = (int)$to['as_followed'] - 1;
}
// 내역 삭제
sql_query(" delete from {$g5['apms_like']} where mb_id = '{$member['mb_id']}' and to_id = '{$id}' and flag = '{$act}' ");
$success = $status.' 취소하셨습니다.';
print_result($error, $success, $count);
---- 여기까지 ----
이상입니다.