diff --git a/adm/member_form.php b/adm/member_form.php
index 16694b3fd..a249b2184 100644
--- a/adm/member_form.php
+++ b/adm/member_form.php
@@ -205,7 +205,7 @@ if (isset($mb_id) && $mb_id) {
if ($mb['mb_intercept_date']) {
$g5['title'] = "차단된 ";
} else {
- $g5['title'] .= "";
+ $g5['title'] = "";
}
$g5['title'] .= '회원 ' . $html_title;
require_once './admin.head.php';
diff --git a/adm/shop_admin/itemstocklist.php b/adm/shop_admin/itemstocklist.php
index 314192d85..93fe0f6e6 100644
--- a/adm/shop_admin/itemstocklist.php
+++ b/adm/shop_admin/itemstocklist.php
@@ -35,7 +35,7 @@ $sql_common .= $sql_search;
// 테이블의 전체 레코드수만 얻음
$sql = " select count(*) as cnt " . $sql_common;
$row = sql_fetch($sql);
-$total_count = $row['cnt'];
+$total_count = isset($row['cnt']) ? $row['cnt'] : 0;
$rows = $config['cf_page_rows'];
$total_page = ceil($total_count / $rows); // 전체 페이지 계산
@@ -171,7 +171,7 @@ $listall = '전체목
|
- |
+ |
|
|
diff --git a/bbs/ajax.autosave.php b/bbs/ajax.autosave.php
index 1e01c798a..3eddb39ca 100644
--- a/bbs/ajax.autosave.php
+++ b/bbs/ajax.autosave.php
@@ -4,8 +4,8 @@ include_once('./_common.php');
if (!$is_member) die('0');
$uid = isset($_REQUEST['uid']) ? preg_replace('/[^0-9]/', '', $_REQUEST['uid']) : 0;
-$subject = isset($_REQUEST['subject']) ? trim($_REQUEST['subject']) : '';
-$content = isset($_REQUEST['content']) ? trim($_REQUEST['content']) : '';
+$subject = isset($_REQUEST['subject']) ? preg_replace("#[\\\]+$#", "", substr(trim($_POST['subject']),0,255)) : '';
+$content = isset($_REQUEST['content']) ? preg_replace("#[\\\]+$#", "", substr(trim($_POST['content']),0,65536)) : '';
if ($subject && $content) {
$sql = " select count(*) as cnt from {$g5['autosave_table']} where mb_id = '{$member['mb_id']}' and as_subject = '$subject' and as_content = '$content' ";
diff --git a/bbs/login_check.php b/bbs/login_check.php
index 3882f38c0..c34c44ce2 100644
--- a/bbs/login_check.php
+++ b/bbs/login_check.php
@@ -147,8 +147,16 @@ if(function_exists('set_cart_id')){
cart_item_clean();
set_cart_id('');
$s_cart_id = get_session('ss_cart_id');
+
+ $add_cart_where = '';
+
+ // 장바구니에서 주문하기를 하는 경우
+ if (strpos($link, 'orderform.php') !== false) {
+ $add_cart_where = " and ct_select_time < '".date('Y-m-d H:i:s', strtotime('-1 hour', G5_SERVER_TIME))."' ";
+ }
+
// 선택필드 초기화
- $sql = " update {$g5['g5_shop_cart_table']} set ct_select = '0' where od_id = '$s_cart_id' ";
+ $sql = " update {$g5['g5_shop_cart_table']} set ct_select = '0' where od_id = '$s_cart_id' $add_cart_where ";
sql_query($sql);
}
diff --git a/bbs/member_confirm.php b/bbs/member_confirm.php
index c46121e05..e3041527e 100644
--- a/bbs/member_confirm.php
+++ b/bbs/member_confirm.php
@@ -31,6 +31,10 @@ if($url){
if( preg_match('#^/{3,}#', $url) ){
$url = preg_replace('#^/{3,}#', '/', $url);
}
+
+ if (function_exists('safe_filter_url_host')) {
+ $url = safe_filter_url_host($url);
+ }
}
$url = get_text($url);
diff --git a/bbs/memo_form_update.php b/bbs/memo_form_update.php
index 42263fce5..4397e4503 100644
--- a/bbs/memo_form_update.php
+++ b/bbs/memo_form_update.php
@@ -14,24 +14,28 @@ $str_nick_list = '';
$msg = '';
$error_list = array();
$member_list = array('id'=>array(), 'nick'=>array());
+$me_memo = isset($_POST['me_memo']) ? preg_replace("#[\\\]+$#", "", substr(trim($_POST['me_memo']),0,65536)) : '';
run_event('memo_form_update_before', $recv_list);
for ($i=0; $i location.replace('$url'); ";
@@ -182,6 +186,10 @@ function alert($msg='', $url='', $error=true, $post=false)
run_event('alert', $msg, $url, $error, $post);
+ if (function_exists('safe_filter_url_host')) {
+ $url = safe_filter_url_host($url);
+ }
+
$msg = $msg ? strip_tags($msg, ' ') : '올바른 방법으로 이용해 주십시오.';
$header = '';
@@ -220,6 +228,12 @@ function confirm($msg, $url1='', $url2='', $url3='')
alert($msg);
}
+ if (function_exists('safe_filter_url_host')) {
+ $url1 = safe_filter_url_host($url1);
+ $url2 = safe_filter_url_host($url2);
+ $url3 = safe_filter_url_host($url3);
+ }
+
if(!trim($url1) || !trim($url2)) {
$msg = '$url1 과 $url2 를 지정해 주세요.';
alert($msg);
@@ -3598,6 +3612,13 @@ function login_password_check($mb, $pass, $hash)
return check_password($pass, $hash);
}
+function safe_filter_url_host($url) {
+
+ $regex = run_replace('safe_filter_url_regex', '\\', $url);
+
+ return $regex ? preg_replace('#'. preg_quote($regex, '#') .'#iu', '', $url) : '';
+}
+
// 동일한 host url 인지
function check_url_host($url, $msg='', $return_url=G5_URL, $is_redirect=false)
{
diff --git a/lib/get_data.lib.php b/lib/get_data.lib.php
index 4e6b8bc49..4de6b353e 100644
--- a/lib/get_data.lib.php
+++ b/lib/get_data.lib.php
@@ -145,6 +145,8 @@ function get_content_by_field($write_table, $type='bbs', $where_field='', $where
{
global $g5, $g5_object;
+ static $cache = array();
+
$order_key = 'wr_id';
if( $type === 'content' ){
diff --git a/plugin/htmlpurifier/extend.video.php b/plugin/htmlpurifier/extend.video.php
index 81b4aea0e..5c8ec59d2 100644
--- a/plugin/htmlpurifier/extend.video.php
+++ b/plugin/htmlpurifier/extend.video.php
@@ -8,7 +8,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
*/
if( !class_exists('HTMLPurifier_Filter_Iframevideo') ){
- class HTMLPurifier_Filter_iframevideo extends HTMLPurifier_Filter
+ class HTMLPurifier_Filter_Iframevideo extends HTMLPurifier_Filter
{
public $name = 'Iframevideo';
diff --git a/plugin/social/Hybrid/thirdparty/OAuth/OAuth1Client.php b/plugin/social/Hybrid/thirdparty/OAuth/OAuth1Client.php
index 64c03c87d..8b09187f1 100644
--- a/plugin/social/Hybrid/thirdparty/OAuth/OAuth1Client.php
+++ b/plugin/social/Hybrid/thirdparty/OAuth/OAuth1Client.php
@@ -20,8 +20,8 @@ class OAuth1Client{
public $redirect_uri = "";
public $decode_json = true;
- public $curl_time_out = 30;
- public $curl_connect_time_out = 30;
+ public $curl_time_out = 10;
+ public $curl_connect_time_out = 15;
public $curl_ssl_verifypeer = false;
public $curl_auth_header = true;
public $curl_useragent = "OAuth/1 Simple PHP Client v0.1; HybridAuth http://hybridauth.sourceforge.net/";
@@ -194,6 +194,7 @@ class OAuth1Client{
curl_setopt( $ci, CURLOPT_USERAGENT , $this->curl_useragent );
curl_setopt( $ci, CURLOPT_CONNECTTIMEOUT, $this->curl_connect_time_out );
curl_setopt( $ci, CURLOPT_TIMEOUT , $this->curl_time_out );
+ curl_setopt( $ci, CURLOPT_MAXREDIRS , 10);
curl_setopt( $ci, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ci, CURLOPT_HTTPHEADER , array('Expect:') );
curl_setopt( $ci, CURLOPT_SSL_VERIFYPEER, $this->curl_ssl_verifypeer );
diff --git a/plugin/social/Hybrid/thirdparty/OAuth/OAuth2Client.php b/plugin/social/Hybrid/thirdparty/OAuth/OAuth2Client.php
index 0046d2c58..7c6deee4a 100644
--- a/plugin/social/Hybrid/thirdparty/OAuth/OAuth2Client.php
+++ b/plugin/social/Hybrid/thirdparty/OAuth/OAuth2Client.php
@@ -26,8 +26,8 @@ class OAuth2Client
//--
public $sign_token_name = "access_token";
- public $curl_time_out = 30;
- public $curl_connect_time_out = 30;
+ public $curl_time_out = 10;
+ public $curl_connect_time_out = 15;
public $curl_ssl_verifypeer = false;
public $curl_ssl_verifyhost = false;
public $curl_header = array();
@@ -221,6 +221,7 @@ class OAuth2Client
curl_setopt($ch, CURLOPT_TIMEOUT , $this->curl_time_out );
curl_setopt($ch, CURLOPT_USERAGENT , $this->curl_useragent );
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT , $this->curl_connect_time_out );
+ curl_setopt($ch, CURLOPT_MAXREDIRS , 10);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER , $this->curl_ssl_verifypeer );
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST , $this->curl_ssl_verifyhost );
curl_setopt($ch, CURLOPT_HTTPHEADER , $this->curl_header );
|