Guest User

Untitled

a guest
May 21st, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.10 KB | None | 0 0
  1. /**
  2. * Created by GwonHyeok on 2016. 11. 29..
  3. */
  4. var NodeINIStdPay = {
  5.  
  6. payForm: null,
  7. payFormId: null,
  8. paymentUrl: null,
  9.  
  10. payFormData: {},
  11.  
  12. init: function (options) {
  13. if (options == null || !options.paymentUrl) return console.log('Node Inicis 라이브러리를 초기화 할 수 없습니다. paymentUrl을 입력해주세요');
  14.  
  15. window.NodeINIStdPay = NodeINIStdPay;
  16.  
  17. this.paymentUrl = options.paymentUrl;
  18.  
  19. // 결제에 사용되는 Form 추가
  20. this.payFormId = 'node-pay-' + new Date().getTime();
  21.  
  22. this.payForm = document.createElement("form");
  23. this.payForm.setAttribute('method', "post");
  24. this.payForm.setAttribute('action', "");
  25. this.payForm.setAttribute('id', this.payFormId);
  26. this.payForm.setAttribute('style', 'display: none');
  27.  
  28. document.getElementsByTagName('body')[0].appendChild(this.payForm);
  29. },
  30.  
  31. pay: function (params, error) {
  32. $.ajax({
  33. type: "POST",
  34. url: this.paymentUrl,
  35. data: $.extends(params, {'buyertel': '010-3450-3837'}),
  36. success: function (response) {
  37. window.NodeINIStdPay.mergeFormData(response.data);
  38. window.NodeINIStdPay.insertFormInput(true);
  39.  
  40. // 결제 요청
  41. INIStdPay.pay(window.NodeINIStdPay.payFormId);
  42. },
  43. error: error
  44. });
  45. },
  46.  
  47. insertFormInput(removePre = false) {
  48. if (removePre) $(window.NodeINIStdPay.payForm).empty();
  49.  
  50. Object.keys(this.payFormData).forEach(function (formKey) {
  51. var input = document.createElement('input');
  52. input.setAttribute('type', "text");
  53. input.setAttribute('name', formKey);
  54. input.setAttribute('value', window.NodeINIStdPay.payFormData[formKey]);
  55. window.NodeINIStdPay.payForm.appendChild(input);
  56. });
  57. },
  58.  
  59. mergeFormData(source) {
  60. if (typeof source !== 'object') return;
  61.  
  62. Object.keys(source).forEach(function (formKey) {
  63. window.NodeINIStdPay.payFormData[formKey] = source[formKey];
  64. });
  65. }
  66. };
Add Comment
Please, Sign In to add comment