This commit is contained in:
whitedot
2013-04-11 10:29:13 +09:00
402 changed files with 763 additions and 396 deletions

View File

@ -57,10 +57,10 @@ function imageview(id, w, h)
submenu.left = tempX - ( w + 11 );
submenu.top = tempY - ( h / 2 );
//selectBoxVisible();
selectBoxVisible();
//if (el_id.style.display != 'none')
// selectBoxHidden(id);
if (el_id.style.display != 'none')
selectBoxHidden(id);
}
</script>
@ -81,9 +81,9 @@ function imageview(id, w, h)
</a>
</li>
<li>
<a href="<?=G4_SHOP_URL?>/">
<a href="<?=G4_URL?>/">
<img src="<?=G4_ADMIN_URL?>/img/snb_home.jpg" alt="" width="28" height="28">
쇼핑몰 메인
홈페이지 메인
</a>
</li>
<li>

View File

@ -4,8 +4,6 @@ include_once("./_common.php");
auth_check($auth[$sub_menu], 'w');
$token = get_token();
$g4['title'] = '게시판 복사';
$administrator = 1;
include_once(G4_PATH.'/head.sub.php');
@ -43,6 +41,9 @@ include_once(G4_PATH.'/head.sub.php');
</table>
<div class="btn_confirm">
<p>
게시판을 복사하시려면 <strong>복사</strong> 버튼을, 작성을 취소하고 창을 닫으시려면 <strong>창닫기</strong> 버튼을 누르세요.
</p>
<input type="submit" class="btn_submit" value="복사">
<input type="button" class="btn_cancel" value="창닫기" onclick="window.close();">
</div>

View File

