Merge branch 'master' of github.com:gnuboard/yc4s
This commit is contained in:
@ -114,10 +114,6 @@ function imageview(id, w, h)
|
||||
echo $gnb_str;
|
||||
?>
|
||||
</nav>
|
||||
|
||||
<div id="current_loc">
|
||||
<p><?=$member['mb_id']?>님 현재위치</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</header>
|
||||
|
||||
@ -15,6 +15,7 @@ function get_skin_select($skin_gubun, $id, $name, $selected='', $event='')
|
||||
$skins = get_skin_dir($skin_gubun);
|
||||
$str = "<select id=\"$id\" name=\"$name\" $event>\n";
|
||||
for ($i=0; $i<count($skins); $i++) {
|
||||
if ($i == 0) $str .= "<option value=\"\">선택</option>";
|
||||
$str .= option_selected($skins[$i], $selected);
|
||||
}
|
||||
$str .= "</select>";
|
||||
@ -27,6 +28,7 @@ function get_mobile_skin_select($skin_gubun, $id, $name, $selected='', $event=''
|
||||
$skins = get_skin_dir($skin_gubun, G4_MOBILE_PATH.'/'.G4_SKIN_DIR);
|
||||
$str = "<select id=\"$id\" name=\"$name\" $event>\n";
|
||||
for ($i=0; $i<count($skins); $i++) {
|
||||
if ($i == 0) $str .= "<option value=\"\">선택</option>";
|
||||
$str .= option_selected($skins[$i], $selected);
|
||||
}
|
||||
$str .= "</select>";
|
||||
|
||||
@ -13,7 +13,10 @@ if (!defined('_GNUBOARD_')) exit;
|
||||
</div>
|
||||
|
||||
<footer id="ft">
|
||||
<p>Copyright © 소유하신 도메인. All rights reserved.</p>
|
||||
<p>
|
||||
Copyright © 소유하신 도메인. All rights reserved.<br>
|
||||
<a href="#">상단으로</a>
|
||||
</p>
|
||||
</footer>
|
||||
|
||||
<!-- <p>실행시간 : <?=get_microtime() - $begin_time;?> -->
|
||||
|
||||
@ -41,14 +41,15 @@ include_once(G4_PATH.'/head.sub.php');
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="btn_confirm">
|
||||
<input type="submit" class="btn_submit" value="복사">
|
||||
<input type="button" class="btn_cancel" value="창닫기" onclick="window.close();">
|
||||
</div>
|
||||
<div class="btn_confirm">
|
||||
<input type="submit" class="btn_submit" value="복사">
|
||||
<input type="button" class="btn_cancel" value="창닫기" onclick="window.close();">
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
|
||||
<script>
|
||||
function fboardcopy_check(f)
|
||||
|
||||
@ -68,6 +68,7 @@ $sql = " insert into {$g4['board_table']}
|
||||
bo_hot = '{$board[bo_hot]}',
|
||||
bo_image_width = '{$board[bo_image_width]}',
|
||||
bo_skin = '{$board['bo_skin']}',
|
||||
bo_mobile_skin = '{$board['bo_mobile']}',
|
||||
bo_include_head = '{$board['bo_include_head']}',
|
||||
bo_include_tail = '{$board['bo_include_tail']}',
|
||||
bo_content_head = '".addslashes($board['bo_content_head'])."',
|
||||
|
||||
@ -37,7 +37,7 @@ if ($w == '') {
|
||||
|
||||
$html_title .= ' 생성';
|
||||
|
||||
$bo_table_attr = 'class="required alnum_"';
|
||||
$bo_table_attr = 'required alnum_';
|
||||
$sound_only = '<strong class="sound_only">필수</strong>';
|
||||
|
||||
$board['bo_count_delete'] = 1;
|
||||
@ -48,11 +48,11 @@ if ($w == '') {
|
||||
$board['bo_download_point'] = $config['cf_download_point'];
|
||||
|
||||
$board['bo_gallery_cols'] = 4;
|
||||
$board['bo_gallery_width'] = 200;
|
||||
$board['bo_gallery_height'] = 150;
|
||||
$board['bo_mobile_gallery_cols'] = 2;
|
||||
$board['bo_mobile_gallery_width'] = 160;
|
||||
$board['bo_mobile_gallery_height'] = 120;
|
||||
$board['bo_gallery_width'] = 174;
|
||||
$board['bo_gallery_height'] = 124;
|
||||
$board['bo_mobile_gallery_cols'] = 3;
|
||||
$board['bo_mobile_gallery_width'] = 125;
|
||||
$board['bo_mobile_gallery_height'] = 100;
|
||||
$board['bo_table_width'] = 100;
|
||||
$board['bo_page_rows'] = $config['cf_page_rows'];
|
||||
$board['bo_subject_len'] = 60;
|
||||
@ -127,7 +127,7 @@ $pg_anchor = "<ul class=\"anchor\">
|
||||
<tr>
|
||||
<th scope="row"><label for="bo_table">TABLE<?=$sound_only?></label></th>
|
||||
<td colspan="2">
|
||||
<input type="text" name="bo_table" value="<?=$board['bo_table'] ?>" id="bo_table" required class="required frm_input" maxlength="20" <?=$bo_table_attr?>>
|
||||
<input type="text" name="bo_table" value="<?=$board['bo_table'] ?>" id="bo_table" required class="frm_input <?=$bo_table_attr?>" maxlength="20">
|
||||
<? if ($w == '') { ?>
|
||||
영문자, 숫자, _ 만 가능 (공백없이 20자 이내)
|
||||
<? } else { ?>
|
||||
@ -160,10 +160,10 @@ $pg_anchor = "<ul class=\"anchor\">
|
||||
</select>
|
||||
</td>
|
||||
<td class="group_setting">
|
||||
<input type="checkbox" name="chk_grp_use" value="1" id="chk_grp_use">
|
||||
<label for="chk_grp_use">그룹적용</label>
|
||||
<input type="checkbox" name="chk_all_use" value="1" id="chk_all_use">
|
||||
<label for="chk_all_use">전체적용</label>
|
||||
<input type="checkbox" name="chk_grp_device" value="1" id="chk_grp_device">
|
||||
<label for="chk_grp_device">그룹적용</label>
|
||||
<input type="checkbox" name="chk_all_device" value="1" id="chk_all_device">
|
||||
<label for="chk_all_device">전체적용</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -530,7 +530,7 @@ $pg_anchor = "<ul class=\"anchor\">
|
||||
<tr>
|
||||
<th scope="row"><label for="bo_upload_count">파일 업로드 갯수<strong class="sound_only">필수</strong></label></th>
|
||||
<td>
|
||||
<?=help('게시물 한건당 업로드 할 수 있는 파일의 최대 개수 (0 이면 제한 없음)')?>
|
||||
<?=help('게시물 한건당 업로드 할 수 있는 파일의 최대 개수 (0 은 파일첨부 사용하지 않음)')?>
|
||||
<input type="text" name="bo_upload_count" value="<?=$board['bo_upload_count']?>" id="bo_upload_count" required class="required numeric frm_input" size="4">
|
||||
</td>
|
||||
<td class="group_setting">
|
||||
|
||||
@ -53,7 +53,7 @@ $bo_category_list = str_replace($src_char, $dst_char, $bo_category_list);
|
||||
|
||||
$sql_common = " gr_id = '{$_POST['gr_id']}',
|
||||
bo_subject = '{$_POST['bo_subject']}',
|
||||
bo_device = '{$_POST['bo_device']}',
|
||||
bo_device = '{$_POST['bo_device']}',
|
||||
bo_admin = '{$_POST['bo_admin']}',
|
||||
bo_list_level = '{$_POST['bo_list_level']}',
|
||||
bo_read_level = '{$_POST['bo_read_level']}',
|
||||
@ -109,6 +109,7 @@ $sql_common = " gr_id = '{$_POST['gr_id']}',
|
||||
bo_reply_order = '{$_POST['bo_reply_order']}',
|
||||
bo_use_search = '{$_POST['bo_use_search']}',
|
||||
bo_order = '{$_POST['bo_order']}',
|
||||
bo_show_menu = '{$_POST['bo_show_menu']}',
|
||||
bo_write_min = '{$_POST['bo_write_min']}',
|
||||
bo_write_max = '{$_POST['bo_write_max']}',
|
||||
bo_comment_min = '{$_POST['bo_comment_min']}',
|
||||
@ -222,7 +223,7 @@ if ($w == '') {
|
||||
|
||||
// 같은 그룹내 게시판 동일 옵션 적용
|
||||
$grp_fields = '';
|
||||
if (is_checked('chk_grp_use')) $grp_fields .= " , bo_use = '{$bo_use}' ";
|
||||
if (is_checked('chk_grp_device')) $grp_fields .= " , bo_device = '{$bo_device}' ";
|
||||
if (is_checked('chk_grp_admin')) $grp_fields .= " , bo_admin = '{$bo_admin}' ";
|
||||
if (is_checked('chk_grp_list_level')) $grp_fields .= " , bo_list_level = '{$bo_list_level}' ";
|
||||
if (is_checked('chk_grp_read_level')) $grp_fields .= " , bo_read_level = '{$bo_read_level}' ";
|
||||
@ -285,6 +286,7 @@ if (is_checked('chk_grp_content_tail')) $grp_fields .= " , bo_content_ta
|
||||
if (is_checked('chk_grp_insert_content')) $grp_fields .= " , bo_insert_content = '{$bo_insert_content}' ";
|
||||
if (is_checked('chk_grp_use_search')) $grp_fields .= " , bo_use_search = '{$bo_use_search}' ";
|
||||
if (is_checked('chk_grp_order')) $grp_fields .= " , bo_order = '{$bo_order}' ";
|
||||
if (is_checked('chk_grp_show_menu')) $grp_fields .= " , bo_show_menu = '{$bo_show_menu}' ";
|
||||
for ($i=1; $i<=10; $i++) {
|
||||
if (is_checked('chk_grp_'.$i)) {
|
||||
$grp_fields .= " , bo_{$i}_subj = '".$_POST['bo_'.$i.'_subj']."' ";
|
||||
@ -299,7 +301,7 @@ if ($grp_fields) {
|
||||
|
||||
// 모든 게시판 동일 옵션 적용
|
||||
$all_fields = '';
|
||||
if (is_checked('chk_all_use')) $all_fields .= " , bo_use = '{$bo_use}' ";
|
||||
if (is_checked('chk_all_device')) $all_fields .= " , bo_device = '{$bo_device}' ";
|
||||
if (is_checked('chk_all_admin')) $all_fields .= " , bo_admin = '{$bo_admin}' ";
|
||||
if (is_checked('chk_all_list_level')) $all_fields .= " , bo_list_level = '{$bo_list_level}' ";
|
||||
if (is_checked('chk_all_read_level')) $all_fields .= " , bo_read_level = '{$bo_read_level}' ";
|
||||
@ -362,6 +364,7 @@ if (is_checked('chk_all_content_tail')) $all_fields .= " , bo_content_ta
|
||||
if (is_checked('chk_all_insert_content')) $all_fields .= " , bo_insert_content = '{$bo_insert_content}' ";
|
||||
if (is_checked('chk_all_use_search')) $all_fields .= " , bo_use_search = '{$bo_use_search}' ";
|
||||
if (is_checked('chk_all_order')) $all_fields .= " , bo_order = '{$bo_order}' ";
|
||||
if (is_checked('chk_all_show_menu')) $all_fields .= " , bo_show_menu = '{$bo_show_menu}' ";
|
||||
for ($i=1; $i<=10; $i++) {
|
||||
if (is_checked('chk_all_'.$i)) {
|
||||
$all_fields .= " , bo_{$i}_subj = '".$_POST['bo_'.$i.'_subj']."' ";
|
||||
|
||||
@ -76,7 +76,7 @@ include_once('./admin.head.php');
|
||||
<th scope="row"><label for="gr_device">접속기기</label></th>
|
||||
<td>
|
||||
<?=help("PC 와 모바일 사용을 구분합니다.")?>
|
||||
<select id="gr_device_" name="gr_device">
|
||||
<select id="gr_device" name="gr_device">
|
||||
<option value="both"<?=get_selected($group['gr_device'], 'both', true);?>>PC와 모바일에서 모두 사용</option>
|
||||
<option value="pc"<?=get_selected($group['gr_device'], 'pc');?>>PC 전용</option>
|
||||
<option value="mobile"<?=get_selected($group['gr_device'], 'mobile');?>>모바일 전용</option>
|
||||
@ -144,11 +144,6 @@ include_once('./admin.head.php');
|
||||
</div>
|
||||
|
||||
<script>
|
||||
if (document.fboardgroup.w.value == '')
|
||||
document.fboardgroup.gr_id.focus();
|
||||
else
|
||||
document.fboardgroup.gr_subject.focus();
|
||||
|
||||
function fboardgroup_check(f)
|
||||
{
|
||||
f.action = './boardgroup_form_update.php';
|
||||
|
||||
@ -123,6 +123,7 @@ $colspan = 15;
|
||||
<th scope="col"><?=subject_sort_link('mb_level', '', 'desc')?>권한</a></th>
|
||||
<th scope="col"><?=subject_sort_link('mb_point', '', 'desc')?> 포인트</a></th>
|
||||
<th scope="col"><?=subject_sort_link('mb_today_login', '', 'desc')?>최종접속</a></th>
|
||||
<th scope="col"><?=subject_sort_link('mb_datetime', '', 'desc')?>가입일</a></th>
|
||||
<th scope="col"><?=subject_sort_link('mb_mailling', '', 'desc')?>수신</a></th>
|
||||
<th scope="col"><?=subject_sort_link('mb_open', '', 'desc')?>공개</a></th>
|
||||
<th scope="col"><?=subject_sort_link('mb_email_certify', '', 'desc')?>인증</a></th>
|
||||
@ -189,6 +190,7 @@ $colspan = 15;
|
||||
<td><?=get_member_level_select("mb_level[$i]", 1, $member['mb_level'], $row['mb_level'])?></td>
|
||||
<td class="td_bignum"><a href="point_list.php?sfl=mb_id&stx=<?=$row['mb_id']?>"><?=number_format($row['mb_point'])?></a></td>
|
||||
<td><?=substr($row['mb_today_login'],2,8)?></td>
|
||||
<td><?=substr($row['mb_datetime'],2,8)?></td>
|
||||
<td><?=$row['mb_mailling']?'<span class="txt_true">Yes</span>':'<span class="txt_false">No</span>';?></td>
|
||||
<td><?=$row['mb_open']?'<span class="txt_true">Yes</span>':'<span class="txt_false">No</span>';?></td>
|
||||
<td><?=preg_match('/[1-9]/', $row['mb_email_certify'])?'<span class="txt_true">Yes</span>':'<span class="txt_false">No</span>';?></td>
|
||||
|
||||
@ -482,7 +482,15 @@ if ($ii) {
|
||||
<script>
|
||||
function search_relation(fld) {
|
||||
if (fld.value) {
|
||||
window.open('itemformrelation.php?it_id=<?=$it_id?>&ca_id='+fld.value, 'hiddenframe', '');
|
||||
$.post(
|
||||
'./itemformrelation.php',
|
||||
{ it_id: '<?=$it_id?>', ca_id: fld.value },
|
||||
function(data) {
|
||||
if(data) {
|
||||
$("#relation").html(data);
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@ -527,16 +535,18 @@ if ($ii) {
|
||||
// 김선용 2006.10
|
||||
function relation_img(name, id)
|
||||
{
|
||||
item_image_dir = "<?=G4_DATA_URL?>/item";
|
||||
if(!name) return;
|
||||
var item_image_url = "";
|
||||
if(!name) return;
|
||||
temp = name.split("/");
|
||||
if(temp[1] == ''){
|
||||
temp[1] = "no_image.gif";
|
||||
var item_image_dir = "<?=G4_SHOP_URL?>/img";
|
||||
}
|
||||
item_image_url = "<?=G4_SHOP_URL?>/img";
|
||||
} else {
|
||||
item_image_url = "<?=G4_DATA_URL?>/item";
|
||||
}
|
||||
view_span = document.getElementById(id);
|
||||
item_price = number_format(String(temp[2]));
|
||||
view_span.innerHTML = "<img src='"+item_image_dir+"/"+temp[1]+"' width=100 height=80 border=1 style='border-color:#333333; cursor:pointer' onclick=\"popup_window('"+g4_path+"/shop/item.php?it_id="+temp[0]+"', '', '')\" title='새창으로 상품보기' alt='새창으로 상품보기'><br>"+item_price+" 원";
|
||||
view_span.innerHTML = "<a href=\"<?=G4_SHOP_URL?>/item.php?it_id="+temp[0]+"\" target=\"_blank\"><img src=\""+item_image_url+"/"+temp[1]+"\"width=\"100\" height=\"80\" border=\"1\" style=\"border-color:#333333;\" title=\"상품 새창으로 보기\"></a><br>"+item_price+" 원";
|
||||
}
|
||||
|
||||
function relation_add(fld)
|
||||
@ -795,7 +805,7 @@ function codedupcheck(id)
|
||||
return false;
|
||||
} else {
|
||||
alert("'"+data.code+"' 은(는) 등록된 코드가 없으므로 사용하실 수 있습니다.");
|
||||
document.fcategoryform.codedup.value = '';
|
||||
document.fitemform.codedup.value = '';
|
||||
}
|
||||
}, "json"
|
||||
);
|
||||
|
||||
@ -11,12 +11,7 @@ $sql = " select ca_id, it_id, it_name, it_amount
|
||||
and it_id <> '$it_id'
|
||||
order by ca_id, it_name ";
|
||||
$result = sql_query($sql);
|
||||
$num = @mysql_num_rows($result);
|
||||
?>
|
||||
<script>
|
||||
parent.document.getElementById('relation').length = <?=$num?>;
|
||||
<?
|
||||
$cnt = 0;
|
||||
|
||||
for($i=0;$row=sql_fetch_array($result);$i++) {
|
||||
//$sql2 = " select count(*) as cnt from $g4[yc4_item_relation_table] where it_id = '$row[it_id]' ";
|
||||
$sql2 = " select count(*) as cnt from {$g4['yc4_item_relation_table']} where it_id = '$it_id' and it_id2 = '{$row['it_id']}' ";
|
||||
@ -33,14 +28,9 @@ for($i=0;$row=sql_fetch_array($result);$i++) {
|
||||
$it_image = "{$row['it_id']}_s";
|
||||
else
|
||||
$it_image = "";
|
||||
//echo "parent.document.getElementById('relation').length++;";
|
||||
echo "parent.document.getElementById('relation').options[$cnt].text = '$ca_name : $it_name';\n";
|
||||
echo "parent.document.getElementById('relation').options[$cnt].value = '$row[it_id]/$it_image/{$row['it_amount']}';\n";
|
||||
$cnt++;
|
||||
|
||||
$options .= "<option value=\"".$row['it_id']."/".$it_image."/".$row['it_amount']."\">$ca_name : $it_name</option>\n";
|
||||
}
|
||||
?>
|
||||
parent.document.getElementById('relation').length = <?=$cnt?>;
|
||||
</script>
|
||||
<?
|
||||
include_once (G4_PATH.'/tail.sub.php');
|
||||
|
||||
echo $options;
|
||||
?>
|
||||
@ -63,15 +63,8 @@ $result = sql_query($sql);
|
||||
$referer = get_text(cut_str($row['vi_referer'], 255, ''));
|
||||
$referer = urldecode($referer);
|
||||
|
||||
if (strtolower($g4['charset']) == 'utf-8') {
|
||||
if (!is_utf8($referer)) {
|
||||
$referer = iconv('euc-kr', 'utf-8', $referer);
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (is_utf8($referer)) {
|
||||
$referer = iconv('utf-8', 'euc-kr', $referer);
|
||||
}
|
||||
if (!is_utf8($referer)) {
|
||||
$referer = iconv_utf8($referer);
|
||||
}
|
||||
|
||||
$title = str_replace(array('<', '>', '&'), array("<", ">", "&"), $referer);
|
||||
|
||||
@ -8,10 +8,30 @@ function editor_html($id, $content, $ckeditor=true, $class="")
|
||||
|
||||
$html = "";
|
||||
$html .= "<span class=\"sound_only\">웹에디터 시작</span>";
|
||||
if ($ckeditor)
|
||||
$html .= '<script>document.write("<div class=\'cke_sc\'><button type=\'button\' class=\'btn_cke_sc\'>단축키 일람</button></div>");</script>';
|
||||
|
||||
if ($js) {
|
||||
$html .= "\n".'<script src="'.G4_CKEDITOR_URL.'/ckeditor.js"></script>';
|
||||
$html .= "\n".'<script>var g4_ckeditor_url = "'.G4_CKEDITOR_URL.'";</script>';
|
||||
$html .= "\n".'<script src="'.G4_CKEDITOR_URL.'/config.js"></script>';
|
||||
$html .= "\n<script>";
|
||||
$html .= '
|
||||
$(function(){
|
||||
$(".btn_cke_sc").click(function(){
|
||||
if ($(this).next("div.cke_sc_def").length) {
|
||||
$(this).next("div.cke_sc_def").remove();
|
||||
$(this).text("단축키 일람");
|
||||
} else {
|
||||
$(this).after("<div class=\'cke_sc_def\' />").next("div.cke_sc_def").load("'.G4_CKEDITOR_URL.'/shortcut.html");
|
||||
$(this).text("단축키 일람 닫기");
|
||||
}
|
||||
});
|
||||
$(".btn_cke_sc_close").live("click",function(){
|
||||
$(this).parent("div.cke_sc_def").remove();
|
||||
});
|
||||
});';
|
||||
$html .= "\n</script>";
|
||||
$js = false;
|
||||
}
|
||||
|
||||
|
||||
@ -43,6 +43,8 @@ CKEDITOR.on('dialogDefinition', function(ev) {
|
||||
this.selectPage('Upload');
|
||||
};
|
||||
|
||||
/*
|
||||
alt 를 넘기지 못하는 관계로 주석 처리함. 130314 kagla
|
||||
dialogDefinition.onOk = function (e) {
|
||||
var imageSrcUrl = e.sender.originalElement.$.src;
|
||||
var imgHtml = CKEDITOR.dom.element.createFromHtml('<img src=' + imageSrcUrl + ' alt="" />');
|
||||
@ -55,6 +57,7 @@ CKEDITOR.on('dialogDefinition', function(ev) {
|
||||
$(".cke_dialog_ui_button_ok span").click();
|
||||
}
|
||||
};
|
||||
*/
|
||||
|
||||
/*
|
||||
var uploadTab = dialogDefinition.getContents('Upload');
|
||||
@ -167,4 +170,4 @@ CKEDITOR.editorConfig = function( config ) {
|
||||
[ CKEDITOR.ALT + 48 /*ZERO*/, 'toolbarCollapse' ],
|
||||
[ CKEDITOR.ALT + 121 /*F10*/, 'toolbarFocus' ],
|
||||
];
|
||||
};
|
||||
};
|
||||
91
bbs/ckeditor/shortcut.html
Normal file
91
bbs/ckeditor/shortcut.html
Normal file
@ -0,0 +1,91 @@
|
||||
<dl>
|
||||
<dt>CTRL+Z</dt>
|
||||
<dd>취소하기</dd>
|
||||
<dt>CTRL+Y</dt>
|
||||
<dd>다시 실행</dd>
|
||||
<dt>CTRL+B</dt>
|
||||
<dd>글자 굵게</dd>
|
||||
<dt>CTRL+I</dt>
|
||||
<dd>글자 기울이기</dd>
|
||||
<dt>CTRL+E</dt>
|
||||
<dd>가운데 정렬</dd>
|
||||
<dt>CTRL+L</dt>
|
||||
<dd>왼쪽 정렬</dd>
|
||||
<dt>CTRL+R</dt>
|
||||
<dd>오른쪽 정렬</dd>
|
||||
<dt>CTRL+J</dt>
|
||||
<dd>양쪽정렬</dd>
|
||||
<dt>ALT+E</dt>
|
||||
<dd>이모티콘 넣기</dd>
|
||||
<dt>ALT+C</dt>
|
||||
<dd>특수문자 넣기</dd>
|
||||
<dt>CTRL+Q</dt>
|
||||
<dd>순서 없는 목록</dd>
|
||||
<dt>CTRL+SHIFT+8</dt>
|
||||
<dd>순서 없는 목록 스타일</dd>
|
||||
<dt>CTRL+7</dt>
|
||||
<dd>순서 있는 목록</dd>
|
||||
<dt>CTRL+SHIFT+7</dt>
|
||||
<dd>순서 있는 목록 스타일</dd>
|
||||
<dt>CTRL+M</dt>
|
||||
<dd>인용문 문단</dd>
|
||||
<dt>CTRL+8</dt>
|
||||
<dd>들여쓰기</dd>
|
||||
<dt>CTRL+SHIFT+M</dt>
|
||||
<dd>내어쓰기</dd>
|
||||
<dt>CTRL+SPACE</dt>
|
||||
<dd>포맷 없애기</dd>
|
||||
<dt>CTRL+A</dt>
|
||||
<dd>전체선택</dd>
|
||||
<dt>CTRL+SHIFT+X</dt>
|
||||
<dd>취소선</dd>
|
||||
<dt>CTRL+COMMA</dt>
|
||||
<dd>아래첨자</dd>
|
||||
<dt>CTRL+PERIOD</dt>
|
||||
<dd>위첨자</dd>
|
||||
<dt>CTRL+U</dt>
|
||||
<dd>밑줄긋기</dd>
|
||||
<dt>ALT+A</dt>
|
||||
<dd>책갈피 만들기</dd>
|
||||
<dt>ALT+F</dt>
|
||||
<dd>플래쉬 넣기</dd>
|
||||
<dt>ALT+H</dt>
|
||||
<dd>구분선 넣기</dd>
|
||||
<dt>ALT+I</dt>
|
||||
<dd>이미지 넣기</dd>
|
||||
<dt>ALT+L</dt>
|
||||
<dd>바로가기 만들기</dd>
|
||||
<dt>ALT+SHIFT+L</dt>
|
||||
<dd>바로가기 없애기</dd>
|
||||
<dt>ALT+ENTER</dt>
|
||||
<dd>페이지 나누기</dd>
|
||||
<dt>ALT+T</dt>
|
||||
<dd>테이블 만들기</dd>
|
||||
<dt>ALT+O</dt>
|
||||
<dd>템플릿 적용</dd>
|
||||
<dt>F1</dt>
|
||||
<dd>도움말 보기</dd>
|
||||
<dt>ALT+#3</dt>
|
||||
<dd>색상선택기</dd>
|
||||
<dt>ALT+M</dt>
|
||||
<dd>복사 잘라내기 붙여넣기 메뉴</dd>
|
||||
<dt>ALT+F11</dt>
|
||||
<dd>요소 경로 포커스</dd>
|
||||
<dt>CTRL+SHIFT+F</dt>
|
||||
<dd>찾기</dd>
|
||||
<dt>ALT+X</dt>
|
||||
<dd>에디터 전체크기 설정/해제</dd>
|
||||
<dt>CTRL+F2</dt>
|
||||
<dd>미리보기</dd>
|
||||
<dt>CTRL+SHIFT+P</dt>
|
||||
<dd>인쇄하기</dd>
|
||||
<dt>CTRL+H</dt>
|
||||
<dd>찾기 바꾸기</dd>
|
||||
<dt>ALT+SHIFT+T</dt>
|
||||
<dd>테두리보기</dd>
|
||||
<dt>ALT+Z</dt>
|
||||
<dd>소스보기</dd>
|
||||
<dt>ALT+F10</dt>
|
||||
<dd>툴바로 이동</dd>
|
||||
</dl>
|
||||
<button type="button" class="btn_cke_sc_close">닫기</button>
|
||||
@ -14,13 +14,18 @@ $CKEditor = $_GET['CKEditor'] ;
|
||||
$langCode = $_GET['langCode'] ;
|
||||
|
||||
if(isset($_FILES['upload']['tmp_name'])) {
|
||||
$file_name = $_FILES['upload']['name'];
|
||||
$ext = substr($file_name, (strrpos($file_name, '.') + 1));
|
||||
if (!preg_match("/\.(jpe?g|gif|png)$/i", $file_name)) {
|
||||
echo '이미지만 가능';
|
||||
$file = $_FILES['upload']['name'];
|
||||
$pos = strrpos($file, '.');
|
||||
$filename = substr($file, 0, $pos);
|
||||
$extension = substr($file, $pos, strlen($file) - $pos);
|
||||
|
||||
if (!preg_match("/\.(jpe?g|gif|png)$/i", $extension)) {
|
||||
echo '이미지 파일만 가능합니다.';
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
// 윈도우에서 한글파일명으로 업로드 되지 않는 오류 해결
|
||||
$file_name = sprintf('%u', ip2long($_SERVER['REMOTE_ADDR'])).'_'.get_microtime().$extension;
|
||||
$save_dir = sprintf('%s/%s', $data_dir, $file_name);
|
||||
$save_url = sprintf('%s/%s', $data_url, $file_name);
|
||||
|
||||
|
||||
@ -16,9 +16,9 @@ if (!$file['bf_file'])
|
||||
alert_close('파일 정보가 존재하지 않습니다.');
|
||||
|
||||
// JavaScript 불가일 때
|
||||
if($confirm != 'yes' && $board['bo_download_point'] < 0) {
|
||||
if($js != 'on' && $board['bo_download_point'] < 0) {
|
||||
$msg = $file['bf_source'].' 파일을 다운로드 하시면 포인트가 차감('.number_format($board['bo_download_point']).'점)됩니다.\\n포인트는 게시물당 한번만 차감되며 다음에 다시 다운로드 하셔도 중복하여 차감하지 않습니다.\\n그래도 다운로드 하시겠습니까?';
|
||||
$url1 = './download.php?'.$_SERVER['QUERY_STRING'].'&confirm=yes';
|
||||
$url1 = G4_BBS_URL.'/download.php?'.$_SERVER['QUERY_STRING'].'&js=on';
|
||||
$url2 = $_SERVER['HTTP_REFERER'];
|
||||
|
||||
//$url1 = 확인link, $url2=취소link
|
||||
@ -31,7 +31,7 @@ if ($member['mb_level'] < $board['bo_download_level']) {
|
||||
if ($member['mb_id'])
|
||||
alert($alert_msg);
|
||||
else
|
||||
alert($alert_msg.'\\n회원이시라면 로그인 후 이용해 보십시오.', './login.php?wr_id='.$wr_id.'&'.$qstr.'&url='.urlencode($g4['bbs_path'].'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id));
|
||||
alert($alert_msg.'\\n회원이시라면 로그인 후 이용해 보십시오.', G4_BBS_URL.'/login.php?wr_id='.$wr_id.'&'.$qstr.'&url='.urlencode(G4_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id));
|
||||
}
|
||||
|
||||
$filepath = G4_DATA_PATH.'/file/'.$bo_table.'/'.$file['bf_file'];
|
||||
@ -54,7 +54,7 @@ if (!get_session($ss_name))
|
||||
{
|
||||
// 다운로드 포인트가 음수이고 회원의 포인트가 0 이거나 작다면
|
||||
if ($member['mb_point'] + $board['bo_download_point'] < 0)
|
||||
alert('보유하신 포인트('.number_format($member['mb_point']).')가 없거나 모자라서 다운로드('.number_format($board['bo_download_point']).')가 불가합니다.'."\n\n".'포인트를 적립하신 후 다시 다운로드 해 주십시오.');
|
||||
alert('보유하신 포인트('.number_format($member['mb_point']).')가 없거나 모자라서 다운로드('.number_format($board['bo_download_point']).')가 불가합니다.\\n\\n포인트를 적립하신 후 다시 다운로드 해 주십시오.');
|
||||
|
||||
// 게시물당 한번만 차감하도록 수정
|
||||
insert_point($member['mb_id'], $board['bo_download_point'], "{$board['bo_subject']} $wr_id 파일 다운로드", $bo_table, $wr_id, "다운로드");
|
||||
|
||||
@ -64,9 +64,9 @@ if ($is_member && ($is_admin == 'super' || $group['gr_admin'] == $member['mb_id'
|
||||
// 정렬에 사용하는 QUERY_STRING
|
||||
$qstr2 = 'bo_table='.$bo_table.'&sop='.$sop;
|
||||
|
||||
if ($board['bo_gallery_cols']) {
|
||||
$td_width = (int)(100 / $board['bo_gallery_cols']);
|
||||
}
|
||||
// 0 으로 나눌시 오류를 방지하기 위하여 값이 없으면 1 로 설정
|
||||
$bo_gallery_cols = $board['bo_gallery_cols'] ? $board['bo_gallery_cols'] : 1;
|
||||
$td_width = (int)(100 / $bo_gallery_cols);
|
||||
|
||||
// 정렬
|
||||
// 인덱스 필드가 아니면 정렬에 사용하지 않음
|
||||
|
||||
@ -11,27 +11,27 @@ if (!trim($mb_id) || !trim($mb_password))
|
||||
|
||||
$mb = get_member($mb_id);
|
||||
|
||||
// 가입된 회원이 아니다. 패스워드가 틀리다. 라는 메세지를 따로 보여주지 않는 이유는
|
||||
// 가입된 회원이 아니다. 패스워드가 틀리다. 라는 메세지를 따로 보여주지 않는 이유는
|
||||
// 회원아이디를 입력해 보고 맞으면 또 패스워드를 입력해보는 경우를 방지하기 위해서입니다.
|
||||
// 불법사용자의 경우 회원아이디가 틀린지, 패스워드가 틀린지를 알기까지는 많은 시간이 소요되기 때문입니다.
|
||||
if (!$mb['mb_id'] || (sql_password($mb_password) != $mb['mb_password'])) {
|
||||
alert('가입된 회원아이디가 아니거나 패스워드가 틀립니다.\n패스워드는 대소문자를 구분합니다.');
|
||||
alert('가입된 회원아이디가 아니거나 패스워드가 틀립니다.\\n패스워드는 대소문자를 구분합니다.');
|
||||
}
|
||||
|
||||
// 차단된 아이디인가?
|
||||
if ($mb['mb_intercept_date'] && $mb['mb_intercept_date'] <= date("Ymd", G4_SERVER_TIME)) {
|
||||
$date = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})/", "\\1년 \\2월 \\3일", $mb['mb_intercept_date']);
|
||||
$date = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})/", "\\1년 \\2월 \\3일", $mb['mb_intercept_date']);
|
||||
alert('회원님의 아이디는 접근이 금지되어 있습니다.\n처리일 : '.$date);
|
||||
}
|
||||
|
||||
// 탈퇴한 아이디인가?
|
||||
if ($mb['mb_leave_date'] && $mb['mb_leave_date'] <= date("Ymd", G4_SERVER_TIME)) {
|
||||
$date = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})/", "\\1년 \\2월 \\3일", $mb['mb_leave_date']);
|
||||
$date = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})/", "\\1년 \\2월 \\3일", $mb['mb_leave_date']);
|
||||
alert('탈퇴한 아이디이므로 접근하실 수 없습니다.\n탈퇴일 : '.$date);
|
||||
}
|
||||
|
||||
if ($config['cf_use_email_certify'] && !preg_match("/[1-9]/", $mb['mb_email_certify']))
|
||||
alert('메일인증을 받으셔야 로그인 하실 수 있습니다.\n회원님의 메일주소는 '.$mb['mb_email'].' 입니다.');
|
||||
alert('메일인증을 받으셔야 로그인 하실 수 있습니다.\\n회원님의 메일주소는 '.$mb['mb_email'].' 입니다.');
|
||||
|
||||
@include_once($member_skin_path.'/login_check.skin.php');
|
||||
|
||||
@ -59,9 +59,9 @@ if ($url) {
|
||||
$link = urldecode($url);
|
||||
// 2003-06-14 추가 (다른 변수들을 넘겨주기 위함)
|
||||
if (preg_match("/\?/", $link))
|
||||
$split= "&";
|
||||
$split= "&";
|
||||
else
|
||||
$split= "?";
|
||||
$split= "?";
|
||||
|
||||
// $_POST 배열변수에서 아래의 이름을 가지지 않은 것만 넘김
|
||||
foreach($_POST as $key=>$value) {
|
||||
|
||||
@ -4,6 +4,8 @@ include_once('./_common.php');
|
||||
if (!$member[mb_id])
|
||||
alert('회원만 이용하실 수 있습니다.');
|
||||
|
||||
$me_id = (int)$_REQUEST['me_id'];
|
||||
|
||||
$sql = " select * from {$g4[memo_table]} where me_id = '{$me_id}' ";
|
||||
$row = sql_fetch($sql);
|
||||
if (!$row[mb_read_datetime][0]) // 메모 받기전이면
|
||||
|
||||
@ -4,6 +4,8 @@ include_once('./_common.php');
|
||||
if (!$is_member)
|
||||
alert('회원만 이용하실 수 있습니다.');
|
||||
|
||||
$me_id = (int)$_REQUEST['me_id'];
|
||||
|
||||
if ($kind == 'recv')
|
||||
{
|
||||
$t = '받은';
|
||||
|
||||
@ -3,7 +3,7 @@ include_once('./_common.php');
|
||||
|
||||
// 로그인중인 경우 회원가입 할 수 없습니다.
|
||||
if ($is_member) {
|
||||
goto_url(G4_PATH);
|
||||
goto_url(G4_URL);
|
||||
}
|
||||
|
||||
// 세션을 지웁니다.
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
<?
|
||||
include_once('./_common.php');
|
||||
|
||||
if (isset($_SESSION['ss_mb_reg']))
|
||||
if (isset($_SESSION['ss_mb_reg']))
|
||||
$mb = get_member($_SESSION['ss_mb_reg']);
|
||||
|
||||
// 회원정보가 없다면 초기 페이지로 이동
|
||||
if (!$mb['mb_id'])
|
||||
goto_url(G4_PATH);
|
||||
if (!$mb['mb_id'])
|
||||
goto_url(G4_URL);
|
||||
|
||||
$g4['title'] = '회원가입이 완료되었습니다.';
|
||||
include_once('./_head.php');
|
||||
|
||||
@ -30,15 +30,15 @@ if (!$row['bo_use_rss_view']) {
|
||||
exit;
|
||||
}
|
||||
|
||||
Header("Content-type: text/xml");
|
||||
header("Cache-Control: no-cache, must-revalidate");
|
||||
header("Pragma: no-cache");
|
||||
header('Content-type: text/xml');
|
||||
header('Cache-Control: no-cache, must-revalidate');
|
||||
header('Pragma: no-cache');
|
||||
|
||||
$sql = " select gr_subject from {$g4['group_table']} where gr_id = '{$row['gr_id']}' ";
|
||||
$row = sql_fetch($sql);
|
||||
$subj1 = specialchars_replace($row['gr_subject'], 255);
|
||||
|
||||
echo '<?xml version="1.0" encoding="'.$g4['charset'].'"?>'."\n";
|
||||
echo '<?xml version="1.0" encoding="utf-8"?>'."\n";
|
||||
?>
|
||||
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<channel>
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
* @author sol (ngleader@gmail.com)
|
||||
* @brief 게시판 삭제시 Syndication Ping
|
||||
* gnuboard4/adm/board_delete.inc.php 파일에 추가
|
||||
* include '../syndi/include/gnuboard4_euckr/include.adm.board_delete.inc.php';
|
||||
* include '../syndi/include/include.adm.board_delete.inc.php';
|
||||
*/
|
||||
if(!defined('_GNUBOARD_')) return;
|
||||
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
* @author sol (ngleader@gmail.com)
|
||||
* @brief 게시판 삭제시 Syndication Ping
|
||||
* gnuboard4/adm/board_form_update.php 파일에 추가
|
||||
* include '../syndi/include/gnuboard4_euckr/include.adm.board_form_update.php';
|
||||
* include '../syndi/include/include.adm.board_form_update.php';
|
||||
*/
|
||||
if(!defined('_GNUBOARD_')) return;
|
||||
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
* @author sol (ngleader@gmail.com)
|
||||
* @brief 글 삭제시 Syndication Ping
|
||||
* gnuboard4/bbs/bbs.delete.php 파일에 추가
|
||||
* include '../syndi/include/gnuboard4_euckr/include.bbs.delete.php';
|
||||
* include '../syndi/include/include.bbs.delete.php';
|
||||
*/
|
||||
if(!defined('_GNUBOARD_')) return;
|
||||
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
* @author sol (ngleader@gmail.com)
|
||||
* @brief 글 삭제시 Syndication Ping
|
||||
* gnuboard4/bbs/bbs.delete_all.php 파일에 추가
|
||||
* include '../syndi/include/gnuboard4_euckr/include.bbs.delete_all.php';
|
||||
* include '../syndi/include/include.bbs.delete_all.php';
|
||||
*/
|
||||
if(!defined('_GNUBOARD_')) return;
|
||||
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
* @author sol (ngleader@gmail.com)
|
||||
* @brief 글 등록/수정시 Syndication Ping
|
||||
* gnuboard4/bbs/move_update.php 파일에 추가
|
||||
* include '../syndi/include/gnuboard4_euckr/include.bbs.move_update.php';
|
||||
* include '../syndi/include/include.bbs.move_update.php';
|
||||
*/
|
||||
if(!defined('_GNUBOARD_')) return;
|
||||
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
* @author sol (ngleader@gmail.com)
|
||||
* @brief 글 등록/수정시 Syndication Ping
|
||||
* gnuboard4/bbs/write_update.php 파일에 추가
|
||||
* include '../syndi/include/gnuboard4_euckr/include.bbs.write_update.php';
|
||||
* include '../syndi/include/include.bbs.write_update.php';
|
||||
*/
|
||||
if(!defined('_GNUBOARD_')) return;
|
||||
|
||||
|
||||
@ -2,19 +2,20 @@
|
||||
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
|
||||
// 컴퓨터의 아이피와 쿠키에 저장된 아이피가 다르다면 테이블에 반영함
|
||||
if (get_cookie('ck_visit_ip') != $_SERVER['REMOTE_ADDR']) {
|
||||
if (get_cookie('ck_visit_ip') != $_SERVER['REMOTE_ADDR'])
|
||||
{
|
||||
set_cookie('ck_visit_ip', $_SERVER['REMOTE_ADDR'], 86400); // 하루동안 저장
|
||||
|
||||
$tmp_row = sql_fetch(" select max(vi_id) as max_vi_id from {$g4['visit_table']} ");
|
||||
$vi_id = $tmp_row['max_vi_id'] + 1;
|
||||
|
||||
// $_SERVER 배열변수 값의 변조를 이용한 SQL Injection 공격을 막는 코드입니다. 110810
|
||||
$remote_addr = mysql_real_escape_string($_SERVER['REMOTE_ADDR']);
|
||||
$remote_addr = escape_trim($_SERVER['REMOTE_ADDR']);
|
||||
$referer = "";
|
||||
if (isset($_SERVER['HTTP_REFERER']))
|
||||
$referer = mysql_real_escape_string($_SERVER['HTTP_REFERER']);
|
||||
$user_agent = mysql_real_escape_string($_SERVER['HTTP_USER_AGENT']);
|
||||
$sql = " insert {$g4['visit_table']} ( vi_id, vi_ip, vi_date, vi_time, vi_referer, vi_agent ) values ( '{$vi_id}', '{$remote_addr}', '".G4_TIME_YMD."', '{$g4['time_his']}', '{$referer}', '{$user_agent}' ) ";
|
||||
$referer = escape_trim($_SERVER['HTTP_REFERER']);
|
||||
$user_agent = escape_trim($_SERVER['HTTP_USER_AGENT']);
|
||||
$sql = " insert {$g4['visit_table']} ( vi_id, vi_ip, vi_date, vi_time, vi_referer, vi_agent ) values ( '{$vi_id}', '{$remote_addr}', '".G4_TIME_YMD."', '".G4_TIME_HIS."', '{$referer}', '{$user_agent}' ) ";
|
||||
|
||||
$result = sql_query($sql, FALSE);
|
||||
// 정상으로 INSERT 되었다면 방문자 합계에 반영
|
||||
@ -59,4 +60,4 @@ if (get_cookie('ck_visit_ip') != $_SERVER['REMOTE_ADDR']) {
|
||||
sql_query(" update {$g4['config_table']} set cf_visit = '{$visit}' ");
|
||||
}
|
||||
}
|
||||
?>
|
||||
?>
|
||||
|
||||
@ -3,8 +3,8 @@ include_once('./_common.php');
|
||||
include_once(G4_CKEDITOR_PATH.'/ckeditor.lib.php');
|
||||
include_once(G4_GCAPTCHA_PATH.'/gcaptcha.lib.php');
|
||||
|
||||
set_session('ss_bo_table', $bo_table);
|
||||
set_session('ss_wr_id', $wr_id);
|
||||
set_session('ss_bo_table', $_REQUEST['bo_table']);
|
||||
set_session('ss_wr_id', $_REQUEST['wr_id']);
|
||||
|
||||
if (!$board['bo_table']) {
|
||||
alert('존재하지 않는 게시판입니다.', G4_URL);
|
||||
|
||||
@ -42,8 +42,8 @@ if (empty($_POST)) {
|
||||
}
|
||||
|
||||
$w = $_POST['w'];
|
||||
$wr_link1 = mysql_real_escape_string($_POST['wr_link1']);
|
||||
$wr_link2 = mysql_real_escape_string($_POST['wr_link2']);
|
||||
$wr_link1 = escape_trim(strip_tags($_POST['wr_link1']));
|
||||
$wr_link2 = escape_trim(strip_tags($_POST['wr_link2']));
|
||||
|
||||
$notice_array = explode(',', trim($board['bo_notice']));
|
||||
|
||||
@ -349,7 +349,7 @@ if ($w == '' || $w == 'r') {
|
||||
// 쓰기 포인트 부여
|
||||
if ($w == '') {
|
||||
if ($notice) {
|
||||
$bo_notice = $wr_id."\n".$board['bo_notice'];
|
||||
$bo_notice = $wr_id.",".$board['bo_notice'];
|
||||
sql_query(" update {$g4['board_table']} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' ");
|
||||
}
|
||||
|
||||
@ -364,26 +364,28 @@ if ($w == '' || $w == 'r') {
|
||||
alert('올바른 방법으로 수정하여 주십시오.');
|
||||
}
|
||||
|
||||
$return_url = './board.php?bo_table='.$bo_table.'&wr_id='.$wr_id;
|
||||
|
||||
if ($is_admin == 'super') // 최고관리자 통과
|
||||
;
|
||||
else if ($is_admin == 'group') { // 그룹관리자
|
||||
$mb = get_member($write['mb_id']);
|
||||
if ($member['mb_id'] != $group['gr_admin']) // 자신이 관리하는 그룹인가?
|
||||
alert('자신이 관리하는 그룹의 게시판이 아니므로 수정할 수 없습니다.');
|
||||
alert('자신이 관리하는 그룹의 게시판이 아니므로 수정할 수 없습니다.', $return_url);
|
||||
else if ($member['mb_level'] < $mb['mb_level']) // 자신의 레벨이 크거나 같다면 통과
|
||||
alert('자신의 권한보다 높은 권한의 회원이 작성한 글은 수정할 수 없습니다.');
|
||||
alert('자신의 권한보다 높은 권한의 회원이 작성한 글은 수정할 수 없습니다.', $return_url);
|
||||
} else if ($is_admin == 'board') { // 게시판관리자이면
|
||||
$mb = get_member($write['mb_id']);
|
||||
if ($member['mb_id'] != $board['bo_admin']) // 자신이 관리하는 게시판인가?
|
||||
alert('자신이 관리하는 게시판이 아니므로 수정할 수 없습니다.');
|
||||
alert('자신이 관리하는 게시판이 아니므로 수정할 수 없습니다.', $return_url);
|
||||
else if ($member['mb_level'] < $mb['mb_level']) // 자신의 레벨이 크거나 같다면 통과
|
||||
alert('자신의 권한보다 높은 권한의 회원이 작성한 글은 수정할 수 없습니다.');
|
||||
alert('자신의 권한보다 높은 권한의 회원이 작성한 글은 수정할 수 없습니다.', $return_url);
|
||||
} else if ($member['mb_id']) {
|
||||
if ($member['mb_id'] != $write['mb_id'])
|
||||
alert('자신의 글이 아니므로 수정할 수 없습니다.');
|
||||
alert('자신의 글이 아니므로 수정할 수 없습니다.', $return_url);
|
||||
} else {
|
||||
if ($write['mb_id'])
|
||||
alert('로그인 후 수정하세요.', './login.php?url='.urlencode('./board.php?bo_table='.$bo_table.'&wr_id='.$wr_id));
|
||||
alert('로그인 후 수정하세요.', './login.php?url='.urlencode($return_url));
|
||||
}
|
||||
|
||||
if ($member['mb_id']) {
|
||||
@ -445,7 +447,7 @@ if ($w == '' || $w == 'r') {
|
||||
if ($notice) {
|
||||
//if (!preg_match("/[^0-9]{0,1}{$wr_id}[\r]{0,1}/",$board['bo_notice']))
|
||||
if (!in_array((int)$wr_id, $notice_array)) {
|
||||
$bo_notice = $wr_id . '\n' . $board['bo_notice'];
|
||||
$bo_notice = $wr_id . ',' . $board['bo_notice'];
|
||||
sql_query(" update {$g4['board_table']} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' ");
|
||||
}
|
||||
} else {
|
||||
|
||||
2965
bbs/zip.db
2965
bbs/zip.db
File diff suppressed because it is too large
Load Diff
29
common.php
29
common.php
@ -2,9 +2,6 @@
|
||||
/*******************************************************************************
|
||||
** 공통 변수, 상수, 코드
|
||||
*******************************************************************************/
|
||||
//error_reporting(E_ALL ^ E_NOTICE);
|
||||
//error_reporting(E_ALL & ~E_NOTICE);
|
||||
//error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT);
|
||||
error_reporting( E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_ERROR | E_WARNING | E_PARSE | E_USER_ERROR | E_USER_WARNING | E_RECOVERABLE_ERROR );
|
||||
|
||||
// 보안설정이나 프레임이 달라도 쿠키가 통하도록 설정
|
||||
@ -69,19 +66,14 @@ $g4 = array();
|
||||
|
||||
function g4_path()
|
||||
{
|
||||
$path = dirname(__FILE__); // 예) /home/sir/www/g4s
|
||||
$linux_dir = str_replace("\\", "/", $path); // 예) /home/sir/www/g4s
|
||||
$document_root = str_replace("\\", "/", $_SERVER['DOCUMENT_ROOT']); // 예) /home/sir/www
|
||||
$base_dir = preg_replace('#^'.$document_root.'#i', '', $linux_dir); // 예) /g4s
|
||||
$port = $_SERVER['SERVER_PORT'] != 80 ? ':'.$_SERVER['SERVER_PORT'] : '';
|
||||
$http = 'http' . ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on') ? 's' : '') . '://';
|
||||
|
||||
$result = array();
|
||||
$result['path'] = $path;
|
||||
$result['url'] = $http.$_SERVER['SERVER_NAME'].$port.$base_dir;
|
||||
$result['curr_url'] = $http.$_SERVER['SERVER_NAME'].$port.$_SERVER['PHP_SELF'];
|
||||
$result['curr_uri'] = $result['curr_url'] . ($_SERVER['QUERY_STRING'] ? '?'.$_SERVER['QUERY_STRING'] : '');
|
||||
|
||||
$result['path'] = str_replace('\\', '/', dirname(__FILE__));
|
||||
$tilde_remove = preg_replace('/^\/\~[^\/]+(.*)$/', '$1', $_SERVER['SCRIPT_NAME']);
|
||||
$document_root = str_replace($tilde_remove, '', $_SERVER['SCRIPT_FILENAME']);
|
||||
$root = str_replace($document_root, '', $result['path']);
|
||||
$port = $_SERVER['SERVER_PORT'] != 80 ? ':'.$_SERVER['SERVER_PORT'] : '';
|
||||
$http = 'http' . ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on') ? 's' : '') . '://';
|
||||
$user = str_replace(str_replace($document_root, '', $_SERVER['SCRIPT_FILENAME']), '', $_SERVER['SCRIPT_NAME']);
|
||||
$result['url'] = $http.$_SERVER['SERVER_NAME'].$port.$user.$root;
|
||||
return $result;
|
||||
}
|
||||
|
||||
@ -124,10 +116,10 @@ div a {display:block;margin:50px auto 10px;width:170px;text-align:center}
|
||||
<div>
|
||||
<p>다음 파일을 찾을 수 없습니다.</p>
|
||||
<ul>
|
||||
<li><strong><?=$dbconfig_file?></strong></li>
|
||||
<li><strong><?=G4_DATA_DIR.'/'.G4_DBCONFIG_FILE?></strong></li>
|
||||
</ul>
|
||||
<p>프로그램 설치 후 실행하시기 바랍니다.</p>
|
||||
<a href="<?=G4_URL?>/install/">그누보드4S 설치하기</a>
|
||||
<a href="./install/">그누보드4S 설치하기</a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@ -220,6 +212,7 @@ if (isset($_REQUEST['sca'])) {
|
||||
|
||||
if (isset($_REQUEST['sfl'])) {
|
||||
$sfl = escape_trim($_REQUEST['sfl']);
|
||||
$sfl = preg_replace("/[\<\>\'\"\%\=\(\)\s]/", "", $sfl);
|
||||
if ($sfl)
|
||||
$qstr .= '&sfl=' . urlencode($sfl); // search field (검색 필드)
|
||||
} else {
|
||||
|
||||
@ -17,7 +17,7 @@ if (PHP_VERSION >= '5.3.0') {
|
||||
|
||||
/*
|
||||
보안서버 도메인
|
||||
회원가입, 글쓰기에 사용되는 https 로 시작되는 주소를 말합니다.
|
||||
회원가입, 글쓰기에 사용되는 https 로 시작되는 주소를 말합니다.
|
||||
포트가 있다면 도메인 뒤에 :443 과 같이 입력하세요.
|
||||
보안서버주소가 없다면 공란으로 두시면 되며 보안서버주소 뒤에 / 는 붙이지 않습니다.
|
||||
입력예) https://www.domain.com:443/gnuboard4s
|
||||
@ -50,9 +50,9 @@ define('G4_MOBILE_DIR', 'mobile');
|
||||
if (G4_DOMAIN) {
|
||||
define('G4_URL', G4_DOMAIN);
|
||||
} else {
|
||||
if (isset($g4_path['url']))
|
||||
if (isset($g4_path['url']))
|
||||
define('G4_URL', $g4_path['url']);
|
||||
else
|
||||
else
|
||||
define('G4_URL', '');
|
||||
}
|
||||
|
||||
@ -87,7 +87,6 @@ define('G4_MOBILE_PATH', G4_PATH.'/'.G4_MOBILE_DIR);
|
||||
|
||||
|
||||
define('G4_USE_CACHE', true); // 최신글등에 cache 기능 사용 여부
|
||||
define('G4_USE_SHOP', true); // 쇼핑몰 사용 여부
|
||||
|
||||
|
||||
// 시간 상수
|
||||
|
||||
@ -13,7 +13,7 @@ input[type=text],
|
||||
input[type=password],
|
||||
input[type=submit],
|
||||
input[type=image] {-webkit-appearance:none}
|
||||
button {border-radius:0;-webkit-appearance:none}
|
||||
button {border-radius:0;font-size:1em;-webkit-appearance:none}
|
||||
p {margin:0;padding:10px 0;line-height:1.7em;word-break:break-all}
|
||||
hr {display:none}
|
||||
pre {overflow-x:scroll;font-size:1.1em}
|
||||
@ -38,11 +38,22 @@ h2 {font-size:1.2em}
|
||||
#captcha img {border:1px solid #ddd;border-right:0}
|
||||
#captcha_mp3 img {border:1px solid #ddd;border-left:0;background:#494949}
|
||||
|
||||
/* ckeditor 단축키 */
|
||||
.cke_sc {margin:0 0 5px;text-align:right}
|
||||
.btn_cke_sc{display:inline-block;padding:0 10px;height:23px;border:1px solid #ccc !important;background:#fafafa !important;color:#000 !important;text-decoration:none !important;line-height:1.9em;vertical-align:middle}
|
||||
.cke_sc_def {margin:0 0 5px;padding:10px;border:1px solid #ccc;background:#f7f7f7;text-align:center}
|
||||
.cke_sc_def dl{margin:0 0 5px;text-align:left;zoom:1}
|
||||
.cke_sc_def dl:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
.cke_sc_def dt,
|
||||
.cke_sc_def dd {float:left;margin:0;padding:5px 0;border-bottom:1px solid .e9e9e9}
|
||||
.cke_sc_def dt {width:20%;font-weight:bold}
|
||||
.cke_sc_def dd {width:30%}
|
||||
|
||||
/* 레이아웃 */
|
||||
#hd {z-index:10;min-width:1000px;background:url('../adm/img/hd_bg.jpg') #383b3f top left repeat-x}
|
||||
#hd h1,
|
||||
#hd h2 {margin:0;padding:0;font-size:0;line-height:0;border:0;overflow:hidden}
|
||||
#hd_wrap {position:relative;margin:0 auto;width:1000px}
|
||||
#hd_wrap {z-index:11;position:relative;margin:0 auto;width:1000px}
|
||||
#logo {position:relative;height:70px}
|
||||
#logo img {position:absolute;top:15px;left:0}
|
||||
|
||||
@ -54,11 +65,11 @@ h2 {font-size:1.2em}
|
||||
#mb_nb a {display:inline-block;padding:5px 0;color:#e0e0e0;font-size:0.9em;text-decoration:none}
|
||||
|
||||
/* gnb js off */
|
||||
#gnb {z-index:10;background:#383a3f}
|
||||
#gnb {z-index:12;background:#383a3f}
|
||||
#gnb h2 {margin:0;padding:0;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
|
||||
#gnb_ul {margin:0 auto;padding:0;width:1000px;zoom:1}
|
||||
#gnb_ul:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
.gnb_1depth {z-index:10;clear:both;zoom:1}
|
||||
.gnb_1depth {z-index:13;clear:both;zoom:1}
|
||||
.gnb_1depth:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
.gnb_1depth a {display:block;float:left;width:110px;height:35px;color:#e0e0e0;font-weight:bold;line-height:2.95em;text-decoration:none}
|
||||
.gnb_1depth a:focus,
|
||||
@ -79,10 +90,8 @@ h2 {font-size:1.2em}
|
||||
.gnb_1depth_over .gnb_sub_ul {left:-1px;width:181px;height:auto;border:1px solid #c3c7c5;border-top:0;background:#fff}
|
||||
.gnb_1depth_over2 .gnb_sub_ul {right:-1px;width:181px;height:auto;border:1px solid #c3c7c5;border-top:0;background:#fff}
|
||||
|
||||
#current_loc {position:absolute;top:-5000px;left:0}
|
||||
|
||||
/* 중간 레이아웃 */
|
||||
#wrapper {margin:30px auto;width:1000px;min-height:630px;height:auto !important;height:630px;zoom:1}
|
||||
#wrapper {z-index:5;margin:30px auto;width:1000px;min-height:630px;height:auto !important;height:630px;zoom:1}
|
||||
#wrapper:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
|
||||
#qnb {float:right;margin:0;padding:0;list-style:none}
|
||||
@ -93,7 +102,7 @@ h2 {font-size:1.2em}
|
||||
#qnb a:active {text-decoration:none}
|
||||
#qnb img {margin-bottom:5px}
|
||||
|
||||
#container {position:relative;float:left;width:942px}
|
||||
#container {z-index:4;position:relative;float:left;width:942px}
|
||||
|
||||
/* 텍스트 크기 조절 */
|
||||
#text_size {position:absolute;top:0;right:0}
|
||||
@ -255,7 +264,7 @@ td {padding:8px 5px 6px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9
|
||||
/* 공통 */
|
||||
.td_chk {width:30px;text-align:center}
|
||||
.td_num {width:60px;text-align:center}
|
||||
.td_bignum {width:120px;text-align:center}
|
||||
.td_bignum {width:100px;text-align:center}
|
||||
.td_grid {width:60px;text-align:center}
|
||||
.td_mbid,
|
||||
.td_name,
|
||||
@ -289,6 +298,11 @@ td {padding:8px 5px 6px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9
|
||||
.new_win_ul a {display:block;padding:10px 10px 8px;border-right:1px solid #595959;border-left:1px solid #595959;color:#fff;font-family:"dotum";font-weight:bold;text-decoration:none}
|
||||
.new_win_desc {margin:0 auto;width:93%}
|
||||
|
||||
/* 자바스크립트 alert 대안 */
|
||||
#validation_check {margin:100px auto;width:500px}
|
||||
#validation_check h1 {margin-bottom:20px;font-size:1.3em}
|
||||
#validation_check p {margin-bottom:20px;padding:30px 20px;border:1px solid #e9e9e9;background:#fff}
|
||||
|
||||
/* 관리자 패스워드 확인 */
|
||||
#admin_confirm {padding:0 0 10px;background:#222;text-align:center}
|
||||
#admin_confirm p {margin:0 0 10px;color:#9ab9c5;background:#383a3f}
|
||||
@ -296,14 +310,14 @@ td {padding:8px 5px 6px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9
|
||||
#admin_confirm .frm_input {border-color:#000}
|
||||
|
||||
/* 사이드뷰 */
|
||||
.sv_wrap {display:inline-block;position:relative;font-weight:normal}
|
||||
.sv_wrap .sv {z-index:5;display:none;margin:5px 0 0;border:1px solid #283646;background:#334356}
|
||||
.sv_js_off .sv {display:block}
|
||||
.sv_wrap {display:inline-block;position:relative;font-weight:normal;font-size:1em}
|
||||
.sv_wrap .sv {z-index:1000;display:none;margin:5px 0 0;border:1px solid #283646;background:#111}
|
||||
.sv_wrap .sv a {display:inline-block !important;margin:0 !important;padding:3px !important;width:94px;border-bottom:1px solid #283646;color:#fff !important}
|
||||
.sv_wrap a:focus,
|
||||
.sv_wrap a:hover,
|
||||
.sv_wrap a:active {text-decoration:none !important}
|
||||
.sv_on {display:block !important;position:absolute;top:10px;left:20px;width:auto;height:auto !important;background:#ddd}
|
||||
.sv_on {display:block !important;position:absolute;top:10px;left:20px;width:auto;height:auto !important}
|
||||
.sv_nojs .sv {display:block}
|
||||
|
||||
/* pagination */
|
||||
.pg_wrap {clear:both;margin:0 0 20px;padding-top:20px;text-align:center}
|
||||
|
||||
@ -13,7 +13,7 @@ input[type=text],
|
||||
input[type=password],
|
||||
input[type=submit],
|
||||
input[type=image] {-webkit-appearance:none}
|
||||
button {border-radius:0;-webkit-appearance:none}
|
||||
button {border-radius:0;font-size:1em;-webkit-appearance:none}
|
||||
p {margin:0;padding:10px 0;line-height:1.7em;word-break:break-all}
|
||||
hr {display:none}
|
||||
pre {overflow-x:scroll;font-size:1.1em}
|
||||
@ -33,11 +33,23 @@ a:active {color:#000;text-decoration:underline}
|
||||
#to_content a:active {width:100%;height:75px;background:#21272e;color:#fff;font-size:2em;font-weight:bold;text-align:center;text-decoration:none;line-height:3.3em}
|
||||
|
||||
/* 이미지 등비율 리사이징 */
|
||||
.img_fix {float:left;width:100%;height:auto}
|
||||
.img_fix {width:100%;height:auto}
|
||||
|
||||
/* 캡챠 자동등록(입력)방지 기본 */
|
||||
#captcha img {border:1px solid #cfded8;border-right:0}
|
||||
#captcha_mp3 img {border:1px solid #cfded8;border-left:0;background:#494949}
|
||||
#mp3_embed {position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden} /* 익스 8 이하에서 음성캡챠 실행 스타일 */
|
||||
|
||||
/* ckeditor 단축키 */
|
||||
.cke_sc {margin:0 0 5px;text-align:right}
|
||||
.btn_cke_sc{display:inline-block;padding:0 10px;height:23px;border:1px solid #ccc !important;background:#fafafa !important;color:#000 !important;text-decoration:none !important;line-height:1.9em;vertical-align:middle}
|
||||
.cke_sc_def {margin:0 0 5px;padding:10px;border:1px solid #ccc;background:#f7f7f7;text-align:center}
|
||||
.cke_sc_def dl{margin:0 0 5px;text-align:left;zoom:1}
|
||||
.cke_sc_def dl:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
.cke_sc_def dt,
|
||||
.cke_sc_def dd {float:left;margin:0;padding:5px 0;border-bottom:1px solid .e9e9e9}
|
||||
.cke_sc_def dt {width:20%;font-weight:bold}
|
||||
.cke_sc_def dd {width:30%}
|
||||
|
||||
/* 상단 레이아웃 */
|
||||
#hd {height:73px;border-top:3px solid #151515;border-bottom:1px solid #e7f1ed;background:#fff}
|
||||
@ -114,13 +126,15 @@ a:active {color:#000;text-decoration:underline}
|
||||
#ft_catch {position:relative;margin:0 auto;padding:20px 0;width:980px;text-align:center}
|
||||
|
||||
#ft_copy {background:#414141}
|
||||
#ft_copy p {margin:0 auto;width:980px;color:#4a9ab8}
|
||||
#ft_copy p {position:relative;margin:0 auto;width:980px;color:#4a9ab8}
|
||||
#ft_copy b {color:#fff}
|
||||
#ft_copy a {position:absolute;top:10px;right:0;color:#fff}
|
||||
|
||||
/* Mobile화면으로 */
|
||||
#g4s_cng {display:block;margin:0.3em;padding:0.5em 0;border:1px solid #eee;border-radius:2em;background:#fff;color:#000;font-size:2em;text-decoration:none;text-align:center}
|
||||
|
||||
/* 콘텐츠별 스타일 */
|
||||
.cnt_cmt {display:inline-block;margin:0 0 0 3px;font-weight:bold}
|
||||
/* 버튼 */
|
||||
.btn01 {display:inline-block;padding:0 10px;height:23px;border:1px solid #ccc !important;background:#fafafa !important;color:#000 !important;text-decoration:none !important;line-height:2.15em;vertical-align:middle}
|
||||
.btn01:focus,
|
||||
@ -213,19 +227,17 @@ input.required:focus {padding:3px 3px 4px;border:0;background:#21272e !important
|
||||
/* 자바스크립트 alert 대안 */
|
||||
#validation_check {margin:100px auto;width:500px}
|
||||
#validation_check h1 {margin-bottom:20px;font-size:1.3em}
|
||||
#validation_check p {margin-bottom:20px;padding:30px 20px}
|
||||
|
||||
/* 스킨별 스타일 */
|
||||
#validation_check p {margin-bottom:20px;padding:30px 20px;border:1px solid #e9e9e9;background:#fff}
|
||||
|
||||
/* 사이드뷰 */
|
||||
.sv_wrap {display:inline-block;position:relative;font-weight:normal}
|
||||
.sv_wrap .sv {z-index:1000;display:none;margin:5px 0 0;border:1px solid #283646;background:#111}
|
||||
.sv_js_off {display:block}
|
||||
.sv_wrap .sv a {display:inline-block !important;margin:0 !important;padding:3px !important;width:94px;border-bottom:1px solid #283646;color:#fff !important}
|
||||
.sv_wrap a:focus,
|
||||
.sv_wrap a:hover,
|
||||
.sv_wrap a:active {text-decoration:none !important}
|
||||
.sv_on {display:block !important;position:absolute;top:10px;left:20px;width:auto;height:auto !important}
|
||||
.sv_nojs .sv {display:block}
|
||||
|
||||
/* pagination */
|
||||
.pg_wrap {clear:both;margin:0 0 20px;padding-top:20px;text-align:center}
|
||||
|
||||
@ -29,7 +29,7 @@ pre {overflow-x:scroll;font-size:1.1em}
|
||||
.to_content a {z-index:100000;position:absolute;top:0;left:0;width:0;height:0;font-size:0;line-height:0;overflow:hidden}
|
||||
|
||||
/* 이미지 등비율 리사이징 */
|
||||
.img_fix {float:left;width:100%;height:auto}
|
||||
.img_fix {width:100%;height:auto}
|
||||
|
||||
/* 캡챠 자동등록(입력)방지 기본 */
|
||||
#captcha img {height:1.8em;border:1px solid #cfded8;border-right:0}
|
||||
@ -91,8 +91,9 @@ pre {overflow-x:scroll;font-size:1.1em}
|
||||
#ft img {display:none}
|
||||
|
||||
#ft_copy {background:#232323}
|
||||
#ft_copy p {padding:0.5em;color:#4a9ab8}
|
||||
#ft_copy p {position:relative;padding:0.5em;color:#4a9ab8}
|
||||
#ft_copy b {color:#fff}
|
||||
#ft_copy a {position:absolute;top:0.5em;right:0.5em;color:#fff;text-decoration:none}
|
||||
|
||||
/* PC화면으로 */
|
||||
#g4s_cng {display:block;margin:0.3em;padding:0.5em 0;border:1px solid #eee;border-radius:2em;color:#000;font-size:1em;text-decoration:none;text-align:center}
|
||||
|
||||
0
extend/.htaccess
Normal file
0
extend/.htaccess
Normal file
@ -1,8 +1,9 @@
|
||||
<?
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
|
||||
if(!G4_USE_SHOP)
|
||||
return;
|
||||
define('G4_USE_SHOP', true);
|
||||
|
||||
if (!defined('G4_USE_SHOP') || !G4_USE_SHOP) return;
|
||||
|
||||
include_once(G4_LIB_PATH.'/shop.lib.php');
|
||||
|
||||
|
||||
2
head.php
2
head.php
@ -139,7 +139,7 @@ if ($config['cf_include_head']) {
|
||||
<a href="<?=G4_BBS_URL?>/group.php?gr_id=<?=$row['gr_id']?>"><?=$row['gr_subject']?></a>
|
||||
<ul class="gnb_sub_ul">
|
||||
<?
|
||||
$sql2 = " select * from {$g4['board_table']} where gr_id = '{$row['gr_id']}' order by bo_order ";
|
||||
$sql2 = " select * from {$g4['board_table']} where gr_id = '{$row['gr_id']}' and bo_show_menu = '1' order by bo_order ";
|
||||
$result2 = sql_query($sql2);
|
||||
for ($bi=0; $row2=sql_fetch_array($result2); $bi++) { // bi 는 board index
|
||||
?>
|
||||
|
||||
@ -32,7 +32,11 @@ header("Pragma: no-cache"); // HTTP/1.0
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<? if (G4_IS_MOBILE) {?><meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width"><? } ?>
|
||||
<? if (G4_IS_MOBILE) {?>
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=0,maximum-scale=10,user-scalable=yes">
|
||||
<meta name="HandheldFriendly" content="true">
|
||||
<meta name="format-detection" content="telephone=no">
|
||||
<? } ?>
|
||||
<!-- <meta http-equiv="X-UA-Compatible" content="IE=Edge" /> -->
|
||||
<title><?=$g4_head_title?></title>
|
||||
<? if (defined('G4_IS_ADMIN')) { ?>
|
||||
@ -88,5 +92,5 @@ if ($is_member) { // 회원이라면 로그인 중이라는 메세지를 출력
|
||||
else if ($is_admin == 'group') $sr_admin_msg = "그룹관리자 ";
|
||||
else if ($is_admin == 'board') $sr_admin_msg = "게시판관리자 ";
|
||||
?>
|
||||
<div id="hd_login_msg"><?=$sr_admin_msg?><?=$member['mb_nick']?>님 로그인 중</div>
|
||||
<div id="hd_login_msg"><?=$sr_admin_msg?><?=$member['mb_nick']?>님 로그인 중 <a href="<?=G4_URL?>/bbs/logout.php">로그아웃</a></div>
|
||||
<? } ?>
|
||||
|
||||
@ -64,6 +64,7 @@ CREATE TABLE IF NOT EXISTS `g4s_board` (
|
||||
`bo_hot` int(11) NOT NULL default '0',
|
||||
`bo_image_width` int(11) NOT NULL default '0',
|
||||
`bo_skin` varchar(255) NOT NULL default '',
|
||||
`bo_mobile_skin` varchar(255) NOT NULL default '',
|
||||
`bo_image_head` varchar(255) NOT NULL default '',
|
||||
`bo_image_tail` varchar(255) NOT NULL default '',
|
||||
`bo_include_head` varchar(255) NOT NULL default '',
|
||||
@ -187,7 +188,7 @@ CREATE TABLE IF NOT EXISTS `g4s_config` (
|
||||
`cf_include_index` varchar(255) NOT NULL default '',
|
||||
`cf_include_head` varchar(255) NOT NULL default '',
|
||||
`cf_include_tail` varchar(255) NOT NULL default '',
|
||||
`cf_add_script` text NOT NULL default '',
|
||||
`cf_add_script` text NOT NULL,
|
||||
`cf_use_point` tinyint(4) NOT NULL default '0',
|
||||
`cf_use_norobot` tinyint(4) NOT NULL default '0',
|
||||
`cf_use_copy_log` tinyint(4) NOT NULL default '0',
|
||||
@ -266,6 +267,10 @@ CREATE TABLE IF NOT EXISTS `g4s_config` (
|
||||
`cf_privacy` text NOT NULL,
|
||||
`cf_open_modify` int(11) NOT NULL default '0',
|
||||
`cf_memo_send_point` int(11) NOT NULL default '0',
|
||||
`cf_mobile_new_skin` varchar(255) NOT NULL default'',
|
||||
`cf_mobile_search_skin` varchar(255) NOT NULL default'',
|
||||
`cf_mobile_connect_skin` varchar(255) NOT NULL default'',
|
||||
`cf_mobile_member_skin` varchar(255) NOT NULL default'',
|
||||
`cf_kcpcert_site_cd` varchar(255) NOT NULL default '',
|
||||
`cf_adult_check` tinyint(4) NOT NULL default '0',
|
||||
`cf_1_subj` varchar(255) NOT NULL default '',
|
||||
@ -300,6 +305,7 @@ DROP TABLE IF EXISTS `g4s_group`;
|
||||
CREATE TABLE IF NOT EXISTS `g4s_group` (
|
||||
`gr_id` varchar(10) NOT NULL default '',
|
||||
`gr_subject` varchar(255) NOT NULL default '',
|
||||
`gr_device` ENUM('both','pc','mobile') NOT NULL DEFAULT 'both',
|
||||
`gr_admin` varchar(255) NOT NULL default '',
|
||||
`gr_use_access` tinyint(4) NOT NULL default '0',
|
||||
`gr_show_menu` tinyint(4) NOT NULL default '0',
|
||||
|
||||
@ -4,6 +4,9 @@ include_once ('../config.php');
|
||||
include_once ('./install.inc.php');
|
||||
?>
|
||||
|
||||
<?
|
||||
if ($exists_data_dir && $write_data_dir) {
|
||||
?>
|
||||
<p>
|
||||
<strong class="st_strong">라이센스(License) 내용을 반드시 확인하십시오.</strong><br>
|
||||
라이센스에 동의하시는 경우에만 설치가 진행됩니다.
|
||||
@ -11,8 +14,6 @@ include_once ('./install.inc.php');
|
||||
|
||||
<textarea name="textarea" id="idx_license" readonly><?=implode('', file('../LICENSE.txt'));?></textarea>
|
||||
|
||||
</div>
|
||||
|
||||
<form action="./install_config.php" method="post" onsubmit="return frm_submit(this);">
|
||||
<div id="idx_agree">
|
||||
<label for="agree">동의합니다.</label>
|
||||
@ -35,6 +36,11 @@ function frm_submit(f)
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
<?
|
||||
} // if
|
||||
?>
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@ -53,6 +53,7 @@ if (file_exists($dbconfig_file)) {
|
||||
?>
|
||||
|
||||
<?
|
||||
$exists_data_dir = true;
|
||||
// data 디렉토리가 있는가?
|
||||
if (!is_dir($data_path))
|
||||
{
|
||||
@ -62,10 +63,12 @@ if (!is_dir($data_path))
|
||||
$> mkdir <?=G4_DATA_DIR?><br /><br />
|
||||
위 명령 실행후 브라우저를 새로고침 하십시오.</p>
|
||||
<?
|
||||
$exists_data_dir = false;
|
||||
}
|
||||
?>
|
||||
|
||||
<?
|
||||
$write_data_dir = true;
|
||||
// data 디렉토리에 파일 생성 가능한지 검사.
|
||||
if (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN') {
|
||||
if (!(is_readable($data_path) && is_writeable($data_path) && is_executable($data_path)))
|
||||
@ -75,7 +78,7 @@ if (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN') {
|
||||
$> chmod 707 <?=G4_DATA_DIR?> 또는 chmod uo+rwx <?=G4_DATA_DIR?><br /><br />
|
||||
위 명령 실행후 브라우저를 새로고침 하십시오.</p>
|
||||
<?
|
||||
exit;
|
||||
$write_data_dir = false;
|
||||
}
|
||||
}
|
||||
?>
|
||||
@ -17,7 +17,7 @@ if ($_POST['agree'] != '동의함') {
|
||||
}
|
||||
?>
|
||||
|
||||
<form id="frm_install" method="post" action="./install_db.php" onsubmit="return frm_install_submit(this)">
|
||||
<form id="frm_install" method="post" action="./install_db.php" autocomplete="off" onsubmit="return frm_install_submit(this)">
|
||||
<table style="margin-bottom:30px">
|
||||
<caption>MySQL 정보입력</caption>
|
||||
<colgroup>
|
||||
|
||||
@ -7,6 +7,7 @@ header('Cache-Control: no-store, no-cache, must-revalidate'); // HTTP/1.1
|
||||
header('Cache-Control: pre-check=0, post-check=0, max-age=0'); // HTTP/1.1
|
||||
header('Pragma: no-cache'); // HTTP/1.0
|
||||
|
||||
$title = "그누보드4s 설치 3단계 중 3단계 설치 완료";
|
||||
include_once ('../config.php');
|
||||
include_once ('./install.inc.php');
|
||||
|
||||
@ -97,6 +98,10 @@ $sql = " insert into `{$table_prefix}config`
|
||||
cf_possible_ip = '',
|
||||
cf_intercept_ip = '',
|
||||
cf_member_skin = 'basic',
|
||||
cf_mobile_new_skin = 'basic',
|
||||
cf_mobile_search_skin = 'basic',
|
||||
cf_mobile_connect_skin = 'basic',
|
||||
cf_mobile_member_skin = 'basic',
|
||||
cf_register_level = '2',
|
||||
cf_register_point = '1000',
|
||||
cf_icon_level = '2',
|
||||
|
||||
@ -87,7 +87,7 @@ function goto_url($url)
|
||||
{
|
||||
$url = str_replace("&", "&", $url);
|
||||
//echo "<script> location.replace('$url'); </script>";
|
||||
header("Location:$url");
|
||||
@header("Location:$url");
|
||||
exit;
|
||||
}
|
||||
|
||||
@ -137,19 +137,6 @@ function alert($msg='', $url='', $error=true, $post=false)
|
||||
|
||||
if (!$msg) $msg = '올바른 방법으로 이용해 주십시오.';
|
||||
|
||||
/*
|
||||
//header("Content-Type: text/html; charset=$g4['charset']");
|
||||
echo "<meta http-equiv=\"content-type\" content=\"text/html; charset={$g4['charset']}\">";
|
||||
echo "<script>alert('$msg');";
|
||||
if (!$url)
|
||||
echo "history.go(-1);";
|
||||
echo "</script>";
|
||||
if ($url)
|
||||
// 4.06.00 : 불여우의 경우 아래의 코드를 제대로 인식하지 못함
|
||||
//echo "<meta http-equiv='refresh' content='0;url=$url'>";
|
||||
goto_url($url);
|
||||
exit;
|
||||
*/
|
||||
$header = '';
|
||||
if (isset($g4['title'])) {
|
||||
$header = $g4['title'];
|
||||
@ -164,11 +151,6 @@ function alert_close($msg, $error=true)
|
||||
{
|
||||
global $g4;
|
||||
|
||||
/*
|
||||
echo "<meta http-equiv=\"content-type\" content=\"text/html; charset={$g4['charset']}\">";
|
||||
echo "<script> alert('$msg'); window.close(); </script>";
|
||||
exit;
|
||||
*/
|
||||
$header = '';
|
||||
if (isset($g4['title'])) {
|
||||
$header = $g4['title'];
|
||||
@ -495,6 +477,13 @@ function bad120422($matches)
|
||||
return $matches['0'];
|
||||
}
|
||||
|
||||
// tag 내의 주석문 무효화 하기
|
||||
function bad130128($matches)
|
||||
{
|
||||
$str = $matches[2];
|
||||
return '<'.$matches[1].preg_replace('#(\/\*|\*\/)#', '', $str).'>';
|
||||
}
|
||||
|
||||
// 내용을 변환
|
||||
function conv_content($content, $html)
|
||||
{
|
||||
@ -521,14 +510,18 @@ function conv_content($content, $html)
|
||||
$content .= "</table>";
|
||||
}
|
||||
|
||||
$content = preg_replace_callback("/<([^>]+)>/s", 'bad130128', $content);
|
||||
|
||||
$content = preg_replace($source, $target, $content);
|
||||
$content = bad_tag_convert($content);
|
||||
|
||||
// XSS (Cross Site Script) 막기
|
||||
// 완벽한 XSS 방지는 없다.
|
||||
|
||||
|
||||
// 이런 경우를 방지함 <IMG STYLE="xss:expr/*XSS*/ession(alert('XSS'))">
|
||||
$content = preg_replace("#\/\*.*\*\/#iU", "", $content);
|
||||
//$content = preg_replace("#\/\*.*\*\/#iU", "", $content);
|
||||
// 위의 정규식이 아래와 같은 내용을 통과시키므로 not greedy(비탐욕수량자?) 옵션을 제거함. ignore case 옵션도 필요 없으므로 제거
|
||||
// <IMG STYLE="xss:ex//*XSS*/**/pression(alert('XSS'))"></IMG>
|
||||
$content = preg_replace("#\/\*.*\*\/#", "", $content);
|
||||
|
||||
// object, embed 태그에서 javascript 코드 막기
|
||||
$content = preg_replace_callback("#<(object|embed)([^>]+)>#i", "bad120422", $content);
|
||||
@ -538,7 +531,8 @@ function conv_content($content, $html)
|
||||
$content = preg_replace("/(lo)(wsrc)/i", "lo$2", $content);
|
||||
$content = preg_replace("/(sc)(ript)/i", "sc$2", $content);
|
||||
$content = preg_replace_callback("#<([^>]+)#", create_function('$m', 'return "<".str_replace("<", "<", $m[1]);'), $content);
|
||||
$content = preg_replace("/\<(\w|\s|\?)*(xml)/i", "", $content);
|
||||
//$content = preg_replace("/\<(\w|\s|\?)*(xml)/i", "", $content);
|
||||
$content = preg_replace("/\<(\w|\s|\?)*(xml)/i", "_$1$2_", $content);
|
||||
|
||||
// 플래시의 액션스크립트와 자바스크립트의 연동을 차단하여 악의적인 사이트로의 이동을 막는다.
|
||||
// value="always" 를 value="never" 로, allowScriptaccess="always" 를 allowScriptaccess="never" 로 변환하는데 목적이 있다.
|
||||
@ -550,6 +544,9 @@ function conv_content($content, $html)
|
||||
$content = preg_replace("/<(img[^>]+logout\.php[^>]+)/i", "*** CSRF 감지 : <$1", $content);
|
||||
$content = preg_replace("/<(img[^>]+download\.php[^>]+bo_table[^>]+)/i", "*** CSRF 감지 : <$1", $content);
|
||||
|
||||
$content = preg_replace_callback("#style\s*=\s*[\"\']?[^\"\']+[\"\']?#i",
|
||||
create_function('$matches', 'return str_replace("\\\\", "", stripslashes($matches[0]));'), $content);
|
||||
|
||||
$pattern = "";
|
||||
$pattern .= "(e|&#(x65|101);?)";
|
||||
$pattern .= "(x|&#(x78|120);?)";
|
||||
@ -558,10 +555,15 @@ function conv_content($content, $html)
|
||||
$pattern .= "(e|&#(x65|101);?)";
|
||||
$pattern .= "(s|&#(x73|115);?)";
|
||||
$pattern .= "(s|&#(x73|115);?)";
|
||||
$pattern .= "(i|&#(x6a|105);?)";
|
||||
//$pattern .= "(i|&#(x6a|105);?)";
|
||||
$pattern .= "(i|&#(x69|105);?)";
|
||||
$pattern .= "(o|&#(x6f|111);?)";
|
||||
$pattern .= "(n|&#(x6e|110);?)";
|
||||
$content = preg_replace("/".$pattern."/i", "__EXPRESSION__", $content);
|
||||
//$content = preg_replace("/".$pattern."/i", "__EXPRESSION__", $content);
|
||||
$content = preg_replace("/<[^>]*".$pattern."/i", "__EXPRESSION__", $content);
|
||||
// <IMG STYLE="xss:e\xpression(alert('XSS'))"></IMG> 와 같은 코드에 취약점이 있어 수정함. 121213
|
||||
$content = preg_replace("/(?<=style)(\s*=\s*[\"\']?xss\:)/i", '="__XSS__', $content);
|
||||
$content = bad_tag_convert($content);
|
||||
}
|
||||
else // text 이면
|
||||
{
|
||||
@ -837,6 +839,7 @@ function get_group_select($name, $selected='', $event='')
|
||||
$result = sql_query($sql);
|
||||
$str = "<select id=\"$name\" name=\"$name\" $event>\n";
|
||||
for ($i=0; $row=sql_fetch_array($result); $i++) {
|
||||
if ($i == 0) $str .= "<option value=\"\">선택</option>";
|
||||
$str .= option_selected($row['gr_id'], $selected, $row['gr_subject']);
|
||||
}
|
||||
$str .= "</select>";
|
||||
@ -1002,7 +1005,7 @@ function get_sideview($mb_id, $name='', $email='', $homepage='')
|
||||
$str .= $tmp_name."\n";
|
||||
|
||||
if(!G4_IS_MOBILE) {
|
||||
$str2 = "<span class=\"sv sv_js_off\">\n";
|
||||
$str2 = "<span class=\"sv\">\n";
|
||||
if($mb_id)
|
||||
$str2 .= "<a href=\"".G4_BBS_URL."/memo_form.php?me_recv_mb_id=".$mb_id."\" onclick=\"win_memo(this.href); return false;\">쪽지보내기</a>\n";
|
||||
if($email)
|
||||
@ -1024,7 +1027,8 @@ function get_sideview($mb_id, $name='', $email='', $homepage='')
|
||||
$str2 .= "<a href=\"".G4_ADMIN_URL."/point_list.php?sfl=mb_id&stx=".$mb_id."\" target=\"_blank\">포인트내역</a>\n";
|
||||
}
|
||||
$str2 .= "</span>\n";
|
||||
$str .= $str2;//."\n<noscript class=\"sv_nojs\">".$str2."</noscript>";
|
||||
$str .= $str2;
|
||||
$str .= "\n<noscript class=\"sv_nojs\">".$str2."</noscript>";
|
||||
}
|
||||
|
||||
$str .= "</span>";
|
||||
@ -1307,10 +1311,7 @@ function get_table_define($table, $crlf="\n")
|
||||
$schema_create .= implode($columns, ', ') . ')';
|
||||
} // end while
|
||||
|
||||
if (strtolower($g4['charset']) == 'utf-8')
|
||||
$schema_create .= $crlf . ') DEFAULT CHARSET=utf8';
|
||||
else
|
||||
$schema_create .= $crlf . ')';
|
||||
$schema_create .= $crlf . ') DEFAULT CHARSET=utf8';
|
||||
|
||||
return $schema_create;
|
||||
} // end of the 'PMA_getTableDef()' function
|
||||
@ -1515,13 +1516,6 @@ function cut_hangul_last($hangul)
|
||||
}
|
||||
}
|
||||
|
||||
// 홀수라면 한글이 반쪽난 상태이므로
|
||||
if (strtoupper($g4['charset']) != 'UTF-8') {
|
||||
if ($cnt%2) {
|
||||
$hangul = substr($hangul, 0, $cnt-1);
|
||||
}
|
||||
}
|
||||
|
||||
return $hangul;
|
||||
}
|
||||
|
||||
@ -1552,9 +1546,7 @@ function bad_tag_convert($code)
|
||||
$code);
|
||||
}
|
||||
|
||||
//return preg_replace("/\<([\/]?)(script|iframe)([^\>]*)\>/i", "<$1$2$3>", $code);
|
||||
// script 나 iframe 태그를 막지 않는 경우 필터링이 되도록 수정
|
||||
return preg_replace("/\<([\/]?)(script|iframe)([^\>]*)\>?/i", "<$1$2$3>", $code);
|
||||
return preg_replace("/\<([\/]?)(script|iframe|form)([^\>]*)\>?/i", "<$1$2$3>", $code);
|
||||
}
|
||||
|
||||
|
||||
@ -1733,8 +1725,10 @@ function check_device($device)
|
||||
// 게시판 최신글 캐시 파일 삭제
|
||||
function delete_cache_latest($bo_table)
|
||||
{
|
||||
foreach (glob(G4_DATA_PATH.'/cache/latest-'.$bo_table.'-*') as $filename) {
|
||||
unlink($filename);
|
||||
$files = glob(G4_DATA_PATH.'/cache/latest-'.$bo_table.'-*');
|
||||
if (is_array($files)) {
|
||||
foreach ($files as $filename)
|
||||
unlink($filename);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1745,8 +1739,10 @@ function delete_board_thumbnail($bo_table, $file)
|
||||
return;
|
||||
|
||||
$fn = preg_replace("/\.[^\.]+$/i", "", basename($file));
|
||||
foreach(glob(G4_DATA_PATH.'/file/'.$bo_table.'/thumb-'.$fn.'*') as $file) {
|
||||
unlink($file);
|
||||
$files = glob(G4_DATA_PATH.'/file/'.$bo_table.'/thumb-'.$fn.'*');
|
||||
if (is_array($files)) {
|
||||
foreach ($files as $filename)
|
||||
unlink($filename);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1757,7 +1753,7 @@ function get_editor_image($contents)
|
||||
return false;
|
||||
|
||||
// $contents 중 img 태그 추출
|
||||
$pattern = "/<img[^>]*src=[\'\"]?([^>\'\"]+".str_replace(".", "\.", $_SERVER['HTTP_HOST'])."[^>\'\"]+)[\'\"]?[^>]*>/";
|
||||
$pattern = "/<img[^>]*src=[\'\"]?([^>\'\"]+[^>\'\"]+)[\'\"]?[^>]*>/";
|
||||
preg_match_all($pattern, $contents, $matchs);
|
||||
|
||||
return $matchs;
|
||||
@ -1782,9 +1778,10 @@ function delete_editor_thumbnail($contents)
|
||||
|
||||
$filename = preg_replace("/\.[^\.]+$/i", "", basename($srcfile));
|
||||
$filepath = dirname($srcfile);
|
||||
|
||||
foreach(glob($filepath.'/thumb-'.$filename.'*') as $file) {
|
||||
unlink($file);
|
||||
$files = glob($filepath.'/thumb-'.$filename.'*');
|
||||
if (is_array($files)) {
|
||||
foreach($files as $filename)
|
||||
unlink($filename);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1795,16 +1792,9 @@ function get_skin_stylesheet($skin_path)
|
||||
if(!$skin_path)
|
||||
return "";
|
||||
|
||||
$doc_root = realpath($_SERVER['DOCUMENT_ROOT']);
|
||||
$skin_path = realpath($skin_path);
|
||||
|
||||
$str = "";
|
||||
|
||||
$p = parse_url(G4_URL);
|
||||
$skin_url = $p['scheme'].'://'.$p['host'];
|
||||
if(isset($p['port']))
|
||||
$skin_url .= ':'.$p['port'];
|
||||
$skin_url .= str_replace("\\", "/", str_replace($doc_root, "", $skin_path));
|
||||
$skin_url = G4_URL.str_replace("\\", "/", str_replace(G4_PATH, "", $skin_path));
|
||||
|
||||
if(is_dir($skin_path)) {
|
||||
if($dh = opendir($skin_path)) {
|
||||
|
||||
@ -5,6 +5,7 @@ if (!defined('_GNUBOARD_')) exit;
|
||||
function latest($skin_dir='', $bo_table, $rows=10, $subject_len=40)
|
||||
{
|
||||
global $g4;
|
||||
static $css = array();
|
||||
|
||||
if (!$skin_dir) $skin_dir = 'basic';
|
||||
|
||||
@ -38,6 +39,12 @@ function latest($skin_dir='', $bo_table, $rows=10, $subject_len=40)
|
||||
|
||||
include_once($cache_file);
|
||||
|
||||
// 같은 스킨은 .css 를 한번만 호출한다.
|
||||
if (!in_array($skin_dir, $css)) {
|
||||
echo '<link rel="stylesheet" href="'.$latest_skin_url.'/style.css">';
|
||||
$css[] = $skin_dir;
|
||||
}
|
||||
|
||||
ob_start();
|
||||
include $latest_skin_path.'/latest.skin.php';
|
||||
$content = ob_get_contents();
|
||||
|
||||
@ -11,9 +11,8 @@ function mailer($fname, $fmail, $to, $subject, $content, $type=0, $file='', $cc=
|
||||
// 메일발송 사용을 하지 않는다면
|
||||
if (!$config['cf_email_use']) return;
|
||||
|
||||
$fname = "=?$g4[charset]?B?" . base64_encode($fname) . "?=";
|
||||
$subject = "=?$g4[charset]?B?" . base64_encode($subject) . "?=";
|
||||
//$g4[charset] = ($g4[charset] != "") ? "charset=$g4[charset]" : "";
|
||||
$fname = "=?utf-8?B?" . base64_encode($fname) . "?=";
|
||||
$subject = "=?utf-8?B?" . base64_encode($subject) . "?=";
|
||||
|
||||
$header = "Return-Path: <$fmail>\n";
|
||||
$header .= "From: $fname <$fmail>\n";
|
||||
@ -31,11 +30,11 @@ function mailer($fname, $fmail, $to, $subject, $content, $type=0, $file='', $cc=
|
||||
}
|
||||
|
||||
if ($type) {
|
||||
$header .= "Content-Type: TEXT/HTML; charset=$g4[charset]\n";
|
||||
$header .= "Content-Type: TEXT/HTML; charset=utf-8\n";
|
||||
if ($type == 2)
|
||||
$content = nl2br($content);
|
||||
} else {
|
||||
$header .= "Content-Type: TEXT/PLAIN; charset=$g4[charset]\n";
|
||||
$header .= "Content-Type: TEXT/PLAIN; charset=utf-8\n";
|
||||
$content = stripslashes($content);
|
||||
}
|
||||
$header .= "Content-Transfer-Encoding: BASE64\n\n";
|
||||
|
||||
@ -4,15 +4,19 @@ if (!defined('_GNUBOARD_')) exit;
|
||||
// 설문조사
|
||||
function poll($skin_dir='basic', $po_id=false)
|
||||
{
|
||||
global $config, $member, $g4;
|
||||
global $config, $member, $g4, $is_admin;
|
||||
|
||||
// 투표번호가 넘어오지 않았다면 가장 큰(최근에 등록한) 투표번호를 얻는다
|
||||
if (empty($po_id)) {
|
||||
$po_id = $config['cf_max_po_id'];
|
||||
if (empty($po_id))
|
||||
return "<!-- po_id를 찾을 수 없습니다. -->";
|
||||
if (!$po_id) {
|
||||
$row = sql_fetch(" select MAX(po_id) as max_po_id from {$g4['poll_table']} ");
|
||||
$po_id = $row['max_po_id'];
|
||||
}
|
||||
|
||||
if(!$po_id)
|
||||
return;
|
||||
|
||||
$po = sql_fetch(" select * from {$g4['poll_table']} where po_id = '$po_id' ");
|
||||
|
||||
ob_start();
|
||||
if (G4_IS_MOBILE) {
|
||||
$poll_skin_path = G4_MOBILE_PATH.'/'.G4_SKIN_DIR.'/poll/'.$skin_dir;
|
||||
|
||||
@ -9,9 +9,71 @@ function it_img_thumb($filename, $filepath, $thumb_width, $thumb_height, $is_cre
|
||||
}
|
||||
|
||||
// 게시글리스트 썸네일 생성
|
||||
function get_list_thumbnail($filename, $filepath, $thumb_width, $thumb_height, $is_create=false, $is_crop=true)
|
||||
function get_list_thumbnail($bo_table, $wr_id, $thumb_width, $thumb_height, $is_create=false, $is_crop=true)
|
||||
{
|
||||
return thumbnail($filename, $filepath, $filepath, $thumb_width, $thumb_height, $is_create, $is_crop);
|
||||
global $g4, $config;
|
||||
$filename = $alt = "";
|
||||
$edt = false;
|
||||
|
||||
$sql = " select bf_file, bf_content from {$g4['board_file_table']}
|
||||
where bo_table = '$bo_table' and wr_id = '$wr_id' and bf_type between '1' and '3' order by bf_no limit 0, 1 ";
|
||||
$row = sql_fetch($sql);
|
||||
|
||||
if($row['bf_file']) {
|
||||
$filename = $row['bf_file'];
|
||||
$filepath = G4_DATA_PATH.'/file/'.$bo_table;
|
||||
$src_url = G4_DATA_URL.'/file/'.$bo_table;
|
||||
$alt = get_text($row['bf_content']);
|
||||
} else {
|
||||
$write_table = $g4['write_prefix'].$bo_table;
|
||||
$sql = " select wr_content from $write_table where wr_id = '$wr_id' ";
|
||||
$write = sql_fetch($sql);
|
||||
$matchs = get_editor_image($write['wr_content']);
|
||||
$edt = true;
|
||||
|
||||
for($i=0; $i<count($matchs[1]); $i++)
|
||||
{
|
||||
// 이미지 path 구함
|
||||
$src_url = $matchs[1][$i];
|
||||
if(!stristr($src_url, G4_URL) || stripos($src_url, G4_URL) != 0)
|
||||
continue;
|
||||
|
||||
$srcfile = G4_PATH.str_replace(G4_URL, "", $matchs[1][$i]);
|
||||
|
||||
if(preg_match("/\.({$config['cf_image_extension']})$/i", $srcfile) && is_file($srcfile)) {
|
||||
$size = @getimagesize($srcfile);
|
||||
if(empty($size))
|
||||
continue;
|
||||
|
||||
$filename = basename($srcfile);
|
||||
$filepath = dirname($srcfile);
|
||||
|
||||
preg_match("/alt=[\"\']?([^\"\']*)[\"\']?/", $matchs[0][$i], $malt);
|
||||
$alt = get_text($malt[1]);
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(!$filename)
|
||||
return false;
|
||||
|
||||
$tname = thumbnail($filename, $filepath, $filepath, $thumb_width, $thumb_height, $is_create, $is_crop);
|
||||
|
||||
if($tname) {
|
||||
if($edt) {
|
||||
$src = str_replace($filename, $tname, $src_url);
|
||||
} else {
|
||||
$src = $src_url.'/'.$tname;
|
||||
}
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
|
||||
$thumb = array("src"=>$src, "alt"=>$alt);
|
||||
|
||||
return $thumb;
|
||||
}
|
||||
|
||||
// 게시글보기 썸네일 생성
|
||||
@ -38,13 +100,15 @@ function get_view_thumbnail($contents)
|
||||
// $contents 중 img 태그 추출
|
||||
$matchs = get_editor_image($contents);
|
||||
|
||||
if(!$matchs)
|
||||
if(empty($matchs))
|
||||
return $contents;
|
||||
|
||||
for($i=0; $i<count($matchs[1]); $i++) {
|
||||
if(!stristr($matchs[1][$i], G4_URL) || stripos($matchs[1][$i], G4_URL) != 0)
|
||||
continue;
|
||||
|
||||
// 이미지 path 구함
|
||||
$imgurl = parse_url($matchs[1][$i]);
|
||||
$srcfile = $_SERVER['DOCUMENT_ROOT'].$imgurl['path'];
|
||||
$srcfile = G4_PATH.str_replace(G4_URL, "", $matchs[1][$i]);
|
||||
|
||||
if(is_file($srcfile)) {
|
||||
// 썸네일 높이
|
||||
@ -89,7 +153,8 @@ function get_view_thumbnail($contents)
|
||||
|
||||
// $img_tag에 editor 경로가 있으면 원본보기 링크 추가
|
||||
if(strpos($matchs[1][$i], 'data/editor') && preg_match("/\.({$config['cf_image_extension']})$/i", $filename)) {
|
||||
$thumb_tag = '<a href="'.G4_BBS_URL.'/view_image.php?fn='.urlencode($imgurl['path']).'" target="_blank" class="view_image">'.$thumb_tag.'</a>';
|
||||
$imgurl = str_replace(G4_URL, "", $matchs[1][$i]);
|
||||
$thumb_tag = '<a href="'.G4_BBS_URL.'/view_image.php?fn='.urlencode($imgurl).'" target="_blank" class="view_image">'.$thumb_tag.'</a>';
|
||||
}
|
||||
|
||||
$contents = str_replace($img_tag, $thumb_tag, $contents);
|
||||
@ -104,6 +169,8 @@ function thumbnail($filename, $source_path, $target_path, $thumb_width, $thumb_h
|
||||
{
|
||||
global $g4;
|
||||
|
||||
if ($thumb_width==0 || $thumb_height==0) return;
|
||||
|
||||
$thumb_filename = preg_replace("/\.[^\.]+$/i", "", $filename); // 확장자제거
|
||||
|
||||
if (!is_dir($target_path)) {
|
||||
|
||||
@ -40,12 +40,7 @@ function get_brow($agent)
|
||||
|
||||
//echo $agent; echo "<br/>";
|
||||
|
||||
if (preg_match("/msie 5.0[0-9]*/", $agent)) { $s = "MSIE 5.0"; }
|
||||
else if(preg_match("/msie 5.5[0-9]*/", $agent)) { $s = "MSIE 5.5"; }
|
||||
else if(preg_match("/msie 6.0[0-9]*/", $agent)) { $s = "MSIE 6.0"; }
|
||||
else if(preg_match("/msie 7.0[0-9]*/", $agent)) { $s = "MSIE 7.0"; }
|
||||
else if(preg_match("/msie 8.0[0-9]*/", $agent)) { $s = "MSIE 8.0"; }
|
||||
else if(preg_match("/msie 4.[0-9]*/", $agent)) { $s = "MSIE 4.x"; }
|
||||
if (preg_match("/msie ([1-9][0-9]\.[0-9]+)/", $agent, $m)) { $s = 'MSIE '.$m[1]; }
|
||||
else if(preg_match("/firefox/", $agent)) { $s = "FireFox"; }
|
||||
else if(preg_match("/chrome/", $agent)) { $s = "Chrome"; }
|
||||
else if(preg_match("/x11/", $agent)) { $s = "Netscape"; }
|
||||
@ -73,6 +68,7 @@ function get_os($agent)
|
||||
else if(preg_match("/windows nt 5\.2/", $agent)) { $s = "2003"; }
|
||||
else if(preg_match("/windows nt 6\.0/", $agent)) { $s = "Vista"; }
|
||||
else if(preg_match("/windows nt 6\.1/", $agent)) { $s = "Windows7"; }
|
||||
else if(preg_match("/windows nt 6\.2/", $agent)) { $s = "Windows8"; }
|
||||
else if(preg_match("/windows 9x/", $agent)) { $s = "ME"; }
|
||||
else if(preg_match("/windows ce/", $agent)) { $s = "CE"; }
|
||||
else if(preg_match("/mac/", $agent)) { $s = "MAC"; }
|
||||
|
||||
@ -140,7 +140,7 @@ if ($is_nogood) $colspan++;
|
||||
<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 name="stx" value="<?=stripslashes($stx)?>" title="검색어(필수)" required class="required" size="15" maxlength="15">
|
||||
<input type="submit" value="검색">
|
||||
</form>
|
||||
</fieldset>
|
||||
|
||||
@ -1,5 +1,16 @@
|
||||
/* 게시판 목록 */
|
||||
#bo_list_title {padding:0 1em}
|
||||
|
||||
#bo_cate h2 {width:0;height:0;font-size:0;line-height:0;overflow:hidden}
|
||||
#bo_cate ul {margin:0.5em 1em;padding-left:1px;zoom:1}
|
||||
#bo_cate ul:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
#bo_cate li {float:left;margin-bottom:-1px;width:25%}
|
||||
#bo_cate a {display:block;position:relative;margin-left:-1px;padding:0.4em 0;border:1px solid #ddd;background:#f7f7f7;color:#888;text-align:center;text-decoration:none;letter-spacing:-0.1em}
|
||||
#bo_cate a:focus,
|
||||
#bo_cate a:hover,
|
||||
#bo_cate a:active {text-decoration:none}
|
||||
#bo_cate #bo_cate_on {z-index:2;border:1px solid #565e60;background:#fff;color:#565e60;font-weight:bold}
|
||||
|
||||
.bo_list table {margin-bottom:1.5em;width:100%;border-collapse:collapse;border-spacing:0}
|
||||
|
||||
.bo_list th {}
|
||||
|
||||
@ -40,7 +40,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
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;">
|
||||
<a href="<? echo $view['file'][$i]['href']; ?>" class="view_file_download">
|
||||
<img src="<?=$board_skin_url?>/img/icon_file.gif" alt="첨부파일">
|
||||
<strong><?=$view['file'][$i]['source']?></strong>
|
||||
<span> (<?=$view['file'][$i]['size']?>)</span>
|
||||
@ -183,10 +183,22 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
|
||||
|
||||
<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;
|
||||
}
|
||||
<? if ($board['bo_download_point'] < 0) { ?>
|
||||
$(function() {
|
||||
$("a.view_file_download").click(function() {
|
||||
var msg = "파일을 다운로드 하시면 포인트가 차감(<?=number_format($board['bo_download_point'])?>점)됩니다.\n\n포인트는 게시물당 한번만 차감되며 다음에 다시 다운로드 하셔도 중복하여 차감하지 않습니다.\n\n그래도 다운로드 하시겠습니까?";
|
||||
|
||||
if(confirm(msg)) {
|
||||
var href = $(this).attr("href")+"&js=on";
|
||||
$(this).attr("href", href);
|
||||
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
});
|
||||
<?}?>
|
||||
|
||||
function board_move(href)
|
||||
{
|
||||
|
||||
@ -62,7 +62,7 @@ var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
<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><? } ?>
|
||||
<? if ($list[$i]['is_del']) { ?><li><a href="<? echo $list[$i]['del_link']; ?>" onclick="return comment_delete();">삭제</a></li><? } ?>
|
||||
</ul>
|
||||
</footer>
|
||||
<? } ?>
|
||||
@ -195,17 +195,17 @@ var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
var cnt = parseInt(document.getElementById('char_count').innerHTML);
|
||||
if (char_min > 0 && char_min > cnt)
|
||||
{
|
||||
alert("댓글는 "+char_min+"글자 이상 쓰셔야 합니다.");
|
||||
alert("댓글은 "+char_min+"글자 이상 쓰셔야 합니다.");
|
||||
return false;
|
||||
} else if (char_max > 0 && char_max < cnt)
|
||||
{
|
||||
alert("댓글는 "+char_max+"글자 이하로 쓰셔야 합니다.");
|
||||
alert("댓글은 "+char_max+"글자 이하로 쓰셔야 합니다.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else if (!document.getElementById('wr_content').value)
|
||||
{
|
||||
alert("댓글를 입력하여 주십시오.");
|
||||
alert("댓글을 입력하여 주십시오.");
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -279,9 +279,9 @@ var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
}
|
||||
}
|
||||
|
||||
function comment_delete(url)
|
||||
function comment_delete()
|
||||
{
|
||||
if (confirm("이 댓글를 삭제하시겠습니까?")) location.href = url;
|
||||
return confirm("이 댓글을 삭제하시겠습니까?");
|
||||
}
|
||||
|
||||
comment_box('', 'c'); // 댓글 입력폼이 보이도록 처리하기위해서 추가 (root님)
|
||||
|
||||
@ -87,13 +87,10 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
<strong style="width:<?=$board['bo_mobile_gallery_width']?>px;height:<?=$board['bo_mobile_gallery_height']?>px">공지</strong>
|
||||
<?
|
||||
} else {
|
||||
$file = get_list_file($bo_table, $list[$i]['wr_id']);
|
||||
$thumb = get_list_thumbnail($board['bo_table'], $list[$i]['wr_id'], $board['bo_mobile_gallery_width'], $board['bo_mobile_gallery_height']);
|
||||
|
||||
$filepath = G4_DATA_PATH.'/file/'.$bo_table;
|
||||
if(preg_match("/\.({$config['cf_image_extension']})$/i", $file['bf_file']) && is_file($filepath.'/'.$file['bf_file'])) {
|
||||
$thumb = get_list_thumbnail($file['bf_file'], $filepath, $board['bo_mobile_gallery_width'], $board['bo_mobile_gallery_height']);
|
||||
$imgsrc = G4_DATA_URL.'/file/'.$bo_table.'/'.$thumb;
|
||||
$img_content = '<img src="'.$imgsrc.'" alt="'.$file['bf_content'].'" width="'.$board['bo_mobile_gallery_width'].'" height="'.$board['bo_mobile_gallery_height'].'">';
|
||||
if($thumb['src']) {
|
||||
$img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" width="'.$board['bo_mobile_gallery_width'].'" height="'.$board['bo_mobile_gallery_height'].'">';
|
||||
} else {
|
||||
$img_content = '<span style="width:'.$board['bo_mobile_gallery_width'].'px;height:'.$board['bo_mobile_gallery_height'].'px">no image</span>';
|
||||
}
|
||||
|
||||
@ -2,6 +2,17 @@
|
||||
#bo_img h2 {margin:0;padding:0;width:0;height:0;font-size:0;line-height:0;overflow:hidden}
|
||||
#bo_img_list {margin:1em 0 0;padding:0 1em;list-style:none}
|
||||
#bo_img_list:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
|
||||
#bo_cate h2 {width:0;height:0;font-size:0;line-height:0;overflow:hidden}
|
||||
#bo_cate ul {margin:0.5em 1em;padding-left:1px;zoom:1}
|
||||
#bo_cate ul:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
#bo_cate li {float:left;margin-bottom:-1px;width:25%}
|
||||
#bo_cate a {display:block;position:relative;margin-left:-1px;padding:0.4em 0;border:1px solid #ddd;background:#f7f7f7;color:#888;text-align:center;text-decoration:none;letter-spacing:-0.1em}
|
||||
#bo_cate a:focus,
|
||||
#bo_cate a:hover,
|
||||
#bo_cate a:active {text-decoration:none}
|
||||
#bo_cate #bo_cate_on {z-index:2;border:1px solid #565e60;background:#fff;color:#565e60;font-weight:bold}
|
||||
|
||||
.bo_img_list_li {float:left;margin:0 0 2em}
|
||||
|
||||
.bo_img_con {margin:0;padding:0;list-style:none}
|
||||
|
||||
@ -40,7 +40,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
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;">
|
||||
<a href="<? echo $view['file'][$i]['href']; ?>" class="view_file_download">
|
||||
<img src="<?=$board_skin_url?>/img/icon_file.gif" alt="첨부파일">
|
||||
<strong><?=$view['file'][$i]['source']?></strong>
|
||||
<span> (<?=$view['file'][$i]['size']?>)</span>
|
||||
@ -182,10 +182,22 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
|
||||
|
||||
<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;
|
||||
}
|
||||
<? if ($board['bo_download_point'] < 0) { ?>
|
||||
$(function() {
|
||||
$("a.view_file_download").click(function() {
|
||||
var msg = "파일을 다운로드 하시면 포인트가 차감(<?=number_format($board['bo_download_point'])?>점)됩니다.\n\n포인트는 게시물당 한번만 차감되며 다음에 다시 다운로드 하셔도 중복하여 차감하지 않습니다.\n\n그래도 다운로드 하시겠습니까?";
|
||||
|
||||
if(confirm(msg)) {
|
||||
var href = $(this).attr("href")+"&js=on";
|
||||
$(this).attr("href", href);
|
||||
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
});
|
||||
<?}?>
|
||||
|
||||
function board_move(href)
|
||||
{
|
||||
|
||||
@ -62,7 +62,7 @@ var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
<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><? } ?>
|
||||
<? if ($list[$i]['is_del']) { ?><li><a href="<? echo $list[$i]['del_link']; ?>" onclick="return comment_delete();">삭제</a></li><? } ?>
|
||||
</ul>
|
||||
</footer>
|
||||
<? } ?>
|
||||
@ -195,17 +195,17 @@ var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
var cnt = parseInt(document.getElementById('char_count').innerHTML);
|
||||
if (char_min > 0 && char_min > cnt)
|
||||
{
|
||||
alert("댓글는 "+char_min+"글자 이상 쓰셔야 합니다.");
|
||||
alert("댓글은 "+char_min+"글자 이상 쓰셔야 합니다.");
|
||||
return false;
|
||||
} else if (char_max > 0 && char_max < cnt)
|
||||
{
|
||||
alert("댓글는 "+char_max+"글자 이하로 쓰셔야 합니다.");
|
||||
alert("댓글은 "+char_max+"글자 이하로 쓰셔야 합니다.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else if (!document.getElementById('wr_content').value)
|
||||
{
|
||||
alert("댓글를 입력하여 주십시오.");
|
||||
alert("댓글을 입력하여 주십시오.");
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -279,9 +279,9 @@ var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
}
|
||||
}
|
||||
|
||||
function comment_delete(url)
|
||||
function comment_delete()
|
||||
{
|
||||
if (confirm("이 댓글를 삭제하시겠습니까?")) location.href = url;
|
||||
return confirm("이 댓글을 삭제하시겠습니까?");
|
||||
}
|
||||
|
||||
comment_box('', 'c'); // 댓글 입력폼이 보이도록 처리하기위해서 추가 (root님)
|
||||
|
||||
@ -130,7 +130,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($member['mb_level'] >= $config['cf_icon_level']) { ?>
|
||||
<? if ($config['cf_use_member_icon'] && $member['mb_level'] >= $config['cf_icon_level']) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_icon">회원아이콘</label></th>
|
||||
<td>
|
||||
|
||||
@ -60,7 +60,7 @@
|
||||
#mb_confirm p {padding:1.5em 1em;border-bottom:1px solid #cfded8;border-bottom:0;background:#fff}
|
||||
#mb_confirm p strong {display:block}
|
||||
#mb_confirm fieldset {position:relative;margin:0 0 3em;padding:2em 1em;border-bottom:1px solid #cfded8;background:#f7f7f7}
|
||||
#mb_confirm_pw {display:block;margin-top:1em;padding:0;width:80%;line-height:1.8em}
|
||||
#mb_confirm_pw {display:block;margin-top:1em;padding:0;width:80%;line-height:1.8em !important}
|
||||
#mb_confirm .btn_submit {position:absolute;bottom:2em;right:1em;width:18%;height:1.9em !important;line-height:1.9em}
|
||||
|
||||
/* 비밀글 패스워드 확인 */
|
||||
@ -69,7 +69,7 @@
|
||||
#pw_confirm p {padding:1.5em 1em;border-bottom:1px solid #cfded8;border-bottom:0;background:#fff}
|
||||
#pw_confirm p strong {display:block}
|
||||
#pw_confirm fieldset {position:relative;margin:0 0 3em;padding:0.5em 0.5em 1em;border-bottom:1px solid #cfded8;background:#f7f7f7}
|
||||
#pw_wr_password {display:block;margin-top:1em;padding:0;width:80%;line-height:1.8em}
|
||||
#pw_wr_password {display:block;margin-top:1em;padding:0;width:80%;line-height:1.8em !important}
|
||||
#pw_confirm .btn_submit {position:absolute;bottom:1em;right:0.5em;width:18%;height:1.9em !important;line-height:1.9em}
|
||||
|
||||
/* 폼메일 */
|
||||
|
||||
@ -109,6 +109,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
</th>
|
||||
<td>
|
||||
<input type="text" name="mb_zip1"value="<?=$member['mb_zip1']?>" id="reg_mb_zip1" title="우편번호 앞자리" class="frm_input <?=$config['cf_req_addr']?"required":"";?>" size="2" maxlength="3" <?=$config['cf_req_addr']?"required":"";?> >
|
||||
-
|
||||
<input type="text" name="mb_zip2" value="<?=$member['mb_zip2']?>" id="reg_mb_zip2" title="우편번호 뒷자리" class="frm_input <?=$config['cf_req_addr']?"required":"";?>" size="2" maxlength="3" <?=$config['cf_req_addr']?"required":"";?>>
|
||||
<a href="<? echo $zip_href; ?>" target="_blank" id="reg_zip_find" class="btn_frmline win_zip_find">주소찾기</a>
|
||||
<input type="text" name="mb_addr1" value="<?=$member['mb_addr1']?>" id="reg_mb_addr1" title="행정구역주소" class="frm_input frm_address <?=$config['cf_req_addr']?"required":"";?>" size="50" <?=$config['cf_req_addr']?"required":"";?>>
|
||||
@ -134,7 +135,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($member['mb_level'] >= $config['cf_icon_level']) { ?>
|
||||
<? if ($config['cf_use_member_icon'] && $member['mb_level'] >= $config['cf_icon_level']) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_icon">회원아이콘</label></th>
|
||||
<td>
|
||||
|
||||
@ -10,8 +10,8 @@ if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
<form name="foutlogin" action="<?=$outlogin_action_url?>" onsubmit="return fhead_submit(this);" method="post" autocomplete="off">
|
||||
<fieldset>
|
||||
<input type="hidden" name="url" value="<?=$outlogin_url?>">
|
||||
<input type="text" name="mb_id" id="ol_id" title="회원아이디(필수)" placeholder="회원아이디(필수)" required class="required" maxlength="20">
|
||||
<input type="password" id="ol_pw" name="mb_password" title="패스워드(필수)" placeholder="패스워드(필수)" required class="required" maxlength="20">
|
||||
<input type="text" name="mb_id" id="ol_id" placeholder="회원아이디(필수)" required class="required" maxlength="20">
|
||||
<input type="password" id="ol_pw" name="mb_password" placeholder="패스워드(필수)" required class="required" maxlength="20">
|
||||
<input type="submit" id="ol_submit" value="로그인">
|
||||
<div id="ol_svc">
|
||||
<input type="checkbox" id="auto_login" name="auto_login" value="1">
|
||||
|
||||
@ -1,19 +1,8 @@
|
||||
<?
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
|
||||
global $is_admin;
|
||||
|
||||
// 투표번호가 넘어오지 않았다면 가장 큰(최근에 등록한) 투표번호를 얻는다
|
||||
if (!$po_id) {
|
||||
$po_id = $config['cf_max_po_id'];
|
||||
|
||||
if (!$po_id) return;
|
||||
}
|
||||
|
||||
$po = sql_fetch(" select * from {$g4['poll_table']} where po_id = '$po_id' ");
|
||||
?>
|
||||
|
||||
<form name="fpoll" action="<?=G4_BBS_URL?>/poll_update.php" onsubmit="return fpoll_submit(this);" target="win_poXll" method="post">
|
||||
<form name="fpoll" action="<?=G4_BBS_URL?>/poll_update.php" onsubmit="return fpoll_submit(this);" target="win_poll" method="post">
|
||||
<input type="hidden" name="po_id" value="<?=$po_id?>">
|
||||
<input type="hidden" name="skin_dir" value="<?=$skin_dir?>">
|
||||
<section id="poll">
|
||||
@ -55,7 +44,7 @@ function fpoll_submit(f)
|
||||
return false;
|
||||
}
|
||||
|
||||
win_poll();
|
||||
win_poll(f.action);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@ -33,7 +33,10 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
<?=visit("basic"); // 방문자수 ?>
|
||||
<div id="ft_catch"><a href="<?=$g4['url']?>/"><img src="<?=G4_IMG_URL?>/ft_catch.jpg" alt="Sharing All Possibilities"></a></div>
|
||||
<div id="ft_copy">
|
||||
<p>Copyright © <b>소유하신 도메인.</b> All rights reserved.</p>
|
||||
<p>
|
||||
Copyright © <b>소유하신 도메인.</b> All rights reserved.<br>
|
||||
<a href="#">상단으로</a>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
|
||||
@ -54,7 +54,7 @@ if (!($it['ca_use'] && $it['it_use'])) {
|
||||
|
||||
// 분류 테이블에서 분류 상단, 하단 코드를 얻음
|
||||
$sql = " select ca_include_head, ca_include_tail
|
||||
from $g4['yc4_category_table']
|
||||
from {$g4['yc4_category_table']}
|
||||
where ca_id = '{$it['ca_id']}' ";
|
||||
$ca = sql_fetch($sql);
|
||||
|
||||
@ -132,7 +132,7 @@ $item_relation_count = $row['cnt'];
|
||||
<table width=99% cellpadding=0 cellspacing=0 align=center border=0><tr><td>
|
||||
|
||||
<?
|
||||
if (G4_HTTPS_DOMAIN])
|
||||
if (G4_HTTPS_DOMAIN)
|
||||
$action_url = G4_HTTPS_DOMAIN.'/'.G4_SHOP_DIR.'/cartupdate.php';
|
||||
else
|
||||
$action_url = './cartupdate.php';
|
||||
@ -360,7 +360,7 @@ else
|
||||
<tr>
|
||||
<td width=30></td>
|
||||
<!-- 상품정보 --><td><a href="javascript:click_item('*');"><img src='<?=G4_SHOP_URL?>/img/btn_tab01.gif' border=0></a></td>
|
||||
<!-- 사용후기 --><td width=109 background='<?=G4_SHOP_URL?>/btn_tab02.gif' border=0 style='padding-top:2px;'> <a href="javascript:click_item('item_use');" style="cursor:pointer;"> <span class=small style='color:#ff5d00;'>(<span id=item_use_count>0</span>)</span></a></td>
|
||||
<!-- 사용후기 --><td width=109 background='<?=G4_SHOP_URL?>/img/btn_tab02.gif' border=0 style='padding-top:2px;'> <a href="javascript:click_item('item_use');" style="cursor:pointer;"> <span class=small style='color:#ff5d00;'>(<span id=item_use_count>0</span>)</span></a></td>
|
||||
<!-- 상품문의 --><td width=109 background='<?=G4_SHOP_URL?>/img/btn_tab03.gif' border=0 style='padding-top:2px;'> <a href="javascript:click_item('item_qa');" style="cursor:pointer;"> <span class=small style='color:#ff5d00;'>(<span id=item_qa_count>0</span>)</span></a></td>
|
||||
<? if ($default['de_baesong_content']) { ?><!-- 배송정보 --><td><a href="javascript:click_item('item_baesong');"><img src='<?=G4_SHOP_URL?>/img/btn_tab04.gif' border=0></a></td><?}?>
|
||||
<? if ($default['de_change_content']) { ?><!-- 교환/반품 --><td><a href="javascript:click_item('item_change');"><img src='<?=G4_SHOP_URL?>/img/btn_tab05.gif' border=0></a></td><?}?>
|
||||
@ -751,7 +751,7 @@ echo stripslashes($it['it_tail_html']);
|
||||
|
||||
$timg = G4_DATA_PATH."/item/{$it_id}_t";
|
||||
if (file_exists($timg))
|
||||
echo "<img src='"G4_DATA_URL."/item/{$it_id}_t' border=0><br>";
|
||||
echo "<img src='".G4_DATA_URL."/item/{$it_id}_t' border=0><br>";
|
||||
|
||||
if ($ca['ca_include_tail'])
|
||||
@include_once($ca['ca_include_tail']);
|
||||
|
||||
@ -42,7 +42,7 @@ include_once(G4_LIB_PATH.'/thumb.lib.php');
|
||||
for ($i=0; $row=sql_fetch_array($result); $i++)
|
||||
{
|
||||
if ($i > 0)
|
||||
echo "<tr><td colspan=3 background='"G4_SHOP_URL."/img/dot_line.gif' height='1'></td></tr>";
|
||||
echo "<tr><td colspan=3 background='".G4_SHOP_URL."/img/dot_line.gif' height='1'></td></tr>";
|
||||
|
||||
$num = $use_total_count - ($use_page - 1) * $use_page_rows - $i;
|
||||
|
||||
|
||||
@ -5,6 +5,7 @@ $sql = " select it_name from {$g4['yc4_item_table']} where it_id='$it_id' ";
|
||||
$row = sql_fetch_array(sql_query($sql));
|
||||
|
||||
$imagefile = G4_DATA_PATH."/item/$img";
|
||||
$imagefileurl = G4_DATA_URL."/item/$img";
|
||||
$size = getimagesize($imagefile);
|
||||
|
||||
$g4['title'] = "{$row['it_name']} ($it_id)";
|
||||
@ -12,7 +13,7 @@ include_once(G4_PATH.'/head.sub.php');
|
||||
?>
|
||||
<br>
|
||||
<div align=center>
|
||||
<a href='#' onclick='window.close();'><img id='largeimage' src='<?=$imagefile?>' width='<?=$size[0]?>' height='<?=$size[1]?>' alt='<?=$row['it_name']?>' border=0 style='border:1 solid #E4E4E4;'></a>
|
||||
<a href='#' onclick='window.close();'><img id='largeimage' src='<?=$imagefileurl?>' width='<?=$size[0]?>' height='<?=$size[1]?>' alt='<?=$row['it_name']?>' border=0 style='border:1 solid #E4E4E4;'></a>
|
||||
</div>
|
||||
<p>
|
||||
<table width=100% cellpadding=0 cellspacing=0>
|
||||
|
||||
@ -160,8 +160,8 @@ if ($is_nogood) $colspan++;
|
||||
<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 type="text" name="stx" value="<?=stripslashes($stx)?>" title="검색어(필수)" required class="fs_input required" size="15" maxlength="15">
|
||||
<input type="submit" value="검색" class="fs_submit">
|
||||
<input type="text" name="stx" value="<?=stripslashes($stx)?>" title="검색어(필수)" required class="frm_input required" size="15" maxlength="15">
|
||||
<input type="submit" value="검색" class="btn_submit">
|
||||
</form>
|
||||
</fieldset>
|
||||
|
||||
|
||||
@ -40,7 +40,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
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;">
|
||||
<a href="<? echo $view['file'][$i]['href']; ?>" class="view_file_download">
|
||||
<img src="<?=$board_skin_url?>/img/icon_file.gif" alt="첨부파일">
|
||||
<strong><?=$view['file'][$i]['source']?></strong>
|
||||
<span> (<?=$view['file'][$i]['size']?>)</span>
|
||||
@ -184,10 +184,22 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
|
||||
|
||||
<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;
|
||||
}
|
||||
<? if ($board['bo_download_point'] < 0) { ?>
|
||||
$(function() {
|
||||
$("a.view_file_download").click(function() {
|
||||
var msg = "파일을 다운로드 하시면 포인트가 차감(<?=number_format($board['bo_download_point'])?>점)됩니다.\n\n포인트는 게시물당 한번만 차감되며 다음에 다시 다운로드 하셔도 중복하여 차감하지 않습니다.\n\n그래도 다운로드 하시겠습니까?";
|
||||
|
||||
if(confirm(msg)) {
|
||||
var href = $(this).attr("href")+"&js=on";
|
||||
$(this).attr("href", href);
|
||||
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
});
|
||||
<?}?>
|
||||
|
||||
function board_move(href)
|
||||
{
|
||||
|
||||
@ -62,7 +62,7 @@ var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
<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><? } ?>
|
||||
<? if ($list[$i]['is_del']) { ?><li><a href="<? echo $list[$i]['del_link']; ?>" onclick="return comment_delete();">삭제</a></li><? } ?>
|
||||
</ul>
|
||||
</footer>
|
||||
<? } ?>
|
||||
@ -195,17 +195,17 @@ var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
var cnt = parseInt(document.getElementById('char_count').innerHTML);
|
||||
if (char_min > 0 && char_min > cnt)
|
||||
{
|
||||
alert("댓글는 "+char_min+"글자 이상 쓰셔야 합니다.");
|
||||
alert("댓글은 "+char_min+"글자 이상 쓰셔야 합니다.");
|
||||
return false;
|
||||
} else if (char_max > 0 && char_max < cnt)
|
||||
{
|
||||
alert("댓글는 "+char_max+"글자 이하로 쓰셔야 합니다.");
|
||||
alert("댓글은 "+char_max+"글자 이하로 쓰셔야 합니다.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else if (!document.getElementById('wr_content').value)
|
||||
{
|
||||
alert("댓글를 입력하여 주십시오.");
|
||||
alert("댓글을 입력하여 주십시오.");
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -279,9 +279,9 @@ var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
}
|
||||
}
|
||||
|
||||
function comment_delete(url)
|
||||
function comment_delete()
|
||||
{
|
||||
if (confirm("이 댓글를 삭제하시겠습니까?")) location.href = url;
|
||||
return confirm("이 댓글을 삭제하시겠습니까?");
|
||||
}
|
||||
|
||||
comment_box('', 'c'); // 댓글 입력폼이 보이도록 처리하기위해서 추가 (root님)
|
||||
|
||||
@ -161,21 +161,6 @@ if ($is_admin)
|
||||
}
|
||||
?>
|
||||
|
||||
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) {
|
||||
|
||||
@ -46,13 +46,13 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
|
||||
<ul id="bo_img_list">
|
||||
<? for ($i=0; $i<count($list); $i++) {
|
||||
if($i>0 && ($i % $board['bo_gallery_cols'] == 0))
|
||||
if($i>0 && ($i % $bo_gallery_cols == 0))
|
||||
$style = 'clear:both;';
|
||||
else
|
||||
$style = '';
|
||||
if ($i == 0) $k = 0;
|
||||
$k += 1;
|
||||
if ($k % $board['bo_gallery_cols'] == 0) $style .= "margin:0 !important;";
|
||||
if ($k % $bo_gallery_cols == 0) $style .= "margin:0 !important;";
|
||||
?>
|
||||
<li class="bo_img_list_li <? if ($wr_id == $list[$i]['wr_id']) { ?>bo_img_now<? } ?>" style="<?=$style?>">
|
||||
<? if ($is_checkbox) { ?><input type="checkbox" name="chk_wr_id[]" value="<?=$list[$i]['wr_id']?>" title="<?=$list[$i]['wr_subject']?> 선택"><? } ?>
|
||||
@ -72,13 +72,10 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
<strong style="width:<?=$board['bo_gallery_width']?>px;height:<?=$board['bo_gallery_height']?>px">공지</strong>
|
||||
<?
|
||||
} else {
|
||||
$file = get_list_file($bo_table, $list[$i]['wr_id']);
|
||||
$thumb = get_list_thumbnail($board['bo_table'], $list[$i]['wr_id'], $board['bo_gallery_width'], $board['bo_gallery_height']);
|
||||
|
||||
$filepath = G4_DATA_PATH.'/file/'.$bo_table;
|
||||
if(preg_match("/\.({$config['cf_image_extension']})$/i", $file['bf_file']) && is_file($filepath.'/'.$file['bf_file'])) {
|
||||
$thumb = get_list_thumbnail($file['bf_file'], $filepath, $board['bo_gallery_width'], $board['bo_gallery_height']);
|
||||
$imgsrc = G4_DATA_URL.'/file/'.$bo_table.'/'.$thumb;
|
||||
$img_content = '<img src="'.$imgsrc.'" alt="'.$file['bf_content'].'" width="'.$board['bo_gallery_width'].'" height="'.$board['bo_gallery_height'].'">';
|
||||
if($thumb['src']) {
|
||||
$img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" width="'.$board['bo_gallery_width'].'" height="'.$board['bo_gallery_height'].'">';
|
||||
} else {
|
||||
$img_content = '<span style="width:'.$board['bo_gallery_width'].'px;height:'.$board['bo_gallery_height'].'px">no image</span>';
|
||||
}
|
||||
@ -168,8 +165,8 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
<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 type="text" name="stx" value="<?=stripslashes($stx)?>" title="검색어(필수)" required class="fs_input required" size="15" maxlength="15">
|
||||
<input type="submit" class="fs_submit" value="검색">
|
||||
<input type="text" name="stx" value="<?=stripslashes($stx)?>" title="검색어(필수)" required class="frm_input required" size="15" maxlength="15">
|
||||
<input type="submit" value="검색" class="btn_submit">
|
||||
</form>
|
||||
</fieldset>
|
||||
|
||||
|
||||
@ -53,7 +53,6 @@
|
||||
.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}
|
||||
.cnt_cmt {font-weight:bold}
|
||||
|
||||
#bo_sch {margin-bottom:10px;padding-top:5px;text-align:center}
|
||||
#bo_sch legend {width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
|
||||
|
||||
@ -40,7 +40,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
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;">
|
||||
<a href="<? echo $view['file'][$i]['href']; ?>" class="view_file_download">
|
||||
<img src="<?=$board_skin_url?>/img/icon_file.gif" alt="첨부파일">
|
||||
<strong><?=$view['file'][$i]['source']?></strong>
|
||||
<span> (<?=$view['file'][$i]['size']?>)</span>
|
||||
@ -182,10 +182,22 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
|
||||
|
||||
|
||||
<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;
|
||||
}
|
||||
<? if ($board['bo_download_point'] < 0) { ?>
|
||||
$(function() {
|
||||
$("a.view_file_download").click(function() {
|
||||
var msg = "파일을 다운로드 하시면 포인트가 차감(<?=number_format($board['bo_download_point'])?>점)됩니다.\n\n포인트는 게시물당 한번만 차감되며 다음에 다시 다운로드 하셔도 중복하여 차감하지 않습니다.\n\n그래도 다운로드 하시겠습니까?";
|
||||
|
||||
if(confirm(msg)) {
|
||||
var href = $(this).attr("href")+"&js=on";
|
||||
$(this).attr("href", href);
|
||||
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
});
|
||||
<?}?>
|
||||
|
||||
function board_move(href)
|
||||
{
|
||||
|
||||
@ -62,7 +62,7 @@ var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
<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><? } ?>
|
||||
<? if ($list[$i]['is_del']) { ?><li><a href="<? echo $list[$i]['del_link']; ?>" onclick="return comment_delete();">삭제</a></li><? } ?>
|
||||
</ul>
|
||||
</footer>
|
||||
<? } ?>
|
||||
@ -195,17 +195,17 @@ var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
var cnt = parseInt(document.getElementById('char_count').innerHTML);
|
||||
if (char_min > 0 && char_min > cnt)
|
||||
{
|
||||
alert("댓글는 "+char_min+"글자 이상 쓰셔야 합니다.");
|
||||
alert("댓글은 "+char_min+"글자 이상 쓰셔야 합니다.");
|
||||
return false;
|
||||
} else if (char_max > 0 && char_max < cnt)
|
||||
{
|
||||
alert("댓글는 "+char_max+"글자 이하로 쓰셔야 합니다.");
|
||||
alert("댓글은 "+char_max+"글자 이하로 쓰셔야 합니다.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else if (!document.getElementById('wr_content').value)
|
||||
{
|
||||
alert("댓글를 입력하여 주십시오.");
|
||||
alert("댓글을 입력하여 주십시오.");
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -279,9 +279,9 @@ var char_max = parseInt(<?=$comment_max?>); // 최대
|
||||
}
|
||||
}
|
||||
|
||||
function comment_delete(url)
|
||||
function comment_delete()
|
||||
{
|
||||
if (confirm("이 댓글를 삭제하시겠습니까?")) location.href = url;
|
||||
return confirm("이 댓글을 삭제하시겠습니까?");
|
||||
}
|
||||
|
||||
comment_box('', 'c'); // 댓글 입력폼이 보이도록 처리하기위해서 추가 (root님)
|
||||
|
||||
@ -2,8 +2,6 @@
|
||||
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
|
||||
<link rel="stylesheet" href="<?=$latest_skin_url?>/style.css">
|
||||
|
||||
<div class="lt">
|
||||
<strong class="lt_title"><a href="<?=G4_BBS_URL?>/board.php?bo_table=<?=$bo_table?>"><?=$bo_subject?></a></strong>
|
||||
<ul>
|
||||
|
||||
@ -44,7 +44,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="file1">첨부 1</label></th>
|
||||
<td><input type="file"name="file1" id="file1" class="frm_input"></td>
|
||||
<td><input type="file" name="file1" id="file1" class="frm_input"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="file2">첨부 2</label></th>
|
||||
|
||||
@ -19,8 +19,8 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
<span id="mb_confirm_id"><?=$member[mb_id]?></span>
|
||||
|
||||
<label for="confirm_mb_password">패스워드<strong class="sound_only">필수</strong></label>
|
||||
<input type="password" name="mb_password" id="confirm_mb_password" required class="required fs_input" size="15" maxLength="20">
|
||||
<input type="submit" value="확인" id="btn_submit" class="fs_submit">
|
||||
<input type="password" name="mb_password" id="confirm_mb_password" required class="required frm_input" size="15" maxLength="20">
|
||||
<input type="submit" value="확인" id="btn_submit" class="btn_submit">
|
||||
</fieldset>
|
||||
|
||||
</form>
|
||||
|
||||
@ -33,8 +33,8 @@ else $g4['title'] = $g4['title'];
|
||||
|
||||
<fieldset>
|
||||
<label for="pw_wr_password">패스워드<strong class="sound_only">필수</strong></label>
|
||||
<input type="password" name="wr_password" id="password_wr_password" required class="fs_input required" size="15" maxLength="20">
|
||||
<input type="submit" value="확인" class="fs_submit">
|
||||
<input type="password" name="wr_password" id="password_wr_password" required class="frm_input required" size="15" maxLength="20">
|
||||
<input type="submit" value="확인" class="btn_submit">
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
|
||||
@ -60,7 +60,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
<? } ?>
|
||||
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_email">E-mail<? if ($config['cf_use_email_certify']) {?><strong class="sound_only">필수</strong><?}?></label></th>
|
||||
<th scope="row"><label for="reg_mb_email">E-mail<strong class="sound_only">필수</strong></label></th>
|
||||
<td>
|
||||
<? if ($config['cf_use_email_certify']) { ?>
|
||||
<span class="frm_info">
|
||||
@ -69,28 +69,28 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
</span>
|
||||
<? } ?>
|
||||
<input type="hidden" name="old_email" value="<?=$member['mb_email']?>">
|
||||
<input type="text" name="mb_email" value="<?=isset($member['mb_email'])?$member['mb_email']:'';?>" id="reg_mb_email" class="frm_input email <?=$config['cf_use_email_certify']?"required":"";?>" size="50" maxlength="100" <?=$config['cf_use_email_certify']?"required":"";?>>
|
||||
<input type="text" name="mb_email" value="<?=isset($member['mb_email'])?$member['mb_email']:'';?>" id="reg_mb_email" required class="frm_input email required" size="50" maxlength="100">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<? if ($config['cf_use_homepage']) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_homepage">홈페이지<? if ($config['cf_req_homepage']){?><strong class="sound_only">필수</strong><?}?></label></th>
|
||||
<td><input type="text" name="mb_homepage" value="<?=$member['mb_homepage']?>" id="reg_mb_homepage" class="frm_input <?=$config['cf_req_homepage']?"required":"";?>" size="50" maxlength="255" <?=$config['cf_req_homepage']?"required":"";?>></td>
|
||||
<td><input type="text" name="mb_homepage" value="<?=$member['mb_homepage']?>" id="reg_mb_homepage" <?=$config['cf_req_homepage']?"required":"";?> class="frm_input <?=$config['cf_req_homepage']?"required":"";?>" size="50" maxlength="255"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($config['cf_use_tel']) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_tel">전화번호<? if ($config['cf_req_tel']) {?><strong class="sound_only">필수</strong><?}?></label></th>
|
||||
<td><input type="text" name="mb_tel" value="<?=$member['mb_tel']?>" id="reg_mb_tel" class="frm_input <?=$config['cf_req_tel']?"required":"";?>" maxlength="20" <?=$config['cf_req_tel']?"required":"";?>></td>
|
||||
<td><input type="text" name="mb_tel" value="<?=$member['mb_tel']?>" id="reg_mb_tel" <?=$config['cf_req_tel']?"required":"";?> class="frm_input <?=$config['cf_req_tel']?"required":"";?>" maxlength="20"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($config['cf_use_hp']) { ?>
|
||||
<tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_hp">핸드폰번호<? if ($config['cf_req_hp']) {?><strong class="sound_only">필수</strong><?}?></label></th>
|
||||
<td><input type="text" name="mb_hp" value="<?=$member[mb_hp]?>" id="reg_mb_hp" class="frm_input <?=$config['cf_req_hp']?"required":"";?>" maxlength="20" <?=$config['cf_req_hp']?"required":"";?>></td>
|
||||
<td><input type="text" name="mb_hp" value="<?=$member[mb_hp]?>" id="reg_mb_hp" <?=$config['cf_req_hp']?"required":"";?> class="frm_input <?=$config['cf_req_hp']?"required":"";?>" maxlength="20"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
@ -103,12 +103,12 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
<? if ($config['cf_req_addr']) {?><strong class="sound_only">필수</strong><? } ?>
|
||||
</th>
|
||||
<td>
|
||||
<input type="text" name="mb_zip1" value="<?=$member['mb_zip1']?>" id="reg_mb_zip1" title="우편번호 앞자리" class="frm_input <?=$config['cf_req_addr']?"required":"";?>" size="2" maxlength="3" <?=$config['cf_req_addr']?"required":"";?>>
|
||||
-
|
||||
<input type="text" name="mb_zip2" value="<?=$member['mb_zip2']?>" id="reg_mb_zip2" title="우편번호 뒷자리" class="frm_input <?=$config['cf_req_addr']?"required":"";?>" size="2" maxlength="3" <?=$config['cf_req_addr']?"required":"";?>>
|
||||
<input type="text" name="mb_zip1" value="<?=$member['mb_zip1']?>" id="reg_mb_zip1" <?=$config['cf_req_addr']?"required":"";?> title="우편번호 앞자리<?=$config['cf_req_addr']?"(필수)":"";?>" class="frm_input <?=$config['cf_req_addr']?"required":"";?>" size="2" maxlength="3">
|
||||
-
|
||||
<input type="text" name="mb_zip2" value="<?=$member['mb_zip2']?>" id="reg_mb_zip2" <?=$config['cf_req_addr']?"required":"";?> title="우편번호 뒷자리<?=$config['cf_req_addr']?"(필수)":"";?>" class="frm_input <?=$config['cf_req_addr']?"required":"";?>" size="2" maxlength="3">
|
||||
<a href="<? echo $zip_href; ?>" id="reg_zip_find" class="btn_frmline win_zip_find" target="_blank">주소찾기</a>
|
||||
<input type="text" name="mb_addr1" value="<?=$member['mb_addr1']?>" id="reg_mb_addr1" title="행정구역주소" class="frm_input frm_address <?=$config['cf_req_addr']?"required":"";?>" size="50" <?=$config['cf_req_addr']?"required":"";?>>
|
||||
<input type="text" name="mb_addr2" value="<?=$member['mb_addr2']?>" id="reg_mb_addr2" title="상세주소" class="frm_input frm_address <?=$config['cf_req_addr']?"required":"";?>" size="50" <?=$config['cf_req_addr']?"required":"";?>>
|
||||
<input type="text" name="mb_addr1" value="<?=$member['mb_addr1']?>" id="reg_mb_addr1" <?=$config['cf_req_addr']?"required":"";?> title="행정구역주소<?=$config['cf_req_addr']?"(필수)":"";?>" class="frm_input frm_address <?=$config['cf_req_addr']?"required":"";?>" size="50">
|
||||
<input type="text" name="mb_addr2" value="<?=$member['mb_addr2']?>" id="reg_mb_addr2" <?=$config['cf_req_addr']?"required":"";?> title="상세주소<?=$config['cf_req_addr']?"(필수)":"";?>" class="frm_input frm_address <?=$config['cf_req_addr']?"required":"";?>" size="50">
|
||||
</td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
@ -119,18 +119,18 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
<? if ($config['cf_use_signature']) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_signature">서명<? if ($config['cf_req_signature']){?><strong class="sound_only">필수</strong><?}?></label></th>
|
||||
<td><textarea name="mb_signature" id="reg_mb_signature" class="<?=$config['cf_req_signature']?"required":"";?>" <?=$config['cf_req_signature']?"required":"";?>><?=$member['mb_signature']?></textarea></td>
|
||||
<td><textarea name="mb_signature" id="reg_mb_signature" <?=$config['cf_req_signature']?"required":"";?> class="<?=$config['cf_req_signature']?"required":"";?>"><?=$member['mb_signature']?></textarea></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($config['cf_use_profile']) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_profile">자기소개</label></th>
|
||||
<td><textarea name="mb_profile" id="reg_mb_profile" class="<?=$config['cf_req_profile']?"required":"";?>" <?=$config['cf_req_profile']?"required":"";?>><?=$member['mb_profile']?></textarea></td>
|
||||
<td><textarea name="mb_profile" id="reg_mb_profile" <?=$config['cf_req_profile']?"required":"";?> class="<?=$config['cf_req_profile']?"required":"";?>"><?=$member['mb_profile']?></textarea></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($member['mb_level'] >= $config['cf_icon_level']) { ?>
|
||||
<? if ($config['cf_use_member_icon'] && $member['mb_level'] >= $config['cf_icon_level']) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_icon">회원아이콘</label></th>
|
||||
<td>
|
||||
|
||||
@ -14,8 +14,8 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
|
||||
<fieldset>
|
||||
<label for="addr1">동/읍/면/리 검색</label>
|
||||
<input type="text" name="addr1" value="<?=$addr1?>" id="addr1" required class="required fs_input" minlength="2">
|
||||
<input type="submit" value="검색" class="fs_submit">
|
||||
<input type="text" name="addr1" value="<?=$addr1?>" id="addr1" required class="required frm_input" minlength="2">
|
||||
<input type="submit" value="검색" class="btn_submit">
|
||||
</fieldset>
|
||||
|
||||
<!-- 검색결과 여기서부터 -->
|
||||
|
||||
@ -44,7 +44,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="file1">첨부 1</label></th>
|
||||
<td><input type="file"name="file1" id="file1" class="frm_input"></td>
|
||||
<td><input type="file" name="file1" id="file1" class="frm_input"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="file2">첨부 2</label></th>
|
||||
|
||||
@ -19,8 +19,8 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
<span id="mb_confirm_id"><?=$member[mb_id]?></span>
|
||||
|
||||
<label for="confirm_mb_password">패스워드<strong class="sound_only">필수</strong></label>
|
||||
<input type="password" name="mb_password" id="confirm_mb_password" required class="required fs_input" size="15" maxLength="20">
|
||||
<input type="submit" value="확인" id="btn_submit" class="fs_submit">
|
||||
<input type="password" name="mb_password" id="confirm_mb_password" required class="required frm_input" size="15" maxLength="20">
|
||||
<input type="submit" value="확인" id="btn_submit" class="btn_submit">
|
||||
</fieldset>
|
||||
|
||||
</form>
|
||||
|
||||
@ -33,8 +33,8 @@ else $g4['title'] = $g4['title'];
|
||||
|
||||
<fieldset>
|
||||
<label for="pw_wr_password">패스워드<strong class="sound_only">필수</strong></label>
|
||||
<input type="password" name="wr_password" id="password_wr_password" required class="fs_input required" size="15" maxLength="20">
|
||||
<input type="submit" value="확인" class="fs_submit">
|
||||
<input type="password" name="wr_password" id="password_wr_password" required class="frm_input required" size="15" maxLength="20">
|
||||
<input type="submit" value="확인" class="btn_submit">
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
|
||||
@ -60,10 +60,10 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
<? } ?>
|
||||
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_email">E-mail<? if ($config['cf_use_email_certify']) {?><strong class="sound_only">필수</strong><?}?></label></th>
|
||||
<th scope="row"><label for="reg_mb_email">E-mail<strong class="sound_only">필수</strong></label></th>
|
||||
<td>
|
||||
<input type="hidden" name="old_email" value="<?=$member['mb_email']?>">
|
||||
<input type="text" name="mb_email" value='<?=isset($member['mb_email'])?$member['mb_email']:'';?>' <?=$config['cf_use_email_certify']?"required":"";?> id="reg_mb_email" class="frm_input email <?=$config['cf_use_email_certify']?"required":"";?>" size="50" maxlength="100">
|
||||
<input type="text" name="mb_email" value='<?=isset($member['mb_email'])?$member['mb_email']:'';?>' id="reg_mb_email" required class="frm_input email required" size="50" maxlength="100">
|
||||
<? if ($config['cf_use_email_certify']) { ?>
|
||||
<span class="frm_info">
|
||||
<? if ($w=='') { echo "E-mail 로 발송된 내용을 확인한 후 인증하셔야 회원가입이 완료됩니다."; } ?>
|
||||
@ -109,7 +109,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
</th>
|
||||
<td>
|
||||
<input type="text" name="mb_zip1"value="<?=$member['mb_zip1']?>" id="reg_mb_zip1" title="우편번호 앞자리" class="frm_input <?=$config['cf_req_addr']?"required":"";?>" size="2" maxlength="3" <?=$config['cf_req_addr']?"required":"";?> >
|
||||
-
|
||||
-
|
||||
<input type="text" name="mb_zip2" value="<?=$member['mb_zip2']?>" id="reg_mb_zip2" title="우편번호 뒷자리" class="frm_input <?=$config['cf_req_addr']?"required":"";?>" size="2" maxlength="3" <?=$config['cf_req_addr']?"required":"";?>>
|
||||
<a href="<? echo $zip_href; ?>" target="_blank" id="reg_zip_find" class="btn_frmline win_zip_find">주소찾기</a>
|
||||
<input type="text" name="mb_addr1" value="<?=$member['mb_addr1']?>" id="reg_mb_addr1" title="행정구역주소" class="frm_input frm_address <?=$config['cf_req_addr']?"required":"";?>" size="50" <?=$config['cf_req_addr']?"required":"";?>>
|
||||
@ -135,7 +135,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($member['mb_level'] >= $config['cf_icon_level']) { ?>
|
||||
<? if ($config['cf_use_member_icon'] && $member['mb_level'] >= $config['cf_icon_level']) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_icon">회원아이콘</label></th>
|
||||
<td>
|
||||
|
||||
@ -14,8 +14,8 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
|
||||
<fieldset>
|
||||
<label for="addr1">동/읍/면/리 검색</label>
|
||||
<input type="text" name="addr1" value="<?=$addr1?>" id="addr1" required class="required fs_input" minlength="2">
|
||||
<input type="submit" value="검색" class="fs_submit">
|
||||
<input type="text" name="addr1" value="<?=$addr1?>" id="addr1" required class="required frm_input" minlength="2">
|
||||
<input type="submit" value="검색" class="btn_submit">
|
||||
</fieldset>
|
||||
|
||||
<!-- 검색결과 여기서부터 -->
|
||||
|
||||
@ -7,10 +7,10 @@
|
||||
#ol_before fieldset {position:relative}
|
||||
#ol_id {display:block;margin:0 0 5px !important;margin:0 0 3px;padding:0 5px;width:168px;height:22px;border:1px solid #b8c9c2;background:#f7f7f7;line-height:1.6em}
|
||||
#ol_id:focus {border-color:#333;background:#21272e;color:#fff}
|
||||
.ol_idlabel {position:absolute;top:6px;left:5px;color:#333;font-size:0.9em}
|
||||
.ol_idlabel {position:absolute;top:6px;left:5px;color:#333;font-size:0.95em}
|
||||
#ol_pw {display:block;margin:0 0 5px !important;margin:0 0 3px;padding:0 5px;width:168px;height:22px;border:1px solid #b8c9c2;background:#f7f7f7;vertical-align:top;line-height:1.6em}
|
||||
#ol_pw:focus {border-color:#333;background:#21272e;color:#fff}
|
||||
.ol_pwlabel {position:absolute;top:35px;left:5px;color:#333;font-size:0.9em}
|
||||
.ol_pwlabel {position:absolute;top:35px;left:5px;color:#333;font-size:0.95em}
|
||||
#auto_login {}
|
||||
#auto_login_label {letter-spacing:-0.1em}
|
||||
#ol_submit {display:inline-block;width:60px;height:24px;border:0;background:#333;color:#fff;font-size:0.9em;font-weight:bold;vertical-align:top}
|
||||
|
||||
@ -1,16 +1,5 @@
|
||||
<?
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
|
||||
global $is_admin;
|
||||
|
||||
// 투표번호가 넘어오지 않았다면 가장 큰(최근에 등록한) 투표번호를 얻는다
|
||||
if (!$po_id) {
|
||||
$po_id = $config['cf_max_po_id'];
|
||||
|
||||
if (!$po_id) return;
|
||||
}
|
||||
|
||||
$po = sql_fetch(" select * from {$g4['poll_table']} where po_id = '$po_id' ");
|
||||
?>
|
||||
|
||||
<form name="fpoll" action="<?=G4_BBS_URL?>/poll_update.php" onsubmit="return fpoll_submit(this);" target="win_poll" method="post">
|
||||
@ -55,7 +44,7 @@ function fpoll_submit(f)
|
||||
return false;
|
||||
}
|
||||
|
||||
win_poll();
|
||||
win_poll(f.action);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@ -17,8 +17,8 @@ if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
<option value="wr_name"<?=get_selected($_GET['sfl'], "wr_name")?>>이름</option>
|
||||
</select>
|
||||
|
||||
<input type="text" name="stx" value="<?=$text_stx?>" title="검색어(필수)" class="fs_input" required class="required" maxlength="20">
|
||||
<input type="submit" class="fs_submit" value="검색">
|
||||
<input type="text" name="stx" value="<?=$text_stx?>" title="검색어(필수)" class="frm_input" required class="required" maxlength="20">
|
||||
<input type="submit" class="btn_submit" value="검색">
|
||||
|
||||
<script>
|
||||
function fsearch_submit(f)
|
||||
|
||||
5
tail.php
5
tail.php
@ -25,7 +25,10 @@ if ($config['cf_include_tail']) {
|
||||
<?=visit("basic"); // 방문자수 ?>
|
||||
<div id="ft_catch"><a href="<?=$g4['url']?>/"><img src="<?=G4_IMG_URL?>/ft_catch.jpg" alt="Sharing All Possibilities"></a></div>
|
||||
<div id="ft_copy">
|
||||
<p>Copyright © <b>소유하신 도메인.</b> All rights reserved.</p>
|
||||
<p>
|
||||
Copyright © <b>소유하신 도메인.</b> All rights reserved.<br>
|
||||
<a href="#">상단으로</a>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
|
||||
16
tail.sub.php
16
tail.sub.php
@ -84,17 +84,19 @@ $(function(){
|
||||
hide_menu = true;
|
||||
});
|
||||
|
||||
$(document).click(function() {
|
||||
$('#gnb_ul>li').bind('mouseleave',function(){
|
||||
submenu_hide();
|
||||
});
|
||||
|
||||
$(document).bind('click focusin',function(){
|
||||
if(hide_menu) {
|
||||
$(".gnb_1depth").removeClass("gnb_1depth_over gnb_1depth_over2 gnb_1depth_on");
|
||||
submenu_hide();
|
||||
}
|
||||
});
|
||||
|
||||
$(document).focusin(function() {
|
||||
if(hide_menu) {
|
||||
$(".gnb_1depth").removeClass("gnb_1depth_over gnb_1depth_over2 gnb_1depth_on");
|
||||
}
|
||||
});
|
||||
function submenu_hide() {
|
||||
$(".gnb_1depth").removeClass("gnb_1depth_over gnb_1depth_over2 gnb_1depth_on");
|
||||
}
|
||||
|
||||
// 텍스트 리사이즈 카운트 쿠키있으면 실행
|
||||
var resize_act;
|
||||
|
||||
Reference in New Issue
Block a user