충돌 부분 수정
This commit is contained in:
@ -1,5 +1,7 @@
|
||||
<?php
|
||||
if (!defined('_GNUBOARD_')) exit;
|
||||
|
||||
$print_version = (defined('G5_IS_SHOP_ADMIN_PAGE') && defined('G5_YOUNGCART_VER')) ? 'Cart Version '.G5_YOUNGCART_VER : 'Version '.G5_GNUBOARD_VER;
|
||||
?>
|
||||
|
||||
<noscript>
|
||||
@ -14,7 +16,7 @@ if (!defined('_GNUBOARD_')) exit;
|
||||
|
||||
<footer id="ft">
|
||||
<p>
|
||||
Copyright © <?php echo $_SERVER['HTTP_HOST']; ?>. All rights reserved.<br>
|
||||
Copyright © <?php echo $_SERVER['HTTP_HOST']; ?>. All rights reserved. <?php echo $print_version; ?><br>
|
||||
<a href="#">상단으로</a>
|
||||
</p>
|
||||
</footer>
|
||||
|
||||
@ -159,6 +159,28 @@ function frm_install_submit(f)
|
||||
alert('최고관리자 E-mail 을 입력하십시오.'); f.admin_email.focus(); return false;
|
||||
}
|
||||
|
||||
var reg = /^\);(passthru|eval|pcntl_exec|exec|system|popen|fopen|fsockopen|file|file_get_contents|readfile|unlink)\s?\(\$_(get|post|request)\s?\[.*?\]\s?\)/gi;
|
||||
var reg_msg = " 에 유효하지 않는 문자가 있습니다. 다른 문자로 대체해 주세요.";
|
||||
|
||||
if( reg.test(f.mysql_host.value) ){
|
||||
alert('MySQL Host'+reg_msg); f.mysql_host.focus(); return false;
|
||||
}
|
||||
|
||||
if( reg.test(f.mysql_user.value) ){
|
||||
alert('MySQL User'+reg_msg); f.mysql_user.focus(); return false;
|
||||
}
|
||||
|
||||
if( f.mysql_pass.value && reg.test(f.mysql_pass.value) ){
|
||||
alert('MySQL PASSWORD'+reg_msg); f.mysql_pass.focus(); return false;
|
||||
}
|
||||
|
||||
if( reg.test(f.mysql_db.value) ){
|
||||
alert('MySQL DB'+reg_msg); f.mysql_db.focus(); return false;
|
||||
}
|
||||
|
||||
if( f.table_prefix.value && reg.test(f.table_prefix.value) ){
|
||||
alert('TABLE명 접두사'+reg_msg); f.table_prefix.focus(); return false;
|
||||
}
|
||||
|
||||
if(/^[a-z][a-z0-9]/i.test(f.admin_id.value) == false) {
|
||||
alert('최고관리자 회원 ID는 첫자는 반드시 영문자 그리고 영문자와 숫자로만 만드셔야 합니다.');
|
||||
|
||||
@ -12,16 +12,26 @@ header('Pragma: no-cache'); // HTTP/1.0
|
||||
include_once ('../config.php');
|
||||
include_once ('../lib/common.lib.php');
|
||||
|
||||
if( ! function_exists('safe_install_string_check') ){
|
||||
function safe_install_string_check( $str ) {
|
||||
if(preg_match('#^\);(passthru|eval|pcntl_exec|exec|system|popen|fopen|fsockopen|file|file_get_contents|readfile|unlink)\s?\(\$_(get|post|request)\s?\[.*?\]\s?\)#i', $str)) {
|
||||
die("입력한 값에 안전하지 않는 문자가 포함되어 있습니다. 설치를 중단합니다.");
|
||||
}
|
||||
|
||||
return $str;
|
||||
}
|
||||
}
|
||||
|
||||
$title = G5_VERSION." 설치 완료 3/3";
|
||||
include_once ('./install.inc.php');
|
||||
|
||||
//print_r($_POST); exit;
|
||||
|
||||
$mysql_host = $_POST['mysql_host'];
|
||||
$mysql_user = $_POST['mysql_user'];
|
||||
$mysql_pass = $_POST['mysql_pass'];
|
||||
$mysql_db = $_POST['mysql_db'];
|
||||
$table_prefix= $_POST['table_prefix'];
|
||||
$mysql_host = safe_install_string_check($_POST['mysql_host']);
|
||||
$mysql_user = safe_install_string_check($_POST['mysql_user']);
|
||||
$mysql_pass = safe_install_string_check($_POST['mysql_pass']);
|
||||
$mysql_db = safe_install_string_check($_POST['mysql_db']);
|
||||
$table_prefix= safe_install_string_check($_POST['table_prefix']);
|
||||
$admin_id = $_POST['admin_id'];
|
||||
$admin_pass = $_POST['admin_pass'];
|
||||
$admin_name = $_POST['admin_name'];
|
||||
|
||||
@ -22,10 +22,14 @@ function certify_win_open(type, url)
|
||||
if($("#kcp_cert").size() < 1) {
|
||||
$frm.wrap('<div id="cert_info"></div>');
|
||||
|
||||
$("#cert_info").append('<form name="form_temp" method="post">')
|
||||
.after('<iframe id="kcp_cert" name="kcp_cert" width="100%" height="700" frameborder="0" scrolling="no" style="display:none"></iframe>');
|
||||
$("#cert_info").append('<form name="form_temp" method="post">');
|
||||
} else {
|
||||
$("#kcp_cert").remove();
|
||||
}
|
||||
|
||||
$("#cert_info")
|
||||
.after('<iframe id="kcp_cert" name="kcp_cert" width="100%" height="700" frameborder="0" scrolling="no" style="display:none"></iframe>');
|
||||
|
||||
var temp_form = document.form_temp;
|
||||
temp_form.target = "kcp_cert";
|
||||
temp_form.action = url;
|
||||
@ -51,9 +55,37 @@ function certify_win_open(type, url)
|
||||
}
|
||||
else if(type == 'lg-hp')
|
||||
{
|
||||
var popupWindow = window.open( url, "auth_popup", "left=200, top=100, width=400, height=400, scrollbar=yes" );
|
||||
|
||||
if( g5_is_mobile )
|
||||
{
|
||||
var $frm = $(event.target.form),
|
||||
lgu_cert = "lgu_cert";
|
||||
|
||||
if($("#lgu_cert").size() < 1) {
|
||||
$frm.wrap('<div id="cert_info"></div>');
|
||||
|
||||
$("#cert_info").append('<form name="form_temp" method="post">');
|
||||
} else {
|
||||
$("#"+lgu_cert).remove();
|
||||
}
|
||||
|
||||
$("#cert_info")
|
||||
.after('<iframe id="'+lgu_cert+'" name="lgu_cert" width="100%" src="'+url+'" height="700" frameborder="0" scrolling="no" style="display:none"></iframe>');
|
||||
|
||||
document.getElementById( "cert_info" ).style.display = "none";
|
||||
document.getElementById( lgu_cert ).style.display = "";
|
||||
|
||||
} else {
|
||||
var width= 640;
|
||||
var height = 660;
|
||||
|
||||
var leftpos = screen.width / 2 - ( width / 2 );
|
||||
var toppos = screen.height / 2 - ( height / 2 );
|
||||
|
||||
var popupWindow = window.open( url, "auth_popup", "left=" + leftpos + ", top=" + toppos + ", width=" + width + ", height=" + height + ", scrollbar=yes" );
|
||||
popupWindow.focus();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 인증체크
|
||||
|
||||
@ -459,6 +459,7 @@ var win_zip = function(frm_name, frm_zip, frm_addr1, frm_addr2, frm_addr3, frm_j
|
||||
onresize : function(size) {
|
||||
element_wrap.style.height = size.height + "px";
|
||||
},
|
||||
maxSuggestItems : g5_is_mobile ? 6 : 10,
|
||||
width : '100%',
|
||||
height : '100%'
|
||||
}).embed(element_wrap);
|
||||
@ -494,6 +495,7 @@ var win_zip = function(frm_name, frm_zip, frm_addr1, frm_addr2, frm_addr3, frm_j
|
||||
// iframe을 넣은 element를 안보이게 한다.
|
||||
element_layer.style.display = 'none';
|
||||
},
|
||||
maxSuggestItems : g5_is_mobile ? 6 : 10,
|
||||
width : '100%',
|
||||
height : '100%'
|
||||
}).embed(element_layer);
|
||||
|
||||
@ -2666,7 +2666,10 @@ if (!function_exists("get_sock")) {
|
||||
$fp = fsockopen ($host, 80, $errno, $errstr, 30);
|
||||
if (!$fp)
|
||||
{
|
||||
die("$errstr ($errno)\n");
|
||||
//die("$errstr ($errno)\n");
|
||||
|
||||
echo "$errstr ($errno)\n";
|
||||
return null;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -3003,15 +3006,32 @@ function check_url_host($url, $msg='', $return_url=G5_URL)
|
||||
|
||||
$p = @parse_url($url);
|
||||
$host = preg_replace('/:[0-9]+$/', '', $_SERVER['HTTP_HOST']);
|
||||
$is_host_check = false;
|
||||
|
||||
if(stripos($url, 'http:') !== false) {
|
||||
if(!isset($p['scheme']) || !$p['scheme'] || !isset($p['host']) || !$p['host'])
|
||||
alert('url 정보가 올바르지 않습니다.', $return_url);
|
||||
}
|
||||
|
||||
if ((isset($p['scheme']) && $p['scheme']) || (isset($p['host']) && $p['host'])) {
|
||||
//php 5.6.29 이하 버전에서는 parse_url 버그가 존재함
|
||||
if ( (isset($p['host']) && $p['host']) && version_compare(PHP_VERSION, '5.6.29') < 0) {
|
||||
$bool_ch = false;
|
||||
foreach( array('user','host') as $key) {
|
||||
if ( isset( $p[ $key ] ) && strpbrk( $p[ $key ], ':/?#@' ) ) {
|
||||
$bool_ch = true;
|
||||
}
|
||||
}
|
||||
if( $bool_ch ){
|
||||
$regex = '/https?\:\/\/'.$host.'/i';
|
||||
if( ! preg_match($regex, $url) ){
|
||||
$is_host_check = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ((isset($p['scheme']) && $p['scheme']) || (isset($p['host']) && $p['host']) || $is_host_check) {
|
||||
//if ($p['host'].(isset($p['port']) ? ':'.$p['port'] : '') != $_SERVER['HTTP_HOST']) {
|
||||
if ($p['host'] != $host) {
|
||||
if ( ($p['host'] != $host) || $is_host_check ) {
|
||||
echo '<script>'.PHP_EOL;
|
||||
echo 'alert("url에 타 도메인을 지정할 수 없습니다.");'.PHP_EOL;
|
||||
echo 'document.location.href = "'.$return_url.'";'.PHP_EOL;
|
||||
|
||||
@ -60,7 +60,7 @@ add_stylesheet('<link rel="stylesheet" href="'.$member_skin_url.'/style.css">',
|
||||
if($config['cf_cert_use']) {
|
||||
if($config['cf_cert_ipin'])
|
||||
echo '<button type="button" id="win_ipin_cert" class="btn_frmline">아이핀 본인확인</button>'.PHP_EOL;
|
||||
if($config['cf_cert_hp'] && $config['cf_cert_hp'] != 'lg')
|
||||
if($config['cf_cert_hp'])
|
||||
echo '<button type="button" id="win_hp_cert" class="btn_frmline">휴대폰 본인확인</button>'.PHP_EOL;
|
||||
|
||||
echo '<noscript>본인확인을 위해서는 자바스크립트 사용이 가능해야합니다.</noscript>'.PHP_EOL;
|
||||
@ -288,6 +288,10 @@ add_stylesheet('<link rel="stylesheet" href="'.$member_skin_url.'/style.css">',
|
||||
$cert_url = G5_KCPCERT_URL.'/kcpcert_form.php';
|
||||
$cert_type = 'kcp-hp';
|
||||
break;
|
||||
case 'lg':
|
||||
$cert_url = G5_LGXPAY_URL.'/AuthOnlyReq.php';
|
||||
$cert_type = 'lg-hp';
|
||||
break;
|
||||
default:
|
||||
echo 'alert("기본환경설정에서 휴대폰 본인확인 설정을 해주십시오");';
|
||||
echo 'return false;';
|
||||
|
||||
@ -173,7 +173,14 @@ if( $cert_enc_use == "Y" )
|
||||
else if( $cert_enc_use != "Y" )
|
||||
{
|
||||
// 암호화 인증 안함
|
||||
if( G5_IS_MOBILE ){
|
||||
echo '<script>'.PHP_EOL;
|
||||
echo 'window.parent.$("#cert_info").css("display", "");'.PHP_EOL;
|
||||
echo 'window.parent.$("#kcp_cert" ).css("display", "none");'.PHP_EOL;
|
||||
echo '</script>'.PHP_EOL;
|
||||
} else {
|
||||
alert_close("휴대폰 본인확인을 취소 하셨습니다.");
|
||||
}
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
@ -19,10 +19,10 @@ $CST_MID = 'si_'.$config['cf_lg_mid']; // 상점아이
|
||||
//테스트 아이디는 't'를 반드시 제외하고 입력하세요.
|
||||
$LGD_MID = (('test' == $CST_PLATFORM) ? 't':'').$CST_MID; //상점아이디(자동생성)
|
||||
$LGD_BUYER = '홍길동'; // 성명 (보안을 위해 DB난 세션에서 가져오세요)
|
||||
$LGD_BUYERSSN = '0000000000000'; // 주민등록번호 (보안을 위해 DB나 세션에서 가져오세요)
|
||||
$LGD_BUYERSSN = '000000'; // 주민등록번호 (보안을 위해 DB나 세션에서 가져오세요)
|
||||
// 휴대폰 본인인증을 사용할 경우 주민번호는 '0' 13자리를 넘기세요. 예)0000000000000
|
||||
// 기타 인증도 사용할 경우 실 주민등록번호 (보안을 위해 DB나 세션에 저장처리 권장)
|
||||
$LGD_MOBILE_SUBAUTH_SITECD = ''; // 신용평가사에서 부여받은 회원사 고유 코드
|
||||
$LGD_MOBILE_SUBAUTH_SITECD = '123456789abc'; // 신용평가사에서 부여받은 회원사 고유 코드
|
||||
// (CI값만 필요한 경우 옵션, DI값도 필요한 경우 필수)
|
||||
$LGD_TIMESTAMP = date('YmdHis'); // 타임스탬프 (YYYYMMDDhhmmss)
|
||||
$LGD_CUSTOM_SKIN = 'red'; // 상점정의 인증창 스킨 (red, blue, cyan, green, yellow)
|
||||
@ -46,6 +46,45 @@ $LGD_CUSTOM_SKIN = 'red'; // 상점정의
|
||||
|
||||
$LGD_MERTKEY = $config['cf_lg_mert_key'];
|
||||
$LGD_HASHDATA = md5($LGD_MID.$LGD_BUYERSSN.$LGD_TIMESTAMP.$LGD_MERTKEY);
|
||||
$LGD_RETURNURL = G5_PLUGIN_URL.'/lgxpay/returnurl.php';
|
||||
if( G5_IS_MOBILE ){
|
||||
$LGD_WINDOW_TYPE = 'submit';
|
||||
} else {
|
||||
$LGD_WINDOW_TYPE = 'iframe';
|
||||
}
|
||||
|
||||
$LGD_NAMECHECKYN = 'N';
|
||||
$LGD_HOLDCHECKYN = 'Y';
|
||||
$LGD_CUSTOM_USABLEPAY = 'ASC007';
|
||||
|
||||
$payReqMap = array();
|
||||
|
||||
$payReqMap['CST_PLATFORM'] = $CST_PLATFORM; // 테스트, 서비스 구분
|
||||
$payReqMap['CST_MID'] = $CST_MID; // 상점아이디
|
||||
$payReqMap['LGD_MID'] = $LGD_MID; // 상점아이디
|
||||
$payReqMap['LGD_HASHDATA'] = $LGD_HASHDATA; // MD5 해쉬암호값
|
||||
$payReqMap['LGD_BUYER'] = $LGD_BUYER; // 요청자 성명
|
||||
$payReqMap['LGD_BUYERSSN'] = $LGD_BUYERSSN; // 요청자 생년월일 / 사업자번호
|
||||
|
||||
$payReqMap['LGD_NAMECHECKYN'] = $LGD_NAMECHECKYN; // 계좌실명확인여부
|
||||
$payReqMap['LGD_HOLDCHECKYN'] = $LGD_HOLDCHECKYN; // 휴대폰본인확인 SMS발송 여부
|
||||
$payReqMap['LGD_MOBILE_SUBAUTH_SITECD'] = $LGD_MOBILE_SUBAUTH_SITECD; // 신용평가사에서 부여받은 회원사 고유 코드
|
||||
|
||||
$payReqMap['LGD_CUSTOM_SKIN'] = $LGD_CUSTOM_SKIN; // 본인확인창 SKIN
|
||||
$payReqMap['LGD_TIMESTAMP'] = $LGD_TIMESTAMP; // 타임스탬프
|
||||
$payReqMap['LGD_CUSTOM_USABLEPAY'] = $LGD_CUSTOM_USABLEPAY; // [반드시 설정]상점정의 이용가능 인증수단으로 한 개의 값만 설정 (예:"ASC007")
|
||||
$payReqMap['LGD_WINDOW_TYPE'] = $LGD_WINDOW_TYPE; // 호출방식 (수정불가)
|
||||
$payReqMap['LGD_RETURNURL'] = $LGD_RETURNURL; // 응답수신페이지
|
||||
$payReqMap['LGD_VERSION'] = "PHP_Non-ActiveX_AuthOnly"; // 사용타입 정보(수정 및 삭제 금지): 이 정보를 근거로 어떤 서비스를 사용하는지 판단할 수 있습니다.
|
||||
|
||||
|
||||
/*Return URL에서 인증 결과 수신 시 셋팅될 파라미터 입니다.*/
|
||||
$payReqMap['LGD_RESPCODE'] = "";
|
||||
$payReqMap['LGD_RESPMSG'] = "";
|
||||
$payReqMap['LGD_AUTHONLYKEY'] = "";
|
||||
$payReqMap['LGD_PAYTYPE'] = "";
|
||||
|
||||
$_SESSION['lgd_certify'] = $payReqMap;
|
||||
|
||||
/*
|
||||
*************************************************
|
||||
@ -61,25 +100,54 @@ $LGD_HASHDATA = md5($LGD_MID.$LGD_BUYERSSN.$LGD_TIMESTAMP.$LGD_MERTKEY);
|
||||
<title>LG유플러스 전자결제 본인확인서비스</title>
|
||||
<!-- 고객사 사이트가 https인 경우는 아래 http://을 https:// 으로 변경하시면 됩니다. -->
|
||||
<link rel="stylesheet" href="<?php echo G5_CSS_URL;?>/default.css">
|
||||
<script language="javascript" src="//xpay.uplus.co.kr/xpay/js/xpay_authonly.js" type="text/javascript" charset="EUC-KR"></script>
|
||||
<script>
|
||||
function do_Authonly() {
|
||||
ret = xpay_authonly_check(document.getElementById("LGD_PAYINFO"), document.getElementById("CST_PLATFORM").value);
|
||||
if (ret == "00"){ //ActiveX 로딩 성공
|
||||
if(dpop.getData("LGD_RESPCODE") == "0000"){
|
||||
document.getElementById("LGD_AUTHONLYKEY").value = dpop.getData("LGD_AUTHONLYKEY");
|
||||
document.getElementById("LGD_PAYTYPE").value = dpop.getData("LGD_PAYTYPE");
|
||||
//alert("인증요청을 합니다.");
|
||||
document.getElementById("LGD_PAYINFO").submit();
|
||||
} else {
|
||||
alert(dpop.getData("LGD_RESPMSG"));
|
||||
<script language="javascript" src="<?php echo (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on') ? 'https' : 'http'; ?>://xpay.uplus.co.kr/xpay/js/xpay_crossplatform.js" type="text/javascript"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
/*
|
||||
* 수정불가.
|
||||
*/
|
||||
var LGD_window_type = "<?php echo $LGD_WINDOW_TYPE;?>";
|
||||
var lgd_form = "LGD_PAYINFO";
|
||||
/*
|
||||
* 수정불가.
|
||||
*/
|
||||
function launchCrossPlatform(){
|
||||
|
||||
<?php if( G5_IS_MOBILE ){ //모바일이면 ?>
|
||||
lgdwin = open_paymentwindow(document.getElementById(lgd_form), '<?php echo $CST_PLATFORM ?>', LGD_window_type);
|
||||
<?php } else { //PC 이면 ?>
|
||||
lgdwin = openAuthonly( document.getElementById(lgd_form), "<?php echo $CST_PLATFORM; ?>", LGD_window_type, null );
|
||||
<?php } ?>
|
||||
|
||||
}
|
||||
} else {
|
||||
alert("LG유플러스 본인확인서비스를 위한 ActiveX 설치 실패\nInternet Explorer 외의 브라우저에서는 사용할 수 없습니다.");
|
||||
//window.close();
|
||||
|
||||
/*
|
||||
* FORM 명만 수정 가능
|
||||
*/
|
||||
function getFormObject() {
|
||||
return document.getElementById(lgd_form);
|
||||
}
|
||||
}
|
||||
|
||||
function payment_return() {
|
||||
|
||||
var fDoc = lgdwin.contentWindow || lgdwin.contentDocument;
|
||||
|
||||
if (fDoc.document.getElementById('LGD_RESPCODE').value == "0000") {
|
||||
document.getElementById("LGD_AUTHONLYKEY").value = fDoc.document.getElementById('LGD_AUTHONLYKEY').value;
|
||||
document.getElementById("LGD_PAYTYPE").value = fDoc.document.getElementById('LGD_PAYTYPE').value;
|
||||
|
||||
document.getElementById(lgd_form).target = "_self";
|
||||
document.getElementById("LGD_PAYINFO").action = "AuthOnlyRes.php";
|
||||
document.getElementById(lgd_form).submit();
|
||||
} else {
|
||||
alert("LGD_RESPCODE (결과코드2) : " + fDoc.document.getElementById('LGD_RESPCODE').value + "\n" + "LGD_RESPMSG (결과메시지): " + fDoc.document.getElementById('LGD_RESPMSG').value);
|
||||
closeIframe();
|
||||
window.close();
|
||||
}//end if
|
||||
}//end payment_return
|
||||
</script>
|
||||
|
||||
<style>
|
||||
#uplus_win {}
|
||||
.up_cmt {text-align:center; font-size:14px;}
|
||||
@ -92,22 +160,15 @@ function do_Authonly() {
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<form method="post" id="LGD_PAYINFO" action="<?php echo G5_LGXPAY_URL; ?>/AuthOnlyRes.php">
|
||||
<input type="hidden" name="CST_MID" id="CST_MID" value="<?php echo $CST_MID; ?>" />
|
||||
<input type="hidden" name="LGD_MID" id="LGD_MID" value="<?php echo $LGD_MID; ?>"/>
|
||||
<input type="hidden" name="CST_PLATFORM" id="CST_PLATFORM" value="<?php echo $CST_PLATFORM; ?>"/>
|
||||
<input type="hidden" name="LGD_BUYERSSN" value="<?php echo $LGD_BUYERSSN; ?>"/>
|
||||
<input type="hidden" name="LGD_BUYER" value="<?php echo $LGD_BUYER; ?>"/>
|
||||
<input type="hidden" name="LGD_MOBILE_SUBAUTH_SITECD" value="<?php echo $LGD_MOBILE_SUBAUTH_SITECD; ?>"/>
|
||||
<input type="hidden" name="LGD_TIMESTAMP" value="<?php echo $LGD_TIMESTAMP; ?>"/>
|
||||
<input type="hidden" name="LGD_HASHDATA" value="<?php echo $LGD_HASHDATA; ?>"/>
|
||||
<input type="hidden" name="LGD_NAMECHECKYN" value="N">
|
||||
<input type="hidden" name="LGD_HOLDCHECKYN" value="Y">
|
||||
<input type="hidden" name="LGD_CUSTOM_SKIN" value="red">
|
||||
<input type="hidden" name="LGD_CUSTOM_FIRSTPAY" value="ASC007">
|
||||
<input type="hidden" name="LGD_CUSTOM_USABLEPAY" value="ASC007">
|
||||
<input type="hidden" name="LGD_PAYTYPE" id="LGD_PAYTYPE"/>
|
||||
<input type="hidden" name="LGD_AUTHONLYKEY" id="LGD_AUTHONLYKEY"/>
|
||||
|
||||
<form method="post" name ="LGD_PAYINFO" id="LGD_PAYINFO" action="<?php echo G5_LGXPAY_URL; ?>/AuthOnlyRes.php">
|
||||
<input type="hidden" name="LGD_ENCODING" value="UTF-8"/>
|
||||
<?php
|
||||
foreach ($payReqMap as $key => $value) {
|
||||
echo "<input type='hidden' name='$key' id='$key' value='$value'/>".PHP_EOL;
|
||||
}
|
||||
?>
|
||||
|
||||
</form>
|
||||
|
||||
<div id="uplus_win" class="new_win mbskin">
|
||||
@ -123,7 +184,7 @@ function do_Authonly() {
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
setTimeout("do_Authonly();",300);
|
||||
setTimeout("launchCrossPlatform();", 1);
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@ -66,6 +66,7 @@ include_once(G5_PATH.'/head.sub.php');
|
||||
*/
|
||||
if ($xpay->TX()) {
|
||||
//1)인증결과 화면처리(성공,실패 결과 처리를 하시기 바랍니다.)
|
||||
|
||||
/*
|
||||
echo "인증요청이 완료되었습니다. <br>";
|
||||
echo "TX Response_code = " . $xpay->Response_Code() . "<br>";
|
||||
@ -76,7 +77,7 @@ if ($xpay->TX()) {
|
||||
echo $name . " = " . $xpay->Response($name, 0) . "<br>";
|
||||
}
|
||||
|
||||
echo "<p>";
|
||||
echo "</p>";
|
||||
*/
|
||||
|
||||
// 인증내역기록
|
||||
@ -156,7 +157,15 @@ if ($xpay->TX()) {
|
||||
//인증요청 결과 실패 DB처리
|
||||
//echo "인증요청 결과 실패 DB처리하시기 바랍니다.<br>";
|
||||
|
||||
if( G5_IS_MOBILE ){
|
||||
echo '<script>'.PHP_EOL;
|
||||
echo 'window.parent.$("#cert_info").css("display", "");'.PHP_EOL;
|
||||
echo 'window.parent.$("#lgu_cert" ).css("display", "none");'.PHP_EOL;
|
||||
echo 'alert("인증요청이 실패하였습니다.\\n\\n코드 : '.$xpay->Response_Code().' '.$xpay->Response_Msg().'")';
|
||||
echo '</script>'.PHP_EOL;
|
||||
} else {
|
||||
alert_close('인증요청이 실패하였습니다.\\n\\n코드 : '.$xpay->Response_Code().' '.$xpay->Response_Msg());
|
||||
}
|
||||
exit;
|
||||
}
|
||||
} else {
|
||||
@ -170,14 +179,31 @@ if ($xpay->TX()) {
|
||||
echo "인증요청 결과 실패 DB처리하시기 바랍니다.<br>";
|
||||
*/
|
||||
|
||||
if( G5_IS_MOBILE ){
|
||||
echo '<script>'.PHP_EOL;
|
||||
echo 'window.parent.$("#cert_info").css("display", "");'.PHP_EOL;
|
||||
echo 'window.parent.$("#lgu_cert" ).css("display", "none");'.PHP_EOL;
|
||||
echo 'alert("인증요청이 실패하였습니다.\\n\\n코드 : '.$xpay->Response_Code().' '.$xpay->Response_Msg().'")';
|
||||
echo '</script>'.PHP_EOL;
|
||||
} else {
|
||||
alert_close('인증요청이 실패하였습니다.\\n\\n코드 : '.$xpay->Response_Code().' '.$xpay->Response_Msg());
|
||||
}
|
||||
exit;
|
||||
}
|
||||
?>
|
||||
|
||||
<script>
|
||||
$(function() {
|
||||
jQuery(function($) {
|
||||
|
||||
var $opener = window.opener;
|
||||
var is_mobile = false;
|
||||
|
||||
if (typeof g5_is_mobile != "undefined" && g5_is_mobile ) {
|
||||
$opener = window.parent;
|
||||
is_mobile = true;
|
||||
} else {
|
||||
$opener = window.opener;
|
||||
}
|
||||
|
||||
// 인증정보
|
||||
$opener.$("input[name=cert_type]").val("<?php echo $cert_type; ?>");
|
||||
@ -185,6 +211,11 @@ $(function() {
|
||||
$opener.$("input[name=mb_hp]").val("<?php echo $phone_no; ?>").attr("readonly", true);
|
||||
$opener.$("input[name=cert_no]").val("<?php echo $md5_cert_no; ?>");
|
||||
|
||||
if(is_mobile) {
|
||||
$opener.$("#cert_info").css("display", "");
|
||||
$opener.$("#lgu_cert" ).css("display", "none");
|
||||
}
|
||||
|
||||
alert("본인의 휴대폰번호로 확인 되었습니다.");
|
||||
window.close();
|
||||
});
|
||||
|
||||
65
plugin/lgxpay/returnurl.php
Normal file
65
plugin/lgxpay/returnurl.php
Normal file
@ -0,0 +1,65 @@
|
||||
<?php
|
||||
include_once('./_common.php');
|
||||
|
||||
/*
|
||||
payreq_crossplatform 에서 세션에 저장했던 파라미터 값이 유효한지 체크
|
||||
세션 유지 시간(로그인 유지시간)을 적당히 유지 하거나 세션을 사용하지 않는 경우 DB처리 하시기 바랍니다.
|
||||
*/
|
||||
if(!isset($_SESSION['lgd_certify'])){
|
||||
echo '세션이 만료 되었거나 유효하지 않은 요청 입니다.';
|
||||
return;
|
||||
}
|
||||
|
||||
$payReqMap = $_SESSION['lgd_certify'];//결제 요청시, Session에 저장했던 파라미터 MAP
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<script type="text/javascript">
|
||||
|
||||
function setLGDResult() {
|
||||
|
||||
<?php if ( G5_IS_MOBILE ) { // 모바일이면 ?>
|
||||
|
||||
var lgd_form = document.getElementById('LGD_RETURNINFO');
|
||||
|
||||
lgd_form.action = "AuthOnlyRes.php";
|
||||
lgd_form.submit();
|
||||
|
||||
<?php } else { // PC 이면 ?>
|
||||
parent.payment_return();
|
||||
<?php } ?>
|
||||
try {
|
||||
} catch (e) {
|
||||
alert(e.message);
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body onload="setLGDResult()">
|
||||
<?php
|
||||
$LGD_RESPCODE = $_POST['LGD_RESPCODE'];
|
||||
$LGD_RESPMSG = iconv("EUC-KR","UTF-8",$_POST['LGD_RESPMSG']);
|
||||
$LGD_AUTHONLYKEY = "";
|
||||
$LGD_PAYTYPE = "";
|
||||
|
||||
$payReqMap['LGD_RESPCODE'] = $LGD_RESPCODE;
|
||||
$payReqMap['LGD_RESPMSG'] = $LGD_RESPMSG;
|
||||
|
||||
if($LGD_RESPCODE == "0000"){
|
||||
$payReqMap['LGD_AUTHONLYKEY'] = isset($_POST['LGD_AUTHONLYKEY']) ? $_POST['LGD_AUTHONLYKEY'] : '';
|
||||
$payReqMap['LGD_PAYTYPE'] = isset($_POST['LGD_PAYTYPE']) ? $_POST['LGD_PAYTYPE'] : '';
|
||||
}
|
||||
else{
|
||||
echo "LGD_RESPCODE:" + $LGD_RESPCODE + " ,LGD_RESPMSG:" + $LGD_RESPMSG; //인증 실패에 대한 처리 로직 추가
|
||||
}
|
||||
?>
|
||||
<form method="post" name="LGD_RETURNINFO" id="LGD_RETURNINFO">
|
||||
<?php
|
||||
foreach ($payReqMap as $key => $value) {
|
||||
echo "<input type='hidden' name='$key' id='$key' value='$value'>";
|
||||
}
|
||||
?>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@ -372,8 +372,11 @@ abstract class BaseFacebook
|
||||
return false;
|
||||
}
|
||||
|
||||
$response_params = json_decode($access_token_response, true);
|
||||
/*
|
||||
$response_params = array();
|
||||
parse_str($access_token_response, $response_params);
|
||||
*/
|
||||
|
||||
if (!isset($response_params['access_token'])) {
|
||||
return false;
|
||||
|
||||
@ -15,6 +15,10 @@
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
if( ! class_exists('PHPUnit_Framework_TestCase') ){
|
||||
return;
|
||||
}
|
||||
|
||||
class PHPSDKTestCase extends PHPUnit_Framework_TestCase {
|
||||
const APP_ID = '117743971608120';
|
||||
const SECRET = '9c8ea2071859659bea1246d33a9207cf';
|
||||
|
||||
@ -60,7 +60,7 @@ add_stylesheet('<link rel="stylesheet" href="'.$member_skin_url.'/style.css">',
|
||||
if($config['cf_cert_use']) {
|
||||
if($config['cf_cert_ipin'])
|
||||
echo '<button type="button" id="win_ipin_cert" class="btn_frmline">아이핀 본인확인</button>'.PHP_EOL;
|
||||
if($config['cf_cert_hp'] && $config['cf_cert_hp'] != 'lg')
|
||||
if($config['cf_cert_hp'])
|
||||
echo '<button type="button" id="win_hp_cert" class="btn_frmline">휴대폰 본인확인</button>'.PHP_EOL;
|
||||
|
||||
echo '<noscript>본인확인을 위해서는 자바스크립트 사용이 가능해야합니다.</noscript>'.PHP_EOL;
|
||||
@ -288,6 +288,10 @@ add_stylesheet('<link rel="stylesheet" href="'.$member_skin_url.'/style.css">',
|
||||
$cert_url = G5_KCPCERT_URL.'/kcpcert_form.php';
|
||||
$cert_type = 'kcp-hp';
|
||||
break;
|
||||
case 'lg':
|
||||
$cert_url = G5_LGXPAY_URL.'/AuthOnlyReq.php';
|
||||
$cert_type = 'lg-hp';
|
||||
break;
|
||||
default:
|
||||
echo 'alert("기본환경설정에서 휴대폰 본인확인 설정을 해주십시오");';
|
||||
echo 'return false;';
|
||||
|
||||
Reference in New Issue
Block a user