글 '비추천 취소'가 안 돼서 남기는 글
CMS/프레임워크 | Rhymix 2.0 |
---|---|
개발 언어 | PHP 7.2 |
라이믹스 2.0.24
php 7.2.34
상황
1. 추천 취소 없던 시절, 추천 취소 기능+새로고침 없는 추천, 댓글 기능을 의뢰해서 사용
2. 라이믹스 1.9 버전대로 넘어올 때 코어 순정으로 넘어온 것으로 추정? (기억이 가물가물)
3. 현재 1에서 의뢰했을 때 코어 수정된 부분이 남아있지 않는 라이믹스 순정 상태
상황 2 때부터 다른 기능은 다 작동하는데 글 '비추천 취소'만 안됩니다.
비추천 상태에서 클릭시 '비추천했습니다' 란 문구만 나오고 아무런 변화가 없습니다.
비추천 이후 ajax 업데이트를 못 받아와서 그럴까요?
댓글과 다르고 의심되는 부분은 있는데, 이게 문제면 추천 취소도 안 되는 게 맞는 거 같고... 왜 비추천 취소만 안 되는지...
jQuery('div.rd_vote').load(current_url + " .rd_vote > *");
rd_vote는 추천 영역 class 입니다.
3~4일 열심히 찾아보았으나 해결을 못할 거 같고, 검색해서 나오는 다른 추천 취소 방법으로 바꾸기 전에 글 남겨 봅니다. ㅠㅠ
alrin
Lv. 4
댓글 4
추천, 비추천, 신고 등의 취소 기능은 스킨에서 구현하기 나름입니다. 순정 라이믹스 코어를 사용하신다면 순정 라이믹스 코어에서 제공하는 기능과 연동하도록 만들어진 스킨이어야겠지요. 예전에 임의로 코어를 수정해 놓고 그 방법에 맞춰서 연동해 놓은 것이 순정 코어의 방식과 우연히 잘 맞을 가능성은 무척 낮고요.
현재 스킨에서 어떻게 연동되어 있는지에 대한 자세한 정보 없이는 유용한 답변을 얻기 어려울 것 같습니다.
var _doCallModuleAction = window.doCallModuleAction;
window.doCallModuleAction = function(e,t,n) {
if(t.match(/^procDocument(?:Declare|Vote(?:Up|Down|UpCancel|DownCancel))$/)) {
$.exec_json(e+'.'+t, {target_srl:n}, function(p){
if(p.message!='success') {
toastr.success(p.message);
} else {
if(t.indexOf('VoteUp') > -1){
toastr.success("추천했습니다.");
} else if(t.indexOf('VoteDown') > -1){
toastr.success("비추천했습니다.");
} else if(t.indexOf('Declare') > -1){
toastr.success("신고했습니다.");
}
}
jQuery('div.rd_vote').load(current_url + " .rd_vote > *");
});
}
else if(t.match(/^procComment(?:Declare|Vote(?:Up|Down|UpCancel|DownCancel))$/)) {
$.exec_json(e+'.'+t, {target_srl:n}, function(p){
if(p.message!='success') {
toastr.success(p.message);
} else {
if(t.indexOf('VoteUp') > -1){
toastr.success("추천했습니다.");
} else if(t.indexOf('VoteDown') > -1){
toastr.success("비추천했습니다.");
} else if(t.indexOf('Declare') > -1){
toastr.success("신고했습니다.");
}
}
loadCommentPage(document_srl, undefined, 0, true);
});
}
else {
_doCallModuleAction(e,t,n);
}
}
우선 코어 함수를 멋대로 대체하는 것부터 제정신이 박힌 코드는 아닌 것 같습니다만... 아무튼 올려주신 내용만 봐서는 비추천 취소도 가능한 코드인 같습니다. 단, 이 함수는 추천/비추천/신고 등의 버튼에서 onclick으로 지정한 내용을 그대로 서버에 전달할 뿐이니, 버튼 쪽에서 비추천 취소 동작을 어떻게 지정했는지가 관건이네요.
스킨에서는 스케치북 라이믹스 버전 추천 부분을 사용중입니다.