위토즈 - 개발자프로그램판매공간

정보공유

[영카트팁] KCP 크롬 대응 exe 버전 패치 코드.

 

KCP 에서는 크롬45버전 이상에서 기존의 크로스브라우징 모듈의 NPAPI 기능 제한의 대안으로

EXE 결제모듈을 배포하였습니다.

 

영카트에 적용을 해보았습니다.

 

 

/shop/kcp/orderform.1.php 

<script type="text/javascript">
    /****************************************************************/
    /* EXE 전환 절차                                                */
    /* 1. m_Completepayment 함수 적용                               */
    /* 2. 플러그인 체크 함수 변경  kcpTx_install();                 */
    /* 3. submit 방식 변경                                          */
    /****************************************************************/
    /****************************************************************/
    /****************************************************************/

    /* 1. m_Completepayment  설명                                      */
    /****************************************************************/
    /* 인증완료시 재귀 함수                                         */
    /* 해당 함수명은 절대 변경하면 안됩니다.                        */
    /* 해당 함수의 위치는 payplus.js 보다먼저 선언되어여 합니다.    */
    /* Web 방식의 경우 리턴 값이 form 으로 넘어옴                   */
    /* EXE 방식의 경우 리턴 값이 json 으로 넘어옴                   */
    /****************************************************************/
    function m_Completepayment( FormOrJson, closeEvent ) 
    {
        var frm = document.forderform; 
     
        /********************************************************************/
        /* FormOrJson은 가맹점 임의 활용 금지                               */
        /* frm 값에 FormOrJson 값이 설정 됨 frm 값으로 활용 하셔야 됩니다.  */
        /* FormOrJson 값을 활용 하시려면 기술지원팀으로 문의바랍니다.       */
        /********************************************************************/
        GetField( frm, FormOrJson ); // 위에서 만든 폼데이터에 결제창의 인증데이터 담기.

        
        if( frm.res_cd.value == "0000" )
        {
            /*
                가맹점 리턴값 처리 영역
            */
            document.getElementById("display_pay_button").style.display = "none" ;
            document.getElementById("display_pay_process").style.display = "" ;
//               
            frm.submit(); 
        }
        else
        {
            alert( "[" + frm.res_cd.value + "] " + frm.res_msg.value );
            
            closeEvent();
        }
    }

</script>

<script src="<?php echo $g_conf_js_url; ?>"></script>
<?php
/* = -------------------------------------------------------------------------- = */
/* =   Javascript source Include END                                            = */
/* ============================================================================== */
?>
<script>
function CheckPayplusInstall()
{
    if(ChkBrowser())
    {
        if(document.Payplus.object != null) {
            document.getElementById("display_setup_message_top").style.display = "none" ;
            document.getElementById("display_setup_message").style.display = "none" ;
            document.getElementById("display_pay_button").style.display = "" ;
        }
    }
    else
    {
        setTimeout("init_pay_button();",300);
    }
}

/* Payplus Plug-in 실행 */
function  jsf__pay( form )
{
    if (navigator.userAgent.indexOf('MSIE') > 0) {

        var RetVal = false;

        /* Payplus Plugin 실행 */
        if ( MakePayMessage( form ) == true )
        {
            //openwin = window.open( "./kcp/proc_win.html", "proc_win", "width=449, height=209, top=300, left=300" );
            document.getElementById("display_pay_button").style.display = "none" ;
            document.getElementById("display_pay_process").style.display = "" ;
            RetVal = true ;
        }

        else
        {
            /*  res_cd와 res_msg변수에 해당 오류코드와 오류메시지가 설정됩니다.
                ex) 고객이 Payplus Plugin에서 취소 버튼 클릭시 res_cd=3001, res_msg=사용자 취소
                값이 설정됩니다.
            */
            res_cd  = document.forderform.res_cd.value ;
            res_msg = document.forderform.res_msg.value ;

        }

        return RetVal ;
    
    }
    else {
    
        KCP_Pay_Execute( form ); 

    }
}

 

1. m_Completepayment 함수가 추가되었습니다.

payplus.js 보다 반드시 먼저 선언이 되어야 합니다.

 

 

2. 결제창 실행 함수를 변경합니다.

익스플로러가 아닐경우 KCP_Pay_Execute( form );  를 호출합니다.

 

 

 

/shop/kcp/orderform.5.php 

<script>
if (navigator.userAgent.indexOf('MSIE') > 0) {
    StartSmartUpdate();
}
else {
    kcpTx_install();
}
</script>

 

결제창 설치 함수를 브라우저에 따라서 분기적용시킵니다.

 

 

 

 

 

 

 

 

정보공유
Total 25건 1 페이지
번호 제목 글쓴이 날짜 조회
25 입금된 주문도 준비, 배송전까지는 취소할 수 있도록 하는 방법 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 03-10 404
24 인스타그램을 경유해서 쇼핑몰 ISP 결제오류 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 05-30 4473
23 영카트 배송비까지 비과세 적용하기 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 06-23 8773
22 php 7 버전 이상에서 엑셀다운로드 오류 발생할경우 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 12-24 16991
21 it_img_upload 함수에서 오류코드가 발생하는경우. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 12-23 11731
20 영카트의 재고수량은 주문상태가 배송일때 차감된다. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 12-10 11890
19 재고수량을 주문할때 바로 차감시키기. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 02-13 14784
18 아미나빌더 파트너기능 사용시 SNS공유 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 11-29 20398
17 영카트 옵션선택시 장바구니에 제대로 안들어가는 문제 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 07-16 16793
16 카테고리 분류관리에서 하위분류 아이콘이 안나올경우 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 09-17 22547
15 상품의 기본 통화단위를 달러로 변환 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 07-30 23287
14 상품의 옵션이 너무 많이 등록되어있을경우 페이지 로딩이 지연됨. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 07-20 24009
13 주문화면 코딩할때 주의사항 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 09-23 26690
12 영카트 분류기능에서 1차분류 제외하고 나머지 분류 1296개 사용하기. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 04-19 32573
11 영카트에서 사용하고있는 쿠폰번호 생성코드 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 02-24 38095