diff --git a/adm/admin.menu100.php b/adm/admin.menu100.php index dfc91e73b..d65cb8fbf 100644 --- a/adm/admin.menu100.php +++ b/adm/admin.menu100.php @@ -7,7 +7,8 @@ $menu['menu100'] = array ( //array('100400', '버전정보', G4_ADMIN_URL.'/version.php', 'cf_version'), array('100800', '세션파일 일괄삭제',G4_ADMIN_URL.'/session_file_delete.php', 'cf_session', 1), array('100900', '캐쉬파일 일괄삭제',G4_ADMIN_URL.'/cache_file_delete.php', 'cf_cache', 1), - array('100920', '썸네일파일 일괄삭제',G4_ADMIN_URL.'/thumbnail_file_delete.php', 'cf_cache', 1), + array('100910', '캡챠파일 일괄삭제',G4_ADMIN_URL.'/gcaptcha_file_delete.php', 'cf_captcha', 1), + array('100920', '썸네일파일 일괄삭제',G4_ADMIN_URL.'/thumbnail_file_delete.php', 'cf_thumbnail', 1), array('100500', 'phpinfo()', G4_ADMIN_URL.'/phpinfo.php', 'cf_phpinfo'), //array('100600', '업그레이드', G4_ADMIN_URL.'/upgrade.php', 'cf_upgrade'), //array('100700', '복구/최적화', G4_ADMIN_URL.'/repair.php', 'cf_repair'), diff --git a/adm/board_form.php b/adm/board_form.php index 4480738da..14e4f0ce2 100644 --- a/adm/board_form.php +++ b/adm/board_form.php @@ -46,9 +46,11 @@ if (!isset($board['bo_mobile_content_head'])) { } if (!isset($board['bo_use_cert'])) { - sql_query(" ALTER TABLE `{$g4['board_table']}` ADD `bo_use_cert` ENUM('','cert','adult') NOT NULL DEFAULT 'none' AFTER `bo_use_email` ", false); + sql_query(" ALTER TABLE `{$g4['board_table']}` ADD `bo_use_cert` ENUM('','cert','adult') NOT NULL DEFAULT '' AFTER `bo_use_email` ", false); } +sql_query(" ALTER TABLE `{$g4['board_table']}` CHANGE `bo_use_cert` `bo_use_cert` ENUM('','cert','adult') NOT NULL DEFAULT '' ", false); + $required = ""; $readonly = ""; if ($w == '') { diff --git a/adm/member_form.php b/adm/member_form.php index 0474d95dc..2ea7dad6b 100644 --- a/adm/member_form.php +++ b/adm/member_form.php @@ -83,10 +83,12 @@ if ($mb['mb_open']) { if(!isset($mb['mb_adult'])) { sql_query(" ALTER TABLE `{$g4['member_table']}` - ADD `mb_adult` ENUM('Y', 'N') NOT NULL DEFAULT 'N' AFTER `mb_birth`, - ADD `mb_hp_certify` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' AFTER `mb_lost_certify` ", FALSE); + ADD `mb_adult` ENUM('N', 'Y') NOT NULL DEFAULT 'N' AFTER `mb_birth`, + ADD `mb_hp_certify` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' AFTER `mb_lost_certify` ", false); } +sql_query(" ALTER TABLE `{$g4['member_table']}` CHANGE `mb_adult` `mb_adult` ENUM('N','Y') NOT NULL DEFAULT 'N' ", false); + if ($mb['mb_intercept_date']) $g4['title'] = "차단된 "; else $g4['title'] .= ""; $g4['title'] .= '회원 '.$html_title; diff --git a/bbs/ajax.mb_recommend.php b/bbs/ajax.mb_recommend.php new file mode 100644 index 000000000..99c42480e --- /dev/null +++ b/bbs/ajax.mb_recommend.php @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/bbs/register_form_update.php b/bbs/register_form_update.php index 297be4d4f..7cc1039f4 100644 --- a/bbs/register_form_update.php +++ b/bbs/register_form_update.php @@ -75,6 +75,8 @@ if ($w == '' || $w == 'u') { if ($w=='') { if ($msg = exist_mb_id($mb_id)) alert($msg); + if (!exist_mb_id($mb_recommend)) alert("추천인이 존재하지 않습니다."); + if (strtolower($mb_id) == strtolower($mb_recommend)) { alert('본인을 추천할 수 없습니다.'); } diff --git a/bbs/write_update.php b/bbs/write_update.php index 2f65e9a4b..914e7bfe9 100644 --- a/bbs/write_update.php +++ b/bbs/write_update.php @@ -8,7 +8,7 @@ $msg = array(); $wr_subject = ''; if (isset($_POST['wr_subject'])) { - $wr_subject = substr(escape_trim($_POST['wr_subject']),0,255); + $wr_subject = substr(trim($_POST['wr_subject']),0,255); } if ($wr_subject == '') { $msg[] = '제목을 입력하세요.'; @@ -16,7 +16,7 @@ if ($wr_subject == '') { $wr_content = ''; if (isset($_POST['wr_content'])) { - $wr_content = escape_trim($_POST['wr_content']); + $wr_content = substr(trim($_POST['wr_content']),0,65536); } if ($wr_content == '') { $msg[] = '내용을 입력하세요.'; @@ -24,12 +24,12 @@ if ($wr_content == '') { $wr_link1 = ''; if (isset($_POST['wr_link1'])) { - $wr_link1 = substr(escape_trim($_POST['wr_link1']),0,1000); + $wr_link1 = substr($_POST['wr_link1'],0,1000); } $wr_link2 = ''; if (isset($_POST['wr_link2'])) { - $wr_link2 = substr(escape_trim($_POST['wr_link2']),0,1000); + $wr_link2 = substr($_POST['wr_link2'],0,1000); } $msg = implode('
', $msg); diff --git a/common.php b/common.php index 37d8abf89..ce258eb7b 100644 --- a/common.php +++ b/common.php @@ -119,7 +119,7 @@ div a {display:block;margin:50px auto 10px;width:170px;text-align:center}
  • 프로그램 설치 후 실행하시기 바랍니다.

    - 그누보드4s 설치하기 + 그누보드4s 설치하기 diff --git a/css/default.css b/css/default.css index ad455d0e1..cdd76e26c 100644 --- a/css/default.css +++ b/css/default.css @@ -9,11 +9,7 @@ article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, header ul, nav ul, footer ul {margin:0;padding:0;list-style:none} label, input, select, img {vertical-align:middle} input {margin:0;padding:0;border-radius:0;font-family:"dotum"} -input[type=text], -input[type=password], -input[type=submit], -input[type=image] {-webkit-appearance:none} -button {border-radius:0;font-size:1em;-webkit-appearance:none} +button {border-radius:0;font-size:1em} 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} diff --git a/install/gnuboard4s.sql b/install/gnuboard4s.sql index 921665d7f..e0566f117 100644 --- a/install/gnuboard4s.sql +++ b/install/gnuboard4s.sql @@ -96,7 +96,7 @@ CREATE TABLE IF NOT EXISTS `g4s_board` ( `bo_notice` text NOT NULL, `bo_upload_count` tinyint(4) NOT NULL default '0', `bo_use_email` tinyint(4) NOT NULL default '0', - `bo_use_cert` enum('','cert','adult') NOT NULL DEFAULT 'none', + `bo_use_cert` enum('','cert','adult') NOT NULL DEFAULT '', `bo_sort_field` varchar(255) NOT NULL default '', `bo_1_subj` varchar(255) NOT NULL default '', `bo_2_subj` varchar(255) NOT NULL default '', @@ -411,7 +411,7 @@ CREATE TABLE IF NOT EXISTS `g4s_member` ( `mb_jumin` varchar(255) NOT NULL default '', `mb_sex` char(1) NOT NULL default '', `mb_birth` varchar(255) NOT NULL default '', - `mb_adult` enum('Y','N') NOT NULL default 'N', + `mb_adult` enum('N','Y') NOT NULL default 'N', `mb_tel` varchar(255) NOT NULL default '', `mb_hp` varchar(255) NOT NULL default '', `mb_zip1` char(3) NOT NULL default '', diff --git a/install/install_config.php b/install/install_config.php index 58f0ee7f3..5071eb801 100644 --- a/install/install_config.php +++ b/install/install_config.php @@ -10,7 +10,7 @@ $title = "그누보드4s 설치 3단계 중 2단계 설정"; include_once ('../config.php'); include_once ('./install.inc.php'); -if ($_POST['agree'] != '동의함') { +if (isset($_POST['agree']) && $_POST['agree'] != '동의함') { echo "
    라이센스(License) 내용에 동의하셔야 설치를 계속하실 수 있습니다.
    ".PHP_EOL; echo "
    뒤로가기
    ".PHP_EOL; exit; diff --git a/js/jquery.register_form.js b/js/jquery.register_form.js index ea6068020..223a58560 100644 --- a/js/jquery.register_form.js +++ b/js/jquery.register_form.js @@ -16,6 +16,25 @@ var reg_mb_id_check = function() { } +// 추천인 검사 +var reg_mb_recommend_check = function() { + var result = ""; + $.ajax({ + type: "POST", + url: g4_bbs_url+"/ajax.mb_recommend.php", + data: { + "reg_mb_recommend": encodeURIComponent($("#reg_mb_recommend").val()) + }, + cache: false, + async: false, + success: function(data) { + result = data; + } + }); + return result; +} + + var reg_mb_nick_check = function() { var result = ""; $.ajax({ diff --git a/lib/register.lib.php b/lib/register.lib.php index 7d5d0309d..eabe40c86 100644 --- a/lib/register.lib.php +++ b/lib/register.lib.php @@ -28,6 +28,10 @@ function count_mb_id($reg_mb_id) function exist_mb_id($reg_mb_id) { global $g4; + + $reg_mb_id = trim($reg_mb_id); + if ($reg_mb_id == "") return ""; + $sql = " select count(*) as cnt from `{$g4['member_table']}` where mb_id = '$reg_mb_id' "; $row = sql_fetch($sql); if ($row['cnt']) diff --git a/mobile/skin/latest/basic/latest.skin.php b/mobile/skin/latest/basic/latest.skin.php index ef2940f42..92d62c581 100644 --- a/mobile/skin/latest/basic/latest.skin.php +++ b/mobile/skin/latest/basic/latest.skin.php @@ -4,8 +4,8 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 -
    - +
    + - +
    diff --git a/mobile/skin/latest/basic/style.css b/mobile/skin/latest/basic/style.css index 3d54a5288..76fc5a6df 100644 --- a/mobile/skin/latest/basic/style.css +++ b/mobile/skin/latest/basic/style.css @@ -1,7 +1,7 @@ /* 최근게시물 스킨 (latest) */ -.lt {position:relative;margin:0 0 1em;padding:0 1em 1.5em;border-bottom:1px solid #ddd} -.lt ul {margin:0 0 1em;padding:0;list-style:none} -.lt li {padding:0.2em 0} -.lt a {color:#000;text-decoration:none} -.lt_title {display:block;padding:1em 0} -.lt_more {position:absolute;top:1em;right:1em} \ No newline at end of file +.lat {position:relative;margin:0 0 1em;padding:0 1em 1.5em;border-bottom:1px solid #ddd} +.lat ul {margin:0 0 1em;padding:0;list-style:none} +.lat li {padding:0.2em 0} +.lat a {color:#000;text-decoration:none} +.lat_title {display:block;padding:1em 0} +.lat_more {position:absolute;top:1em;right:1em} \ No newline at end of file diff --git a/skin/board/basic/list.skin.php b/skin/board/basic/list.skin.php index 4f7b0531c..5bd5500d8 100644 --- a/skin/board/basic/list.skin.php +++ b/skin/board/basic/list.skin.php @@ -16,7 +16,7 @@ if ($is_nogood) $colspan++;
    - +
    - +
    @@ -35,11 +35,11 @@ if ($is_nogood) $colspan++; - +
    @@ -55,7 +55,7 @@ if ($is_nogood) $colspan++; 번호 - + @@ -65,8 +65,8 @@ if ($is_nogood) $colspan++; 글쓴이 날짜 조회 - 추천 - 비추천 + 추천 + 비추천 @@ -84,23 +84,23 @@ if ($is_nogood) $colspan++; echo $list[$i]['num']; ?> - + - + - + - 댓글 + 댓글 - - + + - 게시물이 없습니다.'; } ?> + 게시물이 없습니다.'; } ?>
    - +
    - + - + @@ -179,7 +179,7 @@ if ($is_nogood) $colspan++; - + - + diff --git a/skin/board/basic/view.skin.php b/skin/board/basic/view.skin.php index 559b729b3..3a8859118 100644 --- a/skin/board/basic/view.skin.php +++ b/skin/board/basic/view.skin.php @@ -16,7 +16,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');

    게시물 정보

    - 작성자 + 작성자 작성일 조회 댓글 @@ -32,7 +32,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php'); } ?> - +

    첨부파일

      @@ -56,7 +56,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php'); ?>
    - +
    - +
    -

    +

    - +
    - 스크랩 + 스크랩 추천 - + 비추천 - +
    - 추천 - 비추천 + 추천 + 비추천
    - + $(function() { $("a.view_file_download").click(function() { var msg = "파일을 다운로드 하시면 포인트가 차감(점)됩니다.\n\n포인트는 게시물당 한번만 차감되며 다음에 다시 다운로드 하셔도 중복하여 차감하지 않습니다.\n\n그래도 다운로드 하시겠습니까?"; diff --git a/skin/board/basic/view_comment.skin.php b/skin/board/basic/view_comment.skin.php index 7c8ee579e..d50db1d12 100644 --- a/skin/board/basic/view_comment.skin.php +++ b/skin/board/basic/view_comment.skin.php @@ -26,11 +26,11 @@ var char_max = parseInt(); // 최대

    님의 댓글

    - 댓글의 댓글 - + 댓글의 댓글 + 아이피 - + 작성일
    @@ -61,15 +61,15 @@ var char_max = parseInt(); // 최대 ?> - + -

    등록된 댓글이 없습니다.

    +

    등록된 댓글이 없습니다.

    @@ -93,7 +93,7 @@ var char_max = parseInt(); // 최대 - + @@ -102,24 +102,24 @@ var char_max = parseInt(); // 최대 - + - + - +
    자동등록방지
    내용 - 글자 + 글자 - + onkeyup="check_byte('wr_content', 'char_count');"> + - + diff --git a/skin/board/basic/write.skin.php b/skin/board/basic/write.skin.php index b61145c03..52cca5147 100644 --- a/skin/board/basic/write.skin.php +++ b/skin/board/basic/write.skin.php @@ -52,42 +52,42 @@ echo $option_hidden; - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -109,24 +109,24 @@ echo $option_hidden; - + - + - + @@ -138,7 +138,7 @@ echo $option_hidden; - +
    class="frm_input " maxlength="20">
    옵션
    @@ -97,11 +97,11 @@ echo $option_hidden;
    " id="wr_link" class="frm_input" size="50">
    파일 # - + - + - +
    diff --git a/skin/board/gallery/list.skin.php b/skin/board/gallery/list.skin.php index c08cfd6d6..eea67e427 100644 --- a/skin/board/gallery/list.skin.php +++ b/skin/board/gallery/list.skin.php @@ -10,7 +10,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');
    - +
    - +
    @@ -29,11 +29,11 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php'); - +
    @@ -56,11 +56,11 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php'); $k += 1; if ($k % $bo_gallery_cols == 0) $style .= "margin:0 !important;"; ?> -
  • - +
  • + - + - + - 댓글 + 댓글 작성자
  • 작성일
  • 조회
  • -
  • 추천
  • -
  • 비추천
  • +
  • 추천
  • +
  • 비추천
  • - - 게시물이 없습니다."; } ?> + + 게시물이 없습니다."; } ?>
    - +
    - + - + @@ -176,7 +176,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php'); - + - + diff --git a/skin/board/gallery/view.skin.php b/skin/board/gallery/view.skin.php index 0f26a9b52..a889e4a88 100644 --- a/skin/board/gallery/view.skin.php +++ b/skin/board/gallery/view.skin.php @@ -16,7 +16,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php');

    게시물 정보

    - 작성자 + 작성자 작성일 조회 댓글 @@ -32,7 +32,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php'); } ?> - +

    첨부파일

      @@ -56,7 +56,7 @@ include_once(G4_LIB_PATH.'/thumbnail.lib.php'); ?>
    - +
    - +
    -

    +

    - +
    - 추천 - 비추천 + 추천 + 비추천
    - + $(function() { $("a.view_file_download").click(function() { var msg = "파일을 다운로드 하시면 포인트가 차감(점)됩니다.\n\n포인트는 게시물당 한번만 차감되며 다음에 다시 다운로드 하셔도 중복하여 차감하지 않습니다.\n\n그래도 다운로드 하시겠습니까?"; diff --git a/skin/board/gallery/view_comment.skin.php b/skin/board/gallery/view_comment.skin.php index d9d2ef876..604c8b948 100644 --- a/skin/board/gallery/view_comment.skin.php +++ b/skin/board/gallery/view_comment.skin.php @@ -26,11 +26,11 @@ var char_max = parseInt(); // 최대

    님의 댓글

    - 댓글의 댓글 - + 댓글의 댓글 + 아이피 - + 작성일
    @@ -61,15 +61,15 @@ var char_max = parseInt(); // 최대 ?> -

    등록된 댓글이 없습니다.

    +

    등록된 댓글이 없습니다.

    @@ -94,7 +94,7 @@ var char_max = parseInt(); // 최대 - + @@ -103,24 +103,24 @@ var char_max = parseInt(); // 최대 - + - + - + @@ -288,4 +288,4 @@ var char_max = parseInt(); // 최대 comment_box('', 'c'); // 댓글 입력폼이 보이도록 처리하기위해서 추가 (root님) - + diff --git a/skin/board/gallery/write.skin.php b/skin/board/gallery/write.skin.php index 6d488a6cb..a5c6ec465 100644 --- a/skin/board/gallery/write.skin.php +++ b/skin/board/gallery/write.skin.php @@ -52,42 +52,42 @@ echo $option_hidden;
    자동등록방지
    내용 - 글자 + 글자 - + onkeyup="check_byte('wr_content', 'char_count');"> +
    - + - + - + - + - + - + - + - + - + - + - + - + @@ -109,24 +109,24 @@ echo $option_hidden; - + - + - + @@ -138,7 +138,7 @@ echo $option_hidden; - +
    class="frm_input " maxlength="20">
    옵션
    @@ -97,7 +97,7 @@ echo $option_hidden;
    " id="wr_link" class="frm_input" size="50">
    파일 # - + - + - +
    @@ -232,7 +232,7 @@ function fwrite_submit(f) return false; } - + return true; } diff --git a/skin/latest/basic/latest.skin.php b/skin/latest/basic/latest.skin.php index df33929b4..068a84503 100644 --- a/skin/latest/basic/latest.skin.php +++ b/skin/latest/basic/latest.skin.php @@ -4,8 +4,8 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 -
    - +
    +
    • @@ -37,5 +37,5 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
    • 게시물이 없습니다.
    - +
    diff --git a/skin/latest/basic/style.css b/skin/latest/basic/style.css index 82f0b96d2..b51b1f1fd 100644 --- a/skin/latest/basic/style.css +++ b/skin/latest/basic/style.css @@ -1,7 +1,7 @@ /* 새글 스킨 (latest) */ -.lt_pc {float:left;margin-left:20px} -.lt {position:relative;float:left;margin-bottom:20px;padding-bottom:10px;width:354px;height:150px;border-bottom:1px solid #ddd} -.lt ul {margin:0 0 10px;padding:0;list-style:none} -.lt li {padding:3px 0} -.lt_title {display:block;padding:10px 0 8px} -.lt_more {position:absolute;top:10px;right:0} \ No newline at end of file +.lat_pc {float:left;margin-left:20px} +.lat {position:relative;float:left;margin-bottom:20px;padding-bottom:10px;width:354px;height:150px;border-bottom:1px solid #ddd} +.lat ul {margin:0 0 10px;padding:0;list-style:none} +.lat li {padding:3px 0} +.lat_title {display:block;padding:10px 0 8px} +.lat_more {position:absolute;top:10px;right:0} \ No newline at end of file diff --git a/skin/member/basic/register_form.skin.php b/skin/member/basic/register_form.skin.php index 8176284b4..6948f4b65 100644 --- a/skin/member/basic/register_form.skin.php +++ b/skin/member/basic/register_form.skin.php @@ -343,6 +343,13 @@ function fregisterform_submit(f) f.mb_recommend.focus(); return false; } + + var msg = reg_mb_recommend_check(); + if (msg) { + alert(msg); + f.mb_recommend.select(); + return false; + } } diff --git a/skin/outlogin/basic/style.css b/skin/outlogin/basic/style.css index 143c1f590..8f9d777aa 100644 --- a/skin/outlogin/basic/style.css +++ b/skin/outlogin/basic/style.css @@ -16,6 +16,7 @@ #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} #ol_before a {letter-spacing:-0.15em} #ol_svc {float:left;margin:5px 0 0} +#ol_password_lost {display:inline-block;margin:0 0 0 5px} #ol_auto {position:relative;float:right;margin:5px 0 0} #ol_auto label {letter-spacing:-0.1em} #ol_auto input {width:13px;height:13px;vertical-align:bottom}