zb5beta - 질문답변
홈페이지에 사용하는 갤러리에서도 관리 메뉴가 필요해서 스킨을 하나 만들어봤습니다. 용도는 게시물 관리 용입니다. 물론 일반 갤러리 게시판하고 별 차이는 없습니다. 관리자가 아니면 갤러리 모듈과 동일합니다. 관리자의 경우에만 관리메뉴가 보입니다. 갤러리 스킨은 소마세월님의 갤러리 스킨을 사용했습니다. 항상 소마세월님께 감사하고 사용중입니다.
복사 위치는 /public_html/zb5/modules/board_gallary/skins 입니다.
별다른 특징은 없고...체그 박스 넣고 설정 부분 손 봤습니다.
쓰는 방법은 체크 박스 클릭하고 설정을 누르면 오른쪽으로 select가 하나 생깁니다. 그걸로 설정관리 하시면 됩니다.
^^ 기본적인 틀 구조만 알면 됩니다.
layout.tpl에서 보면,
체크 박스를 한정 시키고 액션을 주기 위해
{** list area **}
<form method="get" name="listForm" id="listForm" action="">
<table width="100%" border="0" cellpadding="0" cellspacing="1" id="board_list">
</table>
</form>
으로 묶여있습니다. 그리고 체크 박스를 사용하기 위해 제목 부분에 체크 박스 일괄 삽입합니다.
이때, 이미지가 있을때하고 없을때 모두 삽입하고, 씨리즈가 있을때 이미지 부분이 안보이게 해줍니다.
{if $obj->pic_path}
...
{if $is_admin}
<div class="title" style="width:{$width-10}px;">
<input type=checkbox name='zone_box_{$smarty.foreach.list.iteration}' value='{$obj->article_srl}'>
{else}
<div class="title{if $obj->serial_srl}_sn{/if}" style="width:{$width-10}px;">
{/if}
...
{else}
...
{if $is_admin}
<div class="title" style="width:{$width-10}px;">
<input type=checkbox name='zone_box_{$smarty.foreach.list.iteration}' value='{$obj->article_srl}'>
{else}
<div class="title{if $obj->serial_srl}_sn{/if}" style="width:{$width-10}px;">
{/if}
...
{/if}
이렇게 넣어주면 체크 박스를 사용할 수 있겠죠. 그다음 관리 메뉴는 원하는 위치에 삽입해줍니다.
저는
<form method="get" name="listForm" id="listForm" action="">
<table width="100%" border="0" cellpadding="0" cellspacing="1" id="board_list">
</table>
{if $is_admin}
<table>
<tr>
<th ><button class="icon_total" onClick="CheckAllINBOX();"></button>
<button class="file_mag" onClick="report_display('{$mid}');return false;"></button>
</th>
<th colsapn=2>
<div id='zone_report_srl' style='display:none;' align="left">
<table border='0' cellspacing='1' cellpadding='2' >
<tr>
<td>
<select id='report_target_srl'>
<option value='delete'>{$lang->common->fld_report_delete}</option>
</select>
</td>
<td>
<input type='button' class="input_mag" value='{$lang->common->btn_report}' onClick="report()" /></td>
</tr>
</table>
</div>
</th>
</tr>
</table>
{/if}
</form>
이런식으로 원래 리스트를 담고있는 테이블 밑에 새로 삽입해줬습니다. 그리고 이때 사용되는 이벤트는 common에 넣어두면 어디서나 사용할 수는 있는데, 독립적으로 사용하기 위해(배포목적)으로 module.js에 넣어두었고...아까 적용된 이벤트들에 대한 이미지나 스타일을 지정해주면 되는 것입니다.
여기서 사용된 함수 및 이벤트는 체크 박스를 제외하고는 이미 view.tpl에서 사용되고 있는 함수들입니다. 이 함수들의 이름과 스타일을 조금 수정했을 뿐입니다.
이 내용은 플러그인이 아니고 플러그인 스킨입니다.
일반적으로 모듈은 " 모듈"과 "모듈스킨"이 따로 존재합니다. 레이아웃같은 경우는 "레이아웃 스킨" 하나만 존재합니다.
이 스킨을 사용하기 위해서는 먼저 "소마세월"님의 갤러리 모듈이 필요합니다.
먼저, 모듈자로실에서 "소마세월님의 모듈을 받으세요.
그러면 스킨폴더에 기본적으로 "soma_board_gallary"라는 스킨이 존재합니다.
이 스킨 폴더와 같은 위치 /public_html/zb5/modules/board_gallary/skins 에 제가 만든 스킨을 올리시면 됩니다.


잠순이님덕분에 관리자용 소스 게시판에 적용했어요
소스부분이간단하네요^^ 고치기도쉽고 감사드려요~
초보라서 조금씩배우고있는중입니다..
더많은자료부탁드려요~~ 화이팅