일반게시판 글읽기 작업 중

This commit is contained in:
whitedot
2012-11-27 18:17:13 +09:00
parent f6338eb417
commit 20d4346e32
3 changed files with 185 additions and 192 deletions

View File

@ -18,13 +18,13 @@ if ($config['cf_title'] == $g4['title']) $g4['title'] = '';
<div id="to_content"><a href="#wrapper">본문 바로가기</a></div>
<div id="logo"><a href="<?=$g4['path']?>/">처음으로</a></div>
<aside>
<div>
<ul>
<li><a href="<?=$g4['path']?>/bbs/login.php">로그인</a></li>
<li><a href="<?=$g4['path']?>/bbs/register.php">회원가입</a></li>
<li><a href="<?=$g4['path']?>/bbs/new.php">최근게시물</a></li>
</ul>
</aside>
</div>
<form name="fsearchbox" method="get" action="" onsubmit="return fsearchbox_submit(this);">
<input type="hidden" name="sfl" value="wr_subject||wr_content">

View File

@ -1,176 +1,169 @@
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
?>
<div style="height:12px; line-height:1px; font-size:1px;">&nbsp;</div>
<!-- 게시글 보기 시작 -->
<table width="<?=$width?>" align="center" cellpadding="0" cellspacing="0"><tr><td>
<div style="clear:both; height:30px;">
<div style="float:left; margin-top:6px;">
<img src="<?=$board_skin_path?>/img/icon_date.gif" align=absmiddle border='0'>
<span style="color:#888888;">작성일 : <?=date("y-m-d H:i", strtotime($view['wr_datetime']))?></span>
</div>
<!-- 링크 버튼 -->
<div style="float:right;">
<?
ob_start();
?>
<? if ($copy_href) { echo "<a href=\"$copy_href\"><img src='$board_skin_path/img/btn_copy.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($move_href) { echo "<a href=\"$move_href\"><img src='$board_skin_path/img/btn_move.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($search_href) { echo "<a href=\"$search_href\"><img src='$board_skin_path/img/btn_list_search.gif' border='0' align='absmiddle'></a> "; } ?>
<? echo "<a href=\"$list_href\"><img src='$board_skin_path/img/btn_list.gif' border='0' align='absmiddle'></a> "; ?>
<? if ($update_href) { echo "<a href=\"$update_href\"><img src='$board_skin_path/img/btn_modify.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($delete_href) { echo "<a href=\"$delete_href\"><img src='$board_skin_path/img/btn_delete.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($reply_href) { echo "<a href=\"$reply_href\"><img src='$board_skin_path/img/btn_reply.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($write_href) { echo "<a href=\"$write_href\"><img src='$board_skin_path/img/btn_write.gif' border='0' align='absmiddle'></a> "; } ?>
<?
$link_buttons = ob_get_contents();
ob_end_flush();
?>
</div>
<!-- 링크 버튼 -->
<div>
<? if ($update_href) { ?>
<a href="<?=$update_href?>">수정</a>
<? } ?>
<? if ($delete_href) { ?>
<a href="<?=$delete_href?>">삭제</a>
<? } ?>
</div>
<div style="border:1px solid #ddd; clear:both; height:34px; background:url(<?=$board_skin_path?>/img/title_bg.gif) repeat-x;">
<table border=0 cellpadding=0 cellspacing=0 width=100%>
<tr>
<td style="padding:8px 0 0 10px;">
<div style="color:#505050; font-size:13px; font-weight:bold; word-break:break-all;">
<? if ($is_category) { echo ($category_name ? "[{$view['ca_name']}] " : ""); } ?>
<?=cut_hangul_last(get_text($view['wr_subject']))?>
</div>
</td>
<td align="right" style="padding:6px 6px 0 0;" width=120>
<? if ($scrap_href) { echo "<a href=\"javascript:;\" onclick=\"win_scrap('$scrap_href');\"><img src='$board_skin_path/img/btn_scrap.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($trackback_url) { ?><a href="javascript:trackback_send_server('<?=$trackback_url?>');" style="letter-spacing:0;" title='주소 복사'><img src="<?=$board_skin_path?>/img/btn_trackback.gif" border='0' align="absmiddle"></a><?}?>
</td>
</tr>
</table>
</div>
<div style="height:3px; background:url(<?=$board_skin_path?>/img/title_shadow.gif) repeat-x; line-height:1px; font-size:1px;"></div>
<table border=0 cellpadding=0 cellspacing=0 width=<?=$width?>>
<tr>
<td height=30 background="<?=$board_skin_path?>/img/view_dot.gif" style="color:#888;">
<div style="float:left;">
&nbsp;글쓴이 :
<?=$view[name]?><? if ($is_ip_view) { echo "&nbsp;($ip)"; } ?>
</div>
<div style="float:right;">
<img src="<?=$board_skin_path?>/img/icon_view.gif" border='0' align=absmiddle> 조회 : <?=number_format($view['wr_hit'])?>
<? if ($is_good) { ?>&nbsp;<img src="<?=$board_skin_path?>/img/icon_good.gif" border='0' align=absmiddle> 추천 : <?=number_format($view['wr_good'])?><? } ?>
<? if ($is_nogood) { ?>&nbsp;<img src="<?=$board_skin_path?>/img/icon_nogood.gif" border='0' align=absmiddle> 비추천 : <?=number_format($view['wr_nogood'])?><? } ?>
&nbsp;
</div>
</td>
</tr>
<div>
<?
// 가변 파일
$cnt = 0;
for ($i=0; $i<count($view['file']); $i++) {
if ($view['file'][$i]['source'] && !$view['file'][$i]['view']) {
$cnt++;
echo "<tr><td height=30 background=\"$board_skin_path/img/view_dot.gif\">";
echo "&nbsp;&nbsp;<img src='{$board_skin_path}/img/icon_file.gif' align=absmiddle border='0'>";
echo "<a href=\"javascript:file_download('{$view['file'][$i]['href']}', '".urlencode($view['file'][$i]['source'])."');\" title='{$view['file'][$i]['content']}'>";
echo "&nbsp;<span style=\"color:#888;\">{$view['file'][$i]['source']} ({$view['file'][$i]['size']})</span>";
echo "&nbsp;<span style=\"color:#ff6600; font-size:11px;\">[{$view['file'][$i]['download']}]</span>";
echo "&nbsp;<span style=\"color:#d3d3d3; font-size:11px;\">DATE : {$view['file'][$i]['datetime']}</span>";
echo "</a></td></tr>";
}
}
// 링크
$cnt = 0;
for ($i=1; $i<=$g4['link_count']; $i++) {
if ($view['link'][$i]) {
$cnt++;
$link = cut_str($view['link'][$i], 70);
echo "<tr><td height=30 background=\"$board_skin_path/img/view_dot.gif\">";
echo "&nbsp;&nbsp;<img src='{$board_skin_path}/img/icon_link.gif' align=absmiddle border='0'>";
echo "<a href='{$view['link_href'][$i]}' target=_blank>";
echo "&nbsp;<span style=\"color:#888;\">{$link}</span>";
echo "&nbsp;<span style=\"color:#ff6600; font-size:11px;\">[{$view['link_hit'][$i]}]</span>";
echo "</a></td></tr>";
}
}
ob_start();
?>
<tr>
<td height="150" style="word-break:break-all; padding:10px;">
<? if ($copy_href) { ?>
<a href="<?=$copy_href?>">복사</a>
<? } ?>
<? if ($move_href) { ?>
<a href="<?=$move_href?>">이동</a>
<? } ?>
<? if ($search_href) { ?>
<a href="<?=$search_href?>">검색</a>
<? } ?>
<a href="<?=$list_href?>">목록</a>
<? if ($reply_href) { ?>
<a href="<?=$reply_href?>">답변</a>
<? } ?>
<? if ($write_href) { ?>
<a href="<?=$write_href?>">글쓰기</a>
<? } ?>
<?
$link_buttons = ob_get_contents();
ob_end_flush();
?>
</div>
<article>
<header>
<h1><? if ($is_category) { echo ($category_name ? "[{$view['ca_name']}] " : ""); } ?><?=cut_hangul_last(get_text($view['wr_subject']))?></h1>
<dl>
<dt>작성자</dt>
<dd><?=$view[name]?><? if ($is_ip_view) { echo "&nbsp;($ip)"; } ?></dd>
<dt>작성일</dt>
<dd><?=date("y-m-d H:i", strtotime($view['wr_datetime']))?></dd>
<dt>조회</dt>
<dd><?=number_format($view['wr_hit'])?>회</dd>
<dt>댓글</dt>
<dd></dd>
<? if ($is_good) { ?>
<dt>추천</dt>
<dd><?=number_format($view['wr_good'])?>회</dd>
<? } ?>
<? if ($is_nogood) { ?>
<dt>비추천</dt>
<dd><?=number_format($view['wr_nogood'])?></dd>
<? } ?>
</dl>
</header>
<section>
<h2>첨부파일</h2>
<?
// 가변 파일
$cnt = 0;
for ($i=0; $i<count($view['file']); $i++) {
if ($view['file'][$i]['source'] && !$view['file'][$i]['view']) {
$cnt++;
?>
<a href="javascript:file_download('<?=$view['file'][$i]['href']?>', '<?=urlencode($view['file'][$i]['source'])?>');">
<span><?=$view['file'][$i]['source']?> (<?=$view['file'][$i]['size']?>)</span>
<span><?=$view['file'][$i]['download']?></span>
<span>DATE : <?=$view['file'][$i]['datetime']?></span>
</a>
<?
}
}
?>
</section>
<section>
<h2>관련링크</h2>
<?
// 링크
$cnt = 0;
for ($i=1; $i<=$g4['link_count']; $i++) {
if ($view['link'][$i]) {
$cnt++;
$link = cut_str($view['link'][$i], 70);
?>
<a href="<?=$view['link_href'][$i]?>" target="_blank">
<span><?=$link?></span>
<span><?=$view['link_hit'][$i]?></span>
</a>
<?
}
}
?>
</section>
<div>
<?
// 파일 출력
for ($i=0; $i<=count($view['file']); $i++) {
if ($view['file'][$i]['view'])
echo $view['file'][$i]['view'] . "<p>";
echo $view['file'][$i]['view'];
}
?>
</div>
<!-- 내용 출력 -->
<span id="writeContents"><?=$view['content'];?></span>
<p><?=$view['content'];?></p>
<?//echo $view[rich_content]; // {이미지:0} 과 같은 코드를 사용할 경우?>
<!-- 테러 태그 방지용 --></xml></xmp><a href=""></a><a href=''></a>
<?//echo $view[rich_content]; // {이미지:0} 과 같은 코드를 사용할 경우?>
<!-- 테러 태그 방지용 --></xml></xmp><a href=""></a><a href=''></a>
<? if ($nogood_href) {?>
<div style="width:72px; height:55px; background:url(<?=$board_skin_path?>/img/good_bg.gif) no-repeat; text-align:center; float:right;">
<div style="color:#888; margin:7px 0 5px 0;">비추천 : <?=number_format($view['wr_nogood'])?></div>
<div><a href="<?=$nogood_href?>" target="hiddenframe"><img src="<?=$board_skin_path?>/img/icon_nogood.gif" border='0' align="absmiddle"></a></div>
</div>
<? } ?>
<? if ($is_signature) { echo "<tr><td align='center' style='border-bottom:1px solid #E7E7E7; padding:5px 0;'>$signature</td></tr>"; } // 서명 출력 ?>
<? if ($good_href) {?>
<div style="width:72px; height:55px; background:url(<?=$board_skin_path?>/img/good_bg.gif) no-repeat; text-align:center; float:right;">
<div style="color:#888; margin:7px 0 5px 0;"><span style='color:crimson;'>추천 : <?=number_format($view['wr_good'])?></span></div>
<? if ($scrap_href) { echo "<a href=\"javascript:;\" onclick=\"win_scrap('$scrap_href');\"><img src='$board_skin_path/img/btn_scrap.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($trackback_url) { ?><a href="javascript:trackback_send_server('<?=$trackback_url?>');" style="letter-spacing:0;" title='주소 복사'><img src="<?=$board_skin_path?>/img/btn_trackback.gif" border='0' align="absmiddle"></a><?}?>
<? if ($good_href) {?>
<div style="width:72px; height:55px; background:url(<?=$board_skin_path?>/img/good_bg.gif) no-repeat; text-align:center; float:right;">
<div>추천 : <?=number_format($view['wr_good'])?></div>
<div><a href="<?=$good_href?>" target="hiddenframe"><img src="<?=$board_skin_path?>/img/icon_good.gif" border='0' align="absmiddle"></a></div>
</div>
<? } ?>
</div>
<? } ?>
</td>
</tr>
<? if ($is_signature) { echo "<tr><td align='center' style='border-bottom:1px solid #E7E7E7; padding:5px 0;'>$signature</td></tr>"; } // 서명 출력 ?>
</table>
<br>
<? if ($nogood_href) {?>
<div>
<div>비추천 : <?=number_format($view['wr_nogood'])?></div>
<div><a href="<?=$nogood_href?>" target="hiddenframe"><img src="<?=$board_skin_path?>/img/icon_nogood.gif" border='0' align="absmiddle"></a></div>
</div>
<? } ?>
</article>
<?
// 코멘트 입출력
include_once('./view_comment.php');
?>
<div style="height:1px; line-height:1px; font-size:1px; background-color:#ddd; clear:both;">&nbsp;</div>
<div style="clear:both; height:43px;">
<div style="float:left; margin-top:10px;">
<div>
<? if ($prev_href) { echo "<a href=\"$prev_href\" title=\"$prev_wr_subject\"><img src='$board_skin_path/img/btn_prev.gif' border='0' align='absmiddle'></a>&nbsp;"; } ?>
<? if ($next_href) { echo "<a href=\"$next_href\" title=\"$next_wr_subject\"><img src='$board_skin_path/img/btn_next.gif' border='0' align='absmiddle'></a>&nbsp;"; } ?>
</div>
<!-- 링크 버튼 -->
<div style="float:right; margin-top:10px;">
<?=$link_buttons?>
</div>
</div>
<div style="height:2px; line-height:1px; font-size:1px; background-color:#dedede; clear:both;">&nbsp;</div>
<!-- 링크 버튼 -->
<div>
<?=$link_buttons?>
</div>
</td></tr></table><br>
<script type="text/javascript">
<script>
function file_download(link, file) {
<? if ($board['bo_download_point'] < 0) { ?>if (confirm("'"+decodeURIComponent(file)+"' 파일을 다운로드 하시면 포인트가 차감(<?=number_format($board['bo_download_point'])?>점)됩니다.\n\n포인트는 게시물당 한번만 차감되며 다음에 다시 다운로드 하셔도 중복하여 차감하지 않습니다.\n\n그래도 다운로드 하시겠습니까?"))<?}?>
document.location.href=link;
}
</script>
<script type="text/javascript" src="<?=$g4['path']?>/js/board.js"></script>
<script type="text/javascript">
<script src="<?=$g4['path']?>/js/board.js"></script>
<script>
window.onload=function() {
resizeBoardImage(<?=(int)$board['bo_image_width']?>);
drawFont();
}
</script>
<!-- 게시글 보기 끝 -->

View File

@ -26,29 +26,29 @@ var char_max = parseInt(<?=$write_max?>); // 최대
<tbody>
<? if ($is_name) { ?>
<tr>
<th>이 름</th>
<td><input maxlength=20 size=15 id="wr_name" name="wr_name" required value="<?=$name?>"></td>
<th scope="row"><label for="wr_name">이름</label></th>
<td><input type="text" id="wr_name" name="wr_name" maxlength="20" required value="<?=$name?>"></td>
</tr>
<? } ?>
<? if ($is_password) { ?>
<tr>
<th>패스워드</th>
<td><input type=password maxlength=20 size=15 id="wr_password" name="wr_password" <?=$password_required?>></td>
<th scope="row"><label for="wr_password">패스워드</label></th>
<td><input type="password" id="wr_password" name="wr_password" maxlength="20" <?=$password_required?>></td>
</tr>
<? } ?>
<? if ($is_email) { ?>
<tr>
<th>이메일</th>
<td><input maxlength=100 size=50 id="wr_email" name="wr_email" email value="<?=$email?>"></td>
<th scope="row"><label for="wr_email">이메일</label></th>
<td><input type="text" id="wr_email" name="wr_email" maxlength="100" value="<?=$email?>"></td>
</tr>
<? } ?>
<? if ($is_homepage) { ?>
<tr>
<th>홈페이지</th>
<td><input size=50 id="wr_homepage" name="wr_homepage" value="<?=$homepage?>"></td>
<th scope="row"><label for="wr_homepage">홈페이지</label></th>
<td><input type="text" id="wr_homepage" name="wr_homepage" value="<?=$homepage?>"></td>
</tr>
<? } ?>
@ -58,27 +58,27 @@ $option_hidden = '';
if ($is_notice || $is_html || $is_secret || $is_mail) {
$option = '';
if ($is_notice) {
$option .= '<input type=checkbox id="notice" name="notice" value="1" '.$notice_checked.'>공지&nbsp;';
$option .= '<input type="checkbox" id="notice" name="notice" value="1" '.$notice_checked.'><label for="notice">공지</label>'.PHP_EOL;
}
if ($is_html) {
if ($is_dhtml_editor) {
$option_hidden .= '<input type="hidden" value="html1" id="html" name="html">';
$option_hidden .= '<input type="hidden" value="html1" name="html">';
} else {
$option .= '<input onclick="html_auto_br(this);" type=checkbox value="'.$html_value.'" id="html" name="html" '.$html_checked.'><span class=w_title>html</span>&nbsp;';
$option .= '<input type="checkbox" id="html" name="html" onclick="html_auto_br(this);" value="'.$html_value.'" '.$html_checked.'><label for="html">html</label>'.PHP_EOL;
}
}
if ($is_secret) {
if ($is_admin || $is_secret==1) {
$option .= '<input type=checkbox value="secret" id="secret" name="secret" '.$secret_checked.'><span class=w_title>비밀글</span>&nbsp;';
$option .= '<input type="checkbox" id="secret" name="secret" value="secret" '.$secret_checked.'><label for="secret">비밀글</label>'.PHP_EOL;
} else {
$option_hidden .= '<input type="hidden" value="secret" id="secret" name="secret">';
$option_hidden .= '<input type="hidden" name="secret" value="secret">';
}
}
if ($is_mail) {
$option .= '<input type=checkbox value="mail" id="mail" name="mail" '.$recv_email_checked.'>답변메일받기&nbsp;';
$option .= '<input type="checkbox" name="mail" value="mail" '.$recv_email_checked.'><label for="mail">답변메일받기</label>'.PHP_EOL;
}
}
@ -86,29 +86,32 @@ echo $option_hidden;
if ($option) {
?>
<tr>
<th>옵 션</th>
<th scope="row">옵션</th>
<td><?=$option?></td>
</tr>
<? } ?>
<? if ($is_category) { ?>
<tr>
<th>분 류</th>
<td><select id="ca_name" name="ca_name" required><option value="">선택하세요<?=$category_option?></select></td>
<th scope="row"><label for="ca_name">분류</label></th>
<td>
<select id="ca_name" name="ca_name" required>
<option value="">선택하세요<?=$category_option?>
</select>
</td>
</tr>
<? } ?>
<tr>
<th>제 목</th>
<th scope="row"><label for="wr_subject">제목</label></th>
<td><input id="wr_subject" name="wr_subject" required value="<?=$subject?>"></td>
</tr>
<tr>
<th>내용</th>
<th scope="row"><label for="wr_content">내용</label></th>
<td>
<? if ($write_min || $write_max) { ?><span id=char_count></span>글자<?}?>
<textarea id="wr_content" id="wr_content" name="wr_content" class=tx style='width:100%; word-break:break-all;' rows=10 itemid="내용" name="내용" required
<? if ($write_min || $write_max) { ?>onkeyup="check_byte('wr_content', 'char_count');"<?}?>><?=$content?></textarea>
<textarea id="wr_content" id="wr_content" name="wr_content" required <? if ($write_min || $write_max) { ?>onkeyup="check_byte('wr_content', 'char_count');"<?}?>><?=$content?></textarea>
<? if ($write_min || $write_max) { ?><span id="char_count"></span>글자<?}?>
<? if ($write_min || $write_max) { ?><script> check_byte('wr_content', 'char_count'); </script><?}?>
</td>
</tr>
@ -116,27 +119,17 @@ if ($option) {
<? if ($is_link) { ?>
<? for ($i=1; $i<=$g4['link_count']; $i++) { ?>
<tr>
<td>링크 #<?=$i?></td>
<td><input type='text' size=50 name='wr_link<?=$i?>' value='<?=$write["wr_link{$i}"]?>'></td>
<th scope="row"><label for="wr_link<?=$i?>">링크 #<?=$i?></label></th>
<td><input type="text" id="wr_link<?=$i?>" name="wr_link<?=$i?>" value="<?=$write["wr_link{$i}"]?>"></td>
</tr>
<? } ?>
<? } ?>
<? if ($is_file) { ?>
<tr>
<th scope="row"><label for="">파일첨부</label></th>
<td>
<table cellpadding=0 cellspacing=0>
<tr>
<td style="padding-top:10px; line-height:20px;">
파일첨부<br>
<span onclick="add_file();" style="cursor:pointer;"><img src="<?=$board_skin_path?>/img/btn_file_add.gif"></span>
<span onclick="del_file();" style="cursor:pointer;"><img src="<?=$board_skin_path?>/img/btn_file_minus.gif"></span>
</td>
</tr>
</table>
</td>
<td style='padding:5 0 5 0;'><table id="variableFiles" cellpadding=0 cellspacing=0></table><?// print_r2($file); ?>
<table id="variableFiles" cellpadding=0 cellspacing=0></table><?// print_r2($file); ?>
<script>
var flen = 0;
function add_file(delete_code)
@ -186,38 +179,45 @@ if ($option) {
flen--;
}
}
</script></td>
</script>
</td>
</tr>
<tr>
<td colspan="2">
<span onclick="add_file();" style="cursor:pointer;">파일증가</span>
<span onclick="del_file();" style="cursor:pointer;">파일감소</span>
</td>
</tr>
<? } ?>
<? if ($is_trackback) { ?>
<tr>
<td>트랙백주소</td>
<td><input size=50 id="wr_trackback" name="wr_trackback" itemid="트랙백" name="트랙백" value="<?=$trackback?>">
<? if ($w=='u') { ?><input type=checkbox id="re_trackback" name="re_trackback" value="1">핑 보냄<? } ?></td>
<th scope="row"><label for="wr_trackback">트랙백주소</label></th>
<td>
<input id="wr_trackback" name="wr_trackback" value="<?=$trackback?>">
<? if ($w=='u') { ?><input type="checkbox" id="re_trackback" name="re_trackback" value="1">핑 보냄<? } ?>
</td>
</tr>
<? } ?>
<? if ($is_guest) { ?>
<tr>
<td><img id='kcaptcha_image' /></td>
<td><input type=input size=10 id="wr_key" name="wr_key" itemid="자동등록방지" name="자동등록방지" required>&nbsp;&nbsp;왼쪽의 글자를 입력하세요.</td>
</tr>
<? } ?>
</tbody>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="100%" align="center" valign="top" style="padding-top:30px;">
<input type=image id="btn_submit" src="<?=$board_skin_path?>/img/btn_write.gif" border=0 accesskey='s'>&nbsp;
<a href="./board.php?bo_table=<?=$bo_table?>"><img id="btn_list" src="<?=$board_skin_path?>/img/btn_list.gif" border=0></a></td>
</tr>
</table>
<? if ($is_guest) { ?>
<div id="captcha">
<legend>자동등록방지</legend>
<div><img id='kcaptcha_image' /></div>
<label for="wr_key">자동등록방지</label>
<input type="input" id="wr_key" name="wr_key" required>
왼쪽의 글자를 입력하세요.
</div>
<? } ?>
<div class="btn_confirm">
<input type="submit" id="btn_submit" value="글쓰기" accesskey="s">
<a href="./board.php?bo_table=<?=$bo_table?>" title="글쓰기를 취소하고 목록으로 돌아가기">목록</a>
</div>
</form>
<script src="<?=$g4['path']?>/js/jquery.kcaptcha.js"></script>