이니시스 모듈 추가 및 모바일 결제 기능 개선
This commit is contained in:
@ -72,7 +72,7 @@ else
|
||||
|
||||
<?php
|
||||
$qstr .= 'skin='.$skin.'&ev_id='.$ev_id.'&sort='.$sort.'&sortodr='.$sortodr;
|
||||
echo get_paging($config['cf_write_pages'], $page, $total_page, "{$_SERVER['PHP_SELF']}?$qstr&page=");
|
||||
echo get_paging($config['cf_mobile_pages'], $page, $total_page, "{$_SERVER['PHP_SELF']}?$qstr&page=");
|
||||
?>
|
||||
|
||||
<?php
|
||||
|
||||
7
mobile/shop/inicis/_common.php
Normal file
7
mobile/shop/inicis/_common.php
Normal file
@ -0,0 +1,7 @@
|
||||
<?php
|
||||
include_once('../../../common.php');
|
||||
|
||||
if (!defined('G5_USE_SHOP') || !G5_USE_SHOP)
|
||||
die('<p>쇼핑몰 설치 후 이용해 주십시오.</p>');
|
||||
define('_SHOP_', true);
|
||||
?>
|
||||
26
mobile/shop/inicis/orderform.1.php
Normal file
26
mobile/shop/inicis/orderform.1.php
Normal file
@ -0,0 +1,26 @@
|
||||
<?php
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
|
||||
<form name="sm_form" method="POST" action="" accept-charset="euc-kr">
|
||||
<input type="hidden" name="P_OID" value="<?php echo $od_id; ?>">
|
||||
<input type="hidden" name="P_GOODS" value="<?php echo $goods; ?>">
|
||||
<input type="hidden" name="P_AMT" value="<?php echo $tot_price; ?>">
|
||||
<input type="hidden" name="P_UNAME" value="">
|
||||
<input type="hidden" name="P_MOBILE" value="">
|
||||
<input type="hidden" name="P_EMAIL" value="">
|
||||
<input type="hidden" name="P_MID" value="<?php echo $default['de_inicis_mid']; ?>">
|
||||
<input type="hidden" name="P_NEXT_URL" value="<?php echo $next_url; ?>">
|
||||
<input type="hidden" name="P_NOTI_URL" value="<?php echo $noti_url; ?>">
|
||||
<input type="hidden" name="P_RETURN_URL" value="">
|
||||
<input type="hidden" name="P_HPP_METHOD" value="2">
|
||||
<input type="hidden" name="P_RESERVED" value="bank_receipt=N&twotrs_isp=Y&block_isp=Y<?php echo $useescrow; ?>">
|
||||
<input type="hidden" name="P_NOTI" value="<?php echo $od_id; ?>">
|
||||
|
||||
<input type="hidden" name="good_mny" value="<?php echo $tot_price; ?>" >
|
||||
|
||||
<?php if($default['de_tax_flag_use']) { ?>
|
||||
<input type="hidden" name="P_TAX" value="">
|
||||
<input type="hidden" name="P_TAXFREE" value="">
|
||||
<?php } ?>
|
||||
</form>
|
||||
30
mobile/shop/inicis/orderform.2.php
Normal file
30
mobile/shop/inicis/orderform.2.php
Normal file
@ -0,0 +1,30 @@
|
||||
<?php
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
|
||||
<input type="hidden" name="good_mny" value="<?php echo $tot_price ?>" >
|
||||
<input type="hidden" name="res_cd" value=""> <!-- 결과 코드 -->
|
||||
|
||||
<input type="hidden" name="P_HASH" value="">
|
||||
<input type="hidden" name="P_TYPE" value="">
|
||||
<input type="hidden" name="P_UNAME" value="">
|
||||
<input type="hidden" name="P_AUTH_DT" value="">
|
||||
<input type="hidden" name="P_AUTH_NO" value="">
|
||||
<input type="hidden" name="P_HPP_CORP" value="">
|
||||
<input type="hidden" name="P_APPL_NUM" value="">
|
||||
<input type="hidden" name="P_VACT_NUM" value="">
|
||||
<input type="hidden" name="P_VACT_NAME" value="">
|
||||
<input type="hidden" name="P_VACT_BANK" value="">
|
||||
<input type="hidden" name="P_CARD_ISSUER" value="">
|
||||
|
||||
<?php if($default['de_tax_flag_use']) { ?>
|
||||
<input type="hidden" name="comm_tax_mny" value="<?php echo $comm_tax_mny; ?>"> <!-- 과세금액 -->
|
||||
<input type="hidden" name="comm_vat_mny" value="<?php echo $comm_vat_mny; ?>"> <!-- 부가세 -->
|
||||
<input type="hidden" name="comm_free_mny" value="<?php echo $comm_free_mny; ?>"> <!-- 비과세 금액 -->
|
||||
<?php } ?>
|
||||
|
||||
<div id="display_pay_button" class="btn_confirm">
|
||||
<span id="show_req_btn"><input type="button" name="submitChecked" onClick="pay_approval();" value="결제등록"class="btn_submit"></span>
|
||||
<span id="show_pay_btn" style="display:none;"><input type="button" onClick="forderform_check();" value="주문하기" class="btn_submit"></span>
|
||||
<a href="javascript:history.go(-1);" class="btn_cancel">취소</a>
|
||||
</div>
|
||||
3
mobile/shop/inicis/orderform.3.php
Normal file
3
mobile/shop/inicis/orderform.3.php
Normal file
@ -0,0 +1,3 @@
|
||||
<?php
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
105
mobile/shop/inicis/pay_approval.php
Normal file
105
mobile/shop/inicis/pay_approval.php
Normal file
@ -0,0 +1,105 @@
|
||||
<?php
|
||||
include_once('./_common.php');
|
||||
include_once(G5_MSHOP_PATH.'/settle_inicis.inc.php');
|
||||
|
||||
// 세션 초기화
|
||||
set_session('P_TID', '');
|
||||
set_session('P_AMT', '');
|
||||
set_session('P_HASH', '');
|
||||
|
||||
$oid = trim($_REQUEST['P_NOTI']);
|
||||
|
||||
$sql = " select * from {$g5['g5_shop_order_data_table']} where od_id = '$oid' ";
|
||||
$row = sql_fetch($sql);
|
||||
|
||||
$data = unserialize($row['dt_data']);
|
||||
|
||||
if(isset($data['pp_id']) && $data['pp_id']) {
|
||||
$order_action_url = G5_HTTPS_MSHOP_URL.'/personalpayformupdate.php';
|
||||
$page_return_url = G5_SHOP_URL.'/personalpayform.php?pp_id='.$data['pp_id'];
|
||||
} else {
|
||||
$order_action_url = G5_HTTPS_MSHOP_URL.'/orderformupdate.php';
|
||||
$page_return_url = G5_SHOP_URL.'/orderform.php';
|
||||
if($_SESSION['ss_direct'])
|
||||
$page_return_url .= '?sw_direct=1';
|
||||
}
|
||||
|
||||
if($_REQUEST['P_STATUS'] != '00') {
|
||||
alert('오류 : '.iconv_utf8($_REQUEST['P_RMESG1']).' 코드 : '.$_REQUEST['P_STATUS'], $page_return_url);
|
||||
} else {
|
||||
$post_data = array(
|
||||
'P_MID' => $default['de_inicis_mid'],
|
||||
'P_TID' => $_REQUEST['P_TID']
|
||||
);
|
||||
|
||||
$ch = curl_init();
|
||||
curl_setopt($ch, CURLOPT_URL, $_REQUEST['P_REQ_URL']);
|
||||
curl_setopt($ch, CURLOPT_POST, 1);
|
||||
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
$return = curl_exec($ch);
|
||||
|
||||
if(!$return)
|
||||
alert('KG이니시스와 통신 오류로 결제등록 요청을 완료하지 못했습니다.\\n결제등록 요청을 다시 시도해 주십시오.', $page_return_url);
|
||||
|
||||
// 결과를 배열로 변환
|
||||
parse_str($return, $ret);
|
||||
$PAY = array_map('trim', $ret);
|
||||
|
||||
if($PAY['P_STATUS'] != '00')
|
||||
alert('오류 : '.iconv_utf8($PAY['P_RMESG1']).' 코드 : '.$PAY['P_STATUS'], $page_return_url);
|
||||
|
||||
// TID, AMT 를 세션으로 주문완료 페이지 전달
|
||||
$hash = md5($PAY['P_TID'].$PAY['P_MID'].$PAY['P_AMT']);
|
||||
set_session('P_TID', $PAY['P_TID']);
|
||||
set_session('P_AMT', $PAY['P_AMT']);
|
||||
set_session('P_HASH', $hash);
|
||||
}
|
||||
|
||||
$g5['title'] = 'KG 이니시스 결제';
|
||||
$g5['body_script'] = ' onload="setPAYResult();"';
|
||||
include_once(G5_PATH.'/head.sub.php');
|
||||
|
||||
$exclude = array('res_cd', 'P_HASH', 'P_TYPE', 'P_AUTH_DT', 'P_AUTH_NO', 'P_HPP_CORP', 'P_APPL_NUM', 'P_VACT_NUM', 'P_VACT_NAME', 'P_VACT_BANK', 'P_CARD_ISSUER', 'P_UNAME');
|
||||
|
||||
echo '<form name="forderform" method="post" action="'.$order_action_url.'" autocomplete="off">'.PHP_EOL;
|
||||
|
||||
foreach($data as $key=>$value) {
|
||||
if(in_array($key, $exclude))
|
||||
continue;
|
||||
|
||||
echo '<input type="hidden" name="'.$key.'" value="'.$value.'">'.PHP_EOL;
|
||||
}
|
||||
|
||||
echo '<input type="hidden" name="res_cd" value="'.$PAY['P_STATUS'].'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_HASH" value="'.$hash.'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_TYPE" value="'.$PAY['P_TYPE'].'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_AUTH_DT" value="'.$PAY['P_AUTH_DT'].'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_AUTH_NO" value="'.$PAY['P_AUTH_NO'].'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_HPP_CORP" value="'.$PAY['P_HPP_CORP'].'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_APPL_NUM" value="'.$PAY['P_APPL_NUM'].'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_VACT_NUM" value="'.$PAY['P_VACT_NUM'].'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_VACT_NAME" value="'.iconv_utf8($PAY['P_VACT_NAME']).'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_VACT_BANK" value="'.$BANK_CODE[$PAY['P_VACT_BANK_CODE']].'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_CARD_ISSUER" value="'.$CARD_CODE[$PAY['P_CARD_ISSUER_CODE']].'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_UNAME" value="'.iconv_utf8($PAY['P_UNAME']).'">'.PHP_EOL;
|
||||
|
||||
echo '</form>'.PHP_EOL;
|
||||
?>
|
||||
|
||||
<div id="show_progress">
|
||||
<span style="display:block; text-align:center;margin-top:120px"><img src="<?php echo G5_MOBILE_URL; ?>/shop/img/loading.gif" alt=""></span>
|
||||
<span style="display:block; text-align:center;margin-top:10px; font-size:14px">주문완료 중입니다. 잠시만 기다려 주십시오.</span>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
function setPAYResult() {
|
||||
setTimeout( function() {
|
||||
document.forderform.submit();
|
||||
}, 300);
|
||||
}
|
||||
</script>
|
||||
|
||||
<?php
|
||||
include_once(G5_PATH.'/tail.sub.php');
|
||||
?>
|
||||
41
mobile/shop/inicis/pay_result.php
Normal file
41
mobile/shop/inicis/pay_result.php
Normal file
@ -0,0 +1,41 @@
|
||||
<?php
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
|
||||
include_once(G5_MSHOP_PATH.'/settle_inicis.inc.php');
|
||||
|
||||
// 세션비교
|
||||
$hash = md5(get_session('P_TID').$default['de_inicis_mid'].get_session('P_AMT'));
|
||||
if($hash != $_POST['P_HASH'])
|
||||
alert('결제 정보가 일치하지 않습니다. 올바른 방법으로 이용해 주십시오.');
|
||||
|
||||
//최종결제요청 결과 성공 DB처리
|
||||
$tno = get_session('P_TID');
|
||||
$amount = get_session('P_AMT');
|
||||
$app_time = $_POST['P_AUTH_DT'];
|
||||
$pay_method = $_POST['P_TYPE'];
|
||||
$pay_type = $PAY_METHOD[$pay_method];
|
||||
$depositor = $_POST['P_UNAME'];
|
||||
$commid = $_POST['P_HPP_CORP'];
|
||||
$mobile_no = $_POST['P_APPL_NUM'];
|
||||
$app_no = $_POST['P_AUTH_NO'];
|
||||
$card_name = $_POST['P_CARD_ISSUER'];
|
||||
if ($default['de_escrow_use'] == 1)
|
||||
$escw_yn = 'Y';
|
||||
switch($pay_type) {
|
||||
case '계좌이체':
|
||||
$bank_name = $_POST['P_VACT_BANK'];
|
||||
break;
|
||||
case '가상계좌':
|
||||
$bankname = $_POST['P_VACT_BANK'];
|
||||
$account = $_POST['P_VACT_NUM'].' '.$_POST['P_VACT_NAME'];
|
||||
$app_no = $_POST['P_VACT_NUM'];
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
// 세션 초기화
|
||||
set_session('P_TID', '');
|
||||
set_session('P_AMT', '');
|
||||
set_session('P_HASH', '');
|
||||
?>
|
||||
84
mobile/shop/inicis/pay_return.php
Normal file
84
mobile/shop/inicis/pay_return.php
Normal file
@ -0,0 +1,84 @@
|
||||
<?php
|
||||
include_once('./_common.php');
|
||||
include_once(G5_MSHOP_PATH.'/settle_inicis.inc.php');
|
||||
|
||||
// 세션 초기화
|
||||
set_session('P_TID', '');
|
||||
set_session('P_AMT', '');
|
||||
set_session('P_HASH', '');
|
||||
|
||||
$sql = " select * from {$g5['g5_shop_order_data_table']} where od_id = '$oid' ";
|
||||
$row = sql_fetch($sql);
|
||||
|
||||
$data = unserialize($row['dt_data']);
|
||||
|
||||
if(isset($data['pp_id']) && $data['pp_id']) {
|
||||
$order_action_url = G5_HTTPS_MSHOP_URL.'/personalpayformupdate.php';
|
||||
$page_return_url = G5_SHOP_URL.'/personalpayform.php?pp_id='.$data['pp_id'];
|
||||
} else {
|
||||
$order_action_url = G5_HTTPS_MSHOP_URL.'/orderformupdate.php';
|
||||
$page_return_url = G5_SHOP_URL.'/orderform.php';
|
||||
if($_SESSION['ss_direct'])
|
||||
$page_return_url .= '?sw_direct=1';
|
||||
}
|
||||
|
||||
$sql = " select * from {$g5['g5_shop_inicis_log_table']} where oid = '$oid' ";
|
||||
$row = sql_fetch($sql);
|
||||
|
||||
if(!$row['oid'])
|
||||
alert('결제 정보가 존재하지 않습니다.\\n\\n올바른 방법으로 이용해 주십시오.', $page_return_url);
|
||||
|
||||
if($row['P_STATUS'] != '00')
|
||||
alert('오류 : '.$row['P_RMESG1'].' 코드 : '.$row['P_STATUS'], $page_return_url);
|
||||
|
||||
$PAY = array_map('trim', $row);
|
||||
|
||||
// TID, AMT 를 세션으로 주문완료 페이지 전달
|
||||
$hash = md5($PAY['P_TID'].$PAY['P_MID'].$PAY['P_AMT']);
|
||||
set_session('P_TID', $PAY['P_TID']);
|
||||
set_session('P_AMT', $PAY['P_AMT']);
|
||||
set_session('P_HASH', $hash);
|
||||
|
||||
// 로그 삭제
|
||||
@sql_query(" delete from {$g5['g5_shop_inicis_log_table']} where oid = '$oid' ");
|
||||
|
||||
$g5['title'] = 'KG 이니시스 결제';
|
||||
$g5['body_script'] = ' onload="setPAYResult();"';
|
||||
include_once(G5_PATH.'/head.sub.php');
|
||||
|
||||
$exclude = array('res_cd', 'P_HASH', 'P_TYPE', 'P_AUTH_DT', 'P_VACT_BANK');
|
||||
|
||||
echo '<form name="forderform" method="post" action="'.$order_action_url.'" autocomplete="off">'.PHP_EOL;
|
||||
|
||||
foreach($data as $key=>$value) {
|
||||
if(in_array($key, $exclude))
|
||||
continue;
|
||||
|
||||
echo '<input type="hidden" name="'.$key.'" value="'.$value.'">'.PHP_EOL;
|
||||
}
|
||||
|
||||
echo '<input type="hidden" name="res_cd" value="'.$PAY['P_STATUS'].'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_HASH" value="'.$hash.'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_TYPE" value="'.$PAY['P_TYPE'].'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_AUTH_DT" value="'.$PAY['P_AUTH_DT'].'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="P_VACT_BANK" value="'.$PAY['P_FN_NM'].'">'.PHP_EOL;
|
||||
|
||||
echo '</form>'.PHP_EOL;
|
||||
?>
|
||||
|
||||
<div id="pay_working" style="display:none;">
|
||||
<span style="display:block; text-align:center;margin-top:120px"><img src="<?php echo G5_MOBILE_URL; ?>/shop/img/loading.gif" alt=""></span>
|
||||
<span style="display:block; text-align:center;margin-top:10px; font-size:14px">주문완료 중입니다. 잠시만 기다려 주십시오.</span>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
function setPAYResult() {
|
||||
setTimeout( function() {
|
||||
document.forderform.submit();
|
||||
}, 300);
|
||||
}
|
||||
</script>
|
||||
|
||||
<?php
|
||||
include_once(G5_PATH.'/tail.sub.php');
|
||||
?>
|
||||
215
mobile/shop/inicis/settle_common.php
Normal file
215
mobile/shop/inicis/settle_common.php
Normal file
@ -0,0 +1,215 @@
|
||||
<?php
|
||||
include_once('./_common.php');
|
||||
|
||||
//*******************************************************************************
|
||||
// FILE NAME : mx_rnoti.php
|
||||
// FILE DESCRIPTION :
|
||||
// 이니시스 smart phone 결제 결과 수신 페이지 샘플
|
||||
// 기술문의 : ts@inicis.com
|
||||
// HISTORY
|
||||
// 2010. 02. 25 최초작성
|
||||
// 2010 06. 23 WEB 방식의 가상계좌 사용시 가상계좌 채번 결과 무시 처리 추가(APP 방식은 해당 없음!!)
|
||||
// WEB 방식일 경우 이미 P_NEXT_URL 에서 채번 결과를 전달 하였으므로,
|
||||
// 이니시스에서 전달하는 가상계좌 채번 결과 내용을 무시 하시기 바랍니다.
|
||||
//*******************************************************************************
|
||||
|
||||
$PGIP = $_SERVER['REMOTE_ADDR'];
|
||||
|
||||
if($PGIP == "211.219.96.165" || $PGIP == "118.129.210.25") //PG에서 보냈는지 IP로 체크
|
||||
{
|
||||
|
||||
// 이니시스 NOTI 서버에서 받은 Value
|
||||
$P_TID; // 거래번호
|
||||
$P_MID; // 상점아이디
|
||||
$P_AUTH_DT; // 승인일자
|
||||
$P_STATUS; // 거래상태 (00:성공, 01:실패)
|
||||
$P_TYPE; // 지불수단
|
||||
$P_OID; // 상점주문번호
|
||||
$P_FN_CD1; // 금융사코드1
|
||||
$P_FN_CD2; // 금융사코드2
|
||||
$P_FN_NM; // 금융사명 (은행명, 카드사명, 이통사명)
|
||||
$P_AMT; // 거래금액
|
||||
$P_UNAME; // 결제고객성명
|
||||
$P_RMESG1; // 결과코드
|
||||
$P_RMESG2; // 결과메시지
|
||||
$P_NOTI; // 노티메시지(상점에서 올린 메시지)
|
||||
$P_AUTH_NO; // 승인번호
|
||||
|
||||
|
||||
$P_TID = $_POST['P_TID'];
|
||||
$P_MID = $_POST['P_MID'];
|
||||
$P_AUTH_DT = $_POST['P_AUTH_DT'];
|
||||
$P_STATUS = $_POST['P_STATUS'];
|
||||
$P_TYPE = $_POST['P_TYPE'];
|
||||
$P_OID = $_POST['P_OID'];
|
||||
$P_FN_CD1 = $_POST['P_FN_CD1'];
|
||||
$P_FN_CD2 = $_POST['P_FN_CD2'];
|
||||
$P_FN_NM = $_POST['P_FN_NM'];
|
||||
$P_AMT = $_POST['P_AMT'];
|
||||
$P_UNAME = $_POST['P_UNAME'];
|
||||
$P_RMESG1 = $_POST['P_RMESG1'];
|
||||
$P_RMESG2 = $_POST['P_RMESG2'];
|
||||
$P_NOTI = $_POST['P_NOTI'];
|
||||
$P_AUTH_NO = $_POST['P_AUTH_NO'];
|
||||
|
||||
|
||||
//WEB 방식의 경우 가상계좌 채번 결과 무시 처리
|
||||
//(APP 방식의 경우 해당 내용을 삭제 또는 주석 처리 하시기 바랍니다.)
|
||||
if($P_TYPE == "VBANK") //결제수단이 가상계좌이며
|
||||
{
|
||||
if($P_STATUS != "02") //입금통보 "02" 가 아니면(가상계좌 채번 : 00 또는 01 경우)
|
||||
{
|
||||
echo "OK";
|
||||
return;
|
||||
}
|
||||
|
||||
// 입금결과 처리
|
||||
$sql = " select pp_id, od_id from {$g5['g5_shop_personalpay_table']} where pp_id = '$P_OID' and pp_tno = '$P_TID' ";
|
||||
$row = sql_fetch($sql);
|
||||
|
||||
$result = false;
|
||||
$receipt_time = $P_AUTH_DT;
|
||||
|
||||
if($row['pp_id']) {
|
||||
// 개인결제 UPDATE
|
||||
$sql = " update {$g5['g5_shop_personalpay_table']}
|
||||
set pp_receipt_price = '$P_AMT',
|
||||
pp_receipt_time = '$receipt_time'
|
||||
where pp_id = '$P_OID'
|
||||
and pp_tno = '$P_TID' ";
|
||||
sql_query($sql, false);
|
||||
|
||||
if($row['od_id']) {
|
||||
// 주문서 UPDATE
|
||||
$receipt_time = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})/", "\\1-\\2-\\3 \\4:\\5:\\6", $receipt_time);
|
||||
$sql = " update {$g5['g5_shop_order_table']}
|
||||
set od_receipt_price = od_receipt_price + '$P_AMT',
|
||||
od_receipt_time = '$receipt_time',
|
||||
od_shop_memo = concat(od_shop_memo, \"\\n개인결제 ".$row['pp_id']." 로 결제완료 - ".$receipt_time."\")
|
||||
where od_id = '{$row['od_id']}' ";
|
||||
$result = sql_query($sql, FALSE);
|
||||
}
|
||||
} else {
|
||||
// 주문서 UPDATE
|
||||
$sql = " update {$g5['g5_shop_order_table']}
|
||||
set od_receipt_price = '$P_AMT',
|
||||
od_receipt_time = '$receipt_time'
|
||||
where od_id = '$P_OID'
|
||||
and od_tno = '$P_TID' ";
|
||||
$result = sql_query($sql, FALSE);
|
||||
}
|
||||
|
||||
if($result) {
|
||||
if($row['od_id'])
|
||||
$od_id = $row['od_id'];
|
||||
else
|
||||
$od_id = $P_OID;
|
||||
|
||||
// 주문정보 체크
|
||||
$sql = " select count(od_id) as cnt
|
||||
from {$g5['g5_shop_order_table']}
|
||||
where od_id = '$od_id'
|
||||
and od_status = '주문' ";
|
||||
$row = sql_fetch($sql);
|
||||
|
||||
if($row['cnt'] == 1) {
|
||||
// 미수금 정보 업데이트
|
||||
$info = get_order_info($od_id);
|
||||
|
||||
$sql = " update {$g5['g5_shop_order_table']}
|
||||
set od_misu = '{$info['od_misu']}' ";
|
||||
if($info['od_misu'] == 0)
|
||||
$sql .= " , od_status = '입금' ";
|
||||
$sql .= " where od_id = '$od_id' ";
|
||||
sql_query($sql, FALSE);
|
||||
|
||||
// 장바구니 상태변경
|
||||
if($info['od_misu'] == 0) {
|
||||
$sql = " update {$g5['g5_shop_cart_table']}
|
||||
set ct_status = '입금'
|
||||
where od_id = '$od_id' ";
|
||||
sql_query($sql, FALSE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($result) {
|
||||
echo "OK";
|
||||
return;
|
||||
} else {
|
||||
echo "FAIL";
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
$PageCall_time = date("H:i:s");
|
||||
|
||||
$value = array(
|
||||
"PageCall time" => $PageCall_time,
|
||||
"P_TID" => $P_TID,
|
||||
"P_MID" => $P_MID,
|
||||
"P_AUTH_DT" => $P_AUTH_DT,
|
||||
"P_STATUS" => $P_STATUS,
|
||||
"P_TYPE" => $P_TYPE,
|
||||
"P_OID" => $P_OID,
|
||||
"P_FN_CD1" => $P_FN_CD1,
|
||||
"P_FN_CD2" => $P_FN_CD2,
|
||||
"P_FN_NM" => $P_FN_NM,
|
||||
"P_AMT" => $P_AMT,
|
||||
"P_UNAME" => $P_UNAME,
|
||||
"P_RMESG1" => $P_RMESG1,
|
||||
"P_RMESG2" => $P_RMESG2,
|
||||
"P_NOTI" => $P_NOTI,
|
||||
"P_AUTH_NO" => $P_AUTH_NO
|
||||
);
|
||||
|
||||
// 결과 incis log 테이블 기록
|
||||
if($P_TYPE == 'BANK') {
|
||||
$sql = " insert into {$g5['g5_shop_inicis_log_table']}
|
||||
set oid = '$P_OID',
|
||||
P_TID = '$P_TID',
|
||||
P_MID = '$P_MID',
|
||||
P_AUTH_DT = '$P_AUTH_DT',
|
||||
P_STATUS = '$P_STATUS',
|
||||
P_TYPE = '$P_TYPE',
|
||||
P_OID = '$P_OID',
|
||||
P_FN_NM = '".iconv_utf8($P_FN_NM)."',
|
||||
P_AMT = '$P_AMT',
|
||||
P_RMESG1 = '".iconv_utf8($P_RMESG1)."' ";
|
||||
@sql_query($sql);
|
||||
}
|
||||
|
||||
// 결제처리에 관한 로그 기록
|
||||
//writeLog($value);
|
||||
|
||||
/***********************************************************************************
|
||||
' 위에서 상점 데이터베이스에 등록 성공유무에 따라서 성공시에는 "OK"를 이니시스로 실패시는 "FAIL" 을
|
||||
' 리턴하셔야합니다. 아래 조건에 데이터베이스 성공시 받는 FLAG 변수를 넣으세요
|
||||
' (주의) OK를 리턴하지 않으시면 이니시스 지불 서버는 "OK"를 수신할때까지 계속 재전송을 시도합니다
|
||||
' 기타 다른 형태의 echo "" 는 하지 않으시기 바랍니다
|
||||
'***********************************************************************************/
|
||||
|
||||
echo 'OK';
|
||||
|
||||
}
|
||||
|
||||
function writeLog($msg)
|
||||
{
|
||||
$file = G5_SHOP_PATH."/inicis/log/noti_input_".date("Ymd").".log";
|
||||
|
||||
if(!($fp = fopen($path.$file, "a+"))) return 0;
|
||||
|
||||
ob_start();
|
||||
print_r($msg);
|
||||
$ob_msg = ob_get_contents();
|
||||
ob_clean();
|
||||
|
||||
if(fwrite($fp, " ".$ob_msg."\n") === FALSE)
|
||||
{
|
||||
fclose($fp);
|
||||
return 0;
|
||||
}
|
||||
fclose($fp);
|
||||
return 1;
|
||||
}
|
||||
?>
|
||||
@ -89,7 +89,6 @@
|
||||
else
|
||||
{
|
||||
alert("실패 되었습니다.[" + txt[3].replace(/^\s*/,'').replace(/\s*$/,'') + "]");
|
||||
window.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -104,6 +104,14 @@
|
||||
$ActionResult = '';
|
||||
break;
|
||||
}
|
||||
|
||||
if(get_session('ss_personalpay_id') && get_session('ss_personalpay_hash')) {
|
||||
$js_return_url = G5_SHOP_URL.'/personalpayform.php?pp_id='.get_session('ss_personalpay_id');
|
||||
} else {
|
||||
$js_return_url = G5_SHOP_URL.'/orderform.php';
|
||||
if(get_session('ss_direct'))
|
||||
$js_return_url .= '?sw_direct=1';
|
||||
}
|
||||
?>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko">
|
||||
@ -112,7 +120,9 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta http-equiv="Cache-Control" content="No-Cache">
|
||||
<meta http-equiv="Pragma" content="No-Cache">
|
||||
<meta name="viewport" content="width=device-width; user-scalable=<?php echo $tablet_size; ?>; initial-scale=<?php echo $tablet_size; ?>; maximum-scale=<?php echo $tablet_size; ?>; minimum-scale=<?php echo $tablet_size; ?>">
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=0,maximum-scale=10">
|
||||
<meta name="HandheldFriendly" content="true">
|
||||
<meta name="format-detection" content="telephone=no">
|
||||
|
||||
<style type="text/css">
|
||||
.LINE { background-color:#afc3ff }
|
||||
@ -147,6 +157,7 @@
|
||||
{
|
||||
/* Ret_URL값은 현 페이지의 URL 입니다. */
|
||||
alert("연동시 Ret_URL을 반드시 설정하셔야 됩니다.");
|
||||
document.location.href = "<?php echo $js_return_url; ?>";
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -158,53 +169,30 @@
|
||||
function chk_pay()
|
||||
{
|
||||
/*kcp 결제서버에서 가맹점 주문페이지로 폼값을 보내기위한 설정(변경불가)*/
|
||||
self.name = "tar_opener";
|
||||
|
||||
var sm_form = document.sm_form;
|
||||
|
||||
if (sm_form.res_cd.value == "3001" )
|
||||
{
|
||||
alert("사용자가 취소하였습니다.");
|
||||
window.close();
|
||||
document.location.href = "<?php echo $js_return_url; ?>";
|
||||
return false;
|
||||
}
|
||||
else if (sm_form.res_cd.value == "3000" )
|
||||
{
|
||||
alert("30만원 이상 결제 할수 없습니다.");
|
||||
window.close();
|
||||
document.location.href = "<?php echo $js_return_url; ?>";
|
||||
return false;
|
||||
}
|
||||
|
||||
if (sm_form.enc_data.value != "" && sm_form.enc_info.value != "" && sm_form.tran_cd.value !="" )
|
||||
{
|
||||
var of = window.opener.document.forderform;
|
||||
|
||||
of.req_tx.value = "<?php echo $req_tx; ?>";
|
||||
of.res_cd.value = "<?php echo $res_cd; ?>";
|
||||
of.tran_cd.value = "<?php echo $tran_cd; ?>";
|
||||
of.ordr_idxx.value = "<?php echo $ordr_idxx; ?>";
|
||||
of.good_mny.value = "<?php echo $good_mny; ?>";
|
||||
of.good_name.value = "<?php echo $good_name; ?>";
|
||||
of.buyr_name.value = "<?php echo $buyr_name; ?>";
|
||||
of.buyr_tel1.value = "<?php echo $buyr_tel1; ?>";
|
||||
of.buyr_tel2.value = "<?php echo $buyr_tel2; ?>";
|
||||
of.buyr_mail.value = "<?php echo $buyr_mail; ?>";
|
||||
of.enc_info.value = "<?php echo $enc_info; ?>";
|
||||
of.enc_data.value = "<?php echo $enc_data; ?>";
|
||||
of.use_pay_method.value = "<?php echo $use_pay_method; ?>";
|
||||
of.rcvr_name.value = "<?php echo $rcvr_name; ?>";
|
||||
of.rcvr_tel1.value = "<?php echo $rcvr_tel1; ?>";
|
||||
of.rcvr_tel2.value = "<?php echo $rcvr_tel2; ?>";
|
||||
of.rcvr_mail.value = "<?php echo $rcvr_mail; ?>";
|
||||
of.rcvr_zipx.value = "<?php echo $rcvr_zipx; ?>";
|
||||
of.rcvr_add1.value = "<?php echo $rcvr_add1; ?>";
|
||||
of.rcvr_add2.value = "<?php echo $rcvr_add2; ?>";
|
||||
of.param_opt_1.value = "<?php echo $param_opt_1; ?>";
|
||||
of.param_opt_2.value = "<?php echo $param_opt_2; ?>";
|
||||
of.param_opt_3.value = "<?php echo $param_opt_3; ?>";
|
||||
|
||||
//alert("주문하기를 클릭하셔야 주문이 완료됩니다.");
|
||||
window.opener.forderform_check();
|
||||
window.close();
|
||||
document.getElementById("pay_fail").style.display = "none";
|
||||
document.getElementById("show_progress").style.display = "block";
|
||||
setTimeout( function() {
|
||||
document.forderform.submit();
|
||||
}, 300);
|
||||
} else {
|
||||
kcp_AJAX();
|
||||
}
|
||||
@ -216,6 +204,39 @@
|
||||
|
||||
<div id="content">
|
||||
|
||||
<?php
|
||||
if($enc_data != '' && $enc_info != '' && $tran_cd != '') {
|
||||
// 제외할 필드
|
||||
$exclude = array('req_tx', 'res_cd', 'tran_cd', 'ordr_idxx', 'good_mny', 'good_name', 'buyr_name', 'buyr_tel1', 'buyr_tel2', 'buyr_mail', 'enc_info', 'enc_data', 'use_pay_method', 'rcvr_name', 'rcvr_tel1', 'rcvr_tel2', 'rcvr_mail', 'rcvr_zipx', 'rcvr_add1', 'rcvr_add2', 'param_opt_1', 'param_opt_2', 'param_opt_3');
|
||||
|
||||
$sql = " select * from {$g5['g5_shop_order_data_table']} where od_id = '$ordr_idxx' ";
|
||||
$row = sql_fetch($sql);
|
||||
|
||||
$data = unserialize($row['dt_data']);
|
||||
|
||||
if(isset($data['pp_id']) && $data['pp_id']) {
|
||||
$order_action_url = G5_HTTPS_MSHOP_URL.'/personalpayformupdate.php';
|
||||
} else {
|
||||
$order_action_url = G5_HTTPS_MSHOP_URL.'/orderformupdate.php';
|
||||
}
|
||||
|
||||
echo '<form name="forderform" method="post" action="'.$order_action_url.'" autocomplete="off">'.PHP_EOL;
|
||||
|
||||
foreach($data as $key=>$value) {
|
||||
if(in_array($key, $exclude))
|
||||
continue;
|
||||
|
||||
echo '<input type="hidden" name="'.$key.'" value="'.$value.'">'.PHP_EOL;
|
||||
}
|
||||
|
||||
foreach($_POST as $key=>$value) {
|
||||
echo '<input type="hidden" name="'.$key.'" value="'.$value.'">'.PHP_EOL;
|
||||
}
|
||||
|
||||
echo '</form>'.PHP_EOL;
|
||||
}
|
||||
?>
|
||||
|
||||
<form name="sm_form" method="POST" accept-charset="euc-kr">
|
||||
|
||||
<input type="hidden" name="good_name" value="<?php echo $good_name; ?>">
|
||||
@ -325,6 +346,15 @@ if($default['de_tax_flag_use']) {
|
||||
<input type="hidden" name="enc_info" value="<?php echo $enc_info; ?>"> <!-- 암호화 정보 -->
|
||||
<input type="hidden" name="enc_data" value="<?php echo $enc_data; ?>"> <!-- 암호화 데이터 -->
|
||||
</form>
|
||||
|
||||
<div id="pay_fail">
|
||||
<p>결제가 실패한 경우 아래 돌아가기 버튼을 클릭해주세요.</p>
|
||||
<a href="<?php echo $js_return_url; ?>">돌아가기</a>
|
||||
</div>
|
||||
<div id="show_progress" style="display:none;">
|
||||
<span style="display:block; text-align:center;margin-top:120px"><img src="<?php echo G5_MOBILE_URL; ?>/shop/img/loading.gif" alt="" ></span>
|
||||
<span style="display:block; text-align:center;margin-top:10px; font-size:14px">주문완료 중입니다. 잠시만 기다려 주십시오.</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 스마트폰에서 KCP 결제창을 레이어 형태로 구현-->
|
||||
|
||||
@ -1,321 +0,0 @@
|
||||
<?php
|
||||
include_once('./_common.php');
|
||||
/* ============================================================================== */
|
||||
/* = PAGE : 결제 요청 PAGE = */
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
/* = 이 페이지는 주문 페이지를 통해서 결제자가 결제 요청을 하는 페이지 = */
|
||||
/* = 입니다. 아래의 ※ 필수, ※ 옵션 부분과 매뉴얼을 참조하셔서 연동을 = */
|
||||
/* = 진행하여 주시기 바랍니다. = */
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
/* = 연동시 오류가 발생하는 경우 아래의 주소로 접속하셔서 확인하시기 바랍니다.= */
|
||||
/* = 접속 주소 : http://testpay.kcp.co.kr/pgsample/FAQ/search_error.jsp = */
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
/* = Copyright (c) 2010.05 KCP Inc. All Rights Reserved. = */
|
||||
/* ============================================================================== */
|
||||
?>
|
||||
<?php
|
||||
/* ============================================================================== */
|
||||
/* = 환경 설정 파일 Include = */
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
/* = ※ 필수 = */
|
||||
/* = 테스트 및 실결제 연동시 site_conf_inc.php파일을 수정하시기 바랍니다. = */
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
|
||||
include_once(G5_MSHOP_PATH.'/settle_kcp.inc.php'); // 환경설정 파일 include
|
||||
?>
|
||||
<?php
|
||||
/* = -------------------------------------------------------------------------- = */
|
||||
/* = 환경 설정 파일 Include END = */
|
||||
/* ============================================================================== */
|
||||
?>
|
||||
<?php
|
||||
/* kcp와 통신후 kcp 서버에서 전송되는 결제 요청 정보*/
|
||||
$req_tx = $_POST[ "req_tx" ]; // 요청 종류
|
||||
$res_cd = $_POST[ "res_cd" ]; // 응답 코드
|
||||
$tran_cd = $_POST[ "tran_cd" ]; // 트랜잭션 코드
|
||||
$ordr_idxx = $_POST[ "ordr_idxx" ]; // 쇼핑몰 주문번호
|
||||
$good_name = $_POST[ "good_name" ]; // 상품명
|
||||
$good_mny = $_POST[ "good_mny" ]; // 결제 총금액
|
||||
$buyr_name = $_POST[ "buyr_name" ]; // 주문자명
|
||||
$buyr_tel1 = $_POST[ "buyr_tel1" ]; // 주문자 전화번호
|
||||
$buyr_tel2 = $_POST[ "buyr_tel2" ]; // 주문자 핸드폰 번호
|
||||
$buyr_mail = $_POST[ "buyr_mail" ]; // 주문자 E-mail 주소
|
||||
$use_pay_method = $_POST[ "use_pay_method" ]; // 결제 방법
|
||||
$enc_info = $_POST[ "enc_info" ]; // 암호화 정보
|
||||
$enc_data = $_POST[ "enc_data" ]; // 암호화 데이터
|
||||
$rcvr_name = $_POST[ "rcvr_name" ]; // 수취인 이름
|
||||
$rcvr_tel1 = $_POST[ "rcvr_tel1" ]; // 수취인 전화번호
|
||||
$rcvr_tel2 = $_POST[ "rcvr_tel2" ]; // 수취인 휴대폰번호
|
||||
$rcvr_mail = $_POST[ "rcvr_mail" ]; // 수취인 E-Mail
|
||||
$rcvr_zipx = $_POST[ "rcvr_zipx" ]; // 수취인 우편번호
|
||||
$rcvr_add1 = $_POST[ "rcvr_add1" ]; // 수취인 주소
|
||||
$rcvr_add2 = $_POST[ "rcvr_add2" ]; // 수취인 상세주소
|
||||
|
||||
/* 주문폼에서 전송되는 정보 */
|
||||
$ipgm_date = $_POST[ "ipgm_date" ]; // 입금마감일
|
||||
$settle_method = $_POST[ "settle_method" ]; // 결제방법
|
||||
$good_info = $_POST[ "good_info" ]; // 에스크로 상품정보
|
||||
$bask_cntx = $_POST[ "bask_cntx" ]; // 장바구니 상품수
|
||||
$tablet_size = $_POST[ "tablet_size" ]; // 모바일기기 화면비율
|
||||
|
||||
$comm_tax_mny = $_POST[ "comm_tax_mny" ]; // 과세금액
|
||||
$comm_vat_mny = $_POST[ "comm_vat_mny" ]; // 부가세
|
||||
$comm_free_mny = $_POST["comm_free_mny" ]; // 비과세금액
|
||||
|
||||
/*
|
||||
* 기타 파라메터 추가 부분 - Start -
|
||||
*/
|
||||
$param_opt_1 = $_POST[ "param_opt_1" ]; // 기타 파라메터 추가 부분
|
||||
$param_opt_2 = $_POST[ "param_opt_2" ]; // 기타 파라메터 추가 부분
|
||||
$param_opt_3 = $_POST[ "param_opt_3" ]; // 기타 파라메터 추가 부분
|
||||
/*
|
||||
* 기타 파라메터 추가 부분 - End -
|
||||
*/
|
||||
|
||||
/* kcp 데이터 캐릭터셋 변환 */
|
||||
if($res_cd != '') {
|
||||
$good_name = iconv('euc-kr', 'utf-8', $good_name);
|
||||
$buyr_name = iconv('euc-kr', 'utf-8', $buyr_name);
|
||||
$rcvr_name = iconv('euc-kr', 'utf-8', $rcvr_name);
|
||||
$rcvr_add1 = iconv('euc-kr', 'utf-8', $rcvr_add1);
|
||||
$rcvr_add2 = iconv('euc-kr', 'utf-8', $rcvr_add2);
|
||||
}
|
||||
|
||||
switch($settle_method)
|
||||
{
|
||||
case '신용카드':
|
||||
$pay_method = 'CARD';
|
||||
$ActionResult = 'card';
|
||||
break;
|
||||
case '계좌이체':
|
||||
$pay_method = 'BANK';
|
||||
$ActionResult = 'acnt';
|
||||
break;
|
||||
case '휴대폰':
|
||||
$pay_method = 'MOBX';
|
||||
$ActionResult = 'mobx';
|
||||
break;
|
||||
case '가상계좌':
|
||||
$pay_method = 'VCNT';
|
||||
$ActionResult = 'vcnt';
|
||||
break;
|
||||
default:
|
||||
$pay_method = '';
|
||||
$ActionResult = '';
|
||||
break;
|
||||
}
|
||||
?>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko">
|
||||
<head>
|
||||
<title>스마트폰 웹 결제창</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta http-equiv="Cache-Control" content="No-Cache">
|
||||
<meta http-equiv="Pragma" content="No-Cache">
|
||||
<meta name="viewport" content="width=device-width; user-scalable=<?php echo $tablet_size; ?>; initial-scale=<?php echo $tablet_size; ?>; maximum-scale=<?php echo $tablet_size; ?>; minimum-scale=<?php echo $tablet_size; ?>">
|
||||
|
||||
<style type="text/css">
|
||||
.LINE { background-color:#afc3ff }
|
||||
.HEAD { font-family:"굴림","굴림체"; font-size:9pt; color:#065491; background-color:#eff5ff; text-align:left; padding:3px; }
|
||||
.TEXT { font-family:"굴림","굴림체"; font-size:9pt; color:#000000; background-color:#FFFFFF; text-align:left; padding:3px; }
|
||||
B { font-family:"굴림","굴림체"; font-size:13pt; color:#065491;}
|
||||
INPUT { font-family:"굴림","굴림체"; font-size:9pt; }
|
||||
SELECT{font-size:9pt;}
|
||||
.COMMENT { font-family:"굴림","굴림체"; font-size:9pt; line-height:160% }
|
||||
</style>
|
||||
<!-- 거래등록 하는 kcp 서버와 통신을 위한 스크립트-->
|
||||
<script src="<?php echo G5_MSHOP_URL; ?>/kcp/approval_key.js"></script>
|
||||
|
||||
|
||||
<script language="javascript">
|
||||
/* kcp web 결제창 호출 (변경불가)*/
|
||||
function call_pay_form()
|
||||
{
|
||||
|
||||
var v_frm = document.sm_form;
|
||||
|
||||
layer_cont_obj = document.getElementById("content");
|
||||
layer_receipt_obj = document.getElementById("layer_receipt");
|
||||
|
||||
layer_cont_obj.style.display = "none";
|
||||
layer_receipt_obj.style.display = "block";
|
||||
|
||||
v_frm.target = "frm_receipt";
|
||||
v_frm.action = PayUrl;
|
||||
|
||||
if(v_frm.Ret_URL.value == "")
|
||||
{
|
||||
/* Ret_URL값은 현 페이지의 URL 입니다. */
|
||||
alert("연동시 Ret_URL을 반드시 설정하셔야 됩니다.");
|
||||
return false;
|
||||
}
|
||||
|
||||
v_frm.submit();
|
||||
}
|
||||
|
||||
|
||||
/* kcp 통신을 통해 받은 암호화 정보 체크 후 결제 요청*/
|
||||
function chk_pay()
|
||||
{
|
||||
/*kcp 결제서버에서 가맹점 주문페이지로 폼값을 보내기위한 설정(변경불가)*/
|
||||
|
||||
var sm_form = document.sm_form;
|
||||
|
||||
if (sm_form.res_cd.value == "3001" )
|
||||
{
|
||||
alert("사용자가 취소하였습니다.");
|
||||
window.close();
|
||||
return false;
|
||||
}
|
||||
else if (sm_form.res_cd.value == "3000" )
|
||||
{
|
||||
alert("30만원 이상 결제 할수 없습니다.");
|
||||
window.close();
|
||||
return false;
|
||||
}
|
||||
|
||||
if (sm_form.enc_data.value != "" && sm_form.enc_info.value != "" && sm_form.tran_cd.value !="" )
|
||||
{
|
||||
var of = window.opener.document.fpersonalpayform;
|
||||
|
||||
of.req_tx.value = "<?php echo $req_tx; ?>";
|
||||
of.res_cd.value = "<?php echo $res_cd; ?>";
|
||||
of.tran_cd.value = "<?php echo $tran_cd; ?>";
|
||||
of.ordr_idxx.value = "<?php echo $ordr_idxx; ?>";
|
||||
of.good_mny.value = "<?php echo $good_mny; ?>";
|
||||
of.good_name.value = "<?php echo $good_name; ?>";
|
||||
of.buyr_name.value = "<?php echo $buyr_name; ?>";
|
||||
of.buyr_tel1.value = "<?php echo $buyr_tel1; ?>";
|
||||
of.buyr_tel2.value = "<?php echo $buyr_tel2; ?>";
|
||||
of.buyr_mail.value = "<?php echo $buyr_mail; ?>";
|
||||
of.enc_info.value = "<?php echo $enc_info; ?>";
|
||||
of.enc_data.value = "<?php echo $enc_data; ?>";
|
||||
of.use_pay_method.value = "<?php echo $use_pay_method; ?>";
|
||||
of.rcvr_name.value = "<?php echo $rcvr_name; ?>";
|
||||
of.rcvr_tel1.value = "<?php echo $rcvr_tel1; ?>";
|
||||
of.rcvr_tel2.value = "<?php echo $rcvr_tel2; ?>";
|
||||
of.rcvr_mail.value = "<?php echo $rcvr_mail; ?>";
|
||||
of.rcvr_zipx.value = "<?php echo $rcvr_zipx; ?>";
|
||||
of.rcvr_add1.value = "<?php echo $rcvr_add1; ?>";
|
||||
of.rcvr_add2.value = "<?php echo $rcvr_add2; ?>";
|
||||
of.param_opt_1.value = "<?php echo $param_opt_1; ?>";
|
||||
of.param_opt_2.value = "<?php echo $param_opt_2; ?>";
|
||||
of.param_opt_3.value = "<?php echo $param_opt_3; ?>";
|
||||
|
||||
window.opener.fpersonalpayform_check();
|
||||
window.close();
|
||||
} else {
|
||||
kcp_AJAX();
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body onload="chk_pay();">
|
||||
|
||||
<div id="content">
|
||||
|
||||
<form name="sm_form" method="POST" accept-charset="euc-kr">
|
||||
|
||||
<input type="hidden" name="good_name" value="<?php echo $good_name; ?>">
|
||||
<input type="hidden" name="good_mny" value="<?php echo $good_mny; ?>" >
|
||||
<input type="hidden" name='buyr_name' value="<?php echo $buyr_name; ?>">
|
||||
<input type="hidden" name="buyr_tel1" value="<?php echo $buyr_tel1; ?>">
|
||||
<input type="hidden" name="buyr_tel2" value="<?php echo $buyr_tel2; ?>">
|
||||
<input type="hidden" name="buyr_mail" value="<?php echo $buyr_mail; ?>">
|
||||
<input type="hidden" name="ipgm_date" value="<?php echo $ipgm_date; ?>">
|
||||
|
||||
<!-- 필수 사항 -->
|
||||
|
||||
<!-- 요청 구분 -->
|
||||
<input type="hidden" name="req_tx" value="pay">
|
||||
<!-- 사이트 코드 -->
|
||||
<input type="hidden" name="site_cd" value="<?php echo $g_conf_site_cd; ?>">
|
||||
<!-- 사이트 키 -->
|
||||
<input type="hidden" name="site_key" value="<?php echo $g_conf_site_key; ?>">
|
||||
<!-- 사이트 이름 -->
|
||||
<input type="hidden" name="shop_name" value="<?php echo $g_conf_site_name; ?>">
|
||||
<!-- 결제수단-->
|
||||
<input type="hidden" name="pay_method" value="<?php echo $pay_method; ?>">
|
||||
<!-- 주문번호 -->
|
||||
<input type="hidden" name="ordr_idxx" value="<?php echo $ordr_idxx; ?>">
|
||||
<!-- 최대 할부개월수 -->
|
||||
<input type="hidden" name="quotaopt" value="12">
|
||||
<!-- 통화 코드 -->
|
||||
<input type="hidden" name="currency" value="410">
|
||||
<!-- 결제등록 키 -->
|
||||
<input type="hidden" name="approval_key" id="approval">
|
||||
<!-- 리턴 URL (kcp와 통신후 결제를 요청할 수 있는 암호화 데이터를 전송 받을 가맹점의 주문페이지 URL) -->
|
||||
<!-- 반드시 가맹점 주문페이지의 URL을 입력 해주시기 바랍니다. -->
|
||||
<input type="hidden" name="Ret_URL" value="<?php echo G5_MSHOP_URL; ?>/kcp/personalpay_approval_form.php">
|
||||
<!-- 인증시 필요한 파라미터(변경불가)-->
|
||||
<input type="hidden" name="ActionResult" value="<?php echo $ActionResult; ?>">
|
||||
<!-- 에스크로 사용유무 에스크로 사용 업체(가상계좌만 해당)는 Y로 세팅 해주시기 바랍니다.-->
|
||||
<input type="hidden" name="escw_used" value="Y">
|
||||
<!-- 에스크로 결제처리모드 -->
|
||||
<input type="hidden" name="pay_mod" value="<?php echo ($default['de_escrow_use']?'O':'N'); ?>">
|
||||
<!-- 수취인이름 -->
|
||||
<input type="hidden" name="rcvr_name" value="<?php echo $rcvr_name; ?>">
|
||||
<!-- 수취인 연락처 -->
|
||||
<input type="hidden" name="rcvr_tel1" value="<?php echo $rcvr_tel1; ?>">
|
||||
<!-- 수취인 휴대폰 번호 -->
|
||||
<input type="hidden" name="rcvr_tel2" value="<?php echo $rcvr_tel2; ?>">
|
||||
<!-- 수취인 E-MAIL -->
|
||||
<input type="hidden" name="rcvr_add1" value="<?php echo $rcvr_add1; ?>">
|
||||
<!-- 수취인 우편번호 -->
|
||||
<input type="hidden" name="rcvr_add2" value="<?php echo $rcvr_add2; ?>">
|
||||
<!-- 수취인 주소 -->
|
||||
<input type="hidden" name="rcvr_mail" value="<?php echo $rcvr_mail; ?>">
|
||||
<!-- 수취인 상세 주소 -->
|
||||
<input type="hidden" name="rcvr_zipx" value="<?php echo $rcvr_zipx; ?>">
|
||||
<!-- 장바구니 상품 개수 -->
|
||||
<input type="hidden" name="bask_cntx" value="<?php echo $bask_cntx; ?>">
|
||||
<!-- 장바구니 정보(상단 스크립트 참조) -->
|
||||
<input type="hidden" name="good_info" value="<?php echo $good_info; ?>">
|
||||
<!-- 배송소요기간 -->
|
||||
<input type="hidden" name="deli_term" value="03">
|
||||
<!-- 기타 파라메터 추가 부분 - Start - -->
|
||||
<input type="hidden" name="param_opt_1" value="<?php echo $param_opt_1; ?>"/>
|
||||
<input type="hidden" name="param_opt_2" value="<?php echo $param_opt_2; ?>"/>
|
||||
<input type="hidden" name="param_opt_3" value="<?php echo $param_opt_3; ?>"/>
|
||||
<input type="hidden" name="disp_tax_yn" value="N">
|
||||
<!-- 기타 파라메터 추가 부분 - End - -->
|
||||
<!-- 화면 크기조정 부분 - Start - -->
|
||||
<input type="hidden" name="tablet_size" value="<?php echo $tablet_size; ?>"/>
|
||||
<!-- 화면 크기조정 부분 - End - -->
|
||||
<!--
|
||||
사용 카드 설정
|
||||
<input type="hidden" name="used_card" value="CClg:ccDI">
|
||||
/* 무이자 옵션
|
||||
※ 설정할부 (가맹점 관리자 페이지에 설정 된 무이자 설정을 따른다) - "" 로 설정
|
||||
※ 일반할부 (KCP 이벤트 이외에 설정 된 모든 무이자 설정을 무시한다) - "N" 로 설정
|
||||
※ 무이자 할부 (가맹점 관리자 페이지에 설정 된 무이자 이벤트 중 원하는 무이자 설정을 세팅한다) - "Y" 로 설정
|
||||
<input type="hidden" name="kcp_noint" value=""/> */
|
||||
|
||||
/* 무이자 설정
|
||||
※ 주의 1 : 할부는 결제금액이 50,000 원 이상일 경우에만 가능
|
||||
※ 주의 2 : 무이자 설정값은 무이자 옵션이 Y일 경우에만 결제 창에 적용
|
||||
예) 전 카드 2,3,6개월 무이자(국민,비씨,엘지,삼성,신한,현대,롯데,외환) : ALL-02:03:04
|
||||
BC 2,3,6개월, 국민 3,6개월, 삼성 6,9개월 무이자 : CCBC-02:03:06,CCKM-03:06,CCSS-03:06:04
|
||||
<input type="hidden" name="kcp_noint_quota" value="CCBC-02:03:06,CCKM-03:06,CCSS-03:06:09"/> */
|
||||
-->
|
||||
|
||||
<input type="hidden" name="res_cd" value="<?php echo $res_cd; ?>"> <!-- 결과 코드 -->
|
||||
<input type="hidden" name="tran_cd" value="<?php echo $tran_cd; ?>"> <!-- 트랜잭션 코드 -->
|
||||
<input type="hidden" name="enc_info" value="<?php echo $enc_info; ?>"> <!-- 암호화 정보 -->
|
||||
<input type="hidden" name="enc_data" value="<?php echo $enc_data; ?>"> <!-- 암호화 데이터 -->
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<!-- 스마트폰에서 KCP 결제창을 레이어 형태로 구현-->
|
||||
<div id="layer_receipt" style="position:absolute; left:1px; top:1px; width:310;height:400; z-index:1; display:none;">
|
||||
<table width="310" border="-" cellspacing="0" cellpadding="0" style="text-align:center">
|
||||
<tr>
|
||||
<td>
|
||||
<iframe name="frm_receipt" frameborder="0" border="0" width="310" height="400" scrolling="auto"></iframe>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@ -161,7 +161,15 @@
|
||||
openwin.close();
|
||||
</script>";
|
||||
*/
|
||||
alert("$res_cd : $res_msg");
|
||||
if(isset($_POST['pp_id']) && $_POST['pp_id']) {
|
||||
$page_return_url = G5_SHOP_URL.'/personalpayform.php?pp_id='.get_session('ss_personalpay_id');
|
||||
} else {
|
||||
$page_return_url = G5_SHOP_URL.'/orderform.php';
|
||||
if(get_session('ss_direct'))
|
||||
$page_return_url .= '?sw_direct=1';
|
||||
}
|
||||
|
||||
alert("$res_cd : $res_msg", $page_return_url);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
@ -7,38 +7,76 @@ xpay_approval.php 에서 세션에 저장했던 파라미터 값이 유효한지
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION['PAYREQ_MAP'])){
|
||||
alert_close('세션이 만료 되었거나 유효하지 않은 요청 입니다.');
|
||||
alert('세션이 만료 되었거나 유효하지 않은 요청 입니다.', G5_SHOP_URL);
|
||||
}
|
||||
|
||||
$payReqMap = $_SESSION['PAYREQ_MAP']; //결제 요청시, Session에 저장했던 파라미터 MAP
|
||||
|
||||
$g5['title'] = 'LG 유플러스 eCredit서비스 결제';
|
||||
$g5['body_script'] = 'onload="setLGDResult();"';
|
||||
$g5['body_script'] = ' onload="setLGDResult();"';
|
||||
include_once(G5_PATH.'/head.sub.php');
|
||||
|
||||
$LGD_RESPCODE = $_REQUEST['LGD_RESPCODE'];
|
||||
$LGD_RESPMSG = $_REQUEST['LGD_RESPMSG'];
|
||||
$LGD_PAYKEY = '';
|
||||
|
||||
$LGD_OID = $payReqMap['LGD_OID'];
|
||||
|
||||
$sql = " select * from {$g5['g5_shop_order_data_table']} where od_id = '$LGD_OID' ";
|
||||
$row = sql_fetch($sql);
|
||||
|
||||
$data = unserialize($row['dt_data']);
|
||||
|
||||
if(isset($data['pp_id']) && $data['pp_id']) {
|
||||
$order_action_url = G5_HTTPS_MSHOP_URL.'/personalpayformupdate.php';
|
||||
$page_return_url = G5_SHOP_URL.'/personalpayform.php?pp_id='.$data['pp_id'];
|
||||
} else {
|
||||
$order_action_url = G5_HTTPS_MSHOP_URL.'/orderformupdate.php';
|
||||
$page_return_url = G5_SHOP_URL.'/orderform.php';
|
||||
if($_SESSION['ss_direct'])
|
||||
$page_return_url .= '?sw_direct=1';
|
||||
}
|
||||
|
||||
if($LGD_RESPCODE == '0000') {
|
||||
$LGD_PAYKEY = $_REQUEST['LGD_PAYKEY'];
|
||||
$payReqMap['LGD_RESPCODE'] = $LGD_RESPCODE;
|
||||
$payReqMap['LGD_RESPMSG'] = $LGD_RESPMSG;
|
||||
$payReqMap['LGD_PAYKEY'] = $LGD_PAYKEY;
|
||||
} else {
|
||||
alert_close('LGD_RESPCODE:' . $LGD_RESPCODE . ' ,LGD_RESPMSG:' . $LGD_RESPMSG); //인증 실패에 대한 처리 로직 추가
|
||||
alert('LGD_RESPCODE:' . $LGD_RESPCODE . ' ,LGD_RESPMSG:' . $LGD_RESPMSG, $page_return_url); //인증 실패에 대한 처리 로직 추가
|
||||
}
|
||||
?>
|
||||
|
||||
<?php
|
||||
$exclude = array('res_cd', 'LGD_PAYKEY');
|
||||
|
||||
echo '<form name="forderform" method="post" action="'.$order_action_url.'" autocomplete="off">'.PHP_EOL;
|
||||
|
||||
foreach($data as $key=>$value) {
|
||||
if(in_array($key, $exclude))
|
||||
continue;
|
||||
|
||||
echo '<input type="hidden" name="'.$key.'" value="'.$value.'">'.PHP_EOL;
|
||||
}
|
||||
|
||||
echo '<input type="hidden" name="res_cd" value="'.$LGD_RESPCODE.'">'.PHP_EOL;
|
||||
echo '<input type="hidden" name="LGD_PAYKEY" value="'.$LGD_PAYKEY.'">'.PHP_EOL;
|
||||
|
||||
echo '</form>'.PHP_EOL;
|
||||
?>
|
||||
|
||||
<div>
|
||||
<div id="show_progress">
|
||||
<span style="display:block; text-align:center;margin-top:120px"><img src="<?php echo G5_MOBILE_URL; ?>/shop/img/loading.gif" alt=""></span>
|
||||
<span style="display:block; text-align:center;margin-top:10px; font-size:14px">주문완료 중입니다. 잠시만 기다려 주십시오.</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
function setLGDResult() {
|
||||
var of = window.opener.document.forderform;
|
||||
|
||||
of.res_cd.value = "<?php echo $LGD_RESPCODE; ?>";
|
||||
of.LGD_PAYKEY.value = "<?php echo $LGD_PAYKEY; ?>";
|
||||
|
||||
window.opener.forderform_check();
|
||||
window.close();
|
||||
setTimeout( function() {
|
||||
document.forderform.submit();
|
||||
}, 300);
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
@ -24,7 +24,7 @@ $LGD_KVPMISPWAPURL = G5_MSHOP_URL.'/lg/mispwapurl.php?LGD_OID='.$LGD_OID;
|
||||
$LGD_KVPMISPCANCELURL = G5_MSHOP_URL.'/lg/cancel_url.php';
|
||||
$LGD_MTRANSFERWAPURL = G5_MSHOP_URL.'/lg/returnurl.php';
|
||||
$LGD_MTRANSFERCANCELURL = G5_MSHOP_URL.'/lg/cancel_url.php';
|
||||
$LGD_MTRANSFERNOTEURL = G5_MSHOP_URL.'/note_url.php';
|
||||
$LGD_MTRANSFERNOTEURL = G5_MSHOP_URL.'/lg/note_url.php';
|
||||
if(preg_match('/iPhone|iPad/', $_SERVER['HTTP_USER_AGENT']))
|
||||
$LGD_MTRANSFERAUTOAPPYN = 'N';
|
||||
else
|
||||
@ -130,7 +130,7 @@ $payReqMap['LGD_PAYKEY'] = "";
|
||||
$_SESSION['PAYREQ_MAP'] = $payReqMap;
|
||||
|
||||
$g5['title'] = 'LG 유플러스 eCredit서비스 결제';
|
||||
$g5['body_script'] = 'onload="launchCrossPlatform();"';
|
||||
$g5['body_script'] = ' onload="launchCrossPlatform();"';
|
||||
include_once(G5_PATH.'/head.sub.php');
|
||||
?>
|
||||
|
||||
|
||||
@ -32,6 +32,10 @@ require_once(G5_MSHOP_PATH.'/settle_'.$default['de_pg_service'].'.inc.php');
|
||||
// 결제등록 요청시 사용할 입금마감일
|
||||
$ipgm_date = date("Ymd", (G5_SERVER_TIME + 86400 * 5));
|
||||
$tablet_size = "1.0"; // 화면 사이즈 조정 - 기기화면에 맞게 수정(갤럭시탭,아이패드 - 1.85, 스마트폰 - 1.0)
|
||||
|
||||
// 개인결제번호제거
|
||||
set_session('ss_personalpay_id', '');
|
||||
set_session('ss_personalpay_hash', '');
|
||||
?>
|
||||
|
||||
<div id="sod_approval_frm">
|
||||
@ -93,7 +97,7 @@ ob_start();
|
||||
{
|
||||
//$goods = addslashes($row[it_name]);
|
||||
//$goods = get_text($row[it_name]);
|
||||
$goods = preg_replace("/\'|\"|\||\,|\&|\;/", "", $row['it_name']);
|
||||
$goods = preg_replace("/\?|\'|\"|\||\,|\&|\;/", "", $row['it_name']);
|
||||
$goods_it_id = $row['it_id'];
|
||||
}
|
||||
$goods_count++;
|
||||
@ -1194,10 +1198,61 @@ function pay_approval()
|
||||
<?php if($default['de_tax_flag_use']) { ?>
|
||||
f.LGD_TAXFREEAMOUNT.value = pf.comm_free_mny.value;
|
||||
<?php } ?>
|
||||
<?php } else if($default['de_pg_service'] == 'inicis') { ?>
|
||||
var paymethod = "";
|
||||
var width = 330;
|
||||
var height = 480;
|
||||
var xpos = (screen.width - width) / 2;
|
||||
var ypos = (screen.width - height) / 2;
|
||||
var position = "top=" + ypos + ",left=" + xpos;
|
||||
var features = position + ", width=320, height=440";
|
||||
switch(settle_method) {
|
||||
case "계좌이체":
|
||||
paymethod = "bank";
|
||||
break;
|
||||
case "가상계좌":
|
||||
paymethod = "vbank";
|
||||
break;
|
||||
case "휴대폰":
|
||||
paymethod = "mobile";
|
||||
break;
|
||||
case "신용카드":
|
||||
paymethod = "wcard";
|
||||
break;
|
||||
}
|
||||
f.P_AMT.value = f.good_mny.value;
|
||||
f.P_UNAME.value = pf.od_name.value;
|
||||
f.P_MOBILE.value = pf.od_hp.value;
|
||||
f.P_EMAIL.value = pf.od_email.value;
|
||||
<?php if($default['de_tax_flag_use']) { ?>
|
||||
f.P_TAX.value = pf.comm_vat_mny.value;
|
||||
f.P_TAXFREE = pf.comm_free_mny.value;
|
||||
<?php } ?>
|
||||
f.P_RETURN_URL.value = "<?php echo $return_url.$od_id; ?>";
|
||||
f.action = "https://mobile.inicis.com/smart/" + paymethod + "/";
|
||||
<?php } ?>
|
||||
|
||||
var new_win = window.open("about:blank", "tar_opener", "scrollbars=yes,resizable=yes");
|
||||
f.target = "tar_opener";
|
||||
//var new_win = window.open("about:blank", "tar_opener", "scrollbars=yes,resizable=yes");
|
||||
//f.target = "tar_opener";
|
||||
|
||||
// 주문 정보 임시저장
|
||||
var order_data = $(pf).serialize();
|
||||
var save_result = "";
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
data: order_data,
|
||||
url: g5_url+"/shop/ajax.orderdatasave.php",
|
||||
cache: false,
|
||||
async: false,
|
||||
success: function(data) {
|
||||
save_result = data;
|
||||
}
|
||||
});
|
||||
|
||||
if(save_result) {
|
||||
alert(save_result);
|
||||
return false;
|
||||
}
|
||||
|
||||
f.submit();
|
||||
}
|
||||
|
||||
@ -2,13 +2,20 @@
|
||||
include_once('./_common.php');
|
||||
include_once(G5_LIB_PATH.'/mailer.lib.php');
|
||||
|
||||
$page_return_url = G5_SHOP_URL.'/orderform.php';
|
||||
if(get_session('ss_direct'))
|
||||
$page_return_url .= '?sw_direct=1';
|
||||
|
||||
// 결제등록 완료 체크
|
||||
if($od_settle_case != '무통장') {
|
||||
if($default['de_pg_service'] == 'kcp' && ($_POST['tran_cd'] == '' || $_POST['enc_info'] == '' || $_POST['enc_data'] == ''))
|
||||
alert('결제등록 요청 후 주문해 주십시오.');
|
||||
alert('결제등록 요청 후 주문해 주십시오.', $page_return_url);
|
||||
|
||||
if($default['de_pg_service'] == 'lg' && !$_POST['LGD_PAYKEY'])
|
||||
alert('결제등록 요청 후 주문해 주십시오.');
|
||||
alert('결제등록 요청 후 주문해 주십시오.', $page_return_url);
|
||||
|
||||
if($default['de_pg_service'] == 'inicis' && !$_POST['P_HASH'])
|
||||
alert('결제등록 요청 후 주문해 주십시오.', $page_return_url);
|
||||
}
|
||||
|
||||
// 장바구니가 비어있는가?
|
||||
@ -51,7 +58,7 @@ if($i == 0)
|
||||
if ($error != "")
|
||||
{
|
||||
$error .= "다른 고객님께서 {$od_name}님 보다 먼저 주문하신 경우입니다. 불편을 끼쳐 죄송합니다.";
|
||||
alert($error);
|
||||
alert($error, $page_return_url);
|
||||
}
|
||||
|
||||
$i_price = (int)$_POST['od_price'];
|
||||
@ -263,7 +270,7 @@ if (($i_temp_point > (int)$temp_point || $i_temp_point < 0) && $config['cf_use_p
|
||||
if ($od_temp_point)
|
||||
{
|
||||
if ($member['mb_point'] < $od_temp_point)
|
||||
alert('회원님의 포인트가 부족하여 포인트로 결제 할 수 없습니다.');
|
||||
alert('회원님의 포인트가 부족하여 포인트로 결제 할 수 없습니다.', $page_return_url);
|
||||
}
|
||||
|
||||
$i_price = $i_price + $i_send_cost + $i_send_cost2 - $i_temp_point - $i_send_coupon;
|
||||
@ -286,6 +293,9 @@ else if ($od_settle_case == "계좌이체")
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_result.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_MSHOP_PATH.'/inicis/pay_result.php';
|
||||
break;
|
||||
default:
|
||||
include G5_MSHOP_PATH.'/kcp/pp_ax_hub.php';
|
||||
$bank_name = iconv("cp949", "utf-8", $bank_name);
|
||||
@ -310,6 +320,9 @@ else if ($od_settle_case == "가상계좌")
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_result.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_MSHOP_PATH.'/inicis/pay_result.php';
|
||||
break;
|
||||
default:
|
||||
include G5_MSHOP_PATH.'/kcp/pp_ax_hub.php';
|
||||
$bankname = iconv("cp949", "utf-8", $bankname);
|
||||
@ -319,6 +332,7 @@ else if ($od_settle_case == "가상계좌")
|
||||
|
||||
$od_receipt_point = $i_temp_point;
|
||||
$od_tno = $tno;
|
||||
$od_app_no = $app_no;
|
||||
$od_receipt_price = 0;
|
||||
$od_bank_account = $bankname.' '.$account;
|
||||
$od_deposit_name = $depositor;
|
||||
@ -331,6 +345,9 @@ else if ($od_settle_case == "휴대폰")
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_result.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_MSHOP_PATH.'/inicis/pay_result.php';
|
||||
break;
|
||||
default:
|
||||
include G5_MSHOP_PATH.'/kcp/pp_ax_hub.php';
|
||||
break;
|
||||
@ -352,6 +369,9 @@ else if ($od_settle_case == "신용카드")
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_result.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_MSHOP_PATH.'/inicis/pay_result.php';
|
||||
break;
|
||||
default:
|
||||
include G5_MSHOP_PATH.'/kcp/pp_ax_hub.php';
|
||||
$card_name = iconv("cp949", "utf-8", $card_name);
|
||||
@ -382,6 +402,9 @@ if($tno) {
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_cancel.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_SHOP_PATH.'/inicis/inipay_cancel.php';
|
||||
break;
|
||||
default:
|
||||
include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php';
|
||||
break;
|
||||
@ -498,6 +521,9 @@ if(!$result) {
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_cancel.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_SHOP_PATH.'/inicis/inipay_cancel.php';
|
||||
break;
|
||||
default:
|
||||
include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php';
|
||||
break;
|
||||
@ -534,6 +560,9 @@ if(!$result) {
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_cancel.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_SHOP_PATH.'/inicis/inipay_cancel.php';
|
||||
break;
|
||||
default:
|
||||
include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php';
|
||||
break;
|
||||
@ -687,6 +716,10 @@ if($config['cf_sms_use'] && ($default['de_sms_use2'] || $default['de_sms_use3'])
|
||||
$uid = md5($od_id.G5_TIME_YMDHIS.$REMOTE_ADDR);
|
||||
set_session('ss_orderview_uid', $uid);
|
||||
|
||||
// 주문 정보 임시 데이터 삭제
|
||||
$sql = " delete from {$g5['g5_shop_order_data_table']} where od_id = '$od_id' and dt_pg = '$od_pg' ";
|
||||
sql_query($sql);
|
||||
|
||||
// 주문번호제거
|
||||
set_session('ss_order_id', '');
|
||||
|
||||
|
||||
@ -332,6 +332,8 @@ if($od['od_pg'] == 'lg') {
|
||||
$LGD_HASHDATA = md5($LGD_MID.$LGD_TID.$LGD_MERTKEY);
|
||||
|
||||
$hp_receipt_script = 'showReceiptByTID(\''.$LGD_MID.'\', \''.$LGD_TID.'\', \''.$LGD_HASHDATA.'\');';
|
||||
} else if($od['od_pg'] == 'inicis') {
|
||||
$hp_receipt_script = 'window.open(\'https://iniweb.inicis.com/DefaultWebApp/mall/cr/cm/mCmReceipt_head.jsp?noTid='.$od['od_tno'].'&noMethod=1\',\'receipt\',\'width=430,height=700\');';
|
||||
} else {
|
||||
$hp_receipt_script = 'window.open(\''.G5_BILL_RECEIPT_URL.'mcash_bill&tno='.$od['od_tno'].'&order_no='.$od['od_id'].'&trade_mony='.$od['od_receipt_price'].'\', \'winreceipt\', \'width=500,height=690,scrollbars=yes,resizable=yes\');';
|
||||
}
|
||||
@ -349,6 +351,8 @@ if($od['od_pg'] == 'lg') {
|
||||
$LGD_HASHDATA = md5($LGD_MID.$LGD_TID.$LGD_MERTKEY);
|
||||
|
||||
$card_receipt_script = 'showReceiptByTID(\''.$LGD_MID.'\', \''.$LGD_TID.'\', \''.$LGD_HASHDATA.'\');';
|
||||
} else if($od['od_pg'] == 'inicis') {
|
||||
$card_receipt_script = 'window.open(\'https://iniweb.inicis.com/DefaultWebApp/mall/cr/cm/mCmReceipt_head.jsp?noTid='.$od['od_tno'].'&noMethod=1\',\'receipt\',\'width=430,height=700\');';
|
||||
} else {
|
||||
$card_receipt_script = 'window.open(\''.G5_BILL_RECEIPT_URL.'card_bill&tno='.$od['od_tno'].'&order_no='.$od['od_id'].'&trade_mony='.$od['od_receipt_price'].'\', \'winreceipt\', \'width=470,height=815,scrollbars=yes,resizable=yes\');';
|
||||
}
|
||||
@ -410,6 +414,9 @@ if($od['od_pg'] == 'lg') {
|
||||
break;
|
||||
}
|
||||
$cash_receipt_script = 'javascript:showCashReceipts(\''.$LGD_MID.'\',\''.$od['od_id'].'\',\''.$od['od_casseqno'].'\',\''.$trade_type.'\',\''.$CST_PLATFORM.'\');';
|
||||
} else if($od['od_pg'] == 'inicis') {
|
||||
$cash = unserialize($od['od_cash_info']);
|
||||
$cash_receipt_script = 'window.open(\'https://iniweb.inicis.com/DefaultWebApp/mall/cr/cm/Cash_mCmReceipt.jsp?noTid='.$cash['TID'].'&clpaymethod=22\',\'showreceipt\',\'width=380,height=540,scrollbars=no,resizable=no\');';
|
||||
} else {
|
||||
require_once G5_SHOP_PATH.'/settle_kcp.inc.php';
|
||||
|
||||
|
||||
@ -207,10 +207,61 @@ function pay_approval()
|
||||
<?php if($default['de_tax_flag_use']) { ?>
|
||||
f.LGD_TAXFREEAMOUNT.value = pf.comm_free_mny.value;
|
||||
<?php } ?>
|
||||
<?php } else if($default['de_pg_service'] == 'inicis') { ?>
|
||||
var paymethod = "";
|
||||
var width = 330;
|
||||
var height = 480;
|
||||
var xpos = (screen.width - width) / 2;
|
||||
var ypos = (screen.width - height) / 2;
|
||||
var position = "top=" + ypos + ",left=" + xpos;
|
||||
var features = position + ", width=320, height=440";
|
||||
switch(settle_method) {
|
||||
case "계좌이체":
|
||||
paymethod = "bank";
|
||||
break;
|
||||
case "가상계좌":
|
||||
paymethod = "vbank";
|
||||
break;
|
||||
case "휴대폰":
|
||||
paymethod = "mobile";
|
||||
break;
|
||||
case "신용카드":
|
||||
paymethod = "wcard";
|
||||
break;
|
||||
}
|
||||
f.P_AMT.value = f.good_mny.value;
|
||||
f.P_UNAME.value = pf.pp_name.value;
|
||||
f.P_MOBILE.value = pf.pp_hp.value;
|
||||
f.P_EMAIL.value = pf.pp_email.value;
|
||||
<?php if($default['de_tax_flag_use']) { ?>
|
||||
f.P_TAX.value = pf.comm_vat_mny.value;
|
||||
f.P_TAXFREE = pf.comm_free_mny.value;
|
||||
<?php } ?>
|
||||
f.P_RETURN_URL.value = "<?php echo $return_url.$pp_id; ?>";
|
||||
f.action = "https://mobile.inicis.com/smart/" + paymethod + "/";
|
||||
<?php } ?>
|
||||
|
||||
var new_win = window.open("about:blank", "tar_opener", "scrollbars=yes,resizable=yes");
|
||||
f.target = "tar_opener";
|
||||
//var new_win = window.open("about:blank", "tar_opener", "scrollbars=yes,resizable=yes");
|
||||
//f.target = "tar_opener";
|
||||
|
||||
// 주문 정보 임시저장
|
||||
var order_data = $(pf).serialize();
|
||||
var save_result = "";
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
data: order_data,
|
||||
url: g5_url+"/shop/ajax.orderdatasave.php",
|
||||
cache: false,
|
||||
async: false,
|
||||
success: function(data) {
|
||||
save_result = data;
|
||||
}
|
||||
});
|
||||
|
||||
if(save_result) {
|
||||
alert(save_result);
|
||||
return false;
|
||||
}
|
||||
|
||||
f.submit();
|
||||
}
|
||||
|
||||
@ -2,22 +2,27 @@
|
||||
include_once('./_common.php');
|
||||
include_once(G5_LIB_PATH.'/mailer.lib.php');
|
||||
|
||||
$page_return_url = G5_SHOP_URL.'/personalpayform.php?pp_id='.get_session('ss_personalpay_id');
|
||||
|
||||
// 결제등록 완료 체크
|
||||
if($default['de_pg_service'] == 'kcp' && ($_POST['tran_cd'] == '' || $_POST['enc_info'] == '' || $_POST['enc_data'] == ''))
|
||||
alert('결제등록 요청 후 주문해 주십시오.');
|
||||
alert('결제등록 요청 후 주문해 주십시오.', $page_return_url);
|
||||
|
||||
if($default['de_pg_service'] == 'lg' && !$_POST['LGD_PAYKEY'])
|
||||
alert('결제등록 요청 후 주문해 주십시오.');
|
||||
alert('결제등록 요청 후 주문해 주십시오.', $page_return_url);
|
||||
|
||||
if($default['de_pg_service'] == 'inicis' && !$_POST['P_HASH'])
|
||||
alert('결제등록 요청 후 주문해 주십시오.', $page_return_url);
|
||||
|
||||
// 개인결제 정보
|
||||
$pp_check = false;
|
||||
$sql = " select * from {$g5['g5_shop_personalpay_table']} where pp_id = '{$_POST['pp_id']}' and pp_use = '1' ";
|
||||
$pp = sql_fetch($sql);
|
||||
if(!$pp['pp_id'])
|
||||
alert('개인결제 정보가 존재하지 않습니다.');
|
||||
alert('개인결제 정보가 존재하지 않습니다.', G5_SHOP_URL.'/personalpay.php');
|
||||
|
||||
if($pp['pp_tno'])
|
||||
alert('이미 결제하신 개인결제 내역입니다.');
|
||||
alert('이미 결제하신 개인결제 내역입니다.', G5_SHOP_URL);
|
||||
|
||||
$hash_data = md5($_POST['pp_id'].$_POST['good_mny'].$pp['pp_time']);
|
||||
if($_POST['pp_id'] != get_session('ss_personalpay_id') || $hash_data != get_session('ss_personalpay_hash'))
|
||||
@ -29,6 +34,9 @@ if ($pp_settle_case == "계좌이체")
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_result.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_MSHOP_PATH.'/inicis/pay_result.php';
|
||||
break;
|
||||
default:
|
||||
include G5_MSHOP_PATH.'/kcp/pp_ax_hub.php';
|
||||
$bank_name = iconv("cp949", "utf-8", $bank_name);
|
||||
@ -48,6 +56,9 @@ else if ($pp_settle_case == "가상계좌")
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_result.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_MSHOP_PATH.'/inicis/pay_result.php';
|
||||
break;
|
||||
default:
|
||||
include G5_MSHOP_PATH.'/kcp/pp_ax_hub.php';
|
||||
$bankname = iconv("cp949", "utf-8", $bankname);
|
||||
@ -56,6 +67,7 @@ else if ($pp_settle_case == "가상계좌")
|
||||
}
|
||||
|
||||
$pp_tno = $tno;
|
||||
$pp_app_no = $app_no;
|
||||
$pp_receipt_price = 0;
|
||||
$pp_bank_account = $bankname.' '.$account;
|
||||
$pp_deposit_name = $depositor;
|
||||
@ -67,6 +79,9 @@ else if ($pp_settle_case == "휴대폰")
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_result.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_MSHOP_PATH.'/inicis/pay_result.php';
|
||||
break;
|
||||
default:
|
||||
include G5_MSHOP_PATH.'/kcp/pp_ax_hub.php';
|
||||
break;
|
||||
@ -84,6 +99,9 @@ else if ($pp_settle_case == "신용카드")
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_result.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_MSHOP_PATH.'/inicis/pay_result.php';
|
||||
break;
|
||||
default:
|
||||
include G5_MSHOP_PATH.'/kcp/pp_ax_hub.php';
|
||||
$card_name = iconv("cp949", "utf-8", $card_name);
|
||||
@ -91,6 +109,7 @@ else if ($pp_settle_case == "신용카드")
|
||||
}
|
||||
|
||||
$pp_tno = $tno;
|
||||
$pp_app_no = $app_no;
|
||||
$pp_receipt_price = $amount;
|
||||
$pp_receipt_time = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})/", "\\1-\\2-\\3 \\4:\\5:\\6", $app_time);
|
||||
$pp_bank_account = $card_name;
|
||||
@ -139,6 +158,9 @@ if(!$result) {
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_cancel.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_SHOP_PATH.'/inicis/inipay_cancel.php';
|
||||
break;
|
||||
default:
|
||||
include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php';
|
||||
break;
|
||||
@ -174,6 +196,9 @@ if($pp_receipt_price > 0 && $pp['pp_id'] && $pp['od_id']) {
|
||||
case 'lg':
|
||||
include G5_SHOP_PATH.'/lg/xpay_cancel.php';
|
||||
break;
|
||||
case 'inicis':
|
||||
include G5_SHOP_PATH.'/inicis/inipay_cancel.php';
|
||||
break;
|
||||
default:
|
||||
include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php';
|
||||
break;
|
||||
@ -201,6 +226,10 @@ if($pp_receipt_price > 0 && $pp['pp_id'] && $pp['od_id']) {
|
||||
}
|
||||
}
|
||||
|
||||
// 주문 정보 임시 데이터 삭제
|
||||
$sql = " delete from {$g5['g5_shop_order_data_table']} where od_id = '{$pp['pp_id']}' and dt_pg = '$pp_pg' ";
|
||||
sql_query($sql);
|
||||
|
||||
// 개인결제번호제거
|
||||
set_session('ss_personalpay_id', '');
|
||||
set_session('ss_personalpay_hash', '');
|
||||
|
||||
@ -141,6 +141,8 @@ if($pp['pp_pg'] == 'lg') {
|
||||
$LGD_HASHDATA = md5($LGD_MID.$LGD_TID.$LGD_MERTKEY);
|
||||
|
||||
$hp_receipt_script = 'showReceiptByTID(\''.$LGD_MID.'\', \''.$LGD_TID.'\', \''.$LGD_HASHDATA.'\');';
|
||||
} else if($pp['pp_pg'] == 'inicis') {
|
||||
$hp_receipt_script = 'window.open(\'https://iniweb.inicis.com/DefaultWebApp/mall/cr/cm/mCmReceipt_head.jsp?noTid='.$pp['pp_tno'].'&noMethod=1\',\'receipt\',\'width=430,height=700\');';
|
||||
} else {
|
||||
$hp_receipt_script = 'window.open(\''.G5_BILL_RECEIPT_URL.'mcash_bill&tno='.$pp['pp_tno'].'&order_no='.$pp['pp_id'].'&trade_mony='.$pp['pp_receipt_price'].'\', \'winreceipt\', \'width=500,height=690,scrollbars=yes,resizable=yes\');';
|
||||
}
|
||||
@ -158,6 +160,8 @@ if($pp['pp_pg'] == 'lg') {
|
||||
$LGD_HASHDATA = md5($LGD_MID.$LGD_TID.$LGD_MERTKEY);
|
||||
|
||||
$card_receipt_script = 'showReceiptByTID(\''.$LGD_MID.'\', \''.$LGD_TID.'\', \''.$LGD_HASHDATA.'\');';
|
||||
} else if($pp['pp_pg'] == 'inicis') {
|
||||
$card_receipt_script = 'window.open(\'https://iniweb.inicis.com/DefaultWebApp/mall/cr/cm/mCmReceipt_head.jsp?noTid='.$pp['pp_tno'].'&noMethod=1\',\'receipt\',\'width=430,height=700\');';
|
||||
} else {
|
||||
$card_receipt_script = 'window.open(\''.G5_BILL_RECEIPT_URL.'card_bill&tno='.$pp['pp_tno'].'&order_no='.$pp['pp_id'].'&trade_mony='.$pp['pp_receipt_price'].'\', \'winreceipt\', \'width=470,height=815,scrollbars=yes,resizable=yes\');';
|
||||
}
|
||||
@ -209,6 +213,9 @@ if($pp['pp_pg'] == 'lg') {
|
||||
break;
|
||||
}
|
||||
$cash_receipt_script = 'javascript:showCashReceipts(\''.$LGD_MID.'\',\''.$pp['pp_id'].'\',\''.$pp['pp_casseqno'].'\',\''.$trade_type.'\',\''.$CST_PLATFORM.'\');';
|
||||
} else if($pp['pp_pg'] == 'inicis') {
|
||||
$cash = unserialize($pp['pp_cash_info']);
|
||||
$cash_receipt_script = 'window.open(\'https://iniweb.inicis.com/DefaultWebApp/mall/cr/cm/Cash_mCmReceipt.jsp?noTid='.$cash['TID'].'&clpaymethod=22\',\'showreceipt\',\'width=380,height=540,scrollbars=no,resizable=no\');';
|
||||
} else {
|
||||
require_once G5_SHOP_PATH.'/settle_kcp.inc.php';
|
||||
|
||||
|
||||
97
mobile/shop/settle_inicis.inc.php
Normal file
97
mobile/shop/settle_inicis.inc.php
Normal file
@ -0,0 +1,97 @@
|
||||
<?php
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
|
||||
// curl 체크
|
||||
if (!function_exists('curl_init')) {
|
||||
alert('cURL 모듈이 설치되어 있지 않습니다.\\n상점관리자에게 문의해 주십시오.');
|
||||
}
|
||||
|
||||
if ($default['de_card_test']) {
|
||||
if ($default['de_escrow_use'] == 1) {
|
||||
// 에스크로결제 테스트
|
||||
$default['de_inicis_mid'] = 'iniescrow0';
|
||||
$default['de_inicis_admin_key'] = '1111';
|
||||
}
|
||||
else {
|
||||
// 일반결제 테스트
|
||||
$default['de_inicis_mid'] = 'INIpayTest';
|
||||
$default['de_inicis_admin_key'] = '1111';
|
||||
}
|
||||
}
|
||||
else {
|
||||
$default['de_inicis_mid'] = "SIR".$default['de_inicis_mid'];
|
||||
|
||||
if ($default['de_escrow_use'] == 1) {
|
||||
// 에스크로결제 테스트
|
||||
$useescrow = '&useescrow=Y';
|
||||
}
|
||||
else {
|
||||
// 일반결제 테스트
|
||||
$useescrow = '';
|
||||
}
|
||||
}
|
||||
|
||||
$BANK_CODE = array(
|
||||
'03' => '기업은행',
|
||||
'04' => '국민은행',
|
||||
'05' => '외환은행',
|
||||
'07' => '수협중앙회',
|
||||
'11' => '농협중앙회',
|
||||
'20' => '우리은행',
|
||||
'23' => 'SC 제일은행',
|
||||
'31' => '대구은행',
|
||||
'32' => '부산은행',
|
||||
'34' => '광주은행',
|
||||
'37' => '전북은행',
|
||||
'39' => '경남은행',
|
||||
'53' => '한국씨티은행',
|
||||
'71' => '우체국',
|
||||
'81' => '하나은행',
|
||||
'88' => '신한은행',
|
||||
'D1' => '동양종합금융증권',
|
||||
'D2' => '현대증권',
|
||||
'D3' => '미래에셋증권',
|
||||
'D4' => '한국투자증권',
|
||||
'D5' => '우리투자증권',
|
||||
'D6' => '하이투자증권',
|
||||
'D7' => 'HMC 투자증권',
|
||||
'D8' => 'SK 증권',
|
||||
'D9' => '대신증권',
|
||||
'DA' => '하나대투증권',
|
||||
'DB' => '굿모닝신한증권',
|
||||
'DC' => '동부증권',
|
||||
'DD' => '유진투자증권',
|
||||
'DE' => '메리츠증권',
|
||||
'DF' => '신영증권'
|
||||
);
|
||||
|
||||
$CARD_CODE = array(
|
||||
'01' => '외환',
|
||||
'03' => '롯데',
|
||||
'04' => '현대',
|
||||
'06' => '국민',
|
||||
'11' => 'BC',
|
||||
'12' => '삼성',
|
||||
'14' => '신한',
|
||||
'15' => '한미',
|
||||
'16' => 'NH',
|
||||
'17' => '하나 SK',
|
||||
'21' => '해외비자',
|
||||
'22' => '해외마스터',
|
||||
'23' => 'JCB',
|
||||
'24' => '해외아멕스',
|
||||
'25' => '해외다이너스'
|
||||
);
|
||||
|
||||
$PAY_METHOD = array(
|
||||
'ISP' => '신용카드',
|
||||
'CARD' => '신용카드',
|
||||
'BANK' => '계좌이체',
|
||||
'MOBILE' => '휴대폰',
|
||||
'VBANK' => '가상계좌'
|
||||
);
|
||||
|
||||
$noti_url = G5_MSHOP_URL.'/inicis/settle_common.php';
|
||||
$next_url = G5_MSHOP_URL.'/inicis/pay_approval.php';
|
||||
$return_url = G5_MSHOP_URL.'/inicis/pay_return.php?oid=';
|
||||
?>
|
||||
Reference in New Issue
Block a user