모든 게시판에서 비밀글 체크를 가리긴 할건데 살려둬야할 게시판이 한두개 있어서 일단 일부 게시판에서 라고 조건을 달겠습니다.

 

게시판 설정에서 비밀글사용을 해제하면 비밀댓글 기능이 동작하지 않네요. 그래서 비밀글사용은 그대로 두고 스킨에서 가려보려고 합니다.

 

<input type="radio" name="status" value="PUBLIC" id="PUBLIC" checked="checked"><label for="PUBLIC">공개</label> <input type="radio" name="status" value="SECRET" id="SECRET"><label for="SECRET">비밀</label>

 

이렇게 출력이 되는데요.

 

글쓰기 폼에서 작성된 코드는 

 

 

<!--@foreach($status_list AS $key=>$value)-->
<input cond="@!in_array('secret',$mi->wrt_opt)" type="radio" name="status" value="{$key}" id="{$key}" checked="checked"|cond="$oDocument->get('status')==$key || ($key=='PUBLIC' && !$document_srl)" />
<input cond="@in_array('secret',$mi->wrt_opt)" type="radio" name="status" value="{$key}" id="{$key}" checked="checked"|cond="$oDocument->get('status')==$key || ($key=='SECRET' && !$document_srl)" />
<label for="{$key}">{$value}</label>
<!--@end-->

 

이렇게 작성되어 있습니다.          

  • Lv37

    두 번째 <input>의 조건을

        cond="@in_array('secret',$mi->wrt_opt)"

    에서

        cond="@in_array('secret',$mi->wrt_opt) && $mid !== '제외할 게시판의 mid값'"

    으로 바꿔보세요.

  • Lv37 Lv30
    두번째 조건에 걸면 변화가 없구요.
    첫번째 조건에 걸면 체크하는 동그라미는 없어지고 공개 비밀 글자만 남습니다.
  • Lv37 Lv30
    그리고 미리 말씀드리면 최종적으로는

    $mid == 'request'

    이 게시판에서만 비밀글을 사용하게 하려고 합니다.
  • Lv37 Lv30

    스케치북 스킨에서
    @in_array('secret',$mi->wrt_opt)
    이 값을 조건으로 쓴 것은 게시판스킨 설정에 무조건 비밀글에 체크를 하겠냐는 옵션값입니다.

    (이 옵션은 기본적으로 사용하지 않고 있어요.)

  • Lv37 Lv30
    request 게시판에서만

    <input type="radio" name="status" value="SECRET" id="SECRET"><label for="SECRET">비밀</label>
    이 부분이 노출되고 나머지 전체 게시판에서는 위 부분이 출력되지 않으면 되는데 어렵네요.
  • Lv30 Lv37
    그냥 위의 코드 5줄 전체를
    <!--@if($mid == 'request')-->
    <!--@end-->
    로 묶어버리면 어떨까요? 다른 게시판에서는 아예 안 보이도록요.
  • Lv37 Lv30
    공개는 체크가 나와야 해서요. 왜냐면 임시글의 경우 공개로 전환할 일이 생기기도 하고 그래서요.
  • Lv37 Lv30
    그리고 라이믹스에 제안 드리면 이건 코어에서 댓글과 게시글 비밀 컨트롤을 나누어 주시길 제안드려요. 왜냐면 지금 XE타운의 경우 필요한 게시판만 비밀글을 지원하다보니 일반 나머지 전체게시판에서 비밀댓글을 쓰지 못해 회원들이 엄청 불편합니다.

    비밀게시글이 작성되면 안되니까 비밀글 사용을 제한하는건 이해가 가지만 비밀스럽게 건내고 싶은 댓글이 원천적으로 차단되어 있으니 불편합니다.
  • Lv30 Lv37
    그럼 foreach 루프 안쪽에다가 조건을 걸어서...
    <!--@if($key !== 'SECRET' || $mid == 'request')-->
    (2~4줄 내용)
    <!--@end-->
    이렇게 해보면 어떨까요?
  • Lv37 Lv30
    맞아요! 이거에요. 이걸 몰라서 한참 고생하다 질문을 올렷네요. 감사합니다.
  • Lv30 Lv37
    이미 이슈가 열려 있습니다.
    https://github.com/rhymix/rhymix/issues/643