From fdc93c1c2d3fa76ee353af82a3023963c2d86ab8 Mon Sep 17 00:00:00 2001 From: chicpro Date: Mon, 11 Aug 2014 15:01:27 +0900 Subject: [PATCH] =?UTF-8?q?5.0.13=20=EB=B2=84=EC=A0=84=20=ED=8C=A8?= =?UTF-8?q?=EC=B9=98=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adm/config_form.php | 9 +------- adm/sms_admin/config.php | 9 +------- adm/sms_admin/config_update.php | 9 +------- adm/sms_admin/member_update.php | 9 ++++++-- adm/sms_admin/member_update_run.php | 8 +++++++ bbs/board.php | 2 +- bbs/faq.php | 9 -------- bbs/search.php | 3 +-- bbs/write.php | 2 +- common.php | 13 +++++++---- extend/sms5.extend.php | 2 +- js/wrest.js | 6 ++--- lib/common.lib.php | 23 +++++++++++++++++++ mobile/skin/board/basic/list.skin.php | 4 +--- .../skin/member/basic/register_form.skin.php | 6 ++--- mobile/skin/search/basic/search.skin.php | 11 +++++---- plugin/sms5/write.php | 2 +- skin/member/basic/register_form.skin.php | 6 ++--- skin/search/basic/search.skin.php | 11 +++++---- 19 files changed, 79 insertions(+), 65 deletions(-) diff --git a/adm/config_form.php b/adm/config_form.php index b2fc57f7a..b55a3b680 100644 --- a/adm/config_form.php +++ b/adm/config_form.php @@ -213,14 +213,7 @@ if (!$config['cf_icode_server_ip']) $config['cf_icode_server_ip'] = '211.172.2 if (!$config['cf_icode_server_port']) $config['cf_icode_server_port'] = '7295'; if ($config['cf_icode_id'] && $config['cf_icode_pw']) { - $res = get_sock('http://www.icodekorea.com/res/userinfo.php?userid='.$config['cf_icode_id'].'&userpw='.$config['cf_icode_pw']); - $res = explode(';', $res); - $userinfo = array( - 'code' => $res[0], // 결과코드 - 'coin' => $res[1], // 고객 잔액 (충전제만 해당) - 'gpay' => $res[2], // 고객의 건수 별 차감액 표시 (충전제만 해당) - 'payment' => $res[3] // 요금제 표시, A:충전제, C:정액제 - ); + $userinfo = get_icode_userinfo($config['cf_icode_id'], $config['cf_icode_pw']); } ?> diff --git a/adm/sms_admin/config.php b/adm/sms_admin/config.php index f1fd649d4..017b5a333 100644 --- a/adm/sms_admin/config.php +++ b/adm/sms_admin/config.php @@ -11,14 +11,7 @@ if (!$config['cf_icode_server_port']) $config['cf_icode_server_port'] = '7295'; if ($config['cf_icode_id'] && $config['cf_icode_pw']) { - $res = get_sock('http://www.icodekorea.com/res/userinfo.php?userid='.$config['cf_icode_id'].'&userpw='.$config['cf_icode_pw']); - $res = explode(';', $res); - $userinfo = array( - 'code' => $res[0], // 결과코드 - 'coin' => $res[1], // 고객 잔액 (충전제만 해당) - 'gpay' => $res[2], // 고객의 건수 별 차감액 표시 (충전제만 해당) - 'payment' => $res[3] // 요금제 표시, A:충전제, C:정액제 - ); + $userinfo = get_icode_userinfo($config['cf_icode_id'], $config['cf_icode_pw']); } if (!$config['cf_icode_id']) diff --git a/adm/sms_admin/config_update.php b/adm/sms_admin/config_update.php index e89787730..b7c930176 100644 --- a/adm/sms_admin/config_update.php +++ b/adm/sms_admin/config_update.php @@ -8,14 +8,7 @@ check_demo(); $g5['title'] = "SMS 기본설정"; -$res = get_sock("http://www.icodekorea.com/res/userinfo.php?userid=$cf_icode_id&userpw=$cf_icode_pw"); -$res = explode(';', $res); -$userinfo = array( - 'code' => $res[0], // 결과코드 - 'coin' => $res[1], // 고객 잔액 (충전제만 해당) - 'gpay' => $res[2], // 고객의 건수 별 차감액 표시 (충전제만 해당) - 'payment' => $res[3] // 요금제 표시, A:충전제, C:정액제 -); +$userinfo = get_icode_userinfo($cf_icode_id, $cf_icode_pw); if ($userinfo['code'] == '202') alert('아이코드 아이디와 패스워드가 맞지 않습니다.'); diff --git a/adm/sms_admin/member_update.php b/adm/sms_admin/member_update.php index b0b20bd3f..667919971 100644 --- a/adm/sms_admin/member_update.php +++ b/adm/sms_admin/member_update.php @@ -45,8 +45,13 @@ include_once(G5_ADMIN_PATH.'/admin.head.php'); dataType:"json", data:params, success: function(data) { - $("#datetime").html( data.datetime ); - $("#res_msg").html( data.res_msg ); + if(data.error){ + alert( data.error ); + $("#res_msg").html(""); + } else { + $("#datetime").html( data.datetime ); + $("#res_msg").html( data.res_msg ); + } }, error: function (xhr, ajaxOptions, thrownError) { alert(xhr.status); diff --git a/adm/sms_admin/member_update_run.php b/adm/sms_admin/member_update_run.php index 323cbc9e0..41467cd53 100644 --- a/adm/sms_admin/member_update_run.php +++ b/adm/sms_admin/member_update_run.php @@ -3,6 +3,14 @@ $sub_menu = "900200"; include_once("./_common.php"); @include_once(G5_PLUGIN_PATH."/sms5/JSON.php"); +if(empty($config['cf_sms_use'])){ + if( $mtype == "json" ){ + die("{\"error\":\"환경 설정의 SMS 사용에서 아이코드를 사용설정해 주셔야 실행할수 있습니다.\"}"); + } else { + die("환경 설정의 SMS 사용에서 아이코드를 사용설정해 주셔야 실행할수 있습니다."); + } +} + if( !function_exists('json_encode') ) { function json_encode($data) { $json = new Services_JSON(); diff --git a/bbs/board.php b/bbs/board.php index 805c11c79..9d19b15ee 100644 --- a/bbs/board.php +++ b/bbs/board.php @@ -236,7 +236,7 @@ if ($member['mb_level'] >= $board['bo_list_level'] && $board['bo_use_list_view'] include_once('./board_tail.php'); -echo "\n\n"; +echo "\n\n"; include_once(G5_PATH.'/tail.sub.php'); ?> diff --git a/bbs/faq.php b/bbs/faq.php index affa51c97..eaa3b491a 100644 --- a/bbs/faq.php +++ b/bbs/faq.php @@ -27,15 +27,6 @@ if (!$fm['fm_id']) $g5['title'] = $fm['fm_subject']; -if(G5_IS_MOBILE){ - $faq_skin = $config['cf_mobile_faq_skin']; -} else { - $faq_skin = $config['cf_faq_skin']; -} - -if(!$faq_skin) $faq_skin = 'basic'; -$faq_skin_path = (G5_IS_MOBILE ? G5_MOBILE_PATH : G5_PATH).'/'.G5_SKIN_DIR.'/faq/'.$faq_skin; -$faq_skin_url = (G5_IS_MOBILE ? G5_MOBILE_URL : G5_URL).'/'.G5_SKIN_DIR.'/faq/'.$faq_skin; $skin_file = $faq_skin_path.'/list.skin.php'; include_once('./_head.php'); diff --git a/bbs/search.php b/bbs/search.php index ad392ec0f..2a83c1edc 100644 --- a/bbs/search.php +++ b/bbs/search.php @@ -172,7 +172,6 @@ if ($stx) { if ($row['wr_is_comment']) { - $link .= '#c'.$row['wr_id']; $sql2 = " select wr_subject, wr_option from {$tmp_write_table} where wr_id = '{$row['wr_parent']}' "; $row2 = sql_fetch($sql2); //$row['wr_subject'] = $row2['wr_subject']; @@ -204,7 +203,7 @@ if ($stx) { $list[$idx][$i]['subject'] = $subject; $list[$idx][$i]['content'] = $content; - $list[$idx][$i]['name'] = get_sideview($row['mb_id'], cut_str($row['wr_name'], $config['cf_cut_name']), $row['wr_email'], $row['wr_homepage']); + $list[$idx][$i]['name'] = get_sideview($row['mb_id'], get_text(cut_str($row['wr_name'], $config['cf_cut_name'])), $row['wr_email'], $row['wr_homepage']); $k++; if ($k >= $rows) diff --git a/bbs/write.php b/bbs/write.php index 97ef6b81a..4a8e9672f 100644 --- a/bbs/write.php +++ b/bbs/write.php @@ -408,7 +408,7 @@ include_once('./board_head.php'); $action_url = https_url(G5_BBS_DIR)."/write_update.php"; -echo ''; +echo ''; include_once ($board_skin_path.'/write.skin.php'); include_once('./board_tail.php'); diff --git a/common.php b/common.php index 66eef1ed5..5bab616f7 100644 --- a/common.php +++ b/common.php @@ -252,7 +252,7 @@ if (isset($_REQUEST['PHPSESSID']) && $_REQUEST['PHPSESSID'] != session_id()) $qstr = ''; if (isset($_REQUEST['sca'])) { - $sca = trim($_REQUEST['sca']); + $sca = clean_xss_tags(trim($_REQUEST['sca'])); if ($sca) $qstr .= '&sca=' . urlencode($sca); } else { @@ -453,9 +453,9 @@ if ($is_admin != 'super') { if (empty($pattern[$i])) continue; - //$pat = "/({$pattern[$i]})/"; $pattern[$i] = str_replace(".", "\.", $pattern[$i]); - $pat = "/^{$pattern[$i]}/"; + $pattern[$i] = str_replace("+", "[0-9\.]+", $pattern[$i]); + $pat = "/^{$pattern[$i]}$/"; $is_possible_ip = preg_match($pat, $_SERVER['REMOTE_ADDR']); if ($is_possible_ip) break; @@ -473,7 +473,8 @@ if ($is_admin != 'super') { continue; $pattern[$i] = str_replace(".", "\.", $pattern[$i]); - $pat = "/^{$pattern[$i]}/"; + $pattern[$i] = str_replace("+", "[0-9\.]+", $pattern[$i]); + $pat = "/^{$pattern[$i]}$/"; $is_intercept_ip = preg_match($pat, $_SERVER['REMOTE_ADDR']); if ($is_intercept_ip) die ("접근 불가합니다."); @@ -495,6 +496,8 @@ if (G5_IS_MOBILE) { $search_skin_url = G5_MOBILE_URL .'/'.G5_SKIN_DIR.'/search/'.$config['cf_mobile_search_skin']; $connect_skin_path = G5_MOBILE_PATH.'/'.G5_SKIN_DIR.'/connect/'.$config['cf_mobile_connect_skin']; $connect_skin_url = G5_MOBILE_URL .'/'.G5_SKIN_DIR.'/connect/'.$config['cf_mobile_connect_skin']; + $faq_skin_path = G5_MOBILE_PATH .'/'.G5_SKIN_DIR.'/faq/'.$config['cf_mobile_faq_skin']; + $faq_skin_url = G5_MOBILE_URL .'/'.G5_SKIN_DIR.'/faq/'.$config['cf_mobile_faq_skin']; } else { $board_skin_path = G5_SKIN_PATH.'/board/'.$board['bo_skin']; $board_skin_url = G5_SKIN_URL .'/board/'.$board['bo_skin']; @@ -506,6 +509,8 @@ if (G5_IS_MOBILE) { $search_skin_url = G5_SKIN_URL .'/search/'.$config['cf_search_skin']; $connect_skin_path = G5_SKIN_PATH.'/connect/'.$config['cf_connect_skin']; $connect_skin_url = G5_SKIN_URL .'/connect/'.$config['cf_connect_skin']; + $faq_skin_path = G5_SKIN_PATH.'/faq/'.$config['cf_faq_skin']; + $faq_skin_url = G5_SKIN_URL.'/faq/'.$config['cf_faq_skin']; } //============================================================================== diff --git a/extend/sms5.extend.php b/extend/sms5.extend.php index 8b47fc273..5596f9ad0 100644 --- a/extend/sms5.extend.php +++ b/extend/sms5.extend.php @@ -24,7 +24,7 @@ $g5['sms5_form_table'] = $g5['sms5_prefix'] . 'form'; $g5['sms5_form_group_table'] = $g5['sms5_prefix'] . 'form_group'; $g5['sms5_member_history_table'] = $g5['sms5_prefix'] . 'member_history'; -if ($config['cf_sms_use'] == 'icode') { +if (!empty($config['cf_sms_use'])) { $sms5 = sql_fetch("select * from {$g5['sms5_config_table']} ", false); if( $sms5['cf_member'] && trim($member['mb_hp']) ) { diff --git a/js/wrest.js b/js/wrest.js index 5d164aab0..e3ce98f7f 100644 --- a/js/wrest.js +++ b/js/wrest.js @@ -208,7 +208,7 @@ function wrestMinLength(fld, css) { if (!wrestTrim(fld)) return; - var str = css.split('_'); // minlength_?? <-- str[1] + var str = css.split('='); // minlength=?? <-- str[1] if (wrestFld == null) { if (fld.value.length < parseInt(str[1])) { @@ -305,8 +305,8 @@ function wrestSubmit() case "telnum" : wrestTelNum(el); break; // 김선용 2006.3 - 전화번호 형식 검사 case "imgext" : wrestImgExt(el); break; default : - // css 가 minlength_ 로 시작한다면 _ 뒤의 숫자는 최소길이값 - if (/^minlength\_/.test(css)) { + // css 가 minlength= 로 시작한다면 = 뒤의 숫자는 최소길이값 + if (/^minlength\=/.test(css)) { wrestMinLength(el, css); break; } else if (/^extension\=/.test(css)) { wrestExtension(el, css); break; diff --git a/lib/common.lib.php b/lib/common.lib.php index d45ba208f..cefddb0aa 100644 --- a/lib/common.lib.php +++ b/lib/common.lib.php @@ -2653,6 +2653,14 @@ function get_search_string($stx) return $stx; } +// XSS 관련 태그 제거 +function clean_xss_tags($str) +{ + $str = preg_replace('#]*+>#i', '', $str); + + return $str; +} + // unescape nl 얻기 function conv_unescape_nl($str) { @@ -2697,4 +2705,19 @@ function get_safe_filename($name) return $name; } + +// 아이코드 사용자정보 +function get_icode_userinfo($id, $pass) +{ + $res = get_sock('http://www.icodekorea.com/res/userinfo.php?userid='.$id.'&userpw='.$pass); + $res = explode(';', $res); + $userinfo = array( + 'code' => $res[0], // 결과코드 + 'coin' => $res[1], // 고객 잔액 (충전제만 해당) + 'gpay' => $res[2], // 고객의 건수 별 차감액 표시 (충전제만 해당) + 'payment' => $res[3] // 요금제 표시, A:충전제, C:정액제 + ); + + return $userinfo; +} ?> \ No newline at end of file diff --git a/mobile/skin/board/basic/list.skin.php b/mobile/skin/board/basic/list.skin.php index 5b72909c1..2bd6a0a53 100644 --- a/mobile/skin/board/basic/list.skin.php +++ b/mobile/skin/board/basic/list.skin.php @@ -2,11 +2,9 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 // 선택옵션으로 인해 셀합치기가 가변적으로 변함 -$colspan = 5; +$colspan = 2; if ($is_checkbox) $colspan++; -if ($is_good) $colspan++; -if ($is_nogood) $colspan++; // add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 add_stylesheet('', 0); diff --git a/mobile/skin/member/basic/register_form.skin.php b/mobile/skin/member/basic/register_form.skin.php index 61d56f29d..555487936 100644 --- a/mobile/skin/member/basic/register_form.skin.php +++ b/mobile/skin/member/basic/register_form.skin.php @@ -31,17 +31,17 @@ add_stylesheet('', 영문자, 숫자, _ 만 입력 가능. 최소 3자이상 입력하세요. - > + > - > + > - > + > diff --git a/mobile/skin/search/basic/search.skin.php b/mobile/skin/search/basic/search.skin.php index 67214dc90..c1ae64ec8 100644 --- a/mobile/skin/search/basic/search.skin.php +++ b/mobile/skin/search/basic/search.skin.php @@ -106,8 +106,6 @@ add_stylesheet('',

게시판 내 결과