UNPKG

kicc-easypay

Version:

kicc-easypay is kicc easypay library for Node.js

47 lines (40 loc) 1.74 kB
'use strict' var DOMAIN = { PC_TEST: 'https://testpg.easypay.co.kr', PC_REAL: 'https://pg.easypay.co.kr', MOBILE_TEST: 'https://testsp.easypay.co.kr', MOBILE_REAL: 'https://sp.easypay.co.kr' } var FIELDS = [ 'mall_id', 'mall_nm', 'ci_url', 'pay_type', 'order_no', 'currency', 'return_url', 'window_type', 'charset', 'lang_flag', 'disp_cash_yn', 'product_nm', 'product_amt', 'product_type', 'product_expr', 'os_cert_flag', 'quota', 'noinst_flag', 'noinst_term', 'set_point_card_yn', 'point_card', 'join_cd', 'kmotion_useyn', 'cert_type', 'vacct_bank', 'vacct_end_date', 'vacct_end_time', 'memb_user_no', 'user_type', 'user_id', 'user_nm', 'user_mail', 'user_phone1', 'user_phone2', 'user_addr', 'user_define1', 'user_define2', 'user_define3', 'user_define4', 'user_define5', 'user_define6' ] var normalize = function (param, mode) { var prefix = (mode || 'PC_TEST').toUpperCase().indexOf('PC') !== -1 ? 'EP_' : 'sp_' var values = {} for (var i = 0, len = FIELDS.length, key; i < len; i++) { key = FIELDS[i] if (typeof param[key] !== 'undefined') { // EUC-KR 이슈로 한글이 포함되는 필드는 인코딩. values[prefix + key] = ['mall_nm', 'product_nm', 'user_nm', 'user_addr'].indexOf(key) !== -1 ? encodeURIComponent(param[key]) : param[key] } } return values } module.exports = { /** * @param {object} param * @param {string} mode PC_TEST, PC_REAL, MOBILE_TEST, MOBILE_REAL */ normalize: function (param, mode) { var domain = DOMAIN[mode] return { plugin: domain + '/webpay/EasypayCard_Web.js', action: domain + (mode.indexOf('PC') !== -1 ? '/webpay/MainAction.do' : '/ep8/MainAction.do'), param: normalize(param, mode) } } }