diff --git a/adm/config_form.php b/adm/config_form.php index e981a1163..96e64cbb2 100644 --- a/adm/config_form.php +++ b/adm/config_form.php @@ -37,7 +37,7 @@ if(!isset($config['cf_kcpcert_site_cd'])) { if(!isset($config['cf_kcpcert_use'])) { sql_query(" ALTER TABLE `{$g4['config_table']}` - ADD `cf_kcpcert_use` ENUM('','test','service') NOT NULL DEFAULT 'none' AFTER `cf_memo_send_point` ", TRUE); + ADD `cf_kcpcert_use` ENUM('','test','service') NOT NULL DEFAULT '' AFTER `cf_memo_send_point` ", TRUE); } if(!isset($config['cf_mobile_pages'])) { diff --git a/adm/member_form.php b/adm/member_form.php index 7aa3186e9..0474d95dc 100644 --- a/adm/member_form.php +++ b/adm/member_form.php @@ -122,7 +122,7 @@ include_once('./admin.head.php'); - + @@ -141,7 +141,7 @@ include_once('./admin.head.php'); - + diff --git a/adm/member_form_update.php b/adm/member_form_update.php index d8f50f95f..d1be76a99 100644 --- a/adm/member_form_update.php +++ b/adm/member_form_update.php @@ -16,7 +16,7 @@ if ($member['mb_password'] != sql_password($_POST['admin_password'])) { $mb_id = escape_trim($_POST['mb_id']); -// 핸드폰번호 체크 +// 휴대폰번호 체크 $mb_hp = $_POST['mb_hp']; if($mb_hp) { $result = exist_mb_hp($mb_hp, $mb_id); diff --git a/adm/member_list.php b/adm/member_list.php index 28afd87fb..6eb982770 100644 --- a/adm/member_list.php +++ b/adm/member_list.php @@ -85,7 +85,7 @@ $colspan = 15; - + diff --git a/bbs/board.php b/bbs/board.php index 436017da0..67c83f706 100644 --- a/bbs/board.php +++ b/bbs/board.php @@ -53,21 +53,18 @@ if (isset($wr_id) && $wr_id) { } // 휴대폰 본인확인을 사용한다면 - if ($config['cf_kcpcert_use'] != '') { + if ($config['cf_kcpcert_use'] != '' && !$is_admin) { // 인증된 회원만 가능 - if ($board['bo_use_cert'] != '') { - if ($is_guest) { - alert('이 게시판은 휴대폰 본인확인 하신 회원님만 글 읽기가 가능합니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.', './login.php?wr_id='.$wr_id.$qstr.'&url='.urlencode(G4_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr)); - } + if ($board['bo_use_cert'] != '' && $is_guest) { + alert('이 게시판은 휴대폰 본인확인 하신 회원님만 글읽기가 가능합니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.', './login.php?wr_id='.$wr_id.$qstr.'&url='.urlencode(G4_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr)); + } - $hp_certify = substr($member['mb_hp_certify'],0,1) == '0' ? false : true; - if ($hp_certify == false) { - alert('이 게시판은 휴대폰 본인확인 하신 회원님만 글 읽기가 가능합니다.\\n\\n회원정보 수정에서 휴대폰 본인확인을 해주시기 바랍니다.', G4_URL); - } + if ($board['bo_use_cert'] == 'cert' && hp_certify($member) != 'Y') { + alert('이 게시판은 휴대폰 본인확인 하신 회원님만 글읽기가 가능합니다.\\n\\n회원정보 수정에서 휴대폰 본인확인을 해주시기 바랍니다.', G4_URL); + } - if ($member['mb_adult'] != 'Y') { - alert('이 게시판은 휴대폰 성인인증 하신 회원님만 글 읽기가 가능합니다.\\n\\n성인인데 글읽기가 안된다면 회원정보 수정에서 휴대폰 본인확인을\\n다시 해주시기 바랍니다.', G4_URL); - } + if ($board['bo_use_cert'] == 'adult' && $member['mb_adult'] != 'Y') { + alert('이 게시판은 휴대폰 본인확인으로 성인 인증된 회원님만 글읽기가 가능합니다.\\n\\n성인인데 글읽기가 안된다면 회원정보 수정에서 휴대폰 본인확인을\\n다시 해주시기 바랍니다.', G4_URL); } } diff --git a/bbs/write.php b/bbs/write.php index fd717e152..27a7ac8c0 100644 --- a/bbs/write.php +++ b/bbs/write.php @@ -176,6 +176,22 @@ if (!empty($group['gr_use_access'])) { } } +// 휴대폰 본인확인을 사용한다면 +if ($config['cf_kcpcert_use'] != '' && !$is_admin) { + // 인증된 회원만 가능 + if ($board['bo_use_cert'] != '' && $is_guest) { + alert('이 게시판은 휴대폰 본인확인 하신 회원님만 글쓰기가 가능합니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.', 'login.php?'.$qstr.'&url='.urlencode($_SERVER['PHP_SELF'].'?bo_table='.$bo_table)); + } + + if ($board['bo_use_cert'] == 'cert' && hp_certify($member) != 'Y') { + alert('이 게시판은 휴대폰 본인확인 하신 회원님만 글쓰기가 가능합니다.\\n\\n회원정보 수정에서 휴대폰 본인확인을 해주시기 바랍니다.', G4_URL); + } + + if ($board['bo_use_cert'] == 'adult' && $member['mb_adult'] != 'Y') { + alert('이 게시판은 휴대폰 본인확인으로 성인 인증된 회원님만 글쓰기가 가능합니다.\\n\\n성인인데 글읽기가 안된다면 회원정보 수정에서 휴대폰 본인확인을\\n다시 해주시기 바랍니다.', G4_URL); + } +} + $g4['title'] = $board['bo_subject']." ".$title_msg; $is_notice = false; diff --git a/bbs/write_update.php b/bbs/write_update.php index 3ae685222..2f65e9a4b 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 = trim($_POST['wr_subject']); + $wr_subject = substr(escape_trim($_POST['wr_subject']),0,255); } if ($wr_subject == '') { $msg[] = '제목을 입력하세요.'; @@ -16,12 +16,22 @@ if ($wr_subject == '') { $wr_content = ''; if (isset($_POST['wr_content'])) { - $wr_content = trim($_POST['wr_content']); + $wr_content = escape_trim($_POST['wr_content']); } if ($wr_content == '') { $msg[] = '내용을 입력하세요.'; } +$wr_link1 = ''; +if (isset($_POST['wr_link1'])) { + $wr_link1 = substr(escape_trim($_POST['wr_link1']),0,1000); +} + +$wr_link2 = ''; +if (isset($_POST['wr_link2'])) { + $wr_link2 = substr(escape_trim($_POST['wr_link2']),0,1000); +} + $msg = implode('
', $msg); if ($msg) { alert($msg); diff --git a/install/gnuboard4s.sql b/install/gnuboard4s.sql index 921665d7f..3b24e1ebc 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 '', diff --git a/js/common.js b/js/common.js index a8a61eac8..f1ccb40e9 100644 --- a/js/common.js +++ b/js/common.js @@ -531,48 +531,48 @@ function save_default_font_size($el) $(function(){ - $('.win_point').click(function() { + $(".win_point").click(function() { win_point(this.href); return false; }); - $('.win_memo').click(function() { + $(".win_memo").click(function() { win_memo(this.href); return false; }); - $('.win_email').click(function() { + $(".win_email").click(function() { win_email(this.ref); return false; }); - $('.win_scrap').click(function() { + $(".win_scrap").click(function() { win_scrap(this.href); return false; }); - $('.win_profile').click(function() { + $(".win_profile").click(function() { win_profile(this.ref); return false; }); - $('.win_homepage').click(function() { + $(".win_homepage").click(function() { win_homepage(this.ref); return false; }); - $('.win_zip_find').click(function() { + $(".win_zip_find").click(function() { win_zip(this.href); return false; }); - $('.win_password_lost').click(function() { + $(".win_password_lost").click(function() { win_password_lost(this.href); return false; }); /* - $('.win_poll').click(function() { + $(".win_poll").click(function() { win_poll(this.href); return false; }); @@ -580,12 +580,12 @@ $(function(){ // 사이드뷰 var sv_hide = false; - $('.sv_member, .sv_guest').click(function() { - $('.sv').removeClass('sv_on'); - $(this).closest('.sv_wrap').find('.sv').addClass('sv_on'); + $(".sv_member, .sv_guest").click(function() { + $(".sv").removeClass("sv_on"); + $(this).closest(".sv_wrap").find(".sv").addClass("sv_on"); }); - $('.sv, .sv_wrap').hover( + $(".sv, .sv_wrap").hover( function() { sv_hide = false; }, @@ -594,29 +594,38 @@ $(function(){ } ); - $('.sv_member, .sv_guest').focusin(function() { + $(".sv_member, .sv_guest").focusin(function() { sv_hide = false; - $('.sv').removeClass('sv_on'); - $(this).closest('.sv_wrap').find('.sv').addClass('sv_on'); + $(".sv").removeClass("sv_on"); + $(this).closest(".sv_wrap").find(".sv").addClass("sv_on"); }); - $('.sv a').focusin(function() { + $(".sv a").focusin(function() { sv_hide = false; }); - $('.sv a').focusout(function() { + $(".sv a").focusout(function() { sv_hide = true; }); $(document).click(function() { if(sv_hide) { - $('.sv').removeClass('sv_on'); + $(".sv").removeClass("sv_on"); } }); $(document).focusin(function() { if(sv_hide) { - $('.sv').removeClass('sv_on'); + $(".sv").removeClass("sv_on"); } }); + + $("textarea#wr_content[maxlength]").live("keyup change", function() { + var str = $(this).val() + var mx = parseInt($(this).attr("maxlength")) + if (str.length > mx) { + $(this).val(str.substr(0, mx)); + return false; + } + }); }); \ No newline at end of file diff --git a/lib/common.lib.php b/lib/common.lib.php index 3c1cdb67b..71c9c08c9 100644 --- a/lib/common.lib.php +++ b/lib/common.lib.php @@ -1967,7 +1967,12 @@ function html_end() $stylesheet .= $link; $buffer = preg_replace('#'.$link.'#', '', $buffer); } - return preg_replace('#()#', "$1$stylesheet", $buffer); + /* + + + 밑으로 스킨의 스타일시트가 위치하도록 하게 한다. + */ + return preg_replace('#([^<]*]+>)#', "$1$stylesheet", $buffer); } @@ -1977,4 +1982,11 @@ function hyphen_hp_number($hp) $hp = preg_replace("/[^0-9]/", "", $hp); return preg_replace("/([0-9]{3})([0-9]{3,4})([0-9]{4})$/", "\\1-\\2-\\3", $hp); } + + +// 휴대폰 본인확인을 받은 회원인지를 가린다. +function hp_certify($member) +{ + return substr($member['mb_hp_certify'],0,1) == '0' ? 'N' : 'Y'; +} ?> \ No newline at end of file diff --git a/lib/register.lib.php b/lib/register.lib.php index 85a5d29da..7d5d0309d 100644 --- a/lib/register.lib.php +++ b/lib/register.lib.php @@ -147,7 +147,7 @@ function valid_mb_hp($reg_mb_hp) { $reg_mb_hp = preg_replace("/[^0-9]/", "", $reg_mb_hp); if(!$reg_mb_hp) - return "핸드폰번호를 입력해 주십시오."; + return "휴대폰번호를 입력해 주십시오."; else { if(preg_match("/^01[0-9]{8,9}$/", $reg_mb_hp)) return ""; @@ -160,13 +160,15 @@ function exist_mb_hp($reg_mb_hp, $reg_mb_id) { global $g4; + if (!trim($reg_mb_hp)) return ""; + $reg_mb_hp = hyphen_hp_number($reg_mb_hp); $sql = "select count(*) as cnt from {$g4['member_table']} where mb_hp = '$reg_mb_hp' and mb_id <> '$reg_mb_id' "; $row = sql_fetch($sql); if($row['cnt']) - return "이미 사용 중인 핸드폰번호입니다."; + return " 이미 사용 중인 휴대폰번호입니다. ".$reg_mb_hp; else return ""; } diff --git a/mobile/skin/member/basic/register_form.skin.php b/mobile/skin/member/basic/register_form.skin.php index 74fd42942..e2fd41a87 100644 --- a/mobile/skin/member/basic/register_form.skin.php +++ b/mobile/skin/member/basic/register_form.skin.php @@ -179,7 +179,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 > - 핸드폰 문자메세지를 받겠습니다. + 휴대폰 문자메세지를 받겠습니다. diff --git a/plugin/ckeditor/ckeditor.lib.php b/plugin/ckeditor/ckeditor.lib.php index eac4f9835..ed4cf6013 100644 --- a/plugin/ckeditor/ckeditor.lib.php +++ b/plugin/ckeditor/ckeditor.lib.php @@ -36,7 +36,7 @@ function editor_html($id, $content, $ckeditor=true, $class="") } $ckeditor_class = $ckeditor ? "ckeditor" : ""; - $html .= "\n"; + $html .= "\n"; $html .= "\n웹 에디터 끝"; return $html; } diff --git a/plugin/kcp/kcpcert.ajax.php b/plugin/kcp/kcpcert.ajax.php index f8c7e013d..159a58e47 100644 --- a/plugin/kcp/kcpcert.ajax.php +++ b/plugin/kcp/kcpcert.ajax.php @@ -1,23 +1,24 @@ "); $opener.$("input[name=mb_name]").val(""); - //$opener.$("input[name=kcpcert_no]").val(""); - //$opener.$("input[name=kcpcert_time]").val(""); + alert("본인의 휴대폰번호로 확인 되었습니다."); window.close(); }); diff --git a/skin/board/basic/view_comment.skin.php b/skin/board/basic/view_comment.skin.php index ca3709485..7c8ee579e 100644 --- a/skin/board/basic/view_comment.skin.php +++ b/skin/board/basic/view_comment.skin.php @@ -117,9 +117,19 @@ var char_max = parseInt(); // 최대 내용 글자 - + diff --git a/skin/board/gallery/view_comment.skin.php b/skin/board/gallery/view_comment.skin.php index 9ec7c5fb1..d9d2ef876 100644 --- a/skin/board/gallery/view_comment.skin.php +++ b/skin/board/gallery/view_comment.skin.php @@ -118,7 +118,7 @@ var char_max = parseInt(); // 최대 내용 글자 - diff --git a/skin/member/basic/register_form.skin.php b/skin/member/basic/register_form.skin.php index ba1c3ab27..ee8ee5d1d 100644 --- a/skin/member/basic/register_form.skin.php +++ b/skin/member/basic/register_form.skin.php @@ -44,7 +44,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 공백없이 한글만 입력하세요."; } */ ?> 이름과 휴대폰번호는 아래의 휴대폰 본인확인 기능을 사용하여 입력해 주십시오.' : ''; ?> 테스트의 경우 이동통신사는 반드시 KT를 선택해 주십시오. 나머지 항목은 임의로 입력하시면 됩니다.' : ''; ?> - class="frm_input nospace " size="10"> + class="frm_input nospace " size="10">