12
조회 수 : 2648 신고 : 0
출처 : |
---|
XE에서 추천,비추천은 로그인을 해야 가능한 구조입니다.
하지만 비회원으로 운영되는 사이트는 추천/비추천이 비회원도 가능해야한다고 생각됩니다.
아래 수정방법은 XE 1.5기준입니다만, 그이하 버전 1.4.x 도 라인만 다르고 소스는 비슷하니 찾아서 수정하시면 됩니다.
총4개의 파일을 여시고, 해당부분만 주석처리 하시면 됩니다.
1. /modules/document/document.model.php 을 여시고 461번째쯤 if($logged_info->member_srl) { 부분을 찾아서 그앞에 // 주석처리합니다. // if($logged_info->member_srl) { 이런식으로 되겠군요..
그리고 491번째쯤에 } 닫아준걸 // } 이렇게 주석처리합니다. 위에서 열었던걸 주석처리했기때문에 닫았던 것도 주석처리해주는 겁니다.
// if($logged_info->member_srl) {
$oDocumentModel = &getModel('document');
$columnList = array('document_srl', 'module_srl', 'member_srl', 'ipaddress');
$oDocument = $oDocumentModel->getDocument($document_srl, false, false, $columnList);
$module_srl = $oDocument->get('module_srl');
$member_srl = $oDocument->get('member_srl');
if(!$module_srl) return new Object(-1, 'msg_invalid_request');
$oModuleModel = &getModel('module');
$document_config = $oModuleModel->getModulePartConfig('document',$module_srl);
if($document_config->use_vote_up!='N' && $member_srl!=$logged_info->member_srl){
// Add a Referral Button
$url = sprintf("doCallModuleAction('document','procDocumentVoteUp','%s')", $document_srl);
$oDocumentController->addDocumentPopupMenu($url,'cmd_vote','','javascript');
}
if($document_config->use_vote_down!='N' && $member_srl!=$logged_info->member_srl){
// Add button to negative
$url= sprintf("doCallModuleAction('document','procDocumentVoteDown','%s')", $document_srl);
$oDocumentController->addDocumentPopupMenu($url,'cmd_vote_down','','javascript');
}
// Adding Report
$url = sprintf("doCallModuleAction('document','procDocumentDeclare','%s')", $document_srl);
$oDocumentController->addDocumentPopupMenu($url,'cmd_declare','','javascript');
// Add Bookmark button
$url = sprintf("doCallModuleAction('member','procMemberScrapDocument','%s')", $document_srl);
$oDocumentController->addDocumentPopupMenu($url,'cmd_scrap','','javascript');
// }
전체적인 소스를 보면 대략 위와 같습니다.
2. /modules/document/document.controller.php 를 여시고 19번째줄쯤에 if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request'); 부분을 찾아서 같은 방법으로 // 앞쪽에 주석처리 합니다. // if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request'); 이렇게 되겠군요.
또 51번째줄도 if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request'); 부분을 찾아서 주석처리해줍니다. // if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request');
이제 본문글 추천/비추천은 가능하게 됐구요. 다음은 코멘트도 추천/비추천을 가능하게 소스수정을 해줍니다.
3. /modules/comment/comment.model.php 를 여시고, 35째쯤 줄에 if($logged_info->member_srl) { 부분을 주석처리 합니다 // if($logged_info->member_srl) { 이렇게 됩니다.
마찬가지로 59번째 } 부분// } 이런식으로 주석처리해줍니다.
4. /modules/comment/comment.controller.php 를 여시고, 20번째줄쯤에 if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request'); 를 찾아서 주석처리해줍니다. // if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request'); 이렇게 됩니다.
그리고 42번째줄에 if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request'); 를 찾으셔서 같은 방법으로 앞에 주석처리를 합니다. // if(!Context::get('is_logged')) return new Object(-1, 'msg_invalid_request');
이제 다됐습니다.
본인이 쓴글에는 추천/비추천이 안되며 클릭을 했을때는 추천을 하실수 없습니다. 라고 나올것이며, 수정이 잘못됐다면 '잘못된 요청입니다'라고 나올겁니다. 이럴때는 천천이 다시 수정해보세요.
추천수 10단위당 메달이 1개씩 노출되고, 추천수에 따라 배경색이 변하며, 일정수의 추천수를 받을시 아이콘이 붙게됩니다.
- 추천수 50개이상
- 추천수 30개이상
- 추천수 20개이상
- 추천수 10개이상
- 추천수 3개이상
첫번째 댓글을 남겨주세요!