경로 수정 작업 중
BIN
mobile/skin/board/basic/img/icon_file.gif
Normal file
|
After Width: | Height: | Size: 107 B |
BIN
mobile/skin/board/basic/img/icon_hot.gif
Normal file
|
After Width: | Height: | Size: 97 B |
BIN
mobile/skin/board/basic/img/icon_img.gif
Normal file
|
After Width: | Height: | Size: 145 B |
BIN
mobile/skin/board/basic/img/icon_link.gif
Normal file
|
After Width: | Height: | Size: 104 B |
BIN
mobile/skin/board/basic/img/icon_mobile.gif
Normal file
|
After Width: | Height: | Size: 62 B |
BIN
mobile/skin/board/basic/img/icon_movie.gif
Normal file
|
After Width: | Height: | Size: 110 B |
BIN
mobile/skin/board/basic/img/icon_new.gif
Normal file
|
After Width: | Height: | Size: 71 B |
BIN
mobile/skin/board/basic/img/icon_reply.gif
Normal file
|
After Width: | Height: | Size: 77 B |
BIN
mobile/skin/board/basic/img/icon_secret.gif
Normal file
|
After Width: | Height: | Size: 97 B |
BIN
mobile/skin/board/basic/img/icon_sound.gif
Normal file
|
After Width: | Height: | Size: 113 B |
208
mobile/skin/board/basic/list.skin.php
Normal file
@ -0,0 +1,208 @@
|
||||
<?
|
||||
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
|
||||
// 선택옵션으로 인해 셀합치기가 가변적으로 변함
|
||||
$colspan = 5;
|
||||
|
||||
if ($is_checkbox) $colspan++;
|
||||
if ($is_good) $colspan++;
|
||||
if ($is_nogood) $colspan++;
|
||||
?>
|
||||
|
||||
<? if (!$wr_id) {?><h1 id="bo_list_title"><?=$g4['title']?></h1><?}?>
|
||||
|
||||
<!-- 게시판 목록 시작 -->
|
||||
<div id="bo_list<? if ($is_admin) echo "_admin";?>" style="width:<?=$width;?>">
|
||||
|
||||
<? if ($is_category) { ?>
|
||||
<form name="fcategory" id="fcategory" method="get">
|
||||
<nav id="bo_cate">
|
||||
<h2><?=$board['bo_subject']?> 카테고리</h2>
|
||||
<ul id="bo_cate_ul">
|
||||
<?=$category_option?>
|
||||
</ul>
|
||||
</nav>
|
||||
</form>
|
||||
<? } ?>
|
||||
|
||||
<div class="bo_fx">
|
||||
<div id="bo_list_total">
|
||||
<span>Total <?=number_format($total_count)?>건</span>
|
||||
<?=$page?> 페이지
|
||||
</div>
|
||||
|
||||
<? if ($rss_href || $write_href) {?>
|
||||
<ul class="btn_bo_user">
|
||||
<? if ($rss_href) { ?><li><a href="<?=$rss_href?>" class="btn_b01">RSS</a></li><? } ?>
|
||||
<? if ($admin_href) { ?><li><a href="<?=$admin_href?>" class="btn_admin">관리자</a></li><? } ?>
|
||||
<? if ($write_href) { ?><li><a href="<?=$write_href?>" class="btn_b02">글쓰기</a></li><? } ?>
|
||||
</ul>
|
||||
<? } ?>
|
||||
</div>
|
||||
|
||||
<form name="fboardlist" id="fboardlist" action="./board_list_update.php" onsubmit="return fboardlist_submit(this);" method="post">
|
||||
<input type="hidden" name="bo_table" value="<?=$bo_table?>">
|
||||
<input type="hidden" name="sfl" value="<?=$sfl?>">
|
||||
<input type="hidden" name="stx" value="<?=$stx?>">
|
||||
<input type="hidden" name="spt" value="<?=$spt?>">
|
||||
<input type="hidden" name="page" value="<?=$page?>">
|
||||
<input type="hidden" name="sw" value="">
|
||||
|
||||
<table class="basic_tbl">
|
||||
<thead>
|
||||
<tr>
|
||||
<? if ($is_checkbox) { ?><th scope="col"><input type="checkbox" title="현재 페이지 게시물 전체선택" onclick="if (this.checked) all_checked(true); else all_checked(false);"></th><?}?>
|
||||
<th scope="col">제목</th>
|
||||
<th scope="col"><?=subject_sort_link('wr_datetime', $qstr2, 1)?>날짜</a></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?
|
||||
for ($i=0; $i<count($list); $i++) {
|
||||
?>
|
||||
<tr class="<? if ($list[$i]['is_notice']) echo "bo_notice";?>">
|
||||
<? if ($is_checkbox) { ?><td class="td_chk"><input type="checkbox" name="chk_wr_id[]" value="<?=$list[$i]['wr_id']?>" title="이 게시물 선택"></td><? } ?>
|
||||
<td class="td_subject">
|
||||
<?
|
||||
echo $list[$i]['icon_reply'];
|
||||
if ($is_category && $list[$i]['ca_name']) {
|
||||
?>
|
||||
<a href="<?=$list[$i]['ca_name_href']?>" class="bo_cate_link"><?=$list[$i]['ca_name']?></a>
|
||||
<? } ?>
|
||||
|
||||
<a href="<?=$list[$i]['href']?>">
|
||||
<?=$list[$i]['subject']?>
|
||||
<? if ($list[$i]['comment_cnt']) { ?><span class="sound_only">댓글</span><?=$list[$i]['comment_cnt'];?><span class="sound_only">개</span><? } ?>
|
||||
<?
|
||||
// if ($list[$i]['link']['count']) { echo '['.$list[$i]['link']['count']}.']'; }
|
||||
// if ($list[$i]['file']['count']) { echo '<'.$list[$i]['file']['count'].'>'; }
|
||||
|
||||
if (isset($list[$i]['icon_new'])) echo $list[$i]['icon_new'];
|
||||
if (isset($list[$i]['icon_hot'])) echo $list[$i]['icon_hot'];
|
||||
if (isset($list[$i]['icon_file'])) echo $list[$i]['icon_file'];
|
||||
if (isset($list[$i]['icon_link'])) echo $list[$i]['icon_link'];
|
||||
if (isset($list[$i]['icon_secret'])) echo $list[$i]['icon_secret'];
|
||||
|
||||
?>
|
||||
</a>
|
||||
|
||||
</td>
|
||||
<td class="td_date"><?=$list[$i]['datetime2']?></td>
|
||||
</tr>
|
||||
<?}?>
|
||||
<? if (count($list) == 0) { echo '<tr><td colspan="'.$colspan.'" class="empty_table">게시물이 없습니다.</td></tr>'; } ?>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<? if ($list_href || $is_checkbox || $write_href) {?>
|
||||
<div class="bo_fx">
|
||||
<ul class="btn_bo_adm">
|
||||
<? if ($list_href) { ?>
|
||||
<li><a href="<?=$list_href?>" class="btn_b01"> 목록</a></li>
|
||||
<? } ?>
|
||||
<? if ($is_checkbox) { ?>
|
||||
<li><input type="submit" name="btn_submit" value="선택삭제" onclick="document.pressed=this.value"></li>
|
||||
<li><input type="submit" name="btn_submit" value="선택복사" onclick="document.pressed=this.value"></li>
|
||||
<li><input type="submit" name="btn_submit" value="선택이동" onclick="document.pressed=this.value"></li>
|
||||
<? } ?>
|
||||
</ul>
|
||||
|
||||
<ul class="btn_bo_user">
|
||||
<li><? if ($write_href) { ?><a href="<?=$write_href?>" class="btn_b02">글쓰기</a><? } ?></li>
|
||||
</ul>
|
||||
</div>
|
||||
<? } ?>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<? if($is_checkbox) { ?>
|
||||
<noscript>
|
||||
<p>자바스크립트를 사용하지 않는 경우<br>별도의 확인 절차 없이 바로 선택삭제 처리하므로 주의하시기 바랍니다.</p>
|
||||
</noscript>
|
||||
<? } ?>
|
||||
|
||||
<!-- 페이지 -->
|
||||
<? echo $write_pages; ?>
|
||||
|
||||
<fieldset id="bo_sch">
|
||||
<legend>게시물 검색</legend>
|
||||
|
||||
<form name="fsearch" method="get">
|
||||
<input type="hidden" name="bo_table" value="<?=$bo_table?>">
|
||||
<input type="hidden" name="sca" value="<?=$sca?>">
|
||||
<input type="hidden" name="sop" value="and">
|
||||
<select name="sfl" title="검색대상">
|
||||
<option value="wr_subject"<?=get_selected($sfl, 'wr_subject', true);?>>제목</option>
|
||||
<option value="wr_content"<?=get_selected($sfl, 'wr_content');?>>내용</option>
|
||||
<option value="wr_subject||wr_content"<?=get_selected($sfl, 'wr_subject||wr_content');?>>제목+내용</option>
|
||||
<option value="mb_id,1"<?=get_selected($sfl, 'mb_id,1');?>>회원아이디</option>
|
||||
<option value="mb_id,0"<?=get_selected($sfl, 'mb_id,0');?>>회원아이디(코)</option>
|
||||
<option value="wr_name,1"<?=get_selected($sfl, 'wr_name,1');?>>글쓴이</option>
|
||||
<option value="wr_name,0"<?=get_selected($sfl, 'wr_name,0');?>>글쓴이(코)</option>
|
||||
</select>
|
||||
<input name="stx" value="<?=stripslashes($stx)?>" title="검색어(필수)" required class="required" size="15" maxlength="15">
|
||||
<input type="submit" value="검색">
|
||||
</form>
|
||||
</fieldset>
|
||||
|
||||
<? if ($is_checkbox) { ?>
|
||||
<script>
|
||||
function all_checked(sw) {
|
||||
var f = document.fboardlist;
|
||||
|
||||
for (var i=0; i<f.length; i++) {
|
||||
if (f.elements[i].name == "chk_wr_id[]")
|
||||
f.elements[i].checked = sw;
|
||||
}
|
||||
}
|
||||
|
||||
function fboardlist_submit(f) {
|
||||
var chk_count = 0;
|
||||
|
||||
for (var i=0; i<f.length; i++) {
|
||||
if (f.elements[i].name == "chk_wr_id[]" && f.elements[i].checked)
|
||||
chk_count++;
|
||||
}
|
||||
|
||||
if (!chk_count) {
|
||||
alert(document.pressed + "할 게시물을 하나 이상 선택하세요.");
|
||||
return false;
|
||||
}
|
||||
|
||||
if(document.pressed == "선택복사") {
|
||||
select_copy("copy");
|
||||
return;
|
||||
}
|
||||
|
||||
if(document.pressed == "선택이동") {
|
||||
select_copy("move");
|
||||
return;
|
||||
}
|
||||
|
||||
if(document.pressed == "선택삭제") {
|
||||
if (!confirm("선택한 게시물을 정말 삭제하시겠습니까?\n\n한번 삭제한 자료는 복구할 수 없습니다"))
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// 선택한 게시물 복사 및 이동
|
||||
function select_copy(sw) {
|
||||
var f = document.fboardlist;
|
||||
|
||||
if (sw == 'copy')
|
||||
str = "복사";
|
||||
else
|
||||
str = "이동";
|
||||
|
||||
var sub_win = window.open("", "move", "left=50, top=50, width=500, height=550, scrollbars=1");
|
||||
|
||||
f.sw.value = sw;
|
||||
f.target = "move";
|
||||
f.action = "./move.php";
|
||||
f.submit();
|
||||
}
|
||||
</script>
|
||||
<? } ?>
|
||||
<!-- 게시판 목록 끝 -->
|
||||
140
mobile/skin/board/basic/style.css
Normal file
@ -0,0 +1,140 @@
|
||||
/* 게시판 목록 */
|
||||
#bo_list_title {padding:0 1em}
|
||||
.bo_list table {margin-bottom:1.5em;width:100%;border-collapse:collapse;border-spacing:0}
|
||||
|
||||
.bo_list th {}
|
||||
.bo_list th a {color:#fff;text-decoration:none}
|
||||
|
||||
.bo_list td {border-bottom:1px solid #ddd}
|
||||
|
||||
.bo_list img {margin-right:4px}
|
||||
.bo_list img:nth-last-of-type(1) {margin-right:0}
|
||||
|
||||
/* 관리자일 때 */
|
||||
#bo_list_admin th:nth-of-type(1) {width:40px}
|
||||
#bo_list_admin th:nth-of-type(3) {width:100px}
|
||||
|
||||
#bo_list_admin td:nth-of-type(1) {text-align:center}
|
||||
#bo_list_admin td:nth-of-type(3) {text-align:center}
|
||||
|
||||
/* 관리자가 아닐 때 */
|
||||
#bo_list th:nth-of-type(2) {width:100px}
|
||||
|
||||
#bo_list td:nth-of-type(2) {text-align:center}
|
||||
|
||||
/* 게시판 목록 공통 */
|
||||
.bo_fx {margin-bottom:0.3em;padding:0.5em 1em}
|
||||
.bo_fx:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
.bo_fx ul {margin:0;padding:0;list-style:none}
|
||||
#bo_list_total {float:left;padding:0;height:2.5em;line-height:2.5em}
|
||||
.btn_bo_user {float:right;margin:0;padding:0;list-style:none}
|
||||
.btn_bo_user li {float:left;margin-left:0.3em}
|
||||
.btn_bo_adm {float:left}
|
||||
.btn_bo_adm li {float:left;margin-right:0.3em}
|
||||
.btn_bo_adm input {padding:0 1em;height:2em;border:1px solid #e8180c !important;background:#e8180c;color:#fff;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-appearance:none}
|
||||
.bo_notice td {background:#f7f7f7}
|
||||
.bo_notice td a {font-weight:bold}
|
||||
.td_num strong {color:#000}
|
||||
.bo_cate_link {display:inline-block;margin:0 3px 0 0;padding:0 6px 0 0;border-right:1px solid #e7f1ed;color:#999 !important;font-weight:bold;text-decoration:none} /* 글제목줄 분류스타일 */
|
||||
.bo_current {color:#e8180c}
|
||||
.td_subject img {margin-left:3px}
|
||||
.cnt_cmt {font-weight:bold}
|
||||
|
||||
#bo_sch {margin-bottom:1em;padding-top:0.3em;text-align:center}
|
||||
|
||||
/* 게시판 읽기 */
|
||||
#bo_v {margin-bottom:1.5em;padding-bottom:1.5em}
|
||||
|
||||
#bo_v_cate {padding:0 1em;color:#999;font-size:0.9em;font-weight:bold}
|
||||
|
||||
#bo_v_h1 {padding:0 0.7em 0.5em;font-size:1.2em}
|
||||
|
||||
#bo_v_info {padding:0 0.9em 1em;border-bottom:1px solid #ddd}
|
||||
#bo_v_info h2 {margin:0;padding:0;height:0;overflow:hidden}
|
||||
#bo_v_info {}
|
||||
#bo_v_info strong {display:inline-block;margin:0 0 0 0.3em;font-weight:normal}
|
||||
|
||||
#bo_v_file {}
|
||||
#bo_v_file h2 {margin:0;padding:0;height:0;overflow:hidden}
|
||||
#bo_v_file ul {margin:0;padding:0;list-style:none}
|
||||
#bo_v_file li {padding:0 1em;border-bottom:1px solid #eee;background:#f7f7f7}
|
||||
#bo_v_file a {display:inline-block;padding:0.5em 0;color:#000}
|
||||
#bo_v_file a:focus,
|
||||
#bo_v_file a:hover,
|
||||
#bo_v_file a:active {text-decoration:none}
|
||||
.bo_v_file_cnt {display:inline-block;margin:0 1em}
|
||||
|
||||
#bo_v_link {}
|
||||
#bo_v_link h2 {margin:0;padding:0;height:0;overflow:hidden}
|
||||
#bo_v_link ul {margin:0;padding:0;list-style:none}
|
||||
#bo_v_link li {padding:0 1em;border-bottom:1px solid #eee;background:#f7f7f7}
|
||||
#bo_v_link a {display:inline-block;padding:0.5em 0;color:#000}
|
||||
#bo_v_link a:focus,
|
||||
#bo_v_link a:hover,
|
||||
#bo_v_link a:active {text-decoration:none}
|
||||
.bo_v_link_cnt {display:inline-block;margin:0 1em}
|
||||
|
||||
#bo_v_top {margin:0 0 1em;padding:1em}
|
||||
#bo_v_top:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
#bo_v_top h2 {margin:0;padding:0;height:0;overflow:hidden}
|
||||
#bo_v_top ul {list-style:none}
|
||||
|
||||
#bo_v_bot {padding:0 1em}
|
||||
#bo_v_bot:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
#bo_v_bot h2 {margin:0;padding:0;height:0;overflow:hidden}
|
||||
#bo_v_bot ul {margin:0;padding:0;list-style:none}
|
||||
|
||||
.bo_v_nb {float:left}
|
||||
.bo_v_nb li {float:left;margin-right:0.3em}
|
||||
.bo_v_com {float:right}
|
||||
.bo_v_com li {float:left;margin-left:0.3em}
|
||||
|
||||
#bo_v_atc {min-height:200px;padding:0 1em;min-height:200px}
|
||||
#bo_v_atc h1 {margin:0;padding:0;height:0;overflow:hidden}
|
||||
|
||||
#bo_v_img {margin:0 0 1em;width:100%;overflow:hidden:zoom:1}
|
||||
#bo_v_img:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
#bo_v_img img {margin-bottom:1.5em;max-width:100%;height:auto}
|
||||
|
||||
#bo_v_con {margin-bottom:2em;width:100%;line-height:1.7em;word-break:break-all;overflow:hidden}
|
||||
#bo_v_con a {color:#000;text-decoration:underline}
|
||||
#bo_v_con img {max-width:100%;height:auto}
|
||||
|
||||
#bo_v_act {margin-bottom:2em;text-align:center}
|
||||
#bo_v_act a {margin-right:0.3em;vertical-align:top}
|
||||
#bo_v_act span {display:inline-block;margin-right:0.3em;padding:0 1em;border:1px solid #eee !important;background:#fafafa !important;color:#000 !important;text-decoration:none !important;line-height:2em;vertical-align:top}
|
||||
#bo_v_act strong {color:#ff3061}
|
||||
#bo_v_act_good,
|
||||
#bo_v_act_nogood {display:inline-block;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
|
||||
|
||||
#bo_v form {padding-top:1.5em}
|
||||
|
||||
/* 게시판 댓글 */
|
||||
#bo_vc {margin:0 0 0.5em;padding:1.5em 1.5em 0.5em;border-top:1px solid #cfded8;border-bottom:1px solid #cfded8;background:#f7f7f7}
|
||||
#bo_vc h2 {margin-bottom:0.5em}
|
||||
#bo_vc article {padding:0 0 0.5em;border-top:1px dotted #ccc}
|
||||
#bo_vc header {position:relative;padding:1.3em 0 0.3em}
|
||||
#bo_vc header .icon_reply {position:absolute;top:1.5em;left:-1.3em}
|
||||
#bo_vc .sv_member,
|
||||
#bo_vc .sv_guest {font-weight:bold}
|
||||
.bo_vc_hdinfo {display:inline-block;margin:0 1em 0 0.3em}
|
||||
#bo_vc h1 {width:0;height:0;font-size:0;line-height:0;overflow:hidden}
|
||||
#bo_vc a {color:#000;text-decoration:none}
|
||||
#bo_vc p {padding:0 0 0.3em;line-height:1.8em}
|
||||
#bo_vc p a {text-decoration:underline}
|
||||
#bo_vc_empty {margin:0;padding:1.5em !important;border-bottom:1px dotted #ccc;text-align:center}
|
||||
#bo_vc fieldset {margin:0 0 1em;padding:0}
|
||||
#bo_vc #bo_vc_winfo {float:left}
|
||||
#bo_vc footer {zoom:1}
|
||||
#bo_vc footer:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
|
||||
.bo_vc_act {float:right;margin:0;list-style:none}
|
||||
.bo_vc_act:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
.bo_vc_act li {float:left;margin-left:0.3em}
|
||||
|
||||
#bo_vc_w {position:relative;margin-bottom:1em;padding:0 1.5em 1.5em;border-bottom:1px solid #cfded8}
|
||||
#bo_vc_w h2 {padding:1em 0 0.3em}
|
||||
#bo_vc_w #char_cnt {display:block;margin-bottom:0.3em}
|
||||
#bo_vc_w textarea {width:99%}
|
||||
|
||||
#bo_vc form {padding:0}
|
||||
262
mobile/skin/board/basic/view.skin.php
Normal file
@ -0,0 +1,262 @@
|
||||
<?
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
?>
|
||||
|
||||
<div id="bo_v" style="width:<?=$width;?>">
|
||||
|
||||
<p id="bo_v_cate">
|
||||
<?=$board['bo_subject']?>
|
||||
<? if ($category_name) { // 분류가 지정되었다면 ?><?=($category_name ? "{$view['ca_name']} " : "");?><? } // 분류 출력 끝 ?>
|
||||
</p>
|
||||
|
||||
<h1 id="bo_v_h1"><?=cut_str(get_text($view['wr_subject']), 70) // 글제목 출력?></h1>
|
||||
|
||||
<section id="bo_v_info">
|
||||
<h2>게시물 정보</h2>
|
||||
작성자 <strong><?=$view['wr_name']?><? if ($is_ip_view) { echo " ($ip)"; } ?></strong><br>
|
||||
작성일 <strong><?=date("y-m-d H:i", strtotime($view['wr_datetime']))?></strong><br>
|
||||
조회 <strong><?=number_format($view['wr_hit'])?>회</strong><br>
|
||||
댓글 <strong><?=number_format($view['wr_comment'])?>건</strong>
|
||||
</section>
|
||||
|
||||
<?
|
||||
if ($view['file']['count']) {
|
||||
$cnt = 0;
|
||||
for ($i=0; $i<count($view['file']); $i++) {
|
||||
if (isset($view['file'][$i]['source']) && $view['file'][$i]['source'] && !$view['file'][$i]['view'])
|
||||
$cnt++;
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
<? if($cnt) { ?>
|
||||
<section id="bo_v_file">
|
||||
<h2>첨부파일</h2>
|
||||
<ul>
|
||||
<?
|
||||
// 가변 파일
|
||||
for ($i=0; $i<count($view['file']); $i++) {
|
||||
if (isset($view['file'][$i]['source']) && $view['file'][$i]['source'] && !$view['file'][$i]['view']) {
|
||||
?>
|
||||
<li>
|
||||
<a href="<? echo $view['file'][$i]['href']; ?>" onclick="javascript:file_download('<? echo $view['file'][$i]['href'].'&confirm=yes'; ?>', '<?=$view['file'][$i]['source']?>'); return false;">
|
||||
<img src="<?=$board_skin_url?>/img/icon_file.gif" alt="첨부파일">
|
||||
<strong><?=$view['file'][$i]['source']?></strong>
|
||||
<span> (<?=$view['file'][$i]['size']?>)</span>
|
||||
</a>
|
||||
<span class="bo_v_file_cnt"><?=$view['file'][$i]['download']?>회 다운로드</span>
|
||||
<span>DATE : <?=$view['file'][$i]['datetime']?></span>
|
||||
</li>
|
||||
<?
|
||||
}
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
</section>
|
||||
<? } ?>
|
||||
|
||||
<?
|
||||
if (implode('', $view['link'])) {
|
||||
?>
|
||||
<section id="bo_v_link">
|
||||
<h2>관련링크</h2>
|
||||
<ul>
|
||||
<?
|
||||
// 링크
|
||||
$cnt = 0;
|
||||
for ($i=1; $i<=count($view['link']); $i++) {
|
||||
if ($view['link'][$i]) {
|
||||
$cnt++;
|
||||
$link = cut_str($view['link'][$i], 70);
|
||||
?>
|
||||
<li>
|
||||
<a href="<?=$view['link_href'][$i]?>" target="_blank">
|
||||
<img src="<?=$board_skin_url?>/img/icon_link.gif" alt="관련링크">
|
||||
<strong><?=$link?></strong>
|
||||
</a>
|
||||
<span class="bo_v_link_cnt"><?=$view['link_hit'][$i]?>회 연결</span>
|
||||
</li>
|
||||
<?
|
||||
}
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
</section>
|
||||
<? } ?>
|
||||
|
||||
<nav id="bo_v_top">
|
||||
<h2>게시물 상단 버튼</h2>
|
||||
<?
|
||||
ob_start();
|
||||
?>
|
||||
<? if ($prev_href || $next_href) { ?>
|
||||
<ul class="bo_v_nb">
|
||||
<? if ($prev_href) { ?><li><a href="<?=$prev_href?>" class="btn_b01">이전글</a></li><? } ?>
|
||||
<? if ($next_href) { ?><li><a href="<?=$next_href?>" class="btn_b01">다음글</a></li><? } ?>
|
||||
</ul>
|
||||
<? } ?>
|
||||
|
||||
<ul class="bo_v_com">
|
||||
<? if ($update_href) { ?><li><a href="<?=$update_href?>" class="btn_b01">수정</a></li><? } ?>
|
||||
<? if ($delete_href) { ?><li><a href="<?=$delete_href?>" class="btn_b01" onclick="del(this.href); return false;">삭제</a></li><? } ?>
|
||||
<? if ($copy_href) { ?><li><a href="<?=$copy_href?>" class="btn_admin" onclick="board_move(this.href); return false;">복사</a></li><? } ?>
|
||||
<? if ($move_href) { ?><li><a href="<?=$move_href?>" class="btn_admin" onclick="board_move(this.href); return false;">이동</a></li><? } ?>
|
||||
<? if ($search_href) { ?><li><a href="<?=$search_href?>" class="btn_b01">검색</a></li><? } ?>
|
||||
<li><a href="<?=$list_href?>" class="btn_b01">목록</a></li>
|
||||
<? if ($reply_href) { ?><li><a href="<?=$reply_href?>" class="btn_b01">답변</a></li><? } ?>
|
||||
<? if ($write_href) { ?><li><a href="<?=$write_href?>" class="btn_b02">글쓰기</a></li><? } ?>
|
||||
</ul>
|
||||
<?
|
||||
$link_buttons = ob_get_contents();
|
||||
ob_end_flush();
|
||||
?>
|
||||
</nav>
|
||||
|
||||
<article id="bo_v_atc">
|
||||
<header>
|
||||
<h1>본문</h1>
|
||||
</header>
|
||||
|
||||
<?
|
||||
// 파일 출력
|
||||
$v_img_count = count($view['file']);
|
||||
if($v_img_count) {
|
||||
echo "<div id=\"bo_v_img\">\n";
|
||||
|
||||
for ($i=0; $i<=count($view['file']); $i++) {
|
||||
if ($view['file'][$i]['view']) {
|
||||
//echo $view['file'][$i]['view'];
|
||||
echo get_view_thumbnail($view['file'][$i]['view']);
|
||||
}
|
||||
}
|
||||
|
||||
echo "</div>\n";
|
||||
}
|
||||
?>
|
||||
|
||||
<div id="bo_v_con"><?=get_view_thumbnail($view['content']);?></div>
|
||||
<?//echo $view[rich_content]; // {이미지:0} 과 같은 코드를 사용할 경우?>
|
||||
|
||||
<? if ($is_signature) { ?><p><?=$signature?></p><? } ?>
|
||||
|
||||
<? if ($scrap_href || $good_href || $nogood_href) { ?>
|
||||
<div id="bo_v_act">
|
||||
<? if ($scrap_href) { ?><a href="<?=$scrap_href; ?>" target="_blank" class="btn_b01" onclick="win_scrap(this.href); return false;">스크랩</a><? } ?>
|
||||
|
||||
<? if ($good_href) {?>
|
||||
<a href="<?=$good_href.'&'.$qstr?>" id="good_button" class="btn_b01">추천 <strong><?=number_format($view['wr_good'])?></strong></a>
|
||||
<b id="bo_v_act_good"></b>
|
||||
<? } ?>
|
||||
<? if ($nogood_href) {?>
|
||||
<a href="<?=$nogood_href.'&'.$qstr?>" id="nogood_button" class="btn_b01">비추천 <strong><?=number_format($view['wr_nogood'])?></strong></a>
|
||||
<b id="bo_v_act_nogood"></b>
|
||||
<? } ?>
|
||||
</div>
|
||||
<? } else {
|
||||
if($board['bo_use_good'] || $board['bo_use_nogood']) {
|
||||
?>
|
||||
<div id="bo_v_act">
|
||||
<? if($board['bo_use_good']) { ?><span>추천 <strong><?=number_format($view['wr_good'])?></strong></span><? } ?>
|
||||
<? if($board['bo_use_nogood']) { ?><span>비추천 <strong><?=number_format($view['wr_nogood'])?></strong></span><? } ?>
|
||||
</div>
|
||||
<?
|
||||
}
|
||||
}
|
||||
?>
|
||||
</article>
|
||||
|
||||
<?
|
||||
// 코멘트 입출력
|
||||
include_once('./view_comment.php');
|
||||
?>
|
||||
|
||||
<nav id="bo_v_bot">
|
||||
<h2>게시물 하단 버튼</h2>
|
||||
|
||||
<!-- 링크 버튼 -->
|
||||
<?=$link_buttons?>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<script>
|
||||
function file_download(link, file) {
|
||||
<? if ($board['bo_download_point'] < 0) { ?>if (confirm("'"+file+"' 파일을 다운로드 하시면 포인트가 차감(<?=number_format($board['bo_download_point'])?>점)됩니다.\n\n포인트는 게시물당 한번만 차감되며 다음에 다시 다운로드 하셔도 중복하여 차감하지 않습니다.\n\n그래도 다운로드 하시겠습니까?"))<?}?>
|
||||
document.location.href=link;
|
||||
}
|
||||
|
||||
function board_move(href)
|
||||
{
|
||||
window.open(href, "boardmove", "left=50, top=50, width=500, height=550, scrollbars=1");
|
||||
}
|
||||
</script>
|
||||
|
||||
<!-- 게시글 보기 끝 -->
|
||||
|
||||
<script>
|
||||
// 이미지 등비율 리사이징
|
||||
$(window).load(function() {
|
||||
view_image_resize();
|
||||
});
|
||||
|
||||
$(function() {
|
||||
$("a.view_image").click(function() {
|
||||
window.open(this.href, "large_image", "top=10,left=10,width=10,height=10,resizable=yes,scrollbars=no,status=no");
|
||||
return false;
|
||||
});
|
||||
|
||||
// 추천, 비추천
|
||||
$("#good_button, #nogood_button").click(function() {
|
||||
var $tx;
|
||||
if(this.id == "good_button")
|
||||
$tx = $("#bo_v_act_good");
|
||||
else
|
||||
$tx = $("#bo_v_act_nogood");
|
||||
|
||||
excute_good(this.href, $(this), $tx);
|
||||
return false;
|
||||
});
|
||||
});
|
||||
|
||||
function view_image_resize()
|
||||
{
|
||||
var $img = $("#bo_v_atc img");
|
||||
var img_wrap = $("#bo_v_atc").width();
|
||||
|
||||
$img.each(function() {
|
||||
var img_width = $(this).width();
|
||||
$(this).data("width", img_width); // 원래 이미지 사이즈
|
||||
if (img_width > img_wrap) {
|
||||
$(this).addClass("img_fix");
|
||||
} else if (img_width <= img_wrap && img_width >= $(this).data("width")) {
|
||||
$(this).removeClass("img_fix");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function excute_good(href, $el, $tx)
|
||||
{
|
||||
$.post(
|
||||
href,
|
||||
{ js: "on" },
|
||||
function(data) {
|
||||
if(data.error) {
|
||||
alert(data.error);
|
||||
return false;
|
||||
}
|
||||
|
||||
if(data.count) {
|
||||
$el.find("strong").text(number_format(String(data.count)));
|
||||
if($tx.attr("id").search("nogood") > -1) {
|
||||
$tx.text("이 글을 비추천하셨습니다.");
|
||||
} else {
|
||||
$tx.text("이 글을 추천하셨습니다.");
|
||||
}
|
||||
}
|
||||
}, "json"
|
||||
);
|
||||
}
|
||||
</script>
|
||||
289
mobile/skin/board/basic/view_comment.skin.php
Normal file
@ -0,0 +1,289 @@
|
||||
<?
|
||||
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
|
||||
<script>
|
||||
// 글자수 제한
|
||||
var char_min = parseInt(<?=$comment_min?>); // 최소
|
||||
var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
</script>
|
||||
|
||||
<!-- 댓글 리스트 -->
|
||||
<section id="bo_vc">
|
||||
<h2>댓글목록</h2>
|
||||
<?
|
||||
for ($i=0; $i<count($list); $i++) {
|
||||
$comment_id = $list[$i]['wr_id'];
|
||||
$cmt_depth = ""; // 댓글단계
|
||||
$cmt_depth = strlen($list[$i]['wr_comment_reply']) * 20;
|
||||
$str = $list[$i]['content'];
|
||||
if (strstr($list[$i]['wr_option'], "secret"))
|
||||
$str = $str;
|
||||
$str = preg_replace("/\[\<a\s.*href\=\"(http|https|ftp|mms)\:\/\/([^[:space:]]+)\.(mp3|wma|wmv|asf|asx|mpg|mpeg)\".*\<\/a\>\]/i", "<script>doc_write(obj_movie('$1://$2.$3'));</script>", $str);
|
||||
?>
|
||||
<article id="c_<?=$comment_id?>" <?if ($cmt_depth) {?>style="margin-left:<?=$cmt_depth?>px;border-top-color:#e0e0e0"<?}?>>
|
||||
<header>
|
||||
<h1><?=$list[$i]['wr_name']?>님의 댓글</h1>
|
||||
<?=$list[$i]['name']?>
|
||||
<? if ($cmt_depth) {?><img src="<?=$board_skin_url?>/img/icon_reply.gif" alt="댓글의 댓글" class="icon_reply"><? } ?>
|
||||
<? if ($is_ip_view) { ?>
|
||||
아이피
|
||||
<span class="bo_vc_hdinfo"><?=$list[$i]['ip'];?></span>
|
||||
<? } ?>
|
||||
작성일
|
||||
<span class="bo_vc_hdinfo"><time datetime="<?=date('Y-m-d\TH:i:s+09:00', strtotime($list[$i]['datetime']))?>"><?=$list[$i]['datetime']?></time></span>
|
||||
</header>
|
||||
|
||||
<!-- 댓글 출력 -->
|
||||
<p>
|
||||
<? if (strstr($list[$i]['wr_option'], "secret")) echo "<img src=\"".$board_skin_url."/img/icon_secret.gif\" alt=\"비밀글\">";?>
|
||||
<?=$str?>
|
||||
</p>
|
||||
|
||||
<span id="edit_<?=$comment_id?>"></span><!-- 수정 -->
|
||||
<span id="reply_<?=$comment_id?>"></span><!-- 답변 -->
|
||||
|
||||
<input type="hidden" id="secret_comment_<?=$comment_id?>" value="<?=strstr($list[$i]['wr_option'],"secret")?>">
|
||||
<textarea id="save_comment_<?=$comment_id?>" style="display:none"><?=get_text($list[$i]['content1'], 0)?></textarea>
|
||||
|
||||
<? if($list[$i]['is_reply'] || $list[$i]['is_edit'] || $list[$i]['is_del']) {
|
||||
$query_string = str_replace("&", "&", $_SERVER['QUERY_STRING']);
|
||||
|
||||
if($w == 'cu') {
|
||||
$sql = " select wr_id, wr_content from $write_table where wr_id = '$c_id' and wr_is_comment = '1' ";
|
||||
$cmt = sql_fetch($sql);
|
||||
$c_wr_content = $cmt['wr_content'];
|
||||
}
|
||||
|
||||
$c_reply_href = './board.php?'.$query_string.'&c_id='.$comment_id.'&w=c#bo_vc_w';
|
||||
$c_edit_href = './board.php?'.$query_string.'&c_id='.$comment_id.'&w=cu#bo_vc_w';
|
||||
?>
|
||||
<footer>
|
||||
<ul class="bo_vc_act">
|
||||
<? if ($list[$i]['is_reply']) { ?><li><a href="<? echo $c_reply_href; ?>" onclick="comment_box('<?=$comment_id?>', 'c'); return false;">답변</a></li><? } ?>
|
||||
<? if ($list[$i]['is_edit']) { ?><li><a href="<? echo $c_edit_href; ?>" onclick="comment_box('<?=$comment_id?>', 'cu'); return false;">수정</a></li><? } ?>
|
||||
<? if ($list[$i]['is_del']) { ?><li><a href="<? echo $list[$i]['del_link']; ?>" onclick="comment_delete('<?=$list[$i]['del_link']?>'); return false;">삭제</a></li><? } ?>
|
||||
</ul>
|
||||
</footer>
|
||||
<? } ?>
|
||||
</article>
|
||||
<?}?>
|
||||
<? if ($i == 0) { //댓글이 없다면 ?><p id="bo_vc_empty">등록된 댓글이 없습니다.</p><? } ?>
|
||||
|
||||
</section>
|
||||
|
||||
<? if ($is_comment_write) {
|
||||
if($w == '')
|
||||
$w = 'c';
|
||||
?>
|
||||
<aside id="bo_vc_w">
|
||||
<h2>댓글쓰기</h2>
|
||||
<form name="fviewcomment" action="./write_comment_update.php" onsubmit="return fviewcomment_submit(this);" method="post" autocomplete="off">
|
||||
<input type="hidden" name="w" value="<?=$w?>" id="w">
|
||||
<input type="hidden" name="bo_table" value="<?=$bo_table?>">
|
||||
<input type="hidden" name="wr_id" value="<?=$wr_id?>">
|
||||
<input type="hidden" name="comment_id" value="<?=$c_id?>" id="comment_id">
|
||||
<input type="hidden" name="sca" value="<?=$sca?>">
|
||||
<input type="hidden" name="sfl" value="<?=$sfl?>">
|
||||
<input type="hidden" name="stx" value="<?=$stx?>">
|
||||
<input type="hidden" name="spt" value="<?=$spt?>">
|
||||
<input type="hidden" name="page" value="<?=$page?>">
|
||||
<input type="hidden" name="is_good" value="">
|
||||
|
||||
<table class="frm_tbl">
|
||||
<tbody>
|
||||
<? if ($is_guest) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_name">이름<strong class="sound_only">필수</strong></label></th>
|
||||
<td><input type="text" name="wr_name" id="wr_name" required class="frm_input required" size="5" maxLength="20"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_password">패스워드<strong class="sound_only">필수</strong></label></th>
|
||||
<td><input type="password" name="wr_password" id="wr_password" required class="frm_input required" size="10" maxLength="20"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_secret">비밀글사용</label></th>
|
||||
<td><input type="checkbox" name="wr_secret" value="secret" id="wr_secret"></td>
|
||||
</tr>
|
||||
<? if ($is_guest) { ?>
|
||||
<tr>
|
||||
<th scope="row">자동등록방지</th>
|
||||
<td><?=$captcha_html;?></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
<tr>
|
||||
<th scope="row">내용</th>
|
||||
<td>
|
||||
<? if ($comment_min || $comment_max) { ?><strong id="char_cnt"><span id="char_count"></span>글자</strong><?}?>
|
||||
<textarea id="wr_content" title="댓글내용입력(필수)" name="wr_content" required
|
||||
<? if ($comment_min || $comment_max) { ?>onkeyup="check_byte('wr_content', 'char_count');"<?}?>><? echo $c_wr_content; ?></textarea>
|
||||
<? if ($comment_min || $comment_max) { ?><script> check_byte('wr_content', 'char_count'); </script><?}?>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div class="btn_confirm">
|
||||
<input type="submit" class="btn_submit" value="댓글등록">
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</aside>
|
||||
|
||||
<script>
|
||||
var save_before = '';
|
||||
var save_html = document.getElementById('bo_vc_w').innerHTML;
|
||||
|
||||
function good_and_write()
|
||||
{
|
||||
var f = document.fviewcomment;
|
||||
if (fviewcomment_submit(f)) {
|
||||
f.is_good.value = 1;
|
||||
f.submit();
|
||||
} else {
|
||||
f.is_good.value = 0;
|
||||
}
|
||||
}
|
||||
|
||||
function fviewcomment_submit(f)
|
||||
{
|
||||
var pattern = /(^\s*)|(\s*$)/g; // \s 공백 문자
|
||||
|
||||
f.is_good.value = 0;
|
||||
|
||||
/*
|
||||
var s;
|
||||
if (s = word_filter_check(document.getElementById('wr_content').value))
|
||||
{
|
||||
alert("내용에 금지단어('"+s+"')가 포함되어있습니다");
|
||||
document.getElementById('wr_content').focus();
|
||||
return false;
|
||||
}
|
||||
*/
|
||||
|
||||
var subject = "";
|
||||
var content = "";
|
||||
$.ajax({
|
||||
url: g4_bbs_url+"/filter.ajax.php",
|
||||
type: "POST",
|
||||
data: {
|
||||
"subject": "",
|
||||
"content": f.wr_content.value
|
||||
},
|
||||
dataType: "json",
|
||||
async: false,
|
||||
cache: false,
|
||||
success: function(data, textStatus) {
|
||||
subject = data.subject;
|
||||
content = data.content;
|
||||
}
|
||||
});
|
||||
|
||||
if (content) {
|
||||
alert("내용에 금지단어('"+content+"')가 포함되어있습니다");
|
||||
f.wr_content.focus();
|
||||
return false;
|
||||
}
|
||||
|
||||
// 양쪽 공백 없애기
|
||||
var pattern = /(^\s*)|(\s*$)/g; // \s 공백 문자
|
||||
document.getElementById('wr_content').value = document.getElementById('wr_content').value.replace(pattern, "");
|
||||
if (char_min > 0 || char_max > 0)
|
||||
{
|
||||
check_byte('wr_content', 'char_count');
|
||||
var cnt = parseInt(document.getElementById('char_count').innerHTML);
|
||||
if (char_min > 0 && char_min > cnt)
|
||||
{
|
||||
alert("댓글는 "+char_min+"글자 이상 쓰셔야 합니다.");
|
||||
return false;
|
||||
} else if (char_max > 0 && char_max < cnt)
|
||||
{
|
||||
alert("댓글는 "+char_max+"글자 이하로 쓰셔야 합니다.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else if (!document.getElementById('wr_content').value)
|
||||
{
|
||||
alert("댓글를 입력하여 주십시오.");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (typeof(f.wr_name) != 'undefined')
|
||||
{
|
||||
f.wr_name.value = f.wr_name.value.replace(pattern, "");
|
||||
if (f.wr_name.value == '')
|
||||
{
|
||||
alert('이름이 입력되지 않았습니다.');
|
||||
f.wr_name.focus();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (typeof(f.wr_password) != 'undefined')
|
||||
{
|
||||
f.wr_password.value = f.wr_password.value.replace(pattern, "");
|
||||
if (f.wr_password.value == '')
|
||||
{
|
||||
alert('패스워드가 입력되지 않았습니다.');
|
||||
f.wr_password.focus();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
<? if($is_guest) echo chk_captcha_js(); ?>
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function comment_box(comment_id, work)
|
||||
{
|
||||
var el_id;
|
||||
// 댓글 아이디가 넘어오면 답변, 수정
|
||||
if (comment_id)
|
||||
{
|
||||
if (work == 'c')
|
||||
el_id = 'reply_' + comment_id;
|
||||
else
|
||||
el_id = 'edit_' + comment_id;
|
||||
}
|
||||
else
|
||||
el_id = 'bo_vc_w';
|
||||
|
||||
if (save_before != el_id)
|
||||
{
|
||||
if (save_before)
|
||||
{
|
||||
document.getElementById(save_before).style.display = 'none';
|
||||
document.getElementById(save_before).innerHTML = '';
|
||||
}
|
||||
|
||||
document.getElementById(el_id).style.display = '';
|
||||
document.getElementById(el_id).innerHTML = save_html;
|
||||
// 댓글 수정
|
||||
if (work == 'cu')
|
||||
{
|
||||
document.getElementById('wr_content').value = document.getElementById('save_comment_' + comment_id).value;
|
||||
if (typeof char_count != 'undefined')
|
||||
check_byte('wr_content', 'char_count');
|
||||
if (document.getElementById('secret_comment_'+comment_id).value)
|
||||
document.getElementById('wr_secret').checked = true;
|
||||
else
|
||||
document.getElementById('wr_secret').checked = false;
|
||||
}
|
||||
|
||||
document.getElementById('comment_id').value = comment_id;
|
||||
document.getElementById('w').value = work;
|
||||
|
||||
save_before = el_id;
|
||||
}
|
||||
}
|
||||
|
||||
function comment_delete(url)
|
||||
{
|
||||
if (confirm("이 댓글를 삭제하시겠습니까?")) location.href = url;
|
||||
}
|
||||
|
||||
comment_box('', 'c'); // 댓글 입력폼이 보이도록 처리하기위해서 추가 (root님)
|
||||
</script>
|
||||
<? } ?>
|
||||
234
mobile/skin/board/basic/write.skin.php
Normal file
@ -0,0 +1,234 @@
|
||||
<?
|
||||
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
|
||||
<h1 id="wrapper_title"><?=$g4['title']?></h1>
|
||||
|
||||
<form name="fwrite" id="fwrite" action="<?=$action_url?>" onsubmit="return fwrite_submit(this);" method="post" enctype="multipart/form-data" autocomplete="off" style="width:<?=$width;?>">
|
||||
<input type="hidden" name="w" value="<?=$w?>">
|
||||
<input type="hidden" name="bo_table" value="<?=$bo_table?>">
|
||||
<input type="hidden" name="wr_id" value="<?=$wr_id?>">
|
||||
<input type="hidden" name="sca" value="<?=$sca?>">
|
||||
<input type="hidden" name="sfl" value="<?=$sfl?>">
|
||||
<input type="hidden" name="stx" value="<?=$stx?>">
|
||||
<input type="hidden" name="spt" value="<?=$spt?>">
|
||||
<input type="hidden" name="sst" value="<?=$sst?>">
|
||||
<input type="hidden" name="sod" value="<?=$sod?>">
|
||||
<input type="hidden" name="page" value="<?=$page?>">
|
||||
<?
|
||||
$option = '';
|
||||
$option_hidden = '';
|
||||
if ($is_notice || $is_html || $is_secret || $is_mail) {
|
||||
$option = '';
|
||||
if ($is_notice) {
|
||||
$option .= PHP_EOL.'<input type="checkbox" id="notice" name="notice" value="1" '.$notice_checked.'>'.PHP_EOL.'<label for="notice">공지</label>';
|
||||
}
|
||||
|
||||
if ($is_html) {
|
||||
if ($is_dhtml_editor) {
|
||||
$option_hidden .= '<input type="hidden" value="html1" name="html">';
|
||||
} else {
|
||||
$option .= PHP_EOL.'<input type="checkbox" id="html" name="html" onclick="html_auto_br(this);" value="'.$html_value.'" '.$html_checked.'>'.PHP_EOL.'<label for="html">html</label>';
|
||||
}
|
||||
}
|
||||
|
||||
if ($is_secret) {
|
||||
if ($is_admin || $is_secret==1) {
|
||||
$option .= PHP_EOL.'<input type="checkbox" id="secret" name="secret" value="secret" '.$secret_checked.'>'.PHP_EOL.'<label for="secret">비밀글</label>';
|
||||
} else {
|
||||
$option_hidden .= '<input type="hidden" name="secret" value="secret">';
|
||||
}
|
||||
}
|
||||
|
||||
if ($is_mail) {
|
||||
$option .= PHP_EOL.'<input type="checkbox" id="mail" name="mail" value="mail" '.$recv_email_checked.'>'.PHP_EOL.'<label for="mail">답변메일받기</label>';
|
||||
}
|
||||
}
|
||||
|
||||
echo $option_hidden;
|
||||
?>
|
||||
|
||||
<table id="bo_w" class="frm_tbl">
|
||||
<tbody>
|
||||
<? if ($is_name) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_name">이름<strong class="sound_only">필수</strong></label></th>
|
||||
<td><input type="text" name="wr_name" value="<?=$name?>" id="wr_name" required class="frm_input required" size="10" maxlength="20"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($is_password) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_password">패스워드<strong class="sound_only">필수</strong></label></th>
|
||||
<td><input type="password" name="wr_password" id="wr_password" class="frm_input" maxlength="20" <?=$password_required?>></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($is_email) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_email">이메일</label></th>
|
||||
<td><input type="text" name="wr_email" value="<?=$email?>" id="wr_email" class="frm_input email" size="50" maxlength="100"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($is_homepage) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_homepage">홈페이지</label></th>
|
||||
<td><input type="text" name="wr_homepage" value="<?=$homepage?>" id="wr_homepage" class="frm_input" size="50"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($option) { ?>
|
||||
<tr>
|
||||
<th scope="row">옵션</th>
|
||||
<td><?=$option?></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($is_category) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="ca_name">분류<strong class="sound_only">필수</strong></label></th>
|
||||
<td>
|
||||
<select class="required" id="ca_name" name="ca_name" required>
|
||||
<option value="">선택하세요</option>
|
||||
<?=$category_option?>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_subject">제목<strong class="sound_only">필수</strong></label></th>
|
||||
<td><input type="text" name="wr_subject" value="<?=$subject?>" id="wr_subject" required class="frm_input required" size="50"></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_content">내용<strong class="sound_only">필수</strong></label></th>
|
||||
<td class="wr_content"><?=editor_html("wr_content", $content, $is_dhtml_editor);?></td>
|
||||
</tr>
|
||||
|
||||
<? for ($i=1; $is_link && $i<=G4_LINK_COUNT; $i++) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_link<?=$i?>">링크 #<?=$i?></label></th>
|
||||
<td><input type="text" name="wr_link<?=$i?>" value="<?if($w=="u"){echo$write['wr_link'.$i];}?>" id="wr_link<?=$i?>" class="frm_input" size="50"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? for ($i=0; $is_file && $i<$file_count; $i++) { ?>
|
||||
<tr>
|
||||
<th scope="row">파일 #<?=$i+1?></th>
|
||||
<td>
|
||||
<input type="file" name="bf_file[]" title="파일첨부 <?=$i+1?> : 용량 <?=$upload_max_filesize?> 이하만 업로드 가능" class="frm_file frm_input">
|
||||
<? if ($is_file_content) { ?>
|
||||
<input type="text" name="bf_content[]" value="<? echo $file[$i]['bf_content']; ?>" title="파일 설명을 입력해주세요." class="frm_file frm_input" size="50">
|
||||
<?}?>
|
||||
<? if($w == 'u' && $file[$i]['file']) { ?>
|
||||
<input type="checkbox" id="bf_file_del<?=$i?>" name="bf_file_del[<? echo $i; ?>]" value="1"> <label for="bf_file_del<?=$i?>"><? echo $file[$i]['source'].'('.$file[$i]['size'].')'; ?> 파일 삭제</label>
|
||||
<? } ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?}?>
|
||||
|
||||
<? if ($is_guest) { //자동등록방지 ?>
|
||||
<tr>
|
||||
<th scope="row">자동등록방지</th>
|
||||
<td>
|
||||
<?=$captcha_html?>
|
||||
</td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div class="btn_confirm">
|
||||
<input type="submit" value="글쓰기" id="btn_submit" class="btn_submit" accesskey="s">
|
||||
<a href="./board.php?bo_table=<?=$bo_table?>" class="btn_cancel">취소</a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<script>
|
||||
<?
|
||||
// 관리자라면 분류 선택에 '공지' 옵션을 추가함
|
||||
if ($is_admin)
|
||||
{
|
||||
echo '
|
||||
if (ca_name_select = document.getElementById("ca_name")) {
|
||||
ca_name_select.options.length += 1;
|
||||
ca_name_select.options[ca_name_select.options.length-1].value = "공지";
|
||||
ca_name_select.options[ca_name_select.options.length-1].text = "공지";
|
||||
}';
|
||||
}
|
||||
?>
|
||||
|
||||
with (document.fwrite)
|
||||
{
|
||||
if (typeof(wr_name) != "undefined")
|
||||
wr_name.focus();
|
||||
else if (typeof(wr_subject) != "undefined")
|
||||
wr_subject.focus();
|
||||
else if (typeof(wr_content) != "undefined")
|
||||
wr_content.focus();
|
||||
|
||||
if (typeof(ca_name) != "undefined")
|
||||
if (w.value == "u") {
|
||||
ca_name.value = "<?=isset($write['ca_name'])?$write['ca_name']:'';?>";
|
||||
}
|
||||
}
|
||||
|
||||
function html_auto_br(obj)
|
||||
{
|
||||
if (obj.checked) {
|
||||
result = confirm("자동 줄바꿈을 하시겠습니까?\n\n자동 줄바꿈은 게시물 내용중 줄바뀐 곳을<br>태그로 변환하는 기능입니다.");
|
||||
if (result)
|
||||
obj.value = "html2";
|
||||
else
|
||||
obj.value = "html1";
|
||||
}
|
||||
else
|
||||
obj.value = "";
|
||||
}
|
||||
|
||||
function fwrite_submit(f)
|
||||
{
|
||||
<? echo get_editor_js('wr_content', $is_dhtml_editor); ?>
|
||||
<? echo chk_editor_js('wr_content', $is_dhtml_editor); ?>
|
||||
|
||||
var subject = "";
|
||||
var content = "";
|
||||
$.ajax({
|
||||
url: g4_bbs_url+"/filter.ajax.php",
|
||||
type: "POST",
|
||||
data: {
|
||||
"subject": f.wr_subject.value,
|
||||
"content": f.wr_content.value
|
||||
},
|
||||
dataType: "json",
|
||||
async: false,
|
||||
cache: false,
|
||||
success: function(data, textStatus) {
|
||||
subject = data.subject;
|
||||
content = data.content;
|
||||
}
|
||||
});
|
||||
|
||||
if (subject) {
|
||||
alert("제목에 금지단어('"+subject+"')가 포함되어있습니다");
|
||||
f.wr_subject.focus();
|
||||
return false;
|
||||
}
|
||||
|
||||
if (content) {
|
||||
alert("내용에 금지단어('"+content+"')가 포함되어있습니다");
|
||||
if (typeof(ed_wr_content) != "undefined")
|
||||
ed_wr_content.returnFalse();
|
||||
else
|
||||
f.wr_content.focus();
|
||||
return false;
|
||||
}
|
||||
|
||||
<? if ($is_guest) { echo chk_captcha_js(); } ?>
|
||||
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||