웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
수정,삭제 버튼을 "이 게시물을.."에 넣기
2008.04.16 19:49
제목 그대로 수정,삭제 버튼을 "이 게시물을.."을 클릭시 나타나는 팝업 메뉴 속으로 넣어보자.
일단 xe폴더/modules/document/document.model.php파일을 메모장등의 에디터를 이용해서 연다.
약 50 line정도에 있는 위의 소스 바로 밑에
소스를 추가해주자. 소스에 대한 설명을 하자면 게시글의 작성인과 메뉴를 클릭한 사람이 동일인인지 여부를 확인하기 위해 documentModel을 받아서 객체생성한다.
위 소스 바로 밑에
소스를 추가해준다. 단, 메뉴를 보면 가장 위 메뉴가 "인쇄", 그 다음이 "추천", "비추천" 등의 순서인데 본인은 "수정", "삭제"가 가장 위에 놓이도록 했다. 순서를 변경하고 싶으면 위치만 바꿔주면 된다.
파 일 수정후 업로드를 마쳤다면 "이 게시물을.." 문구를 클릭하면 "수정","삭제"버튼이 팝업레이어 속에 들어간 것을 확인할 수 있다. 이제 남은것은 게시판에서 "수정", "삭제" 버튼을 지우는 일만 남았다. 그것은 각자 알아서 지우도록~~
ps. 주의할 점은 zeroboardXE를 업데이트 할 경우 document.model.php파일이 변경될 수 있다. 그점을 항상 기억하고 업데이트 한 후에는 다시 고쳐주자.
일단 xe폴더/modules/document/document.model.php파일을 메모장등의 에디터를 이용해서 연다.
// 요청된 게시물 번호와 현재 로그인 정보 구함
$document_srl = Context::get('target_srl');
$mid = Context::get('cur_mid');
$logged_info = Context::get('logged_info');
$act = Context::get('cur_act');
$document_srl = Context::get('target_srl');
$mid = Context::get('cur_mid');
$logged_info = Context::get('logged_info');
$act = Context::get('cur_act');
약 50 line정도에 있는 위의 소스 바로 밑에
// document의 model 객체 생성
$oDocumentModel = &getModel('document');
$oDocument = $oDocumentModel->getDocument($document_srl);
$oDocumentModel = &getModel('document');
$oDocument = $oDocumentModel->getDocument($document_srl);
소스를 추가해주자. 소스에 대한 설명을 하자면 게시글의 작성인과 메뉴를 클릭한 사람이 동일인인지 여부를 확인하기 위해 documentModel을 받아서 객체생성한다.
// trigger 호출
ModuleHandler::triggerCall('document.getDocumentMenu', 'before', $menu_list);
ModuleHandler::triggerCall('document.getDocumentMenu', 'before', $menu_list);
위 소스 바로 밑에
// 작성자 이어야만 가능한 기능
if($logged_info->member_srl == $oDocument->get('member_srl')) {
// 수정 버튼 추가
$menu_str = Context::getLang('cmd_modify');
$menu_link = sprintf("%s?document_srl=%s&act=dispBoardWrite",Context::getRequestUri(),$document_srl);
$menu_list[] = sprintf("\n%s,%s,move_url('%s')", '', $menu_str, $menu_link);
// 삭게 버튼 추가
$menu_str = Context::getLang('cmd_delete');
$menu_link = sprintf("%s?document_srl=%s&act=dispBoardDelete",Context::getRequestUri(),$document_srl);
$menu_list[] = sprintf("\n%s,%s,move_url('%s')", '', $menu_str, $menu_link);
}
if($logged_info->member_srl == $oDocument->get('member_srl')) {
// 수정 버튼 추가
$menu_str = Context::getLang('cmd_modify');
$menu_link = sprintf("%s?document_srl=%s&act=dispBoardWrite",Context::getRequestUri(),$document_srl);
$menu_list[] = sprintf("\n%s,%s,move_url('%s')", '', $menu_str, $menu_link);
// 삭게 버튼 추가
$menu_str = Context::getLang('cmd_delete');
$menu_link = sprintf("%s?document_srl=%s&act=dispBoardDelete",Context::getRequestUri(),$document_srl);
$menu_list[] = sprintf("\n%s,%s,move_url('%s')", '', $menu_str, $menu_link);
}
소스를 추가해준다. 단, 메뉴를 보면 가장 위 메뉴가 "인쇄", 그 다음이 "추천", "비추천" 등의 순서인데 본인은 "수정", "삭제"가 가장 위에 놓이도록 했다. 순서를 변경하고 싶으면 위치만 바꿔주면 된다.
파 일 수정후 업로드를 마쳤다면 "이 게시물을.." 문구를 클릭하면 "수정","삭제"버튼이 팝업레이어 속에 들어간 것을 확인할 수 있다. 이제 남은것은 게시판에서 "수정", "삭제" 버튼을 지우는 일만 남았다. 그것은 각자 알아서 지우도록~~
ps. 주의할 점은 zeroboardXE를 업데이트 할 경우 document.model.php파일이 변경될 수 있다. 그점을 항상 기억하고 업데이트 한 후에는 다시 고쳐주자.