RXE 서드파티 자료를 공유할 수 있으며, 미완성된 자료도 올릴 수 있습니다. 단, 저작권 문제가 없어야 합니다.
조회 수 1081 추천 수 8 댓글 55
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 댓글로 가기 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 첨부

 

게시글 삭제 전

 

01.png

 

게시글 삭제 후

 

02.png

 

삭제된 게시글 (비)추천 방지

03.png

 

 

댓글 삭제 똥 남기기

 

04.png

 

 

 

 

유저가 작성한 게시글, 댓글, 대댓글을 삭제할 경우 "삭제된 게시글입니다" 와 같이 전환하는 모듈입니다.

일부 애니 사이트에서 사용중인 방식이길래 급하게 미러링했습니다.

유저가 아닌 (게시판)관리자가 삭제할 경우 정상적으로 삭제됩니다.

따로 설정페이지 같은건 없습니다

 

그냥 부처님 같은 마음으로 뿌려봅니다 ㅋㅋ;

 

+ 댓글에 대댓글이 달려 있을 경우 수정방지 기능이 포함되어 있습니다.

 

게시판 스킨단 삭제된 게시글 판별 예제 (스케치북 _read_nav.html)

{@

...

    $is_deleted = !($logged_info && $logged_info->is_admin == "Y") && preg_match('/<span.*?style=".*color:\s?#888888.*">/i', $oDocument->getTitle($mi->subject_cut_size)) ? TRUE : FALSE;

}

 

    <a cond="$is_logged" class="document_{$oDocument->document_srl} action bubble m_no" href="#popup_menu_area" onclick="return false;" title="{$lang->cmd_document_do}"><i class="fa fa-ellipsis-h"></i><b class="tx">{$lang->cmd_document_do}</b></a>
    <block cond="$oDocument->isEditable() && !$is_deleted">
    <a class="edit" href="{getUrl('act','dispBoardWrite','document_srl',$oDocument->document_srl,'comment_srl','')}"><i class="ico_16px write"></i>{$lang->cmd_modify}</a>
    <a class="edit" href="{getUrl('act','dispBoardDelete','document_srl',$oDocument->document_srl,'comment_srl','')}"><i class="ico_16px delete"></i>{$lang->cmd_delete} </a>
    </block>

 

 

개발환경 XE 1.8.27, php 5.6

 

https://github.com/huhani/xe-gamezot

 

 

 

 

 

+

https://github.com/huhani/xe-gamezot/commit/451ce4a974ef5a7b69d746fb696c58c6a165fa9e

파일이 첨부된 댓글 삭제시 계속 남아있는 현상 수정하였습니다
해당 행을 추가해주세요

  • ?
    아스타 2017.02.18 14:06:12
    감사합니다.

    게시글도 댓글도 잘 적용되네요~
  • profile
    웹지기 2017.02.21 10:39:45

    한가지 추가하고 싶은 것이 있습니다.

    게시글 삭제시 tag 테이블에 들어갔던 이 삭제게시물의 문서번호로 들어간 태그를 삭제해 주고 싶은데요.
    -> 이유는 저희는 tag를 활용해서 문서에 해시태그 형태로 태그를 보여주고 있습니다. 그런데 다른 곳에서 태그를 눌러 조회하면 목록에 이 삭제된게시물입니다. 라는 게시물이 함께 조회가 되어서요. 게시물이 완전 삭제될 때는 태그관련 db가 모두 삭제가 되기 때문에...


    tag 모듈에 코드를 보니

    function triggerDeleteTag(&$obj)
    {
    $document_srl = $obj->document_srl;
    if(!$document_srl) return new Object();

    $args = new stdClass();
    $args->document_srl = $document_srl;
    return executeQuery('tag.deleteTag', $args);
    }




    <query id="deleteTag" action="delete">
    <tables>
    <table name="tags" />
    </tables>
    <conditions>
    <condition operation="equal" column="document_srl" var="document_srl" filter="number" notnull="notnull" />
    </conditions>
    </query>


    tags 테이블에서 이렇게 해당문서번호의 태그는 모두 지워주고 있습니다.



    -----------------------------------------------------------------------------------
    function triggerDeleteTag(&$obj)
    {
    $document_srl = $obj->document_srl;
    if(!$document_srl) return new Object();

    $args = new stdClass();
    $args->document_srl = $document_srl;
    return executeQuery('tag.deleteTag', $args);
    }


    이부분을 똥남기는모듈의 어떤 부분에 어떻게 고쳐 넣어야 할지 알 수 있을까요 ??

  • ?
    후하니 2017.02.22 20:57:08
    $args = new stdClass();
    $args->document_srl = $document_srl;
    executeQuery('tag.deleteTag', $args);

    https://github.com/huhani/xe-gamezot/blob/master/gamezot.controller.php#L121
    같은 곳에 적당히 구겨넣으면 될 것 같습니다.
  • profile
    웹지기 2017.02.23 09:31:47
    감사합니다!
  • ?
    qwertyyong 2017.09.19 00:12:15
    왜 폴더를 modules 폴더에 올려놨는데 설치된 모듈리스트에 없을까요

서버에 요청 중입니다. 잠시만 기다려 주십시오...