@ -15,8 +15,6 @@ $row = sql_fetch(" select count(*) as cnt from {$g4['board_table']} where bo_tab
if ($row['cnt'])
alert($target_table.'은(는) 이미 존재하는 게시판 테이블명 입니다.\\n복사할 테이블명으로 사용할 수 없습니다.');
check_token();
// 게시판 테이블 생성
$sql = get_table_define($g4['write_prefix'] . $bo_table);
$sql = str_replace($g4['write_prefix'] . $bo_table, $g4['write_prefix'] . $target_table, $sql);
@ -24,6 +22,11 @@ sql_query($sql);
$file_copy = array();
// 구조만 복사시에는 공지사항 번호는 복사하지 않는다.
if ($copy_case == 'schema_only') {
$board['bo_notice'] = '';
}
// 게시판 정보
$sql = " insert into {$g4['board_table']}
set bo_table = '$target_table',
@ -63,16 +66,20 @@ $sql = " insert into {$g4['board_table']}
bo_use_list_content = '{$board[bo_use_list_content]}',
bo_table_width = '{$board[bo_table_width]}',
bo_subject_len = '{$board[bo_subject_len]}',
bo_mobile_subject_len = '{$board[bo_mobile_subject_len]}',
bo_page_rows = '{$board[bo_page_rows]}',
bo_mobile_page_rows = '{$board[bo_mobile_page_rows]}',
bo_new = '{$board[bo_new]}',
bo_hot = '{$board[bo_hot]}',
bo_image_width = '{$board[bo_image_width]}',
bo_skin = '{$board['bo_skin']}',
bo_mobile_skin = '{$board['bo_mobile']}',
bo_mobile_skin = '{$board['bo_mobile_skin']}',
bo_include_head = '{$board['bo_include_head']}',
bo_include_tail = '{$board['bo_include_tail']}',
bo_content_head = '".addslashes($board['bo_content_head'])."',
bo_content_tail = '".addslashes($board['bo_content_tail'])."',
bo_mobile_content_head = '".addslashes($board['bo_mobile_content_head'])."',
bo_mobile_content_tail = '".addslashes($board['bo_mobile_content_tail'])."',
bo_insert_content = '".addslashes($board['bo_insert_content'])."',
bo_gallery_cols = '{$board[bo_gallery_cols]}',
bo_gallery_width = '{$board[bo_gallery_width]}',

View File

@ -33,11 +33,26 @@ if (!isset($board['bo_gallery_width'])) {
sql_query(" ALTER TABLE `{$g4['board_table']}` ADD `bo_gallery_width` INT NOT NULL AFTER `bo_gallery_cols`, ADD `bo_gallery_height` INT NOT NULL DEFAULT '0' AFTER `bo_gallery_width`, ADD `bo_mobile_gallery_cols` INT NOT NULL DEFAULT '0' AFTER `bo_gallery_height`, ADD `bo_mobile_gallery_width` INT NOT NULL DEFAULT '0' AFTER `bo_mobile_gallery_cols`, ADD `bo_mobile_gallery_height` INT NOT NULL DEFAULT '0' AFTER `bo_mobile_gallery_width` ", false);
}
if (!isset($board['bo_mobile_subject_len'])) {
sql_query(" ALTER TABLE `{$g4['board_table']}` ADD `bo_mobile_subject_len` INT(11) NOT NULL DEFAULT '0' AFTER `bo_subject_len` ", false);
}
if (!isset($board['bo_mobile_page_rows'])) {
sql_query(" ALTER TABLE `{$g4['board_table']}` ADD `bo_mobile_page_rows` INT(11) NOT NULL DEFAULT '0' AFTER `bo_page_rows` ", false);
}
if (!isset($board['bo_mobile_content_head'])) {
sql_query(" ALTER TABLE `{$g4['board_table']}` ADD `bo_mobile_content_head` TEXT NOT NULL AFTER `bo_content_head`, ADD `bo_mobile_content_tail` TEXT NOT NULL AFTER `bo_content_tail`", false);
}
$required = "";
$readonly = "";
if ($w == '') {
$html_title .= ' 생성';
$bo_table_attr = 'required alnum_';
$required = 'required';
$required_valid = 'alnum_';
$sound_only = '<strong class="sound_only">필수</strong>';
$board['bo_count_delete'] = 1;
@ -55,7 +70,9 @@ if ($w == '') {
$board['bo_mobile_gallery_height'] = 100;
$board['bo_table_width'] = 100;
$board['bo_page_rows'] = $config['cf_page_rows'];
$board['bo_mobile_page_rows'] = $config['cf_page_rows'];
$board['bo_subject_len'] = 60;
$board['bo_mobile_subject_len'] = 30;
$board['bo_new'] = 24;
$board['bo_hot'] = 100;
$board['bo_image_width'] = 600;
@ -83,7 +100,7 @@ if ($w == '') {
alert('그룹이 틀립니다.');
}
$bo_table_attr = 'readonly';
$readonly = 'readonly';
}
@ -127,7 +144,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="frm_input <?=$bo_table_attr?>" maxlength="20">
<input type="text" name="bo_table" value="<?=$board['bo_table'] ?>" id="bo_table" <?=$required?> <?=$readonly?> class="frm_input <?=$reaonly?> <?=$required?> <?=$required_valid?>" maxlength="20">
<? if ($w == '') { ?>
영문자, 숫자, _ 만 가능 (공백없이 20자 이내)
<? } else { ?>
@ -549,7 +566,7 @@ $pg_anchor = "<ul class=\"anchor\">
<tr>
<th scope="row"><label for="bo_upload_size">파일 업로드 용량<strong class="sound_only">필수</strong></label></th>
<td>
<?=help('최대 '.ini_get("upload_max_filesize").' 이하 업로드 가능, 1 MB = 1,024,768 bytes')?>
<?=help('최대 '.ini_get("upload_max_filesize").' 이하 업로드 가능, 1 MB = 1,048,576 bytes')?>
업로드 파일 한개당 <input type="text" name="bo_upload_size" value="<?=$board['bo_upload_size']?>" id="bo_upload_size" required class="required numeric frm_input" size="10"> bytes 이하
</td>
<td class="group_setting">
@ -752,6 +769,30 @@ $pg_anchor = "<ul class=\"anchor\">
</td>
</tr>
<tr>
<th scope="row"><label for="bo_mobile_content_head">모바일 상단 내용</label></th>
<td>
<?=editor_html("bo_mobile_content_head", $board['bo_mobile_content_head']);?>
</td>
<td class="group_setting">
<input type="checkbox" name="chk_grp_mobile_content_head" value="1" id="chk_grp_mobile_content_head">
<label for="chk_grp_mobile_content_head">그룹적용</label>
<input type="checkbox" name="chk_all_mobile_content_head" value="1" id="chk_all_mobile_content_head">
<label for="chk_all_mobile_content_head">전체적용</label>
</td>
</tr>
<tr>
<th scope="row"><label for="bo_mobile_content_tail">모바일 하단 내용</label></th>
<td>
<?=editor_html("bo_mobile_content_tail", $board['bo_mobile_content_tail']);?>
</td>
<td class="group_setting">
<input type="checkbox" name="chk_grp_mobile_content_tail" value="1" id="chk_grp_mobile_content_tail">
<label for="chk_grp_mobile_content_tail">그룹적용</label>
<input type="checkbox" name="chk_all_mobile_content_tail" value="1" id="chk_all_mobile_content_tail">
<label for="chk_all_mobile_content_tail">전체적용</label>
</td>
</tr>
<tr>
<th scope="row"><label for="bo_insert_content">글쓰기 기본 내용</label></th>
<td>
<textarea id="bo_insert_content" name="bo_insert_content" rows="5"><?=$board['bo_insert_content'] ?></textarea>
@ -776,7 +817,20 @@ $pg_anchor = "<ul class=\"anchor\">
<label for="chk_all_subject_len">전체적용</label>
</td>
</tr>
<tr>
<tr>
<th scope="row"><label for="bo_mobile_subject_len">모바일 제목 길이<strong class="sound_only">필수</strong></label></th>
<td>
<?=help('목록에서의 제목 글자수. 잘리는 글은 … 로 표시')?>
<input type="text" name="bo_mobile_subject_len" value="<?=$board['bo_mobile_subject_len']?>" id="bo_mobile_subject_len" required class="required numeric frm_input" size="4">
</td>
<td class="group_setting">
<input type="checkbox" name="chk_grp_mobile_subject_len" value="1" id="chk_grp_mobile_subject_len">
<label for="chk_grp_mobile_subject_len">그룹적용</label>
<input type="checkbox" name="chk_all_mobile_subject_len" value="1" id="chk_all_mobile_subject_len">
<label for="chk_all_mobile_subject_len">전체적용</label>
</td>
</tr>
<tr>
<th scope="row"><label for="bo_page_rows">페이지당 목록 수<strong class="sound_only">필수</strong></label></th>
<td>
<input type="text" name="bo_page_rows" value="<?=$board['bo_page_rows']?>" id="bo_page_rows" required class="required numeric frm_input" size="4">
@ -788,6 +842,18 @@ $pg_anchor = "<ul class=\"anchor\">
<label for="chk_all_page_rows">전체적용</label>
</td>
</tr>
<tr>
<th scope="row"><label for="bo_mobile_page_rows">모바일 페이지당 목록 수<strong class="sound_only">필수</strong></label></th>
<td>
<input type="text" name="bo_mobile_page_rows" value="<?=$board['bo_mobile_page_rows']?>" id="bo_mobile_page_rows" required class="required numeric frm_input" size="4">
</td>
<td class="group_setting">
<input type="checkbox" name="chk_grp_mobile_page_rows" value="1" id="chk_grp_mobile_page_rows">
<label for="chk_grp_mobile_page_rows">그룹적용</label>
<input type="checkbox" name="chk_all_mobile_page_rows" value="1" id="chk_all_mobile_page_rows">
<label for="chk_all_mobile_page_rows">전체적용</label>
</td>
</tr>
<tr>
<th scope="row"><label for="bo_gallery_cols">갤러리 이미지 수<strong class="sound_only">필수</strong></label></th>
<td>
@ -1079,6 +1145,10 @@ $pg_anchor = "<ul class=\"anchor\">
</fieldset>
<div class="btn_confirm">
<p>
작성하신 내용을 제출하시려면 <strong>확인</strong> 버튼을, 작성을 취소하고 목록으로 돌아가시려면 <strong>목록</strong> 링크를 누르세요.
<? if ($w == 'u') { ?><br>게시판을 복사하시려면 <strong>게시판복사</strong> 링크를 누르세요.<? } ?>
</p>
<input type="submit" value="확인" class="btn_submit" accesskey="s">
<a href="./board_list.php?<?=$qstr?>">목록</a>
<? if ($w == 'u') { ?><a href="./board_copy.php?bo_table=<?=$bo_table?>" id="board_copy" target="win_board_copy">게시판복사</a><?}?>
@ -1116,6 +1186,8 @@ function fboardform_submit(f)
{
<?=get_editor_js("bo_content_head");?>
<?=get_editor_js("bo_content_tail");?>
<?=get_editor_js("bo_mobile_content_head");?>
<?=get_editor_js("bo_mobile_content_tail");?>
if (parseInt(f.bo_count_modify.value) < 1) {
alert("원글 수정 불가 댓글수는 1 이상 입력하셔야 합니다.");

View File

@ -87,7 +87,9 @@ $sql_common = " gr_id = '{$_POST['gr_id']}',
bo_use_email = '{$_POST['bo_use_email']}',
bo_table_width = '{$_POST['bo_table_width']}',
bo_subject_len = '{$_POST['bo_subject_len']}',
bo_mobile_subject_len = '{$_POST['bo_mobile_subject_len']}',
bo_page_rows = '{$_POST['bo_page_rows']}',
bo_mobile_page_rows = '{$_POST['bo_mobile_page_rows']}',
bo_new = '{$_POST['bo_new']}',
bo_hot = '{$_POST['bo_hot']}',
bo_image_width = '{$_POST['bo_image_width']}',
@ -97,6 +99,8 @@ $sql_common = " gr_id = '{$_POST['gr_id']}',
bo_include_tail = '{$_POST['bo_include_tail']}',
bo_content_head = '{$_POST['bo_content_head']}',
bo_content_tail = '{$_POST['bo_content_tail']}',
bo_mobile_content_head = '{$_POST['bo_mobile_content_head']}',
bo_mobile_content_tail = '{$_POST['bo_mobile_content_tail']}',
bo_insert_content = '{$_POST['bo_insert_content']}',
bo_gallery_cols = '{$_POST['bo_gallery_cols']}',
bo_gallery_width = '{$_POST['bo_gallery_width']}',
@ -267,7 +271,9 @@ if (is_checked('chk_grp_mobile_gallery_width')) $grp_fields .= " , bo_mobile_gal
if (is_checked('chk_grp_mobile_gallery_height'))$grp_fields .= " , bo_mobile_gallery_height = '{$bo_mobile_gallery_height}' ";
if (is_checked('chk_grp_table_width')) $grp_fields .= " , bo_table_width = '{$bo_table_width}' ";
if (is_checked('chk_grp_page_rows')) $grp_fields .= " , bo_page_rows = '{$bo_page_rows}' ";
if (is_checked('chk_grp_mobile_page_rows')) $grp_fields .= " , bo_mobile_page_rows = '{$bo_mobile_page_rows}' ";
if (is_checked('chk_grp_subject_len')) $grp_fields .= " , bo_subject_len = '{$bo_subject_len}' ";
if (is_checked('chk_grp_mobile_subject_len')) $grp_fields .= " , bo_mobile_subject_len = '{$bo_mobile_subject_len}' ";
if (is_checked('chk_grp_new')) $grp_fields .= " , bo_new = '{$bo_new}' ";
if (is_checked('chk_grp_hot')) $grp_fields .= " , bo_hot = '{$bo_hot}' ";
if (is_checked('chk_grp_image_width')) $grp_fields .= " , bo_image_width = '{$bo_image_width}' ";
@ -283,6 +289,8 @@ if (is_checked('chk_grp_include_head')) $grp_fields .= " , bo_include_he
if (is_checked('chk_grp_include_tail')) $grp_fields .= " , bo_include_tail = '{$bo_include_tail}' ";
if (is_checked('chk_grp_content_head')) $grp_fields .= " , bo_content_head = '{$bo_content_head}' ";
if (is_checked('chk_grp_content_tail')) $grp_fields .= " , bo_content_tail = '{$bo_content_tail}' ";
if (is_checked('chk_grp_mobile_content_head')) $grp_fields .= " , bo_mobile_content_head = '{$bo_mobile_content_head}' ";
if (is_checked('chk_grp_mobile_content_tail')) $grp_fields .= " , bo_mobile_content_tail = '{$bo_mobile_content_tail}' ";
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}' ";
@ -345,7 +353,9 @@ if (is_checked('chk_all_mobile_gallery_width')) $all_fields .= " , bo_mobile_gal
if (is_checked('chk_all_mobile_gallery_height'))$all_fields .= " , bo_mobile_gallery_height = '{$bo_mobile_gallery_height}' ";
if (is_checked('chk_all_table_width')) $all_fields .= " , bo_table_width = '{$bo_table_width}' ";
if (is_checked('chk_all_page_rows')) $all_fields .= " , bo_page_rows = '{$bo_page_rows}' ";
if (is_checked('chk_all_mobile_page_rows')) $all_fields .= " , bo_mobile_page_rows = '{$bo_mobile_page_rows}' ";
if (is_checked('chk_all_subject_len')) $all_fields .= " , bo_subject_len = '{$bo_subject_len}' ";
if (is_checked('chk_all_mobile_subject_len')) $all_fields .= " , bo_mobile_subject_len = '{$bo_mobile_subject_len}' ";
if (is_checked('chk_all_new')) $all_fields .= " , bo_new = '{$bo_new}' ";
if (is_checked('chk_all_hot')) $all_fields .= " , bo_hot = '{$bo_hot}' ";
if (is_checked('chk_all_image_width')) $all_fields .= " , bo_image_width = '{$bo_image_width}' ";
@ -361,6 +371,8 @@ if (is_checked('chk_all_include_head')) $all_fields .= " , bo_include_he
if (is_checked('chk_all_include_tail')) $all_fields .= " , bo_include_tail = '{$bo_include_tail}' ";
if (is_checked('chk_all_content_head')) $all_fields .= " , bo_content_head = '{$bo_content_head}' ";
if (is_checked('chk_all_content_tail')) $all_fields .= " , bo_content_tail = '{$bo_content_tail}' ";
if (is_checked('chk_all_mobile_content_head')) $all_fields .= " , bo_mobile_content_head = '{$bo_mobile_content_head}' ";
if (is_checked('chk_all_mobile_content_tail')) $all_fields .= " , bo_mobile_content_tail = '{$bo_mobile_content_tail}' ";
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}' ";

View File

@ -61,7 +61,7 @@ $colspan = 15;
<legend>게시판 검색</legend>
<span>
<?=$listall?>
생성된 게시판 수 <?=number_format($total_count)?>개
생성된 게시판수 <?=number_format($total_count)?>개
</span>
<select name="sfl" title="검색대상">
<option value="bo_table"<?=get_selected($_GET['sfl'], "bo_subject", true);?>>TABLE</option>

View File

@ -136,6 +136,9 @@ include_once('./admin.head.php');
</table>
<div class="btn_confirm">
<p>
작성하신 내용을 제출하시려면 <strong>확인</strong> 버튼을, 작성을 취소하고 목록으로 돌아가시려면 <strong>목록</strong> 링크를 누르세요.
</p>
<input type="submit" class="btn_submit" accesskey="s" value="확인">
<a href="./boardgroup_list.php?<?=$qstr?>">목록</a>
</div>

View File

@ -1,52 +1,47 @@
<?
$sub_menu = "100900";
include_once("./_common.php");
<?php
$sub_menu = '100900';
include_once('./_common.php');
if ($is_admin != "super")
alert("최고관리자만 접근 가능합니다.", G4_URL);
if ($is_admin != 'super')
alert('최고관리자만 접근 가능합니다.', G4_URL);
$g4['title'] = "캐시파일 일괄삭제";
include_once("./admin.head.php");
$g4['title'] = '캐시파일 일괄삭제';
include_once('./admin.head.php');
?>
<div id="cache_del">
<p>
완료 메세지가 나오기 전에 프로그램의 실행을 중지하지 마십시오.
</p>
<?
<?php
flush();
if (!$dir=@opendir(G4_DATA_PATH.'/cache')) {
echo "<p>최신글 캐시디렉토리를 열지못했습니다.</p>";
echo '<p>캐시디렉토리를 열지못했습니다.</p>';
}
$cnt=0;
echo "<ul>\n";
while($file=readdir($dir)) {
if ($file=='.' || $file=='..') continue;
echo '<ul>'.PHP_EOL;
$cache_file = G4_DATA_PATH.'/cache/'.$file;
$files = glob(G4_DATA_PATH.'/cache/latest-*');
if (is_array($files)) {
foreach ($files as $cache_file) {
$cnt++;
unlink($cache_file);
echo '<li>'.$cache_file.'</li>'.PHP_EOL;
if (!$atime=@fileatime($cache_file))
continue;
flush();
$cnt++;
$return = unlink($cache_file);
//echo "<script>document.getElementById('delete_message').innerHTML += '{$cache_file}<br>';</script>\n";
echo "<li>{$cache_file}</li>\n";
flush();
if ($cnt%10==0)
//echo "<script>document.getElementById('delete_message').innerHTML = '';</script>\n";
echo "\n";
if ($cnt%10==0)
echo PHP_EOL;
}
}
echo "<li>완료됨</li>\n</ul>\n";
//echo "<script>document.getElementById('delete_message').innerHTML += '최신글 캐시파일 {$cnt}건 삭제 완료.<br><br>프로그램의 실행을 끝마치셔도 좋습니다.';</script>\n";
echo "<p><span>최신글 캐시파일 {$cnt}건 삭제가 완료됐습니다.</span><br>프로그램의 실행을 끝마치셔도 좋습니다.</p>\n";
echo '<li>완료됨</li></ul>'.PHP_EOL;
echo '<p><span>최신글 캐시파일 '.$cnt.'건 삭제가 완료됐습니다.</span><br>프로그램의 실행을 끝마치셔도 좋습니다.</p>'.PHP_EOL;
?>
</div>
<?php
include_once("./admin.tail.php");
include_once('./admin.tail.php');
?>

View File

@ -41,6 +41,14 @@ if(!isset($config['cf_mobile_pages'])) {
sql_query(" UPDATE `{$g4['config_table']}` SET cf_mobile_pages = '5' ", TRUE);
}
// uniqid 테이블이 없을 경우 생성
if(!sql_query(" select uq_id from {$g4['uniqid_table']} limit 1 ", false)) {
sql_query(" CREATE TABLE IF NOT EXISTS `{$g4['uniqid_table']}` (
`uq_id` bigint(20) unsigned NOT NULL,
PRIMARY KEY (`uq_id`)
) ", false);
}
$g4['title'] = '환경설정';
include_once ('./admin.head.php');
@ -490,7 +498,7 @@ $pg_anchor = "
</td>
<th scope="row"><label for="cf_prohibit_email">입력 금지 메일</label></th>
<td>
<?=help('hotmail.com과 같은 메일 주소는 사용하지 못하도록 못합니다. 엔터로 구분')?>
<?=help('입력 받지 않을 도메인을 지정합니다. 엔터로 구분 ex) hotmail.com')?>
<textarea name="cf_prohibit_email" id="cf_prohibit_email" rows="5"><?=$config['cf_prohibit_email']?></textarea>
</td>
</tr>
@ -673,6 +681,9 @@ $pg_anchor = "
</fieldset>
<div class="btn_confirm">
<p>
작성하신 내용을 제출하시려면 <strong>확인</strong> 버튼을, 작성을 취소하고 목록으로 돌아가시려면 <strong>목록</strong> 링크를 누르세요.
</p>
<input type="submit" value="확인" class="btn_submit" accesskey="s">
</div>

View File

@ -0,0 +1,52 @@
<?php
$sub_menu = '100910';
include_once('./_common.php');
if ($is_admin != 'super')
alert('최고관리자만 접근 가능합니다.', G4_URL);
$g4['title'] = '캡챠파일 일괄삭제';
include_once('./admin.head.php');
?>
<div id="cache_del">
<p>
완료 메세지가 나오기 전에 프로그램의 실행을 중지하지 마십시오.
</p>
<?php
flush();
if (!$dir=@opendir(G4_DATA_PATH.'/cache')) {
echo '<p>캐시디렉토리를 열지못했습니다.</p>';
}
$cnt=0;
echo '<ul>'.PHP_EOL;
$files = glob(G4_DATA_PATH.'/cache/gcaptcha-*');
if (is_array($files)) {
$before_time = G4_SERVER_TIME - 3600; // 한시간전
foreach ($files as $gcaptcha_file) {
$modification_time = filemtime($gcaptcha_file); // 파일접근시간
if ($modification_time > $before_time) continue;
$cnt++;
unlink($gcaptcha_file);
echo '<li>'.$gcaptcha_file.'</li>'.PHP_EOL;
flush();
if ($cnt%10==0)
echo PHP_EOL;
}
}
echo '<li>완료됨</li></ul>'.PHP_EOL;
echo '<p><span>캡챠파일 '.$cnt.'건의 삭제가 완료됐습니다.</span><br>프로그램의 실행을 끝마치셔도 좋습니다.</p>'.PHP_EOL;
?>
</div>
<?php
include_once('./admin.tail.php');
?>

View File

@ -50,6 +50,9 @@ include_once('./admin.head.php');
</table>
<div class="btn_confirm">
<p>
작성하신 내용을 제출하시려면 <strong>확인</strong> 버튼을 누르세요.
</p>
<input type="submit" class="btn_submit" accesskey="s" value="확인">
</div>
</form>

View File

@ -76,7 +76,7 @@ $colspan = 6;
</table>
<div class="btn_list">
<button>선택삭제</button>
<button type="submit">선택삭제</button>
</div>
</form>
</section>

View File

@ -110,6 +110,9 @@ include_once('./admin.head.php');
</table>
<div class="btn_confirm">
<p>
메일발송대상 선택을 완료하시려면 <strong>확인</strong> 버튼을, 작성을 취소하고 목록으로 돌아가시려면 <strong>목록</strong> 링크를 누르세요.
</p>
<input type="submit" value="확인" class="btn_submit">
<a href="./mail_list.php">목록 </a>
</div>

View File

@ -147,11 +147,17 @@ include_once('./admin.head.php');
<tr>
<th scope="row"><label for="mb_zip1">주소</label></th>
<td colspan="3" style="line-height:2em">
<input type="text" name="mb_zip1" value="<?=$mb['mb_zip1']?>" id="mb_zip1" title="우편번호 앞자리" class="frm_input readonly" size="3" maxlength="3" readonly> -
<input type="text" name="mb_zip2" value="<?=$mb['mb_zip2']?>" id="mb_zip2" title="우편번호 뒷자리" class="frm_input readonly" size="3" maxlength="3" readonly>
<a href="<?=G4_BBS_URL.'/zip.php?frm_name=fmember&amp;frm_zip1=mb_zip1&amp;frm_zip2=mb_zip2&amp;frm_addr1=mb_addr1&amp;frm_addr2=mb_addr2'?>" class="win_zip_find btn_frmline">우편번호 검색</a><br>
<input type="text" name="mb_addr1" value="<?=$mb['mb_addr1']?>" id="mb_addr1" title="행정기본주소" class="frm_input readonly" size="50" readonly><br>
<input type="text" name="mb_zip1" value="<?=$mb['mb_zip1']?>" id="mb_zip1" title="우편번호 앞자리" class="frm_input readonly" size="3" maxlength="3"> -
<input type="text" name="mb_zip2" value="<?=$mb['mb_zip2']?>" id="mb_zip2" title="우편번호 뒷자리" class="frm_input readonly" size="3" maxlength="3">
<span id="win_zip" style="display:block"></span>
<input type="text" name="mb_addr1" value="<?=$mb['mb_addr1']?>" id="mb_addr1" title="행정기본주소" class="frm_input readonly" size="50"><br>
<input type="text" name="mb_addr2" value="<?=$mb['mb_addr2']?>" id="mb_addr2" title="상세주소" class="frm_input" size="50"> 상세주소 입력
<script>
// 우편번호 자바스크립트 비활성화 대응을 위한 코드
$('<a href="<?=G4_BBS_URL?>/zip.php?frm_name=fmember&amp;frm_zip1=mb_zip1&amp;frm_zip2=mb_zip2&amp;frm_addr1=mb_addr1&amp;frm_addr2=mb_addr2" id="win_zip" class="win_zip_find btn_frmline" target="_blank">우편번호 검색</a><br>').appendTo('#win_zip');
$('#win_zip').css('display','inline');
$('#mb_zip1,#mb_zip2,#mb_addr1').attr('readonly','readonly');
</script>
</td>
</tr>
<tr>
@ -276,6 +282,9 @@ include_once('./admin.head.php');
</fieldset>
<div class="btn_confirm">
<p>
작성하신 내용을 제출하시려면 <strong>확인</strong> 버튼을, 작성을 취소하고 목록으로 돌아가시려면 <strong>목록</strong> 링크를 누르세요.
</p>
<input type="submit" value="확인" class="btn_submit" accesskey='s'>
<a href="./member_list.php?<?=$qstr?>">목록</a>
</div>

View File

@ -94,6 +94,12 @@ else if ($w == 'u')
if ($_POST['mb_id'] == $member['mb_id'] && $_POST['mb_level'] != $mb['mb_level'])
alert($mb['mb_id'].' : 로그인 중인 관리자 레벨은 수정 할 수 없습니다.');
// 이메일중복체크
$sql = " select count(*) as cnt from {$g4['member_table']} where mb_email = '{$_POST['mb_email']}' and mb_id <> '$mb_id' ";
$row = sql_fetch($sql);
if($row['cnt'])
alert('다른 회원이 사용 중인 이메일입니다.');
$mb_dir = substr($mb_id,0,2);
// 회원 아이콘 삭제

View File

@ -99,6 +99,9 @@ include_once('./admin.head.php');
</table>
<div class="btn_confirm">
<p>
작성하신 내용을 제출하시려면 <strong>확인</strong> 버튼을, 작성을 취소하고 목록으로 돌아가시려면 <strong>목록</strong> 링크를 누르세요.
</p>
<input type="submit" value="확인" class="btn_submit" accesskey="s">
<a href="./poll_list.php?<?=$qstr?>">목록</a>
</div>

View File

@ -128,7 +128,7 @@ $colspan = 6;
</table>
<div class="btn_list">
<button>선택삭제</button>
<button type="submit">선택삭제</button>
</div>
</form>
</section>

View File

@ -134,7 +134,7 @@ var list_delete_php = 'popular_list.php';
<?if ($is_admin == 'super'){ ?>
<div class="btn_list">
<button>선택삭제</button>
<button type="submit">선택삭제</button>
</div>
<?}?>

View File

@ -74,7 +74,9 @@ $result = sql_query($sql);
//$qstr = "$qstr1&sort1=$sort1&sort2=$sort2&page=$page";
$qstr = "$qstr&sca=$sca&page=$page&save_stx=$stx";
?>
<style type="text/css">
.itemtypelist{text-align:center}
</style>
<form name="flist">
<fieldset>
@ -83,7 +85,7 @@ $qstr = "$qstr&sca=$sca&page=$page&save_stx=$stx";
<input type="hidden" name="sort1" value="<? echo $sort1 ?>">
<input type="hidden" name="sort2" value="<? echo $sort2 ?>">
<input type="hidden" name="page" value="<? echo $page ?>">
<p><a href='<?=$_SERVER['PHP_SELF']?>'>처음</a></p>
<p><a href="<?=$_SERVER['PHP_SELF']?>">처음</a></p>
<select name="sca" title="검색분류">
<option value="">전체분류</option>
<?
@ -109,38 +111,38 @@ $qstr = "$qstr&sca=$sca&page=$page&save_stx=$stx";
<p>건수 : <? echo $total_count ?></p>
</form>
<section class="cbox">
<section class="cbox">
<h2>상품유형관리</h2>
<p>*상품의 유형을 일괄처리합니다.</p>
<form name="fitemtypelist" method="post" action="./itemtypelistupdate.php">
<input type="hidden" name="sca" value="<?=$sca?>">
<input type="hidden" name="sst" value="<?=$sst?>">
<input type="hidden" name="sod" value="<?=$sod?>">
<input type="hidden" name="sod" value="<?=$sod?>">
<input type="hidden" name="sfl" value="<?=$sfl?>">
<input type="hidden" name="stx" value="<?=$stx?>">
<input type="hidden" name="page" value="<?=$page?>">
<table>
<table class="frm_basic">
<colgroup>
<col class="grid_2">
<col class="grid_10">
<col class="grid_9">
<col class="grid_1">
<col class="grid_1">
<col class="grid_1">
<col class="grid_1">
<col class="grid_1">
<col class="grid_1">
<col class="grid_2">
<col class="grid_2">
<col class="grid_2">
<col class="grid_1">
</colgroup>
<thead>
<tr>
<th scope="col"><?=subject_sort_link("it_id", $qstr, 1)?>상품코드</a></th>
<th scope="col"><?=subject_sort_link("it_id", $qstr, 1)?>상품<br>코드</a></th>
<th scope="col"><?=subject_sort_link("it_name")?>상품명</a></th>
<th scope="col"><?=subject_sort_link("it_type1", $qstr, 1)?>히트상품</a></th>
<th scope="col"><?=subject_sort_link("it_type2", $qstr, 1)?>추천상품</a></th>
<th scope="col"><?=subject_sort_link("it_type3", $qstr, 1)?>신규상품</a></th>
<th scope="col"><?=subject_sort_link("it_type4", $qstr, 1)?>인기상품</a></th>
<th scope="col"><?=subject_sort_link("it_type5", $qstr, 1)?>할인상품</a></th>
<th scope="col">수정</th>
<th scope="col"><?=subject_sort_link("it_type1", $qstr, 1)?>히트<br>상품</a></th>
<th scope="col"><?=subject_sort_link("it_type2", $qstr, 1)?>추천<br>상품</a></th>
<th scope="col"><?=subject_sort_link("it_type3", $qstr, 1)?>신규<br>상품</a></th>
<th scope="col"><?=subject_sort_link("it_type4", $qstr, 1)?>인기<br>상품</a></th>
<th scope="col"><?=subject_sort_link("it_type5", $qstr, 1)?>할인<br>상품</a></th>
<th scope="col">관리</th>
</tr>
</thead>
<tbody>
@ -155,20 +157,20 @@ $qstr = "$qstr&sca=$sca&page=$page&save_stx=$stx";
?>
<input type="hidden" name="it_id[$i]" value="<?=$row['it_id']?>">
<tr>
<td><?=$row['it_id']?></td>
<td><a href="<?=$href?>"><?=get_it_image($row['it_id'].'_s', 50, 50)?></a><?=cut_str(stripslashes($row['it_name']), 60, "&#133")?></a></td>
<td><input type="checkbox" name="it_type1[$i]" value="1" <?=($row['it_type1'] ? 'checked' : '')?> title="히트상품"></td>
<td><input type="checkbox" name="it_type2[$i]" value="1" <?=($row['it_type2'] ? 'checked' : '')?> title="추천상품"></td>
<td><input type="checkbox" name="it_type3[$i]" value="1" <?=($row['it_type3'] ? 'checked' : '')?> title="신규상품"></td>
<td><input type="checkbox" name="it_type4[$i]" value="1" <?=($row['it_type4'] ? 'checked' : '')?> title="인기상품"></td>
<td><input type="checkbox" name="it_type5[$i]" value="1" <?=($row['it_type5'] ? 'checked' : '')?> title="할인상품"></td>
<td><?=$s_mod?></td>
<td class="itemtypelist"><?=$row['it_id']?></td>
<td><a href="<?=$href?>"><?=get_it_image($row['it_id'].'_s', 50, 50)?><?=cut_str(stripslashes($row['it_name']), 60, "&#133")?></a></td>
<td class="itemtypelist"><input type="checkbox" name="it_type1[$i]" value="1" <?=($row['it_type1'] ? 'checked' : '')?> title="히트상품"></td>
<td class="itemtypelist"><input type="checkbox" name="it_type2[$i]" value="1" <?=($row['it_type2'] ? 'checked' : '')?> title="추천상품"></td>
<td class="itemtypelist"><input type="checkbox" name="it_type3[$i]" value="1" <?=($row['it_type3'] ? 'checked' : '')?> title="신규상품"></td>
<td class="itemtypelist"><input type="checkbox" name="it_type4[$i]" value="1" <?=($row['it_type4'] ? 'checked' : '')?> title="인기상품"></td>
<td class="itemtypelist"><input type="checkbox" name="it_type5[$i]" value="1" <?=($row['it_type5'] ? 'checked' : '')?> title="할인상품"></td>
<td class="itemtypelist"><a href="./itemform.php?w=u&it_id=<?=$row['it_id']?>&ca_id=<?=$row['ca_id']?>&<?=$qstr?>">수정</a></td>
</tr>
<?
}
if (!$i)
echo '<tr><td colspan="9"><span>자료가 한건도 없습니다.</span></td></tr>';
echo '<tr><td colspan="9" class="itemtypelist empty_table"><span>자료가 한건도 없습니다.</span></td></tr>';
?>
</tbody>
<tfoot>
@ -176,10 +178,10 @@ $qstr = "$qstr&sca=$sca&page=$page&save_stx=$stx";
</tfoot>
</table>
</form>
<input type="submit" value="일괄수정" accesskey="s">
<div class="btn_list">
<input type="submit" value="일괄수정">
</div>
<?=get_paging($config['cf_write_pages'], $page, $total_page, "{$_SERVER['PHP_SELF']}?$qstr&page=");?>
</section>

View File

@ -5,9 +5,9 @@ global $lo_url;
include_once('./_common.php');
if($error) {
$g4['title'] = "오류가 있습니다.";
$g4['title'] = "오류안내 페이지";
} else {
$g4['title'] = "내용을 확인해 주세요.";
$g4['title'] = "결과안내 페이지";
}
include_once(G4_PATH.'/head.sub.php');
// 필수 입력입니다.

View File

@ -28,7 +28,7 @@ if (isset($wr_id) && $wr_id) {
if (isset($group['gr_use_access']) && $group['gr_use_access']) {
if ($is_guest) {
$msg = "비회원은 이 게시판에 접근할 권한이 없습니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.";
alert($msg, './login.php?wr_id='.$wr_id.$qstr.'&amp;url='.urlencode(G4_BBS_URL.'/board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id));
alert($msg, './login.php?wr_id='.$wr_id.$qstr.'&amp;url='.urlencode(G4_BBS_URL.'/board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id.$qstr));
}
// 그룹관리자 이상이라면 통과
@ -49,7 +49,7 @@ if (isset($wr_id) && $wr_id) {
if ($is_member)
alert('글을 읽을 권한이 없습니다.', G4_URL);
else
alert('글을 읽을 권한이 없습니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.', './login.php?wr_id='.$wr_id.$qstr.'&amp;url='.urlencode(G4_BBS_URL.'/board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id));
alert('글을 읽을 권한이 없습니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.', './login.php?wr_id='.$wr_id.$qstr.'&amp;url='.urlencode(G4_BBS_URL.'/board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id.$qstr));
}
// 자신의 글이거나 관리자라면 통과
@ -112,24 +112,27 @@ if (isset($wr_id) && $wr_id) {
set_session($ss_name, TRUE);
}
$g4['title'] = strip_tags(conv_subject($write['wr_subject'], 255));
$g4['title'] = strip_tags(conv_subject($write['wr_subject'], 255))." > ".$board['bo_subject'];
} else {
if ($member['mb_level'] < $board['bo_list_level']) {
if ($member['mb_id'])
alert('목록을 볼 권한이 없습니다.', G4_URL);
else
alert('목록을 볼 권한이 없습니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.', './login.php?wr_id='.$wr_id.$qstr.'&amp;url='.urlencode(G4_BBS_URL.'/board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id));
alert('목록을 볼 권한이 없습니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.', './login.php?wr_id='.$wr_id.$qstr.'&amp;url='.urlencode(G4_BBS_URL.'/board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id.$qstr));
}
if (!isset($page) || (isset($page) && $page == 0)) $page = 1;
$g4['title'] = $board['bo_subject'];
$g4['title'] = $board['bo_subject']." ".$page." 페이지";
}
include_once(G4_PATH.'/head.sub.php');
$width = $board['bo_table_width'];
if ($width <= 100) $width .= '%';
if ($width <= 100)
$width .= '%';
else
$width .='px';
// IP보이기 사용 여부
$ip = "";

View File

@ -1,21 +1,13 @@
<?
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 게시판 관리의 상단 파일 경로
if ($board['bo_include_head']) {
@include ($board['bo_include_head']);
}
// 게시판 관리의 상단 이미지 경로
if ($board['bo_image_head']) {
echo '<img src="'.G4_DATA_PATH.'/file/'.$bo_table.'/'.$board['bo_image_head'].'">';
}
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 게시판 관리의 상단 내용
if (G4_IS_MOBILE) {
// 모바일의 경우 설정을 따르지 않는다.
include_once('./_head.php');
} else if ($board['bo_content_head']) {
echo stripslashes($board['bo_content_head']);
echo stripslashes($board['bo_mobile_content_head']);
} else {
@include ($board['bo_include_head']);
echo stripslashes($board['bo_content_head']);
}
?>

View File

@ -1,21 +1,13 @@
<?
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 게시판 관리의 하단 내용
if ($board['bo_content_tail']) {
echo stripslashes($board['bo_content_tail']);
}
// 게시판 관리의 하단 이미지 경로
if ($board['bo_image_tail']) {
echo '<img src="'.G4_DATA_PATH.'/file/'.$bo_table.'/'.$board['bo_image_tail'].'">';
}
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 게시판 관리의 하단 파일 경로
if (G4_IS_MOBILE) {
echo stripslashes($board['bo_mobile_content_tail']);
// 모바일의 경우 설정을 따르지 않는다.
include_once('./_tail.php');
} else if ($board['bo_include_tail']) {
@include ($board['bo_include_tail']);
echo stripslashes($board['bo_content_tail']);
@include ($board['bo_include_tail']);
}
?>

View File

@ -4,7 +4,7 @@ include_once('./_common.php');
if ($is_admin)
{
if (!($token && get_session("ss_delete_token") == $token))
if (!($token && get_session("ss_delete_token") == $token))
alert('토큰 에러로 삭제 불가합니다.');
}
@ -13,70 +13,70 @@ if ($is_admin)
$write = sql_fetch(" select * from {$write_table} where wr_id = '{$comment_id}' ");
if (!$write[wr_id] || !$write[wr_is_comment])
if (!$write['wr_id'] || !$write['wr_is_comment'])
alert('등록된 코멘트가 없거나 코멘트 글이 아닙니다.');
if ($is_admin == 'super') // 최고관리자 통과
;
else if ($is_admin == 'group') { // 그룹관리자
$mb = get_member($write[mb_id]);
if ($member[mb_id] == $group[gr_admin]) { // 자신이 관리하는 그룹인가?
if ($member[mb_level] >= $mb[mb_level]) // 자신의 레벨이 크거나 같다면 통과
$mb = get_member($write['mb_id']);
if ($member['mb_id'] == $group['gr_admin']) { // 자신이 관리하는 그룹인가?
if ($member['mb_level'] >= $mb['mb_level']) // 자신의 레벨이 크거나 같다면 통과
;
else
alert('그룹관리자의 권한보다 높은 회원의 코멘트이므로 삭제할 수 없습니다.');
} else
alert('자신이 관리하는 그룹의 게시판이 아니므로 코멘트를 삭제할 수 없습니다.');
} else if ($is_admin == 'board') { // 게시판관리자이면
$mb = get_member($write[mb_id]);
if ($member[mb_id] == $board[bo_admin]) { // 자신이 관리하는 게시판인가?
if ($member[mb_level] >= $mb[mb_level]) // 자신의 레벨이 크거나 같다면 통과
$mb = get_member($write['mb_id']);
if ($member['mb_id'] == $board['bo_admin']) { // 자신이 관리하는 게시판인가?
if ($member['mb_level'] >= $mb['mb_level']) // 자신의 레벨이 크거나 같다면 통과
;
else
alert('게시판관리자의 권한보다 높은 회원의 코멘트이므로 삭제할 수 없습니다.');
} else
alert('자신이 관리하는 게시판이 아니므로 코멘트를 삭제할 수 없습니다.');
} else if ($member[mb_id]) {
if ($member[mb_id] != $write[mb_id])
} else if ($member['mb_id']) {
if ($member['mb_id'] != $write['mb_id'])
alert('자신의 글이 아니므로 삭제할 수 없습니다.');
} else {
if (sql_password($wr_password) != $write[wr_password])
if (sql_password($wr_password) != $write['wr_password'])
alert('패스워드가 틀립니다.');
}
$len = strlen($write[wr_comment_reply]);
if ($len < 0) $len = 0;
$comment_reply = substr($write[wr_comment_reply], 0, $len);
$len = strlen($write['wr_comment_reply']);
if ($len < 0) $len = 0;
$comment_reply = substr($write['wr_comment_reply'], 0, $len);
$sql = " select count(*) as cnt from {$write_table}
where wr_comment_reply like '{$comment_reply}%'
and wr_id <> '{$comment_id}'
and wr_parent = '{$write[wr_parent]}'
and wr_comment = '{$write[wr_comment]}'
and wr_comment = '{$write[wr_comment]}'
and wr_is_comment = 1 ";
$row = sql_fetch($sql);
if ($row[cnt] && !$is_admin)
if ($row['cnt'] && !$is_admin)
alert('이 코멘트와 관련된 답변코멘트가 존재하므로 삭제 할 수 없습니다.');
// 코멘트 삭제
if (!delete_point($write[mb_id], $bo_table, $comment_id, '코멘트'))
insert_point($write[mb_id], $board[bo_comment_point] * (-1), "{$board[bo_subject]} {$write[wr_parent]}-{$comment_id} 코멘트삭제");
if (!delete_point($write['mb_id'], $bo_table, $comment_id, '코멘트'))
insert_point($write['mb_id'], $board['bo_comment_point'] * (-1), "{$board['bo_subject']} {$write['wr_parent']}-{$comment_id} 코멘트삭제");
// 코멘트 삭제
sql_query(" delete from {$write_table} where wr_id = '{$comment_id}' ");
// 코멘트가 삭제되므로 해당 게시물에 대한 최근 시간을 다시 얻는다.
$sql = " select max(wr_datetime) as wr_last from {$write_table} where wr_parent = '{$write[wr_parent]}' ";
$sql = " select max(wr_datetime) as wr_last from {$write_table} where wr_parent = '{$write['wr_parent']}' ";
$row = sql_fetch($sql);
// 원글의 코멘트 숫자를 감소
sql_query(" update {$write_table} set wr_comment = wr_comment - 1, wr_last = '{$row[wr_last]}' where wr_id = '{$write[wr_parent]}' ");
sql_query(" update {$write_table} set wr_comment = wr_comment - 1, wr_last = '{$row['wr_last']}' where wr_id = '{$write['wr_parent']}' ");
// 코멘트 숫자 감소
sql_query(" update {$g4[board_table]} set bo_count_comment = bo_count_comment - 1 where bo_table = '{$bo_table}' ");
sql_query(" update {$g4['board_table']} set bo_count_comment = bo_count_comment - 1 where bo_table = '{$bo_table}' ");
// 새글 삭제
sql_query(" delete from {$g4[board_new_table]} where bo_table = '{$bo_table}' and wr_id = '{$comment_id}' ");
sql_query(" delete from {$g4['board_new_table']} where bo_table = '{$bo_table}' and wr_id = '{$comment_id}' ");
// 사용자 코드 실행
@include_once($board_skin_path.'/delete_comment.skin.php');
@ -84,5 +84,5 @@ sql_query(" delete from {$g4[board_new_table]} where bo_table = '{$bo_table}' an
delete_cache_latest($bo_table);
goto_url('./board.php?bo_table='.$bo_table.'&amp;wr_id='.$write[wr_parent].'&amp;page='.$page. $qstr);
goto_url('./board.php?bo_table='.$bo_table.'&amp;wr_id='.$write['wr_parent'].'&amp;page='.$page. $qstr);
?>

View File

@ -69,10 +69,7 @@ if (!get_session($ss_name))
$g4['title'] = '다운로드 &gt; '.conv_subject($write['wr_subject'], 255);
if (preg_match("/^utf/i", $g4['charset']))
$original = urlencode($file['bf_source']);
else
$original = $file['bf_source'];
$original = urlencode($file['bf_source']);
@include_once($board_skin_path.'/download.tail.skin.php');

View File

@ -1,21 +1,21 @@
<?
include_once('./_common.php');
$sql = " select mb_id, mb_email, mb_datetime from {$g4[member_table]} where mb_id = '{$mb_id}' ";
$sql = " select mb_id, mb_email, mb_datetime from {$g4['member_table']} where mb_id = '{$mb_id}' ";
$row = sql_fetch($sql);
if (!$row[mb_id])
alert('존재하는 회원이 아닙니다.', G4_PATH);
if (!$row['mb_id'])
alert('존재하는 회원이 아닙니다.', G4_URL);
if ($mb_md5)
if ($mb_md5)
{
$tmp_md5 = md5($row[mb_id].$row[mb_email].$row[mb_datetime]);
if ($mb_md5 == $tmp_md5)
$tmp_md5 = md5($row['mb_id'].$row['mb_email'].$row['mb_datetime']);
if ($mb_md5 == $tmp_md5)
{
sql_query(" update {$g4[member_table]} set mb_email_certify = '".G4_TIME_YMDHIS."' where mb_id = '{$mb_id}' ");
sql_query(" update {$g4['member_table']} set mb_email_certify = '".G4_TIME_YMDHIS."' where mb_id = '{$mb_id}' ");
alert('E-mail 인증 처리를 완료 하였습니다.', G4_PATH);
alert('E-mail 인증 처리를 완료 하였습니다.', G4_URL);
}
}
alert('제대로 된 값이 넘어오지 않았습니다.', G4_PATH);
alert('제대로 된 값이 넘어오지 않았습니다.', G4_URL);
?>

View File

@ -52,9 +52,15 @@ if ($sca || $stx) {
$total_count = $board['bo_count_write'];
}
$total_page = ceil($total_count / $board['bo_page_rows']); // 전체 페이지 계산
if(G4_IS_MOBILE) {
$page_rows = $board['bo_mobile_page_rows'];
} else {
$page_rows = $board['bo_page_rows'];
}
$total_page = ceil($total_count / $page_rows); // 전체 페이지 계산
if (!$page) { $page = 1; } // 페이지가 없으면 첫 페이지 (1 페이지)
$from_record = ($page - 1) * $board['bo_page_rows']; // 시작 열을 구함
$from_record = ($page - 1) * $page_rows; // 시작 열을 구함
// 관리자라면 CheckBox 보임
$is_checkbox = false;
@ -90,9 +96,9 @@ if ($sst) {
}
if ($sca || $stx) {
$sql = " select distinct wr_parent from {$write_table} where {$sql_search} {$sql_order} limit {$from_record}, {$board['bo_page_rows']} ";
$sql = " select distinct wr_parent from {$write_table} where {$sql_search} {$sql_order} limit {$from_record}, $page_rows ";
} else {
$sql = " select * from {$write_table} where wr_is_comment = 0 {$sql_order} limit {$from_record}, {$board['bo_page_rows']} ";
$sql = " select * from {$write_table} where wr_is_comment = 0 {$sql_order} limit {$from_record}, $page_rows ";
}
$result = sql_query($sql);
@ -111,7 +117,7 @@ if (!$sca && !$stx) {
if (!$row['wr_id']) continue;
$list[$i] = get_list($row, $board, $board_skin_url, $board['bo_subject_len']);
$list[$i] = get_list($row, $board, $board_skin_url, G4_IS_MOBILE ? $board['bo_mobile_subject_len'] : $board['bo_subject_len']);
$list[$i]['is_notice'] = true;
$i++;
@ -126,12 +132,12 @@ while ($row = sql_fetch_array($result))
if ($sca || $stx)
$row = sql_fetch(" select * from {$write_table} where wr_id = '{$row['wr_parent']}' ");
$list[$i] = get_list($row, $board, $board_skin_url, $board['bo_subject_len']);
$list[$i] = get_list($row, $board, $board_skin_url, G4_IS_MOBILE ? $board['bo_mobile_subject_len'] : $board['bo_subject_len']);
if (strstr($sfl, 'subject')) {
$list[$i]['subject'] = search_font($stx, $list[$i]['subject']);
}
$list[$i]['is_notice'] = false;
$list[$i]['num'] = $total_count - ($page - 1) * $board['bo_page_rows'] - $k;
$list[$i]['num'] = $total_count - ($page - 1) * $page_rows - $k;
$i++;
$k++;

View File

@ -6,21 +6,27 @@ $g4['title'] = '패스워드 입력';
switch ($w) {
case 'u' :
$action = './write.php';
$return_url = './board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id;
break;
case 'd' :
$action = './delete.php';
$return_url = './board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id;
break;
case 'x' :
$action = './delete_comment.php';
$row = sql_fetch(" select wr_parent from $write_table where wr_id = '$comment_id' ");
$return_url = './board.php?bo_table='.$bo_table.'&amp;wr_id='.$row['wr_parent'];
break;
case 's' :
// 패스워드 창에서 로그인 하는 경우 관리자 또는 자신의 글이면 바로 글보기로 감
if ($is_admin || ($member['mb_id'] == $write['mb_id'] && $write['mb_id']))
goto_url('./board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id);
else
else {
$action = './password_check.php';
$return_url = './board.php?bo_table='.$bo_table;
}
break;
default :
default :
alert('w 값이 제대로 넘어오지 않았습니다.');
}

View File

@ -19,7 +19,7 @@ sql_query(" update {$g4['member_table']} set mb_lost_certify = '' where mb_no =
// 변경될 패스워드가 넘어와야하고 저장된 변경패스워드를 md5 로 변환하여 같으면 정상
if ($mb_lost_certify && $mb_datetime === sql_password($mb['mb_datetime']) && $mb_lost_certify === $mb['mb_lost_certify']) {
sql_query(" update {$g4['member_table']} set mb_password = '{$mb['mb_lost_certify']}' where mb_no = '$mb_no' ");
alert('변경된 패스워드를 이메일로 보내드렸습니다.\\n\\n회원아이디와 변경된 패스워드로 로그인 하시기 바랍니다.', G4_BBS_URL.'/login.php');
alert('패스워드가 변경됐습니다.\\n\\n회원아이디와 변경된 패스워드로 로그인 하시기 바랍니다.', G4_BBS_URL.'/login.php');
}
else {
die("Error");

View File

@ -11,10 +11,20 @@ if ($member['mb_level'] < $po['po_level'])
if(!$gb_poll)
alert_close('항목을 선택하세요.');
// 쿠키에 저장된 투표번호가 없다면
if (get_cookie('ck_po_id') != $po['po_id']) {
$search_mb_id = false;
$search_ip = false;
if($is_member) {
// 투표했던 회원아이디들 중에서 찾아본다
$ids = explode(',', trim($po['mb_ids']));
for ($i=0; $i<count($ids); $i++) {
if ($member['mb_id'] == trim($ids[$i])) {
$search_mb_id = true;
break;
}
}
} else {
// 투표했던 ip들 중에서 찾아본다
$search_ip = false;
$ips = explode(',', trim($po['po_ips']));
for ($i=0; $i<count($ips); $i++) {
if ($_SERVER['REMOTE_ADDR'] == trim($ips[$i])) {
@ -22,34 +32,29 @@ if (get_cookie('ck_po_id') != $po['po_id']) {
break;
}
}
// 투표했던 회원아이디들 중에서 찾아본다
$search_mb_id = false;
if ($is_member) {
$ids = explode(',', trim($po['mb_ids']));
for ($i=0; $i<count($ids); $i++) {
if ($member['mb_id'] == trim($ids[$i])) {
$search_mb_id = true;
break;
}
}
}
// 없다면 선택한 투표항목을 1증가 시키고 ip, id를 저장
if (!($search_ip || $search_mb_id)) {
$po_ips = $po['po_ips'] . $_SERVER['REMOTE_ADDR'].",";
$mb_ids = $po['mb_ids'];
if ($member['mb_id'])
$mb_ids .= $member['mb_id'].',';
sql_query(" update {$g4['poll_table']} set po_cnt{$gb_poll} = po_cnt{$gb_poll} + 1, po_ips = '{$po_ips}', mb_ids = '{$mb_ids}' where po_id = '{$po_id}' ");
}
if (!$search_mb_id)
insert_point($member['mb_id'], $po['po_point'], $po['po_id'] . '. ' . cut_str($po['po_subject'],20) . ' 투표 참여 ', '{@poll}', $po['po_id'], '투표');
}
set_cookie('ck_po_id', $po['po_id'], 86400 * 15); // 투표 쿠키 보름간 저장
$result_url = G4_BBS_URL."/poll_result.php?po_id=$po_id&skin_dir={$_POST['skin_dir']}";
// 없다면 선택한 투표항목을 1증가 시키고 ip, id를 저장
if (!($search_ip || $search_mb_id)) {
$po_ips = $po['po_ips'] . $_SERVER['REMOTE_ADDR'].",";
$mb_ids = $po['mb_ids'];
if ($is_member) { // 회원일 때는 id만 추가
$mb_ids .= $member['mb_id'].',';
$sql = " update {$g4['poll_table']} set po_cnt{$gb_poll} = po_cnt{$gb_poll} + 1, mb_ids = '$mb_ids' where po_id = '$po_id' ";
} else {
$sql = " update {$g4['poll_table']} set po_cnt{$gb_poll} = po_cnt{$gb_poll} + 1, po_ips = '$po_ips' where po_id = '$po_id' ";
}
sql_query($sql);
} else {
alert($po['po_subject'].'에 이미 참여하셨습니다.', $result_url);
}
if (!$search_mb_id)
insert_point($member['mb_id'], $po['po_point'], $po['po_id'] . '. ' . cut_str($po['po_subject'],20) . ' 투표 참여 ', '@poll', $po['po_id'], '투표');
//goto_url($g4['bbs_url'].'/poll_result.php?po_id='.$po_id.'&amp;skin_dir='.$skin_dir);
goto_url(G4_BBS_URL."/poll_result.php?po_id=$po_id&skin_dir={$_POST['skin_dir']}");
goto_url($result_url);
?>

View File

@ -23,12 +23,15 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
<p style="margin:20px 0 0;padding:30px 30px 50px;min-height:200px;height:auto !important;height:200px;border-bottom:1px solid #eee">
<b><?=$mb_name?></b> 님의 회원가입을 진심으로 축하합니다.<br>
회원님의 성원에 보답하고자 더욱 더 열심히 하겠습니다.<br>
<? if ($config['cf_use_email_certify']) { ?>아래의 <strong>메일인증</strong>을 클릭하시면 회원가입이 완료됩니다.<br><? } ?>
감사합니다.
</p>
<? if ($config['cf_use_email_certify']) { ?>
<p>아래의 주소를 클릭하시면 회원가입이 완료됩니다.<br><a href="<?=$certify_href?>"><?=$certify_href?></a></p>
<a href="<?=$certify_href?>" target="_blank" style="display:block;padding:30px 0;background:#484848;color:#fff;text-decoration:none;text-align:center">메일인증</a>
<? } else { ?>
<a href="<?=G4_URL?>" target="_blank" style="display:block;padding:30px 0;background:#484848;color:#fff;text-decoration:none;text-align:center">사이트바로가기</a>
<? } ?>
<a href="<?=$link_url?>" style="display:block;padding:30px 0;background:#484848;color:#fff;text-decoration:none;text-align:center">사이트에서 게시물 확인하기</a>
</div>
</div>

View File

@ -24,12 +24,12 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
<b><?=$mb_name?></b> 님의 E-mail 주소가 변경되었습니다.<br><br>
아래의 주소를 클릭하시면 인증이 완료됩니다.<br>
<a href="<?=$certify_href?>"><b><?=$certify_href?></b></a><br><br>
<a href="<?=$certify_href?>" target="_blank"><b><?=$certify_href?></b></a><br><br>
회원님의 성원에 보답하고자 더욱 더 열심히 하겠습니다.<br>
감사합니다.
</p>
<a href="<?=G4_BBS_URL?>/login.php" style="display:block;padding:30px 0;background:#484848;color:#fff;text-decoration:none;text-align:center"><?=$config['cf_title']?> 로그인</a>
<a href="<?=G4_BBS_URL?>/login.php" target="_blank" style="display:block;padding:30px 0;background:#484848;color:#fff;text-decoration:none;text-align:center"><?=$config['cf_title']?> 로그인</a>
</div>
</div>

View File

@ -338,6 +338,8 @@ $upload_max_filesize = number_format($board['bo_upload_size']) . ' 바이트';
$width = $board['bo_table_width'];
if ($width <= 100)
$width .= '%';
else
$width .= 'px';
$captcha_html = '';
$captcha_js = '';

View File

@ -102,7 +102,7 @@ if (file_exists($dbconfig_file)) {
<html lang="ko">
<head>
<meta charset="utf-8">
<title>오류! 그누보드4S 설치하기</title>
<title>오류! 그누보드4s 설치하기</title>
<style>
body {background:#f7f7f2}
h1 {margin:50px auto 30px;width:540px;color:#ff3061;font-size:1.4em}
@ -119,7 +119,7 @@ div a {display:block;margin:50px auto 10px;width:170px;text-align:center}
<li><strong><?=G4_DATA_DIR.'/'.G4_DBCONFIG_FILE?></strong></li>
</ul>
<p>프로그램 설치 후 실행하시기 바랍니다.</p>
<a href="./install/">그누보드4S 설치하기</a>
<a href="./install/">그누보드4s 설치하기</a>
</div>
</body>
</html>

View File

@ -41,10 +41,13 @@ define('G4_EXTEND_DIR', 'extend');
define('G4_IMG_DIR', 'img');
define('G4_JS_DIR', 'js');
define('G4_LIB_DIR', 'lib');
define('G4_PLUGIN_DIR', 'plugin');
define('G4_SKIN_DIR', 'skin');
define('G4_GCAPTCHA_DIR', 'gcaptcha');
define('G4_CKEDITOR_DIR', 'ckeditor');
define('G4_MOBILE_DIR', 'mobile');
define('G4_KCP_DIR', 'kcp');
define('G4_OKNAME_DIR', 'okname');
// URL 은 브라우저상에서의 경로 (도메인으로 부터의)
if (G4_DOMAIN) {
@ -69,8 +72,11 @@ define('G4_DATA_URL', G4_URL.'/'.G4_DATA_DIR);
define('G4_IMG_URL', G4_URL.'/'.G4_IMG_DIR);
define('G4_JS_URL', G4_URL.'/'.G4_JS_DIR);
define('G4_SKIN_URL', G4_URL.'/'.G4_SKIN_DIR);
define('G4_GCAPTCHA_URL', G4_BBS_URL.'/'.G4_GCAPTCHA_DIR);
define('G4_CKEDITOR_URL', G4_BBS_URL.'/'.G4_CKEDITOR_DIR); // CKEDITOR 의 라이브러리 경로
define('G4_PLUGIN_URL', G4_URL.'/'.G4_PLUGIN_DIR);
define('G4_GCAPTCHA_URL', G4_PLUGIN_URL.'/'.G4_GCAPTCHA_DIR);
define('G4_CKEDITOR_URL', G4_PLUGIN_URL.'/'.G4_CKEDITOR_DIR); // CKEDITOR 의 라이브러리 경로
define('G4_KCP_URL', G4_PLUGIN_URL.'/'.G4_KCP_DIR);
define('G4_OKNAME_URL', G4_PLUGIN_URL.'/'.G4_OKNAME_DIR);
define('G4_MOBILE_URL', G4_URL.'/'.G4_MOBILE_DIR);
// PATH 는 서버상에서의 절대경로
@ -79,9 +85,12 @@ define('G4_BBS_PATH', G4_PATH.'/'.G4_BBS_DIR);
define('G4_DATA_PATH', G4_PATH.'/'.G4_DATA_DIR);
define('G4_EXTEND_PATH', G4_PATH.'/'.G4_EXTEND_DIR);
define('G4_LIB_PATH', G4_PATH.'/'.G4_LIB_DIR);
define('G4_PLUGIN_PATH', G4_PATH.'/'.G4_PLUGIN_DIR);
define('G4_SKIN_PATH', G4_PATH.'/'.G4_SKIN_DIR);
define('G4_GCAPTCHA_PATH', G4_BBS_PATH.'/'.G4_GCAPTCHA_DIR);
define('G4_CKEDITOR_PATH', G4_BBS_PATH.'/'.G4_CKEDITOR_DIR);
define('G4_GCAPTCHA_PATH', G4_PLUGIN_PATH.'/'.G4_GCAPTCHA_DIR);
define('G4_CKEDITOR_PATH', G4_PLUGIN_PATH.'/'.G4_CKEDITOR_DIR);
define('G4_KCP_PATH', G4_PLUGIN_PATH.'/'.G4_KCP_DIR);
define('G4_OKNAME_PATH', G4_PLUGIN_PATH.'/'.G4_OKNAME_DIR);
define('G4_MOBILE_PATH', G4_PATH.'/'.G4_MOBILE_DIR);
//==============================================================================
@ -95,7 +104,7 @@ define('G4_USE_CACHE', true); // 최신글등에 cache 기능 사용 여부
// 6시간이 빠른 경우 time() + (3600 * 6);
// 6시간이 느린 경우 time() - (3600 * 6);
define('G4_SERVER_TIME', time());
define('G4_TIME_YMDHIS', date("Y-m-d H:i:s", G4_SERVER_TIME));
define('G4_TIME_YMDHIS', date('Y-m-d H:i:s', G4_SERVER_TIME));
define('G4_TIME_YMD', substr(G4_TIME_YMDHIS, 0, 10));
define('G4_TIME_HIS', substr(G4_TIME_YMDHIS, 11, 8));
@ -119,4 +128,4 @@ define('G4_MOBILE_AGENT', 'phone|samsung|lgtel|mobile|skt|nokia|blackberry|andro
// 필드를 추가하면 이 숫자를 필드수에 맞게 늘려주십시오.
//$g4['link_count'] = 2;
define('G4_LINK_COUNT', 2);
?>
?>

View File

@ -71,7 +71,7 @@ h2 {font-size:1.2em}
#gnb_ul:after {display:block;visibility:hidden;clear:both;content:""}
.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 {display:block;float:left;width:80px;height:35px;color:#e0e0e0;font-weight:bold;line-height:2.95em;text-decoration:none}
.gnb_1depth a:focus,
.gnb_1depth a:hover {text-decoration:none}
.gnb_sub_ul {float:left;width:auto}
@ -267,11 +267,9 @@ td {padding:8px 5px 6px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9
.td_mbid,
.td_name,
.td_mbname {width:100px;text-align:left !important}
.td_mbid_input {width:100px;text-align:center}
.td_time {width:150px;text-align:center}
.td_boolean {width:50px;text-align:center}
.td_pt {text-align:right !important}
.td_shop_category {text-align:right}
.txt_true {color:#e8180c}
.txt_false {color:#ccc}
@ -288,6 +286,7 @@ td {padding:8px 5px 6px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9
#session_del p span,
#cache_del p span {color:#ff3061}
/* 쇼핑몰 설정 */
#frm_payment textarea {height:50px}
@ -318,6 +317,7 @@ td {padding:8px 5px 6px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9
/* 분류관리 목록 */
.cate_list_lbl {display:inline-block;padding-left:15px;background:url('../adm/shop_admin/img/icon_reply.gif') 0 2px no-repeat}
/* 새창 기본 스타일 */
.new_win {}
.new_win h1 {margin-bottom:20px;padding:0 20px;height:60px;border-top:2px solid #484848;border-bottom:1px solid #e9e9e9;background:#fff;font-size:1.2em;line-height:5em}

View File

@ -110,7 +110,7 @@ a:active {color:#000;text-decoration:underline}
#wrapper:after {display:block;visibility:hidden;clear:both;content:""}
#wrapper_title {margin-bottom:20px;font-size:1.2em}
#side_nb {float:right;width:209px;border:1px solid #cfded8;background:#fff}
#wrapper #aside {float:right;width:209px;border:1px solid #cfded8;background:#fff}
#container {z-index:4;position:relative;float:left;padding:25px 15px 15px;width:728px;min-height:500px;height:auto !important;height:500px;border:1px solid #cfded8;background:#fff;zoom:1}
#container:after {display:block;visibility:hidden;clear:both;content:""}
@ -145,7 +145,9 @@ a:active {color:#000;text-decoration:underline}
.btn_confirm {text-align:center} /* 서식단계 진행 */
.btn_submit {padding:0 10px;height:24px;border:0;background:#333;color:#fff;letter-spacing:-0.1em;vertical-align:top;cursor:pointer}
button.btn_submit {height:22px !important;font-size:1em}
fieldset .btn_submit {height:22px;font-size:1em}
.btn_cancel {display:inline-block;padding:0 10px;height:22px;border:1px solid #ccc;background:#fafafa;line-height:2em}
button.btn_cancel {display:inline-block;padding:0 10px;height:24px;border:1px solid #ccc;background:#fafafa;line-height:2em}
.btn_cancel:focus,
.btn_cancel:hover {text-decoration:none !important}
.btn_frmline {display:inline-block;padding:0 7px 0 5px;height:22px;border:0;background:#333;color:#fff !important;letter-spacing:-0.1em;text-decoration:none;vertical-align:top;line-height:2em} /* 우편번호검색버튼 등 */

View File

@ -32,8 +32,9 @@ pre {overflow-x:scroll;font-size:1.1em}
.img_fix {width:100%;height:auto}
/* 캡챠 자동등록(입력)방지 기본 */
#captcha audio {display:block;margin:0 0 0.5em}
#captcha input[type=text] {position:relative;top:0;left:-4px}
#captcha img {height:1.8em;border:1px solid #cfded8;border-right:0}
#captcha_mp3 img {padding:0.2em;height:22px !important;border:1px solid #cfded8;border-left:0;background:#494949}
/* 상단 레이아웃 */
#hd {background:#fff}
@ -93,7 +94,7 @@ pre {overflow-x:scroll;font-size:1.1em}
#ft_copy {background:#232323}
#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}
#ft_copy a {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}
@ -108,7 +109,7 @@ pre {overflow-x:scroll;font-size:1.1em}
.btn_confirm {text-align:center} /* 서식단계 진행 */
.btn_submit {padding:0 1em;height:2.6em;border:0;background:#333;color:#fff;letter-spacing:-0.1em;vertical-align:top;cursor:pointer;-webkit-appearance:none}
.btn_cancel {display:inline-block;padding:0 1em;height:2.5em;border:1px solid #ccc;background:#fafafa;color:#000;font-size:1em;text-decoration:none;line-height:2.5em}
.btn_frmline {display:inline-block;padding:0 7px 0 0.3em;height:22px;border:0;background:#333;color:#fff !important;letter-spacing:-0.1em;text-decoration:none;vertical-align:top;line-height:1.4em} /* 우편번호검색버튼 등 */
.btn_frmline {display:inline-block;padding:0 0.3em;height:1.9em;border:0;background:#333;color:#fff !important;letter-spacing:-0.1em;text-decoration:none;vertical-align:top;line-height:1.9em} /* 우편번호검색버튼 등 */
.btn_win {clear:both;margin-bottom:1.5em;text-align:center} /* 새창용 */
.btn_win a {display:inline-block;padding:0 1em;height:2.5em;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none;vertical-align:middle;line-height:2.5em;cursor:pointer}
/* 게시판용 버튼 */

View File

@ -155,10 +155,10 @@ if ($config['cf_include_head']) {
<hr>
<div id="wrapper">
<div id="side_nb">
<?=(G4_IS_MOBILE?outlogin('basic'):outlogin('basic')); // 외부 로그인 ?>
<?=(G4_IS_MOBILE?poll('basic'):poll('basic')); // 설문조사 ?>
</div>
<aside id="aside">
<?=outlogin('basic'); // 외부 로그인 ?>
<?=poll('basic'); // 설문조사 ?>
</aside>
<div id="container">
<? if ((!$bo_table || $w == 's' ) && !defined("_INDEX_")) {?><h1 id="wrapper_title"><?=$g4['title']?></h1><?}?>
<div id="text_size">

View File

@ -10,7 +10,7 @@ if (!isset($g4['title'])) {
}
else {
$g4_head_title = $g4['title']; // 상태바에 표시될 제목
$g4_head_title .= " : ".$config['cf_title'];
$g4_head_title .= " | ".$config['cf_title'];
}
// 현재 접속자
@ -32,31 +32,34 @@ header("Pragma: no-cache"); // HTTP/1.0
<html lang="ko">
<head>
<meta charset="utf-8">
<title><?=$g4_head_title?></title>
<? 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="imagetoolbar" content="no">
<!-- <meta http-equiv="X-UA-Compatible" content="IE=Edge" /> -->
<title><?=$g4_head_title?></title>
<? if (defined('G4_IS_ADMIN')) { ?>
<link rel="stylesheet" href="<?=G4_CSS_URL?>/admin.css?=<?=date("md")?>">
<? } else { ?>
<link rel="stylesheet" href="<?=G4_CSS_URL?>/<?=(G4_IS_MOBILE?'mobile':'default')?>.css?=<?=date("md")?>">
<?}?>
<? // 스킨의 style sheet 불러옴
if(isset($board_skin_path))
echo get_skin_stylesheet($board_skin_path);
if(isset($member_skin_path))
echo get_skin_stylesheet($member_skin_path);
if(isset($new_skin_path))
echo get_skin_stylesheet($new_skin_path);
if(isset($search_skin_path))
echo get_skin_stylesheet($search_skin_path);
if(isset($connect_skin_path))
echo get_skin_stylesheet($connect_skin_path);
if(isset($poll_skin_path))
echo get_skin_stylesheet($poll_skin_path);
if (!defined('G4_IS_ADMIN')) {
if(isset($board_skin_path))
echo get_skin_stylesheet($board_skin_path);
if(isset($member_skin_path))
echo get_skin_stylesheet($member_skin_path);
if(isset($new_skin_path))
echo get_skin_stylesheet($new_skin_path);
if(isset($search_skin_path))
echo get_skin_stylesheet($search_skin_path);
if(isset($connect_skin_path))
echo get_skin_stylesheet($connect_skin_path);
if(isset($poll_skin_path))
echo get_skin_stylesheet($poll_skin_path);
}
?>
<!--[if lte IE 8]>
<script src="<?=G4_JS_URL?>/html5.js"></script>
@ -65,7 +68,6 @@ if(isset($poll_skin_path))
// 자바스크립트에서 사용하는 전역변수 선언
var g4_url = "<?=G4_URL?>";
var g4_bbs_url = "<?=G4_BBS_URL?>";
var g4_img_url = "<?=G4_IMG_URL?>";
var g4_is_member = "<?=isset($is_member)?$is_member:'';?>";
var g4_is_admin = "<?=isset($is_admin)?$is_admin:'';?>";
var g4_is_mobile = "<?=G4_IS_MOBILE?>";

View File

@ -87,7 +87,17 @@ function goto_url($url)
{
$url = str_replace("&amp;", "&", $url);
//echo "<script> location.replace('$url'); </script>";
@header("Location:$url");
if (!headers_sent())
header('Location: '.$url);
else {
echo '<script>';
echo 'location.replace("'.$url.'");';
echo '</script>';
echo '<noscript>';
echo '<meta http-equiv="refresh" content="0;url='.$url.'" />';
echo '</noscript>';
}
exit;
}
@ -510,13 +520,13 @@ function conv_content($content, $html)
$content .= "</table>";
}
$content = preg_replace_callback("/<([^>]+)>/s", 'bad130128', $content);
$content = preg_replace_callback("/<([^>]+)>/s", 'bad130128', $content);
$content = preg_replace($source, $target, $content);
// XSS (Cross Site Script) 막기
// 완벽한 XSS 방지는 없다.
// 이런 경우를 방지함 <IMG STYLE="xss:expr/*XSS*/ession(alert('XSS'))">
//$content = preg_replace("#\/\*.*\*\/#iU", "", $content);
// 위의 정규식이 아래와 같은 내용을 통과시키므로 not greedy(비탐욕수량자?) 옵션을 제거함. ignore case 옵션도 필요 없으므로 제거
@ -560,9 +570,9 @@ function conv_content($content, $html)
$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 = preg_replace("/(?<=style)(\s*=\s*[\"\']?xss\:)/i", '="__XSS__', $content);
$content = bad_tag_convert($content);
}
else // text 이면
@ -751,6 +761,7 @@ function subject_sort_link($col, $query_string='', $flag='asc')
}
$arr_query = array();
$arr_query[] = $query_string;
$arr_query[] = $q1;
$arr_query[] = $q2;
$arr_query[] = 'sfl='.$sfl;

View File

@ -22,7 +22,6 @@ function get_list_thumbnail($bo_table, $wr_id, $thumb_width, $thumb_height, $is_
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;
@ -34,11 +33,13 @@ function get_list_thumbnail($bo_table, $wr_id, $thumb_width, $thumb_height, $is_
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;
$p = parse_url($matchs[1][$i]);
if(strpos($p['path'], "/data/") != 0)
$data_path = preg_replace("/^\/.*\/data/", "/data", $p['path']);
else
$data_path = $p['path'];
$srcfile = G4_PATH.str_replace(G4_URL, "", $matchs[1][$i]);
$srcfile = G4_PATH.$data_path;
if(preg_match("/\.({$config['cf_image_extension']})$/i", $srcfile) && is_file($srcfile)) {
$size = @getimagesize($srcfile);
@ -63,9 +64,9 @@ function get_list_thumbnail($bo_table, $wr_id, $thumb_width, $thumb_height, $is_
if($tname) {
if($edt) {
$src = str_replace($filename, $tname, $src_url);
$src = G4_URL.str_replace($filename, $tname, $data_path);
} else {
$src = $src_url.'/'.$tname;
$src = G4_DATA_URL.'/file/'.$bo_table.'/'.$tname;
}
} else {
return false;
@ -104,11 +105,14 @@ function get_view_thumbnail($contents)
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 구함
$srcfile = G4_PATH.str_replace(G4_URL, "", $matchs[1][$i]);
$p = parse_url($matchs[1][$i]);
if(strpos($p['path'], "/data/") != 0)
$data_path = preg_replace("/^\/.*\/data/", "/data", $p['path']);
else
$data_path = $p['path'];
$srcfile = G4_PATH.$data_path;
if(is_file($srcfile)) {
// 썸네일 높이
@ -137,19 +141,9 @@ function get_view_thumbnail($contents)
$thumb_file = $filename;
$img_tag = $matchs[0][$i];
$thumb_tag = str_replace($filename, $thumb_file, $img_tag);
// img 태그에 width 값이 있을 경우 width 값 바꿔줌
preg_match("/width=[\'\"]?([0-9]+)[\'\"]?/", $img_tag, $mw);
if(!empty($mw[1])) {
$thumb_tag = str_replace($mw[0], str_replace($mw[1], $thumb_width, $mw[0]), $thumb_tag);
}
// img 태그에 height 값이 있을 경우 height 값 바꿔줌
preg_match("/height=[\'\"]?([0-9]+)[\'\"]?/", $img_tag, $mh);
if(!empty($mh[1])) {
$thumb_tag = str_replace($mh[0], str_replace($mh[1], $thumb_height, $mh[0]), $thumb_tag);
}
preg_match("/alt=[\"\']?([^\"\']*)[\"\']?/", $img_tag, $malt);
$alt = get_text($malt[1]);
$thumb_tag = '<img src="'.G4_URL.str_replace($filename, $thumb_file, $data_path).'" alt="'.$alt.'"/>';
// $img_tag에 editor 경로가 있으면 원본보기 링크 추가
if(strpos($matchs[1][$i], 'data/editor') && preg_match("/\.({$config['cf_image_extension']})$/i", $filename)) {

View File

@ -94,9 +94,9 @@ include_once(G4_LIB_PATH.'/popular.lib.php');
<hr>
<div id="wrapper">
<div id="side_nb">
<?=(G4_IS_MOBILE?outlogin('basic'):outlogin('basic')); // 외부 로그인 ?>
</div>
<aside id="aside">
<?=outlogin('basic'); // 외부 로그인 ?>
</aside>
<div id="container">
<? if ((!$bo_table || $w == 's' ) && !defined("_INDEX_")) {?><h1 id="wrapper_title"><?=$g4['title']?></h1><?}?>
<div id="text_size">

View File

@ -12,7 +12,7 @@ if ($is_nogood) $colspan++;
<? if (!$wr_id) {?><h1 id="bo_list_title"><?=$g4['title']?></h1><?}?>
<!-- 게시판 목록 시작 -->
<div id="bo_list<? if ($is_admin) echo "_admin";?>" style="width:<?=$width;?>">
<div id="bo_list<? if ($is_admin) echo "_admin";?>">
<? if ($is_category) { ?>
<form name="fcategory" id="fcategory" method="get">

View File

@ -60,7 +60,7 @@ echo $option_hidden;
<? if ($is_password) { ?>
<tr>
<th scope="row"><label for="wr_password">패스워드<strong class="sound_only">필수</strong></label></th>
<td><input type="password" name="wr_password" id="wr_password" class="frm_input" maxlength="20" <?=$password_required?>></td>
<td><input type="password" name="wr_password" id="wr_password" <?=$password_required?> class="frm_input <?=$password_required?>" maxlength="20"></td>
</tr>
<? } ?>
@ -142,6 +142,9 @@ echo $option_hidden;
</table>
<div class="btn_confirm">
<p>
작성하신 내용을 제출하시려면 <strong>글쓰기</strong> 버튼을, 작성을 취소하고 목록으로 돌아가시려면 <strong>취소</strong> 링크를 누르세요.
</p>
<input type="submit" value="글쓰기" id="btn_submit" class="btn_submit" accesskey="s">
<a href="./board.php?bo_table=<?=$bo_table?>" class="btn_cancel">취소</a>
</div>

View File

@ -20,7 +20,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
</div>
<!-- 게시판 목록 시작 -->
<div id="bo_img" style="width:<?=$width;?>">
<div id="bo_img">
<? if ($is_category) { ?>
<form name="fcategory" id="fcategory" method="get">

View File

@ -60,7 +60,7 @@ echo $option_hidden;
<? if ($is_password) { ?>
<tr>
<th scope="row"><label for="wr_password">패스워드<strong class="sound_only">필수</strong></label></th>
<td><input type="password" name="wr_password" id="wr_password" class="frm_input" maxlength="20" <?=$password_required?>></td>
<td><input type="password" name="wr_password" id="wr_password" <?=$password_required?> class="frm_input <?=$password_required?>" maxlength="20"></td>
</tr>
<? } ?>
@ -142,6 +142,9 @@ echo $option_hidden;
</table>
<div class="btn_confirm">
<p>
작성하신 내용을 제출하시려면 <strong>글쓰기</strong> 버튼을, 작성을 취소하고 목록으로 돌아가시려면 <strong>취소</strong> 링크를 누르세요.
</p>
<input type="submit" value="글쓰기" id="btn_submit" accesskey="s" class="btn_submit">
<a href="./board.php?bo_table=<?=$bo_table?>" class="btn_cancel">취소</a>
</div>

View File

@ -58,8 +58,11 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
</table>
<div class="btn_win">
<p>
작성하신 메일을 발송하시려면 <strong>메일발송</strong> 버튼을, 작성을 취소하고 창을 닫으시려면 <strong>창닫기</strong> 버튼을 누르세요.
</p>
<input type="submit" value="메일발송" id="btn_submit" class="btn_submit">
<a href="javascript:window.close();">창닫기</a>
<button type="button" class="btn_cancel" onclick="javascript:window.close();">창닫기</button>
</div>
</form>

View File

@ -23,7 +23,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
아직 회원이 아니시라면 회원으로 가입 후 이용해 주십시오.
</p>
<div>
<a href="<?=$g4['bbs_url']?>/password_lost.php" target="win_password_lost" id="login_password_lost" class="btn02">아이디 패스워드 찾기</a>
<a href="<?=G4_BBS_URL?>/password_lost.php" target="win_password_lost" id="login_password_lost" class="btn02">아이디 패스워드 찾기</a>
<a href="./register.php" class="btn01">회원 가입</a>
</div>
</section>

View File

@ -11,8 +11,8 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
<li><a href="./memo_form.php">쪽지쓰기</a></li>
</ul>
<form name="fmemoform" action="./memo_form_update.php" onsubmit="return fmemoform_submit(this);" method="post" autocomplete="off">
<div class="cbox">
<form name="fmemoform" action="./memo_form_update.php" onsubmit="return fmemoform_submit(this);" method="post" autocomplete="off">
<table class="frm_tbl">
<caption>쪽지쓰기</caption>
<tbody>
@ -38,8 +38,11 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
</div>
<div class="btn_win">
<p>
작성하신 쪽지를 발송하시려면 <strong>보내기</strong> 버튼을, 작성을 취소하고 창을 닫으시려면 <strong>창닫기</strong> 버튼을 누르세요.
</p>
<input type="submit" value="보내기" id="btn_submit" class="btn_submit">
<a href="javascript:;" onclick="window.close();">창닫기</a>
<button type="button" class="btn_cancel" onclick="javascript:window.close();">창닫기</button>
</div>
</form>
</div>

View File

@ -38,7 +38,7 @@ else $g4['title'] = $g4['title'];
</form>
<div class="btn_confirm">
<a href="<?=$_SERVER['HTTP_REFERER']?>">돌아가기</a>
<a href="<?=$return_url?>">돌아가기</a>
</div>
</div>

View File

@ -62,7 +62,7 @@ $content .= "<p style=\"margin:0;padding:30px 30px 30px;border-bottom:1px solid
$content .= "<span style=\"display:inline-block;width:100px\">회원아이디</span> ".$mb['mb_id']."<br>";
$content .= "<span style=\"display:inline-block;width:100px\">변경될 패스워드</span> <strong style=\"color:#ff3061\">".$change_password."</strong>";
$content .= "</p>";
$content .= "<a href=\"".$href."/\" style=\"display:block;padding:30px 0;background:#484848;color:#fff;text-decoration:none;text-align:center\">패스워드 변경</a>";
$content .= "<a href=\"".$href."\" target=\"_blank\" style=\"display:block;padding:30px 0;background:#484848;color:#fff;text-decoration:none;text-align:center\">패스워드 변경</a>";
$content .= "</div>";
$content .= "</div>";

View File

@ -94,21 +94,25 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
</tr>
<? } ?>
<? if ($config['cf_use_addr']) {
$zip_href = G4_BBS_URL.'/zip.php?frm_name=fregisterform&amp;frm_zip1=mb_zip1&amp;frm_zip2=mb_zip2&amp;frm_addr1=mb_addr1&amp;frm_addr2=mb_addr2';
?>
<? if ($config['cf_use_addr']) {?>
<tr>
<th scope="row">
주소
<? 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":"";?>" 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" title="우편번호 뒷자리" class="frm_input <?=$config['cf_req_addr']?"required":"";?>" maxlength="3" <?=$config['cf_req_addr']?"required":"";?> >
<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":"";?>" <?=$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":"";?>" <?=$config['cf_req_addr']?"required":"";?>>
<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">
<span id="reg_win_zip" style="display:block"></span>
<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">
<script>
// 우편번호 자바스크립트 비활성화 대응을 위한 코드
$('<a href="<?=G4_BBS_URL?>/zip.php?frm_name=fregisterform&amp;frm_zip1=mb_zip1&amp;frm_zip2=mb_zip2&amp;frm_addr1=mb_addr1&amp;frm_addr2=mb_addr2" id="reg_zip_find" class="btn_frmline win_zip_find" target="_blank">우편번호 검색</a><br>').appendTo('#reg_win_zip');
$("#reg_win_zip").css("display", "inline");
$("#reg_mb_zip1, #reg_mb_zip2, #reg_mb_addr1").attr('readonly', 'readonly');
</script>
</td>
</tr>
<? } ?>
@ -204,6 +208,9 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
</table>
<div class="btn_confirm">
<p>
작성하신 내용을 제출하시려면 <strong><?=$w==''?'회원가입':'정보수정';?></strong> 버튼을, 작성을 취소하고 목록으로 돌아가시려면 <strong>취소</strong> 링크를 누르세요.
</p>
<input type="submit" value="<?=$w==''?'회원가입':'정보수정';?>" class="btn_submit" accesskey="s">
<a href="<?=$g4['path']?>/" class="btn_cancel">취소</a>
</div>

View File

@ -23,7 +23,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
아직 회원이 아니시라면 회원으로 가입 후 이용해 주십시오.
</p>
<div>
<a href="<?=$g4['bbs_url']?>/password_lost.php" target="win_password_lost" id="login_password_lost" class="btn02">아이디 패스워드 찾기</a>
<a href="<?=G4_BBS_URL?>/password_lost.php" target="win_password_lost" id="login_password_lost" class="btn02">아이디 패스워드 찾기</a>
<a href="./register.php" class="btn01">회원 가입</a>
</div>
</section>

View File

@ -38,7 +38,7 @@ else $g4['title'] = $g4['title'];
</form>
<div class="btn_confirm">
<a href="<?=$_SERVER['HTTP_REFERER']?>">돌아가기</a>
<a href="<?=$return_url?>">돌아가기</a>
</div>
</div>

View File

@ -108,12 +108,18 @@ 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_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" 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":"";?>>
<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_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">
<span id="reg_win_zip" style="display:block"></span>
<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">
<script>
// 우편번호 자바스크립트 비활성화 대응을 위한 코드
$('<a href="<?=G4_BBS_URL?>/zip.php?frm_name=fregisterform&amp;frm_zip1=mb_zip1&amp;frm_zip2=mb_zip2&amp;frm_addr1=mb_addr1&amp;frm_addr2=mb_addr2" id="reg_zip_find" class="btn_frmline win_zip_find" target="_blank">우편번호 검색</a><br>').appendTo('#reg_win_zip');
$("#reg_win_zip").css("display", "inline");
$("#reg_mb_zip1, #reg_mb_zip2, #reg_mb_addr1").attr('readonly', 'readonly');
</script>
</td>
</tr>
<? } ?>

View File

@ -1,5 +1,28 @@
<?
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 자신만의 코드를 넣어주세요.
// 휴대폰번호 포맷(010-0000-0000) 변경해서 기록
// $reg_mb_hp 는 rigister_form_update.head.skin.php 파일
$sql = " update {$g4['member_table']}
set mb_hp = '$reg_mb_hp'
where mb_id = '$mb_id' ";
sql_query($sql);
/* =========================================================================== */
/* = 휴대폰인증 및 성인인증 = */
/* =========================================================================== */
if($_POST['kcpcert_no']) {
$mb_adult = 'N';
if(get_session('ss_adult_check') == 'Y')
$mb_adult = 'Y';
$sql = " update {$g4['member_table']}
set mb_hp_certify = '{$_POST['kcpcert_time']}',
mb_adult = '$mb_adult'
where mb_id = '$mb_id' ";
sql_query($sql);
}
/* =========================================================================== */
?>

View File

@ -22,6 +22,7 @@
/* 아이디/패스워드 찾기 */
#find_info_fs {margin:0 auto 1em;padding:1em;border-bottom:1px solid #eee}
#find_info_fs #mb_email {width:100%}
#find_info_fs .btn_submit {height:1.85em !important}
#find_info #captcha {margin:0 0 1em;padding:0 1em 1em}
#find_info #captcha input {margin-left:0.3em}

View File

@ -2,7 +2,7 @@
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
?>
<form name="fpoll" action="<?=G4_BBS_URL?>/poll_update.php" onsubmit="return fpoll_submit(this);" target="win_poll" method="post">
<form name="fpoll" action="<?=G4_BBS_URL?>/poll_update.php" onsubmit="return fpoll_submit(this);" method="post">
<input type="hidden" name="po_id" value="<?=$po_id?>">
<input type="hidden" name="skin_dir" value="<?=$skin_dir?>">
<section id="poll">
@ -44,7 +44,9 @@ function fpoll_submit(f)
return false;
}
win_poll(f.action);
var new_win = window.open("about:blank", "win_poll", "width=616,height=500,scrollbars=yes,resizable=yes");
f.target = "win_poll";
return true;
}

View File

@ -13,7 +13,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
<?
$sql = " select * from {$g4['group_table']} where gr_show_menu = 1 order by gr_order ";
$result = sql_query($sql);
for ($gi=0; $row=sql_fetch_array($result); $gi++) { // gi 는 group index
for ($gi=0; $row=sql_fetch_array($result); $gi++) { // gi 는 group index
?>
<li><a href="<?=G4_BBS_URL?>/group.php?gr_id=<?=$row['gr_id']?>"><?=$row['gr_subject']?></a></li>
<?}?>
@ -23,7 +23,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
<hr>
<?=(G4_IS_MOBILE?poll('basic'):poll('basic')); // 설문조사 ?>
<?=poll('basic'); // 설문조사 ?>
<hr>

Some files were not shown because too many files have changed in this diff Show More